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

祝愉快🌟!


相关推荐
长桥夜波4 分钟前
【第十七周】机器学习笔记06
人工智能·笔记·机器学习
golang学习记6 分钟前
Claude Code2.0.12发布插件系统:构建可扩展的 AI 编程工作流
人工智能
程序猿小D6 分钟前
【完整源码+数据集+部署教程】遥感图像道路检测分割系统源码和数据集:改进yolo11-CARAFE
python·yolo·计算机视觉·目标跟踪·数据集·yolo11·遥感图像道路检测分割系统
minhuan8 分钟前
构建AI智能体:六十二、金融风控系统:基于信息熵和KL散度的异常交易检测
人工智能·信息熵·kl散度·信息论·金融风控
zy_destiny14 分钟前
【工业场景】用YOLOv8实现人员打电话识别
人工智能·python·深度学习·yolo·机器学习·计算机视觉·目标跟踪
feixiangyuncai35 分钟前
Bentley软件迎新任首席营销官,驱动AI营销新动力
人工智能·智慧城市·能源·交通物流
CoderLemon35 分钟前
告别重复编码:Claude Code 自动化开发全流程详解——启航篇-00
人工智能·claude
MARS_AI_42 分钟前
云蝠智能VoiceAgent 9月升级概览:从功能交互到用户体验
人工智能·自然语言处理·交互·信息与通信·agi
飞哥数智坊1 小时前
“狗都不用”的 Cursor Auto 模式,竟靠 Plan Mode 真香回归?
人工智能·ai编程·cursor
Mr.Winter`1 小时前
深度强化学习 | 基于SAC算法的动态避障(ROS C++仿真)
人工智能·深度学习·神经网络·机器人·自动驾驶·ros·具身智能