Python OpenCV图片读取和保存

显示图像
python 复制代码
import cv2
import numpy as np

img = cv2.imread('image.jpg')  # 读取图像
cv2.imshow('src',img)          # 显示图像,图像显式名字src
cv2.waitKey(2000)              # 等待按键按下,等待2秒( 2000: 等待2秒(2000ms) 0:一直等待
存储图像
python 复制代码
# 读取灰色图像(默认彩色图,cv2.IMREAD_GRAYSCALE 灰度图,cv2.IMREAD_UNCHANGED 包含alpha通道)
img = cv2.imread('image.jpg',cv2.IMREAD_GRAYSCALE)  
cv2.imwrite('grayImage.png',img)	# 存储图像(会根据后缀,自动转换为对应格式)

中文路径

python 复制代码
cv2.imwrite(filename, img)
修改为
cv2.imencode('.jpg', img)[1].tofile(filename)
 
cv2.imread(filename, cv2.IMREAD_GRAYSCALE)
修改为
cv2.imdecode(np.fromfile(filename, dtype=np.uint8), cv2.IMREAD_GRAYSCALE)
图像缩放
python 复制代码
img = cv2.resize(img,(160,120))  #//更改宽(列)=160 ,高(行)=120
读取图像数据
python 复制代码
img = cv2.imread('image.jpg')  # 读取图像(返回的是numpy,方便后续数据处理) 
print(img.shape)               # 图像的高(行数)h, 宽(列数)w, 通道数c  --  如(240,320,3)   
print(img.size)                # 图像大小(总像素数目)                 --  如230400       
print(img.dtype)               # 数据类型                             -- 如 uint8         
print(img)                     # 输出图像的数据  

在进行图像处理时,需要注意以下原则:

  • 遵守版权规定:在处理他人图像时,应确保遵守版权规定,不侵犯他人版权。
  • 图像处理算法选择:根据实际需求选择合适的图像处理算法,避免过度处理。
  • 图像质量:在处理过程中,注意保持图像质量,避免失真或模糊。
  • 图像尺寸与分辨率:在处理图像时,注意图像的尺寸和分辨率,以满足后续处理和分析的需求。
  • 图像文件格式:选择合适的图像文件格式,以平衡存储空间和处理速度。
imread函数

使用imread()读取图像,imread包含两个参数:

imread(图像路径, 图像形式);

其中图像形式有三种:

  • 加载彩色图像(默认加载形式)
python 复制代码
imread(图像路径, IMREAD_COLOR);

或者:

python 复制代码
imread(图像路径, 1);
  • 加载灰度模式图像
python 复制代码
imread(图像路径, IMREAD_GRAYSCALE);

或者:

python 复制代码
imread(图像路径, 0);
  • 加载图像,包括alpha通道
python 复制代码
imread(图像路径,IMREAD_UNCHANGED);

或者:

python 复制代码
imread(图像路径, -1);
namedWindow函数

功能:namedWindow() 的功能就是新建一个显示窗口,用来显示图像。

namedWindow() 包含两个参数:

python 复制代码
namedWindow(窗口名称, 窗口形式)

窗口形式常用的两种:

  • 显示的图像大小不能改变(默认形式)

    python 复制代码
    namedWindow(窗口名称, WINDOW_AUTOSIZE)
  • 图像大小能够调节

    python 复制代码
    namedWindow(窗口名称, WINDOW_NORMAL)
imshow函数

功能:imshow函数用于显示图像。

imshow() 函数包含两个参数:

imshow(窗口名称,图像名称)

imwrite函数

功能:imwrite函数用于显示图像。
imwrite() 函数包含两个参数:

imwrite(保存图像名称及格式,图像名称)

相关推荐
禁默12 小时前
第六届大数据、人工智能与物联网工程国际会议(ICBAIE 2025)
大数据·人工智能·物联网
chxin1401612 小时前
openCV3.0 C++ 学习笔记补充(自用 代码+注释)---持续更新 四(91-)
c++·opencv·计算机视觉
Genevieve_xiao12 小时前
【dl】python基础 深度学习中需要用到的python基础
python·深度学习
m0_5782678612 小时前
从零开始的python学习(九)P142+P143+P144+P145+P146
笔记·python·学习
茜茜西西CeCe12 小时前
数字图像处理-巴特沃斯高通滤波、低通滤波
图像处理·opencv·计算机视觉·matlab·巴特沃斯高通滤波·巴特沃斯低通滤波
is081512 小时前
You Only Look Once
python
天天爱吃肉821812 小时前
【比亚迪璇玑架构深度解析:重新定义智能电动汽车的“整车智能”】
数据库·人工智能·嵌入式硬件·架构·汽车
zqy022712 小时前
HTTP的Web服务测试在Python中的实现
python·网络协议·http
豌豆花下猫13 小时前
Python 潮流周刊#119:Google 停止开发 Pytype!
后端·python·ai
千册13 小时前
pyside6 的pdf显示测试 -- 01
开发语言·python·pdf