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

祝愉快🌟!


相关推荐
千宇宙航3 小时前
闲庭信步使用SV搭建图像测试平台:第三十一课——基于神经网络的手写数字识别
图像处理·人工智能·深度学习·神经网络·计算机视觉·fpga开发
onceco3 小时前
领域LLM九讲——第5讲 为什么选择OpenManus而不是QwenAgent(附LLM免费api邀请码)
人工智能·python·深度学习·语言模型·自然语言处理·自动化
whoarethenext6 小时前
使用 C++/OpenCV 和 MFCC 构建双重认证智能门禁系统
开发语言·c++·opencv·mfcc
jndingxin6 小时前
OpenCV CUDA模块设备层-----高效地计算两个 uint 类型值的带权重平均值
人工智能·opencv·计算机视觉
Sweet锦6 小时前
零基础保姆级本地化部署文心大模型4.5开源系列
人工智能·语言模型·文心一言
hie988947 小时前
MATLAB锂离子电池伪二维(P2D)模型实现
人工智能·算法·matlab
晨同学03277 小时前
opencv的颜色通道问题 & rgb & bgr
人工智能·opencv·计算机视觉
蓝婷儿7 小时前
Python 机器学习核心入门与实战进阶 Day 3 - 决策树 & 随机森林模型实战
人工智能·python·机器学习
大千AI助手7 小时前
PageRank:互联网的马尔可夫链平衡态
人工智能·机器学习·贝叶斯·mc·pagerank·条件概率·马尔科夫链
小和尚同志8 小时前
Cline | Cline + Grok3 免费 AI 编程新体验
人工智能·aigc