OpenCV | 图像读取与显示

OpenCV 对图像进行处理时,常用API如下:

API 描述
cv.imread 根据给定的磁盘路径加载对应的图像,默认使用BGR方式加载
cv.imshow 展示图像
cv.imwrite 将图像保存到磁盘中
cv.waitKey 暂停一段时间,接受键盘输出后,继续执行程序
cv.destroyAllWindows 释放所有资源

目录

  • [一. OpenCV 基本操作函数](#一. OpenCV 基本操作函数)
    • [1. cv.imread ( ) 图像读取](#1. cv.imread ( ) 图像读取)
    • [2. cv.imshow ( ) 图像显示](#2. cv.imshow ( ) 图像显示)
      • [2.3 plt.imshow ( ) 图像显示](#2.3 plt.imshow ( ) 图像显示)
        • [方式一 指定通道](#方式一 指定通道)
        • [方式二 cv.cvtColor ( )](#方式二 cv.cvtColor ( ))
    • [3. cv.waitKey ( ) 图像暂停时间](#3. cv.waitKey ( ) 图像暂停时间)
    • [4. cv.destroyAllWindows ( ) 释放资源](#4. cv.destroyAllWindows ( ) 释放资源)

一. OpenCV 基本操作函数

1. cv.imread ( ) 图像读取

复制代码
	cv2.imread(filepath,flags)
	参数:	
		filepath:要读入图片的完整路径
		flags:读入图片的标志,即默认是使用BGR模型加载图像
			   当设置为0时,表示灰度图像加载
			   当设置为1时,表示加载BGR图像, 默认为1
			   当设置为-1时,表示加载alpha透明通道的图像,即4通道
	数据格式:
		cv2.imread()的默认通道格式HWC,即img.shape
	作用:
		加载图像
		如果图像加载失败,那么返回的对象img为None
	特别注意:
		CV读取的数据为BGR
	
	补充:
   		 通道数C可能出现的值:
			通道数 = 3 读取BGR
			通道数 = 1 读取灰度图
			通道数 = 4 读取RGBA
		【注意】通道数 = 4时 ,其中A为透明度,透明度有两种取值方式:
					1. 取0,不透明;取1,透明
					2. 取20%,80%,....为透明,保留80%,20%与背景做叠加

2. cv.imshow ( ) 图像显示

复制代码
	cv.imshow(winname, mat)
	参数:
		winname:显示图像的窗口名称
		mat: 传入的图像
	【注意】
		CV读取BGR图像

2.3 plt.imshow ( ) 图像显示

复制代码
	【注意】
		matplotlib读取RGB图像
方式一 指定通道
复制代码
	B与R通道转换
方式二 cv.cvtColor ( )
复制代码
cv.cvtColor(src, code, dst=None, dstCn=None)
	参数:
		src:输入图像
		code:颜色空间转换码
		dst:输出图像;大小、深度和原图像一致
		dstCn:
			目标图像的通道数; 
			如果参数是0,通道数自动由src和code决定
	作用:
		转换一种颜色空间到另一种颜色空间

3. cv.waitKey ( ) 图像暂停时间

复制代码
	cv.waitKey( )
	作用:
		让图像暂停delay毫秒
	参数:
		当delay=0时,表示永远暂停; 直至键盘任意输入的时候,结束暂停
		当delay>0时,若在delay毫秒期间没有键盘输出值,则返回-1;否则返回键
	返回值:
		有返回值,返回值为输入字符对应的ASCII码
		即:waitKey返回值的范围为(0-255)
	转换:
		chr ( )
		ord ( )

4. cv.destroyAllWindows ( ) 释放资源

python 复制代码
cv.destroyAllWindows()

感谢阅读🌼

如果喜欢这篇文章,记得点赞👍和转发🔄哦!

有任何想法或问题,欢迎留言交流💬,我们下次见!

本文相关代码存放位置

Opencv1 图像的读取与显示

祝愉快🌟!


相关推荐
汗流浃背了吧,老弟!2 分钟前
语言模型(Language Model)介绍
人工智能·语言模型·自然语言处理
沫儿笙3 分钟前
IGM焊接机器人节气设备
人工智能·机器人
Vadaski10 分钟前
为什么每个团队都需要一套私有 Context 工程
人工智能
人工智能训练27 分钟前
Docker中容器的备份方法和步骤
linux·运维·人工智能·ubuntu·docker·容器·nvidia
渡我白衣36 分钟前
深入 Linux 内核启动:从按下电源到用户登录的全景解剖
java·linux·运维·服务器·开发语言·c++·人工智能
甄心爱学习1 小时前
数据挖掘11-分类的高级方法
人工智能·算法·分类·数据挖掘
李昊哲小课1 小时前
wsl ubuntu24.04 cuda13 cudnn9 pytorch 显卡加速
人工智能·pytorch·python·cuda·cudnn
小程故事多_801 小时前
LangChain1.0系列:中间件深度解析,让 AI智能体上下文控制不失控
人工智能·中间件·langchain
中国国际健康产业博览会1 小时前
2026第35届中国国际健康产业博览会探索健康与科技的完美结合!
大数据·人工智能
数字化脑洞实验室1 小时前
选择AI决策解决方案需要注意哪些安全和数据隐私问题?
人工智能·安全