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 图像的读取与显示

祝愉快🌟!


相关推荐
茶栀(*´I`*)3 分钟前
【NLP入门笔记】:自然语言处理基础与文本预处理
人工智能·自然语言处理·nlp
却道天凉_好个秋6 分钟前
Tensorflow数据增强(三):高级裁剪
人工智能·深度学习·tensorflow
藦卡机器人15 分钟前
国产机械臂做的比较好的品牌有哪些?
大数据·数据库·人工智能
迎仔28 分钟前
06-AI开发进阶
人工智能
陈天伟教授28 分钟前
人工智能应用- 语言处理:01.机器翻译:人类语言的特点
人工智能·自然语言处理·机器翻译
Codebee30 分钟前
OoderAgent 相比主流Agent框架的五大核心独特优势
人工智能
home_49831 分钟前
与gemini关于神的对话
人工智能·科幻·神学
代码改善世界31 分钟前
CANN深度解构:中国AI系统软件的原创性突破与架构创新
大数据·人工智能·架构
Fairy要carry32 分钟前
面试-Torch函数
人工智能
aiguangyuan1 小时前
基于BERT的中文命名实体识别实战解析
人工智能·python·nlp