opencv-python库 cv2.imwrite() 保存图片

cv2.imwrite 是 OpenCV 库中的一个函数,用于将图像数据保存为文件。其基本语法如下:

python

cv2.imwrite(filename, img, [params])

参数说明:

  • filename:要保存的图像的文件名,包括文件路径和扩展名(如 .jpg, .png 等)。需要加上文件扩展名以指定图像格式。
  • img:要保存的图像数据,通常是一个二维数组(对于灰度图像)或三维数组(对于彩色图像)。这个数组可以是 OpenCV 读取的图像,也可以是经过处理后的图像数据。
  • params:可选参数,是一个列表,用于指定保存图像的格式和质量等信息。例如,对于 JPEG 图像,可以使用 cv2.IMWRITE_JPEG_QUALITY 来指定压缩质量。

示例用法:

python 复制代码
import cv2

# 读取图像
img = cv2.imread('input.jpg')

# 对图像进行处理(可选)
# 例如,可以调整图像大小、裁剪、转换颜色空间等
# processed_img = cv2.resize(img, (800, 600))

# 保存图像
# 指定文件名和格式(通过文件扩展名)
cv2.imwrite('output.jpg', img)

# 如果需要指定保存参数,可以使用 params 参数
# 例如,保存 JPEG 图像并指定压缩质量为 90
params = [cv2.IMWRITE_JPEG_QUALITY, 90]
cv2.imwrite('output_high_quality.jpg', img, params)

注意事项:

  • 确保文件路径和文件名正确,并且具有写入权限。
  • 图像数据的类型和范围应与目标图像格式兼容。例如,对于 JPEG 格式,图像数据应为 8 位无符号整数(uint8)。
  • params 参数是可选的,并且不是所有图像格式都支持额外的保存参数。例如,PNG 格式不支持压缩质量参数。
    OpenCV 支持多种图像格式,包括 BMP、PNG、JPEG、TIFF 等。保存的图像格式由文件扩展名决定。

错误处理:

如果 cv2.imwrite 函数调用失败,它不会返回错误信息。为了确保图像已成功保存,可以检查文件是否存在于指定路径,或者捕获可能发生的异常。

python 复制代码
try:
    cv2.imwrite('output.jpg', img)
    print("图像保存成功")
except Exception as e:
    print("图像保存失败:", e)

使用 cv2.imwrite 时,请确保已正确安装 OpenCV 库,并且图像数据是有效的。

相关推荐
databook13 小时前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室14 小时前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
飞哥数智坊15 小时前
GPT-5-Codex 发布,Codex 正在取代 Claude
人工智能·ai编程
倔强青铜三15 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
虫无涯16 小时前
Dify Agent + AntV 实战:从 0 到 1 打造数据可视化解决方案
人工智能
Dm_dotnet18 小时前
公益站Agent Router注册送200刀额度竟然是真的
人工智能
算家计算18 小时前
7B参数拿下30个世界第一!Hunyuan-MT-7B本地部署教程:腾讯混元开源业界首个翻译集成模型
人工智能·开源
用户25191624271119 小时前
Python之语言特点
python
机器之心19 小时前
LLM开源2.0大洗牌:60个出局,39个上桌,AI Coding疯魔,TensorFlow已死
人工智能·openai
刘立军19 小时前
使用pyHugeGraph查询HugeGraph图数据
python·graphql