OpenCV-Python|Gui模块 — 读取、显示、保存图像

OpenCV-Python|Gui模块 — 读取、显示、保存图像

前言

OpenCV-Python Gui模块主要是实现一些图形用户接口,例如创建窗口显示图像、画图、鼠标事件等。

读取图像

使用cv.imread()函数读取图像,第一个参数为图像的相对路径或绝对路径,第二个参数为读取图像的方式:

  • CV.IMREAD_COLOR: 加载彩色图像,忽略透明度通道。默认参数
  • CV.IMREAD_GRAYSCALE: 加载为灰度图
  • CV.IMREAD_UNCHANGED: 加载图像,包括alpha通道
    上面三个参数也可分别用1,0,-1替代。
import numpy as np
import cv2 as cv

# 读取灰度图
img = cv.imread('messi5.jpg', 0)

显示图像

使用cv.imshow()函数在窗口中显示图像。第一个参数是窗口名,字符串类型;第二个参数是图像。

cv.imshow('image', img)
cv.waitKey(0)
cv.destroyAllWindows()

在这里插入图片描述
cv.waitKey()是一个键盘绑定函数。它的参数是毫秒。该函数等待任何键盘事件的指定毫秒数,如果在这段时间内按下键盘,程序就会继续。如果参数是0,则会一直等待按键。也可以用它等于某个值来检测某个特定的按键是否按下。
cv.destroyAllWindows()用来关闭窗口。如果想关闭某个具体的窗口,可以使用cv.destroyWindow(),其参数是窗口名字符串。
如果想先创建一个窗口之后再加载图像,可以使用cv.namedWindow()函数,默认参数是cv.WINDOW_AUTOSIZE,可以自适应窗口大小。如果想调整窗口大小,可以使用cv.WINDOW_NORMAL参数。

cv.namedWindow('image', cv.WINDOW_NORMAL)
cv.imshow('image', img)
cv.waitKey(0)
cv.destroyAllWindows()

保存图像

使用cv.imwrite()保存图像。第一个参数是文件名,第二个参数是要保存的图像。

cv.imwrite('messigray.png', img)

这会将图像以PNG格式保存在工作目录下。

小结

下面的程序将一张图片加载为灰度图并显示,如果按下Esc键退出程序,如果按下s键则保存并退出。

import numpy as np
import cv2 as cv

# 读取灰度图
img = cv.imread('messi5.jpg', 0)
cv.imshow('image', img)
k = cv.waitKey(0)
if k == 27:         # 等待ESC键退出
    cv.destroyAllWindows()
elif k == ord('s'): # 等待s键保存并退出
    cv.imwrite('messigray.png', img)
    cv.destroyAllWindows()

参考

https://docs.opencv.org/3.4.2/dc/d2e/tutorial_py_image_display.html.

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值