opencv显示图像

举报
lqj_本人 发表于 2023/03/09 23:25:25 2023/03/09
【摘要】 opencv显示图像

显示图像


导入库:

import cv2

import matplotlib.pyplot as plt

读取图片:

cv2.imread('图片路径')

显示图片:

plt.imshow(tupian)

plt.show()


导入库

import cv2 #导入cv2库
import matplotlib.pyplot as plt

读取图片

tupian = cv2.imread('1.jpg')

显示图片

plt.imshow(tupian)
plt.show()

显示的图片结果

原始的图片


注意:发现读取道德图片和我们原始的图片的颜色发生了改变。

原因:opencv读取的图片的颜色通道不是标准的RGB(红绿蓝),而是BGR(蓝绿红)的排列顺序,所以读取到的图片的颜色与原始图片的颜色会发生差别!


所以,我们尽量用我们的opencv自己去展示opencv读到的图片

opencv读取并显示图像

import cv2 #导入cv2库
 
 
cv2.namedWindow('tupian',cv2.WINDOW_NORMAL)#创建一个窗口名字为window
 
cv2.resizeWindow('tupian',800,600)#更改窗口的大小
 
tupian = cv2.imread('1.jpg')
cv2.imshow('tupian',tupian)
 
key =cv2.waitKey(0)#等待按键
 
if key & 0xFF == ord('q'):
    print('正在销毁窗口')
    cv2.destroyAllWindows()

结果对比

如果说我们在些项目的过程中会频繁的查看我们的图片,我们就可以直接给它封装一个方法:

import cv2 #导入cv2库
 
 
 
tupian = cv2.imread('1.jpg')
 
 
def cv_show(name,img):
    cv2.namedWindow('tupian', cv2.WINDOW_NORMAL)  # 创建一个窗口名字为window
    cv2.resizeWindow('tupian', 800, 600)  # 更改窗口的大小
    cv2.imshow(name,img)
    key = cv2.waitKey(0)
    if key & 0xFF == ord('q'):
        print('正在销毁窗口')
        cv2.destroyAllWindows()
cv_show('tupian',tupian)

 封装的方法:

def cv_show(name,img):
    cv2.namedWindow('tupian', cv2.WINDOW_NORMAL)  # 创建一个窗口名字为window
    cv2.resizeWindow('tupian', 800, 600)  # 更改窗口的大小
    cv2.imshow(name,img)
    key = cv2.waitKey(0)
    if key & 0xFF == ord('q'):
        print('正在销毁窗口')
        cv2.destroyAllWindows()

我们调用的使用直接用:

cv_show('tupian',tupian)

就可以显示图片了:

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。