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 库,并且图像数据是有效的。

相关推荐
延凡科技2 小时前
无人机低空智能巡飞巡检平台:全域感知与智能决策的低空作业中枢
大数据·人工智能·科技·安全·无人机·能源
2501_941329722 小时前
YOLOv8-SEAMHead改进实战:书籍检测与识别系统优化方案
人工智能·yolo·目标跟踪
晓翔仔4 小时前
【深度实战】Agentic AI 安全攻防指南:基于 CSA 红队测试手册的 12 类风险完整解析
人工智能·安全·ai·ai安全
百家方案4 小时前
2026年数据治理整体解决方案 - 全1066页下载
大数据·人工智能·数据治理
北京耐用通信4 小时前
工业自动化中耐达讯自动化Profibus光纤链路模块连接RFID读写器的应用
人工智能·科技·物联网·自动化·信息与通信
Hgfdsaqwr4 小时前
Django全栈开发入门:构建一个博客系统
jvm·数据库·python
开发者小天5 小时前
python中For Loop的用法
java·服务器·python
老百姓懂点AI5 小时前
[RAG实战] 向量数据库选型与优化:智能体来了(西南总部)AI agent指挥官的长短期记忆架构设计
python
小韩博5 小时前
一篇文章讲清AI核心概念之(LLM、Agent、MCP、Skills) -- 从解决问题的角度来说明
人工智能
沃达德软件6 小时前
人工智能治安管控系统
图像处理·人工智能·深度学习·目标检测·计算机视觉·目标跟踪·视觉检测