gpt4 book ai didi

python - 为什么openCV存储的文件比原始文件大(kB)?

转载 作者:行者123 更新时间:2023-12-02 16:17:19 26 4
gpt4 key购买 nike

我有以两种不同方式加载和保存图像的代码-第一种使用openCV,第二种使用PIL。

import cv2
from PIL import Image

img = cv2.imread("/home/myname/png/image.png")
cv2.imwrite("/home/myname/png/image_save.png", img)

img = Image.open("/home/myname/png/image.png")
img.save("/home/myname/png/image_save_pil.png")

原始图像的大小为204.6 kB。 openCV获得的结果为245.0 kB,PIL获得的结果为204.6 kB。

为什么用openCV保存的图像尺寸较大?

最佳答案

大小差异与ZLIB压缩设置有关。

  • 默认情况下,PIL使用最多9个(请参阅here)
  • 默认情况下,OpenCV仅使用3(请参阅here)

  • 使用OpenCV,您可以使用以下代码将压缩率设置为9(来自 answer)
    cv2.imwrite('image.png', img,  [int(cv2.IMWRITE_PNG_COMPRESSION), 9])

    关于python - 为什么openCV存储的文件比原始文件大(kB)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47327641/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com