读取图像
OpenCV提供了函数cv2.imread()来读取图像,该函数支持各种静态图像格式。该函数的语法格式为:
retval = cv2.imread( filename[, flags] )
式中:
- retval是返回值,其值是读取到的图像。如果未读取到图像,则返回“None”。
- filename表示要读取的图像的完整文件名。
-
flags是读取标记。该标记用来控制读取文件的类型。
函数cv2.imread()能够读取多种不同类型的图像,具体如图:
例如,想要读取当前目录下文件名为lena.bmp的图像,并保持按照原有格式读入,则使用的语句为:
lena = cv2.imread("lena.bmp", -1)
显示图像
1.namedWindow函数
函数cv2.namedWindow()用来创建指定名称的窗口,其语法格式为:
None = cv2.namedWindow( winname )
例,创建一个名为lesson的窗口:
None = cv2.namedWindow("lesson")
2.imshow函数
函数cv2.imshow()用来显示图像,其语法格式为:
None = cv2.imshow( winname, mat )
# winname 窗口名称
# mat 要显示的图像
3.waitKey函数
函数cv2.waitKey()用来等待按键,当用户按下键盘后,该语句会被执行,并获取返回值。其语法格式为:
retval = cv2.waitKey( [delay] )
式中:
- retval表示返回值。如果没有按键被按下,则返回-1;如果有按键被按下,则返回该按键的ASCII码。
- delay表示等待键盘触发的时间,单位是ms。当该值是负数或者零时,表示无限等待。该值默认为0。
返回的ASCII码可以和python中ord()函数配合使用
4.destroyWindow函数
函数cv2.destroyWindow()用来释放(销毁)指定窗口,其语法格式为:
None = cv2.destroyWindow( winname )
在实际使用中,该函数通常与函数cv2.waitKey()组合实现窗口的释放。
5.destroyAllWindows函数
函数cv2.destroyAllWindows()用来释放(销毁)所有窗口,其语法格式为:
None = cv2.destroyAllWindow()
保存图像
OpenCV提供了函数cv2.imwrite(),用来保存图像,该函数的语法格式为:
retval = cv2.imwrite( filename, img[, params] )
式中:
- retval是返回值。如果保存成功,则返回逻辑值真(True);如果保存不成功,则返回逻辑值假(False)。
- filename是要保存的目标文件的完整路径名,包含文件扩展名。
- img是被保存图像的名称。
- params是保存类型参数,是可选的。