摘要:以毫秒为单位延迟。默认为代码应用加载一幅灰度图像,显示它,如果按则保存图像并退出,如果按键直接退出。使用使用显示图像。
以前也用过opencv, 不过都是按需使用, 掌握的知识很零散, 这次希望能够系统学习opencv-python
本文直接从Gui Features开始.
1 读取图片使用cv2.imread()函数读取图像.
cv2.imread(filename[, flags])
filename 图片的路径, 图片应该在工作目录下, 不然应给出图片完整路径
flags 指定图像读取方式:
cv2.IMREAD_COLOR : 加载彩色图像. 图像的任何透明度都将被忽略.(默认)
cv2.IMREAD_GRAYSCALE : 以灰度模式加载图像.
cv2.IMREAD_UNCHANGED : 加载包含Alpha通道的图像
Note : 可以使用1,0,-1 代替表示上述三种图像读取方式
代码 :
import cv2 img = cv2.imread("E:/pyproject/haha.jpg",1)
Note :
如果缺少文件,权限不当,格式不受支持或无效,当print(图片)时,将返回None.
该函数通过内容而不是文件扩展名来决定图像类型.
图像数据将以B,G,R的顺序存储.
2 显示图片使用cv2.imshow()函数读取图像.
cv2.imshow(winname, mat)
winname 显示窗口的名字
mat 要显示的图像
cv2.namedWindow(winname[, flags])
winname 显示窗口的名字
flags 显示窗口的标志:
cv2.WINDOW_AUTOSIZE : 根据显示图像自动调整窗口,不能手动更改窗口大小(默认)
cv2.WINDOW_NORMAL : 可以调整窗口大小
……
cv2.waitKey([, delay]) 一个绑定键盘功能。
delay 以毫秒为单位延迟。 0是指“永远”的特殊值。
cv2.destroyAllWindows()
简单地破坏我们创建的所有窗口。如果想销毁任何特定的窗口,在其中传递确切的窗口名称作为参数。
Note :
如果显示图像窗口在imshow()未提前创建,系统将默认cv2.WINDOW_AUTOSIZE创建窗口
代码一 :
cv2.imshow("showing",img) cv2.waitKey(0) cv2.destroyAllWindows()
代码二 :
cv2.namedWindow("showing", cv2.WINDOW_NORMAL) cv2.imshow("showing",img) cv2.waitKey(0) cv2.destroyAllWindows()3 保存图片
cv2.imwrite(filename, img[, params])
filename 图像名称
img 保存的图像
params 对于JPEG,其表示的是图像的质量,用0 - 100的整数表示,默认95;对于png ,第 三个参数表示的是压缩级别。默认为3.
代码 :
cv2.imwrite("E:/pyproject/1.jpg",img, [int( cv2.IMWRITE_JPEG_QUALITY), 95])应用:
加载一幅灰度图像,显示它,如果按"s"则保存图像并退出,如果按ESC键直接退出。
import cv2 img = cv2.imread("E:/pyproject/haha.jpg",0) cv2.imshow("image",img) k = cv2.waitKey(0)& 0xFF if k == 27: # wait for ESC key to exit cv2.destroyAllWindows() elif k == ord("s"): # wait for "s" key to save and exit cv2.imwrite("messigray.png",img) cv2.destroyAllWindows()4 使用 Matplotlib
使用Matplotlib显示图像。 你可以放大图像,使用Matplotlib保存等。
import cv2 from matplotlib import pyplot as plt img = cv2.imread("E:/pyproject/haha.jpg",0) plt.imshow(img, cmap = "gray", interpolation = "bicubic") plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis plt.show()
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/41873.html
阅读 1181·2021-09-22 15:24
阅读 2285·2019-08-30 15:44
阅读 2614·2019-08-30 10:55
阅读 3354·2019-08-29 13:25
阅读 1638·2019-08-29 13:09
阅读 1391·2019-08-26 14:05
阅读 1379·2019-08-26 13:58
阅读 1984·2019-08-26 11:57