目录
读取图片
读取图片使用imread函数,注意:opencv读取图片,默认颜色通道是BGR,而不是RGB。
def imread(filename, flags=None)
imread函数第一个参数为图片存放的路径,第二个参数是可选项,有3个选项可以进行选择
参数 | 作用 |
---|---|
cv2.IMREAD_COLOR | 这个是默认选项,表示原图,可用1代替 |
cv2.IMREAD_GRAYSCALE | 按照灰度图片进行读取,可用0代替 |
cv2.IMREAD_UNCHANGED | 读入完整图片,包括alpha通道,可用-1作为实参替代 |
显示图片
使用imshow函数即可
def imshow(winname, mat)
第一个参数表示窗口名称,第二个参数就是要显示的图像。
保存图片
保存图片使用imwrite函数
def imwrite(filename, img, params=None)
第一个参数为要保存的路径和名称,第二个参数为图片,最后一个参数为可选项,选项如下
参数 | 作用 |
---|---|
cv2.CV_IMWRITE_JPEG_QUALITY | 设置 .jpeg/.jpg 格式的图片质量,取值为 0-100,默认95,值越高,图片质量越好 |
cv2.CV_IMWRITE_WEBP_QUALITY | 设置 .webp 格式的图片质量,取值为 0-100 |
cv2.CV_IMWRITE_PNG_COMPRESSION | 设置 .png 格式图片的压缩比,取值为 0-9(默认3),数值越大压缩比越大 |
该函数有一个返回值,保存成功返回True,失败返回False
应用实例
import cv2
# 读取图片
img = cv2.imread('../images/ysn.jpg')
# 显示图片
cv2.imshow('ysn', img)
# 循环检测用户按下的按键
while True:
# 得到用户按下的按键的ASCII码
key = cv2.waitKey(0)
# 按下q键结束程序
if key & 0xFF == 113:
cv2.destroyAllWindows()
break
# 按下s键保存图像
elif key & 0xFF == 115:
cv2.imwrite('../images/123.png', img)
上面代码可以实现读取展示图片,当按下s键时保存图片。其中key & 0xFF表示只取整数值的后8位,因为ASCII的值最大为127。
运行截图
按下s键对图片进行保存,然后按q键结束程序。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/140285.html