OpenCV基础01-图像文件的读取与保存

介绍:

OpenCV是 Open Souce C omputer V sion Library的简称。要使用OpenCV需要安装OpenCV包,使用前需要导入OpenCV模块

安装 命令 pip install opencv-python

导入 模块 import cv2

1. 图像的读取

python 复制代码
import cv2
img = cv2.imread(path, flag)

这里的flag 是可选参数,默认是 1,将图像转为三通道 BGR 色彩空间。

如果是0表示将图像转为 灰度再读取

2. 图像的保存

python 复制代码
import cv2
cv2.imwrite(path, imageObject)

3. 图像的显示-- 使用matplotlib

python 复制代码
import cv2
import matplotlib.pyplot as plt
img = cv2.imread('come.jpg')
plt.imshow(img)
plt.show()

结果:

这里第一张图是用画图工具打开显示的,第二张图是 python matplotlib 显示的图片,二者的不同是因为,cv2.imread() 返回的是BGR 色彩空间,而我们一般所用的RGB色彩空间,可以通过色彩空间的转化实现第一张图。

python 复制代码
import cv2
import matplotlib.pyplot as plt
img = cv2.imread('come.jpg')
plt.imshow(cv2.cvtColor(img,cv2.COLOR_BGR2RGB))
plt.show()

结果:转换之后的显示一致了

4. 灰度读取显示

python 复制代码
import cv2
import matplotlib.pyplot as plt
img = cv2.imread('come.jpg',0)
plt.imshow(cv2.cvtColor(img,cv2.COLOR_BGR2RGB))
plt.show()

结果:

python 复制代码
import cv2
import matplotlib.pyplot as plt
img = cv2.imread('come.jpg',65)
plt.imshow(cv2.cvtColor(img,cv2.COLOR_BGR2RGB))
plt.show()

缩小1/8, 结果

5. 图像显示 -- 使用OpenCV自带的函数

python 复制代码
import cv2
import matplotlib.pyplot as plt
img = cv2.imread('come.jpg',1)
cv2.imshow("titlename",img) # 指定窗口名为 titlename 显示 img 对象
ret = cv2.waitKey(0) # 等待按键输入,0 表示无限等待,参数单位是毫秒,ret 是按键返回的按键值,可以通过 ord('A') 查看 A的键值
cv2.destroyWindow("titlename") # 关闭 titlename 窗口

结果:

相关推荐
胖头鱼的鱼缸(尹海文)40 分钟前
数据库管理-第376期 Oracle AI DB 23.26新特性一览(20251016)
数据库·人工智能·oracle
瑞禧生物ruixibio43 分钟前
4-ARM-PEG-Pyrene(2)/Biotin(2),多功能化聚乙二醇修饰荧光标记生物分子的设计与应用探索
arm开发·人工智能
大千AI助手1 小时前
Huber损失函数:稳健回归的智慧之选
人工智能·数据挖掘·回归·损失函数·mse·mae·huber损失函数
墨利昂1 小时前
10.17RNN情感分析实验:加载预训练词向量模块整理
人工智能·rnn·深度学习
【建模先锋】1 小时前
一区直接写!CEEMDAN分解 + Informer-LSTM +XGBoost组合预测模型
人工智能·lstm·ceemdan·预测模型·风速预测·时间序列预测模型
fsnine1 小时前
YOLOv2原理介绍
人工智能·计算机视觉·目标跟踪
倔强的石头1062 小时前
AI修图革命:IOPaint+cpolar让废片拯救触手可及
人工智能·cpolar·iopaint
文火冰糖的硅基工坊2 小时前
[人工智能-大模型-15]:大模型典型产品对比 - 数字人
人工智能·大模型·大语言模型
JJJJ_iii2 小时前
【机器学习05】神经网络、模型表示、前向传播、TensorFlow实现
人工智能·pytorch·python·深度学习·神经网络·机器学习·tensorflow
William.csj2 小时前
服务器/Pytorch——对于只调用一次的函数初始化,放在for训练外面和里面的差异
人工智能·pytorch·python