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

相关推荐
互联网全栈架构18 分钟前
遨游Spring AI:第一盘菜Hello World
java·人工智能·后端·spring
m0_4652157918 分钟前
大语言模型解析
人工智能·语言模型·自然语言处理
张较瘦_1 小时前
[论文阅读] 人工智能+软件工程 | 结对编程中的知识转移新图景
人工智能·软件工程·结对编程
小Q小Q2 小时前
cmake编译LASzip和LAStools
人工智能·计算机视觉
yzx9910132 小时前
基于 Q-Learning 算法和 CNN 的强化学习实现方案
人工智能·算法·cnn
token-go2 小时前
[特殊字符] 革命性AI提示词优化平台正式开源!
人工智能·开源
cooldream20093 小时前
华为云Flexus+DeepSeek征文|基于华为云Flexus X和DeepSeek-R1打造个人知识库问答系统
人工智能·华为云·dify
老胖闲聊6 小时前
Python Copilot【代码辅助工具】 简介
开发语言·python·copilot
Blossom.1186 小时前
使用Python和Scikit-Learn实现机器学习模型调优
开发语言·人工智能·python·深度学习·目标检测·机器学习·scikit-learn
曹勖之7 小时前
基于ROS2,撰写python脚本,根据给定的舵-桨动力学模型实现动力学更新
开发语言·python·机器人·ros2