当前位置: 首页 > news >正文

opencv显示图像

   大家好,我是csdn的博主:lqj_本人

这是我的个人博客主页:

lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm=1011.2415.3001.5343哔哩哔哩欢迎关注:小淼前端

小淼前端的个人空间_哔哩哔哩_bilibili

本篇文章主要讲述python的人工智能视觉领域(opencv),本篇文章已经成功收录python人工智能视觉(opencv)从入门到实战专栏中:

https://blog.csdn.net/lbcyllqj/category_12200666.htmlicon-default.png?t=N176https://blog.csdn.net/lbcyllqj/category_12200666.html

显示图像

导入库:

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)#创建一个窗口名字为windowcv2.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)  # 创建一个窗口名字为windowcv2.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)  # 创建一个窗口名字为windowcv2.resizeWindow('tupian', 800, 600)  # 更改窗口的大小cv2.imshow(name,img)key = cv2.waitKey(0)if key & 0xFF == ord('q'):print('正在销毁窗口')cv2.destroyAllWindows()

我们调用的使用直接用:

cv_show('tupian',tupian)

就可以显示图片了:

http://www.lryc.cn/news/3755.html

相关文章:

  • C++:类和对象(中)
  • 53. 最大子数组和
  • 基于Java+SpringBoot+SpringCloud+Vue前后端分离医院管理系统设计与实现
  • QT基础入门【环境配置篇】linux桌面QT开发环境的构建以及问题解决
  • Linux系统之部署企业内部静态导航页
  • 2023备战金三银四,Python自动化软件测试面试宝典合集(四)
  • 算法训练营 day43 动态规划 不同路径 不同路径 II
  • 关联查询的SQL有几种情况
  • 查缺补漏三:事务隔离级别
  • 没有她的通讯录(C语言实现)
  • Spring Security 从入门到精通
  • 微信小程序Springboot vue停车场车位管理系统
  • 看完这篇 教你玩转渗透测试靶机vulnhub——Hack Me Please: 1
  • nodejs+vue地铁站自动售票系统-火车票售票系统vscode
  • Spring Security in Action 第十二章 OAuth 2是如何工作的?
  • 天工开物 #5 我的 Linux 开发机
  • 【沁恒WCH CH32V307V-R1开发板输出DAC实验】
  • Linux进程控制详解
  • C语言深度剖析之程序环境和预处理
  • 【Spark分布式内存计算框架——Spark Core】9. Spark 内核调度(上)
  • Vulkan教程(15): Graphics pipeline之Render passes(渲染通道)
  • 乐观锁、雪花算法、MyBatis-Plus多数据源
  • 详解Redisson分布式限流的实现原理
  • [python入门㊹] - python测试类
  • Web 框架 Flask 快速入门(二)表单
  • C++基础(5) - 复合类型(上)
  • java重写(@Override)介绍及实例说明
  • 基于STM32的虚拟示波器
  • 搭建云端vscode-server,使用web ide进行远程开发
  • Linux clock子系统及驱动实例