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

相关推荐
2601_9654488710 分钟前
AI视频制作:做系列节气民俗视频音色不统一,AI 音色克隆省事的方法
人工智能·机器学习·音视频
美狐美颜SDK开放平台13 分钟前
视频美颜SDK试用DEMO阶段应该测试什么?直播APP接入实操指南
开发语言·人工智能·深度学习·音视频·美颜sdk·直播美颜sdk·第三方美颜sdk
HRaitest20 分钟前
秋招技术岗招聘提效:三类 AI 招聘方案的技术底层与选型逻辑
大数据·人工智能·求职招聘·ai-native
天远数科27 分钟前
零信任架构实战:基于天远企业股权变更构建自动化商业银行对公授信存续期股权异动与资产抽逃预警网关
运维·人工智能·架构·自动化
万化冥合31 分钟前
PyBox屏幕键盘如何辅助演示键盘操作?
python·计算机外设
车软学堂37 分钟前
从测试转开发,到底要补什么
网络·人工智能·python·功能测试·单片机·车载系统·自动化
天空依然蔚蓝39 分钟前
分享一个自动检测网站在线状态的python程序
python·运维开发·1024程序员节
岁月宁静1 小时前
一个 AI 项目从本地到上线,要经过哪些步骤?全流程讲清楚
python·docker·agent
海盗12341 小时前
AI 新闻日报 10-28:Atria Dawn 完整版开源、Cursor Agent SDK 转正、Genie 4 实时世界模型
人工智能·机器人·开源·人工智能aigc
志尊宝2 小时前
AI原生前端开发(035):AI时代的工程化最佳实践总结
人工智能·ai-native