OpenCV干货1:基础操作
导包
import cv2
基础函数
读取图像
retval=cv2.imread(filename[,flags])
- flags是读取标记。该标记用来控制读取文件的类型,取值如下
创建窗口
cv2.namedWindow(winname)
- winname是要创建的窗口的名称
显示图像
cv2.imshow(winname,mat)
- mat是要显示的图像
保存图像
retval=cv2.imwrite(filename,img[,params])
- retval是返回值。如果保存成功,则返回逻辑真True;如果保存不成功,则返回逻辑假False。
- params是保存类型参数,是可选的。
访问像素点
numpy.array提供了item()和itemset()函数来访问和修改像素值,能提高处理效率。
- item(索引)——访问图像像素点
- itemset(索引,新值)——修改指定像素值
RGB通道
OpenCV中,通道是按照B通道→G通道→R通道的顺序存储的
拆分通道
索引拆分
b=image[:,:,0]
g=image[:,:,1]
r=image[:,:,2]
函数拆分
函数cv2.split()能够拆分图像的通道。
b,g,r=cv2.split(image)
合并通道
函数cv2.merge()可以实现图像通道的合并,合并后变成rgb彩色图像
bgr=cv2.merge([b,g,r])
获取常用图像属性
-
image.shape:
彩色图像,则返回包含行数、列数、通道数的数组;
二值图像或者灰度图像,则仅返回行数和列数。
-
image.size:
返回图像的像素数目。其值为“行×列×通道数”。
-
image.dtype:
返回图像的数据类型。