Python- 计算机视觉 -OpenCV-Image
学习目标
将学习如何读取图像、如何显示图像以及如何保存图像。
学习这些函数: cv2.imread () ,cv2.imshow () ,cv2.imwrite ()。
学习如何使用 Matplotlib 显示图像。
Read an image 读取图像
使用函数 cv2.imread ()读取图像。 图像应该在工作目录或图像的完整路径应给出。
第二个参数是一个标志,它指定了读取图像的方式。
cv2.IMREAD_COLOR :加载彩色图像。 任何图像的透明度都会被忽视。 它是默认标志
cv2.IMREAD_GRAYSCALE:以灰度模式加载图像
cv2.IMREAD_UNCHANGED:加载包括 alpha 通道在内的图像
注意:
除了这三个标志,您还可以简单地分别传递整数 1、0 或 -1。
即使图像路径是错误的,它也不会抛出任何错误,但是 print img 会给出 None
Display an image 显示图像
用函数 cv2.imshow ()在窗口中显示图像。 该窗口自动适合图像的大小。
aitkey ()是一个键盘绑定函数。 其参数是以毫秒为单位的时间。 该函数等待任何键盘事件指定的毫秒。 如果您在这段时间内按下任何键,程序将继续运行。 如果 0 被传递,它将无限期地等待一次敲击键。 它也可以设置为检测特定的按键,例如,如果按下键 a 等,我们将在下面讨论。
Destroyallwindows ()只会破坏我们创建的所有窗口。 如果您想要销毁任何特定的窗口,可以使用函数 cv2.destroyWindow () ,在该函数中将确切的窗口名称作为参数传递。
注意:
在特殊情况下,您可以先创建一个窗口,然后再将图像加载到该窗口。 在这种情况下,您可以指定窗口是否可以调整大小。 它是通过函数 cv2.namedWindow ()实现的。 默认情况下,标志是 cv2.WINDOW AUTOSIZE。 但是如果您将标志指定为 cv2.WINDOW NORMAL,则可以调整窗口的大小。 当图像尺寸太大时,在窗口添加跟踪条会很有帮助。
读取图片如下截图
Write an image 写一张图
使用函数 cv2.imwrite ()保存映像。
第一个参数是文件名,第二个参数是要保存的图像。这将以 PNG 格式保存图像到工作目录中。
Sum it up 总结一下
下面的程序加载一个图像的灰度,显示它,保存图像,如果你按's'和退出,或只是退出没有保存,如果你按 ESC 键。
注意:
如果您使用的是 64 位机器,则必须修改如下 kcv2.waitkey (0)行: kcv2.waitkey (0) & 0xFF
拓展-使用 Matplotlib
Matplotlib 是 Python 的绘图库,它提供了各种各样的绘图方法。 你会在接下来的文章中看到它们。 在这里,您将学习如何使用 Matplotlib 显示图像。 你可以使用 Matplotlib 缩放图片,保存图片等。
若没下载,请执行
使用
运行上面代码,如下:
注意:
Matplotlib 有很多可供选择的绘图方法。 更多细节请参考 Matplotlib 文档。 一些,我们会在路上看到。
Opencv 加载的彩色图像处于 BGR 模式。 但是 Matplotlib 显示为 RGB 模式。 因此,在 Matplotlib,如果使用 OpenCV 读取图像,彩色图像将无法正确显示。 详情请参阅练习。
版权声明: 本文为 InfoQ 作者【Aldeo】的原创文章。
原文链接:【http://xie.infoq.cn/article/156faf8257ea78f1416756c94】。文章转载请联系作者。
评论