Opencv函数入门:cv.imread;cv2.applyColorMap;cv2.imshow;cv2.imwrite; cv2.namedWindow;cv2.waitKey;cv2.destroyAllWindow; cv2.destroyWindow
opencv的函数
cv2.imread(filepath,flags)
用于读取图片文件。cv2读取的图片为BGR格式。
包括两个参数,filepath:图片路径;flags:读取图片的形式
cv2.imread读出的图片格式是uint8;value是numpy array。
flags有三种:
cv2.IMREAD_COLOR:加载彩色图片,默认参数,可以直接写1。
cv2.IMREAD_GRAYSCALE:以灰度模式加载图片,可以直接写0。
cv2.IMREAD_UNCHANGED:包括alpha,可以直接写-1
cv2.imread()读取图片后以多维数组的形式保存图片信息,前两维表示图片的像素坐标,最后一维表示图片的通道索引,具体图像的通道数由图片的格式来决定
cv2.applyColorMap(src, userColor[, dst])
产生伪彩色图像。
包括两个参数,src:图片名称;userColor:使用的模式。
# COLORMAP_AUTUMN = 0,
# COLORMAP_BONE = 1,
# COLORMAP_JET = 2,
# COLORMAP_WINTER = 3,
# COLORMAP_RAINBOW = 4,
# COLORMAP_OCEAN = 5,
# COLORMAP_SUMMER = 6,
# COLORMAP_SPRING = 7,
# COLORMAP_COOL = 8,
# COLORMAP_HSV = 9
,
# COLORMAP_PINK = 10,
# COLORMAP_HOT = 11
具体详见 https://blog.csdn.net/jningwei/article/details/78803669
cv2.imshow(wname,img)
展示图像。
包括两个参数,wname:展示图像的窗口的名字;
img:所要展示的图像,格式为numpy.ndarray,并且numpy.ndarray中的每个元素的dtype应该为numpy.uint8。
窗口大小自动调整为图片大小。
cv2.imwrite(file,img,num)
保存图像。
包括三个参数,file:要保存的文件名;img:要保存的图像;num:可选的第三个参数。
对于JPEG,表示的是图像的质量,用0-100的整数表示,默认95,数值越大图片质量越高。
cv2.imwrite('1.jpg',img,[int(cv2.IMWRITE_JPEG_QUALITY),95])
对于png,表示的是压缩级别,用0-9的整数表示,默认为3,数值越大压缩比越大。
cv2.imwrite('1.png',img,[int(cv2.IMWRITE_PNG_COMPRESSION),6])
cv2.namedWindow(const string& winname, int flags=WINDOW_AUTOSIZE)
创建窗口。
const string& winname:给窗口起的名字。
WINDOW_AUTOSIZE: 窗口大小自动适应图片大小,并且不可手动更改。是默认值。
WINDOW_NORMAL: 可以改变这个窗口大小(没有限制)。
WINDOW_OPENGL :窗口创建的时候会支持OpenGL。
cv2.waitKey([delay])
等待指定的毫秒数看是否有键盘输入。
delay:延迟的时间,单位为毫秒。
当delaytime为0时,表示forever,无限等待。
若在等待时间内按下任意键则返回按键的ASCII码,程序继续运行。
若没有按下任何键,超时后返回-1。
不调用waitKey的话,窗口会一闪而逝,看不到显示的图片。
具体详见 https://blog.csdn.net/weixin_36670529/article/details/100977868
cv2.destroyAllWindow()
销毁所有窗口。
cv2.destroyWindow(wname)
销毁指定窗口。
wname:销毁窗口的名字。