失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 使用Python OpenCV加载图像并将其显示在屏幕上?

使用Python OpenCV加载图像并将其显示在屏幕上?

时间:2022-08-30 01:17:18

相关推荐

使用Python OpenCV加载图像并将其显示在屏幕上?

这篇博客展示了如何使用OpenCV从磁盘上读取图像,在屏幕上显示它,然后等待按键关闭窗口并终止脚本。

cv2.imread()

cv2.imwrite()

cv2.imshow()

cv2.imread(“imagePath”,flag)

–imagePath 图片的路径,即使不是图片路径,读取也不报错,只是打印image会显示None–flag 读取图片的方式 (也可以用1,0,-1,分别代表下边的3种方式)

cv2.IMREAD_COLOR : 读取三通道BGR图像,忽略透明度,默认模式

cv2.IMREAD_GRAYSCALE : 读取灰度图

cv2.IMREAD_UNCHANGED : 读取四通道图(BGR + 透明度alpha通道);

#导入必要的包(命令行参数包、OpenCV绑定)import argparseimport cv2ap = argparse.ArgumentParser()ap.add_argument("-i", "--image", required=True, help="Path to the image")args = vars(ap.parse_args())# 加载图片 参数:文件路径image = cv2.imread(args["image"])# 展示图片到窗口 参数1:窗口名称 参数2:我们要展示的图片cv2.imshow("image", image)# v2.waitKey()是键盘绑定功能。它的参数是时间(以毫秒为单位)。该函数等待任何键盘事件的指定毫秒数。如果在此期间按任意键,程序将继续。如果传递0,它将无限期地等待击键。cv2.waitKey(0)# 关闭所有的窗口,关闭特定的窗口可以使用 cv2.destroyWindow("windowName")cv2.destroyAllWindows()

执行脚本:

python load_image.py --image flower.jpg

用matplot展示图片

由于读取后图片是BGR通道,需要稍微处理下转换为RGB

import cv2import numpy as npimport matplotlib.pyplot as pltimg = cv2.imread('D://imageProcessing/images/flower.jpg')b, g, r = cv2.split(img)img2 = cv2.merge([r, g, b])plt.subplot(121);plt.imshow(img) # expects distorted colorplt.subplot(122);plt.imshow(img2) # expect true colorplt.show()cv2.imshow('bgr image', img) # expects true colorcv2.imshow('rgb image', img2) # expects distorted colorcv2.waitKey(0)cv2.destroyAllWindows()

参考:

/questions/15072736/extracting-a-region-from-an-image-using-slicing-in-python-opencv/15074748#15074748https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_gui/py_image_display/py_image_display.html#display-image

如果觉得《使用Python OpenCV加载图像并将其显示在屏幕上?》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。