计算机网站建设开题报告,wordpress 付款,公司搭建网站,东莞常平新楼盘一、图像读取
retval cv2.imread(filename[, flags])
filename#xff1a;需要读取的图片路径名#xff0c;支持多种图片格式#xff0c;如JPEG、PNG、TIFF等。flags#xff1a;一个可选参数#xff0c;指定加载图像的颜色类型。常用的值包括#xff1a; cv2.IMGEAD_A…一、图像读取
retval cv2.imread(filename[, flags])
filename需要读取的图片路径名支持多种图片格式如JPEG、PNG、TIFF等。flags一个可选参数指定加载图像的颜色类型。常用的值包括 cv2.IMGEAD_ANYDEPTH其值是2。若载入的图像深度为16位或32位就返回对应深度的图像否则转换为8位图像再返回。cv2.IMREAD_COLOR其值取1。以彩色模式加载图像这是默认值。任何图像的透明度都会被忽略这是默认标志。cv2.IMREAD_GRAYSCALE其值取0。以灰度模式加载图像。cv2.IMREAD_UNCHANGED其值取-1。不加改变的载入原图包括alpha通道。
注意事项
1、imread文件路径除了不支持单右斜线形式\其他斜线形式都支持
2、imread文件路径不支持中文路径如果要自持中文路径可使用以下代码
img cv2.imdecode(np.fromfile(imgpath, dtypenp.unit8), -1)
二、 图像属性
img.shape[0]读取图像行数img.shape[1]读取图像列数img.shape[2]读取图像通道数img.shape[:2]只读取图像行数和列数
三、图像保存
cv2.imwrite(filename, img[, params])
filename 类型字符串说明要保存的图像文件名包括文件路径和文件扩展名如 .jpg、.png 等。文件路径可以是相对路径或绝对路径。文件扩展名决定了保存的图像格式。注意在 Python 3 中cv2.imwrite() 不支持中文和空格作为文件名直接使用时可能会遇到问题如果需要使用中文或特殊字符可以考虑对文件名进行编码处理或使用其他库如 imageio来保存图像。img 类型通常是一个二维或三维的 NumPy 数组表示图像数据。说明要保存的图像数据。这个数组可以是灰度图像二维数组或彩色图像三维数组通常具有三个颜色通道如 RGB 或 BGR。params可选 类型可选参数通常是一个包含键值对的字典用于指定保存图像时的特定参数。说明 压缩质量对于某些格式如 JPEG可以指定压缩质量。例如使用 cv2.IMWRITE_JPEG_QUALITY 作为键后跟一个整数值范围从 0 到 100作为压缩质量。压缩级别对于 PNG 格式可以指定压缩级别从 0 到 9。例如使用 cv2.IMWRITE_PNG_COMPRESSION 作为键后跟一个整数值作为压缩级别。其他参数根据 OpenCV 的不同版本和支持的格式可能还有其他可用的参数。具体参数列表和用法应参考 OpenCV 的官方文档。
四、图像显示
def cv_show(name, img):cv2.imshow(name, img)cv2.waitKey(0)cv2.destroyAllWindows()
五、单窗口多图像显示
image cv2.imread(img\\1.png)
cv_show(img, image)
image_cut1 image[0:500, 0:500]
image_cut2 image[500:1000, 500:1000]
hstack_image np.hstack([image_cut1, image_cut2])
cv_show(hstack_image, hstack_image)
使用np.hstack()函数拼接图像使用时图像的形状要一致。此时图像水平拼接。使用np.vstack()函数图像会竖直拼接。
六、鼠标事件了解
img np.full((500, 500), 0)
img cv2.convertScaleAbs(img)def draw_circle(event, x, y, flags, param):if event cv2.EVENT_LBUTTONDOWN:cv2.circle(img, (x, y), 50, (255, 255, 255), -1)cv2.namedWindow(img)
cv2.setMouseCallback(img, draw_circle)
while 1:cv2.imshow(img, img)n cv2.waitKey(5)if n ord(q):breakelif n ord(s):cv2.imwrite(res.jpg, img)print(保存成功)
cv2.destroyAllWindows() 鼠标事件event有以下
鼠标移动EVENT_MOUSEMOVE当鼠标在窗口内移动时触发。左键按下EVENT_LBUTTONDOWN当鼠标左键被按下时触发。左键释放EVENT_LBUTTONUP当鼠标左键被释放时触发。左键双击EVENT_LBUTTONDBLCLK当鼠标左键被快速双击时触发。右键按下EVENT_RBUTTONDOWN、右键释放EVENT_RBUTTONUP、右键双击EVENT_RBUTTONDBLCLK与左键类似但对应的是鼠标右键。中键按下EVENT_MBUTTONDOWN、中键释放EVENT_MBUTTONUP、中键双击EVENT_MBUTTONDBLCLK与左键和右键类似但对应的是鼠标中键如果有的话。滚轮滑动EVENT_MOUSEWHEEL、EVENT_MOUSEHWHEEL当鼠标滚轮被滚动时触发EVENT_MOUSEWHEEL对应垂直滚动EVENT_MOUSEHWHEEL对应水平滚动。 鼠标事件标志flags有以下
Flags常量含义cv2.EVENT_FLAG_LBUTTON左键被按下或拖拽时设置cv2.EVENT_FLAG_RBUTTON右键被按下或拖拽时设置cv2.EVENT_FLAG_MBUTTON中键滚轮按钮被按下或拖拽时设置cv2.EVENT_FLAG_CTRLKEYCtrl键被按下时设置cv2.EVENT_FLAG_SHIFTKEYShift键被按下时设置cv2.EVENT_FLAG_ALTKEYAlt键被按下时设置 七、滑动条事件不做讲解 链接跳转
章节二、OpenCV||超简略的Numpy小tip
章节三、OpenCV||超详细的图像处理模块
章节四、OpenCV||超详细的灰度变换和直方图修正
章节五、OpenCV||超详细的图像平滑
章节六、OpenCV||超详细的几何变换