cv2.IMREAD_COLOR:读入彩色图像,默认参数,Opencv读取彩色图像为BGR模式!!!注意
cv2.IMREAD_GRAYSCALE:读入灰度图像。
cv2.imshow(窗口名,图像文件)显示图像
可以创建多个窗口
cv2.waitKey()键盘绑定函数
函数等待特定的几毫秒,看是否由键盘输入。
cv2.namedWindow(窗口名,属性)创建一个窗口
属性:指定窗口大小模式
cv2.WINDOW_AUTOSIZE:根据图像大小自动创建大小
cv2.WINDOW_NORMAL:窗口大小可调整
cv2.destoryAllWindows(窗口名)删除任何建立的窗口
代码实例:
cv2.imwrite(保存图像名,需保存图像)保存图像
对于图像的一些操作
0x01.获取图片属性
0x02.输出文本
在处理图片时,将一些信息直接以文字的形式输出在图片上
cv2.putText(图片名,文字,坐标,文字颜色)
0x03.缩放图片
实现缩放图片并保存,在使用OpenCV时常用的操作。cv2.resize()支持多种插值算法,默认使用cv2.INTER_LINEAR,缩小最适合使用:cv2.INTER_AREA,放大最适合使用:cv2.INTER_CUBIC或cv2.INTER_LINEAR。
或者:
此处None本应该是输出图像的尺寸,因为后边设置了缩放因子
0x04.图像平移
平移就是将图像换个位置,如果要沿(x,y)方向移动,移动距离为(tx,ty),则需要构建偏移矩阵M。
例如平移图片(100,50)
其中(cols,rows)代表输出图像的大小,M为变换矩阵,100代表x的偏移量,50代表y的偏移量,单位为像素。
0x05.图像旋转
OpenCV中首先需要构造一个旋转矩阵,通过cv2.getRotationMatrix2D获得。
0x06.仿射变换
在仿射变换中,原图中所有的平行线在结果图像中同样平行。为了创建偏移矩阵,需要在原图像中找到三个点以及它们在输出图像中的位置。然后OpenCV中提供了cv2.getAffineTransform创建2*3的矩阵,最后将矩阵传给函数cv2.warpAffine。
0x07.透视变换
视角变换,需要一个3*3变换矩阵。在变换前后要保证直线还是直线。构建此矩阵需要在输入图像中找寻4个点,以及在输出图像中对应的位置。这四个点中的任意三个点不能共线。变换矩阵OpenCV提供cv2.getPerspectiveTransform()构建。然后将矩阵传入函数cv2.warpPerspective。
0x09.图像regionsofInterest
有时需要对一副图像的特定区域进行操作,ROI使用Numpy索引来获得的。
0x10.通道的拆分/合并处理
有时需要对BGR三个通道分别进行操作。这时需要将BGR拆分成单个通道。同时有时需要把独立通道的图片合并成一个BGR图像。
使用OpenCV库函数版本
使用Numpy索引版本:
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!