python - OpenCV - 在将图像写入文件时指定格式 (cv2.imwrite)

标签 python image opencv opencv3.0

我想使用 opencv 的 imwrite 保存一张没有任何扩展名的图像。我知道 cv2.imwrite 中的图像格式是根据 filename 扩展名选择的。有没有办法在调用函数时指定压缩格式,或者我是否必须在创建后重命名文件?

cv2.imwrite(filename, img)
[Out]: /home/travis/miniconda/conda-bld/work/opencv-3.1.0/modules/imgcodecs/src/loadsave.cpp:459: error: (-2) could not find a writer for the specified extension in function imwrite_

最佳答案

我认为在不扩展的情况下保存图像时无法指定图像的压缩。我建议使用扩展名保存它,然后使用 os.rename():

import os
import cv2

filename = "image.jpg"
img = ...

cv2.imwrite(filename, img)
os.rename(filename, os.path.splitext(filename)[0])

希望这对您有所帮助!

关于python - OpenCV - 在将图像写入文件时指定格式 (cv2.imwrite),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37010562/

相关文章:

python - 使用用户输入搜索并替换 .txt 文件中的字符串

html - 屏幕调整大小时,单行显示的等宽图像不会停留在同一行

javascript - JQuery - 预加载图像(使用 JQuery/原生 JavaScript/CSS)

python - 具有精确的移动距离和方向变化如何填充OpenCV透视变换矩阵(disparity-to-depth)?

java - 将脚本从 python 翻译为 java 时出现问题

python - 将 None 替换为 Null,到位

python - 属性错误 : 'Foo' object has no attribute 'max'

javascript - 在 JS 中平铺图像的最简单方法

java - 显示来自 submat 的图像时出现 MattoBitmap 错误

python - 如何用 opencv - Python 打开 M1054 Axis 相机