【问题标题】:Not losing the quality of pictures saved with cv2.imwrite()不丢失用 cv2.imwrite() 保存的图片质量
【发布时间】:2015-05-10 12:47:14
【问题描述】:

我很想知道 OpenCV 的 cv2.imwrite() 函数的效果。

我注意到,当我使用cv2.imread() 读取图片并再次使用cv2.imwrite() 功能保存它们时,它们的质量对于人眼来说已经不一样了。

请问如何使用cv2.imwrite()函数保存后的图像质量与原图相同。

我问这个问题是因为我在一个更大的程序中确实有一个严重的问题,当我检查这个函数保存的图片质量时,我猜我的问题肯定来自这个函数。

例如,我使用鼠标移动在图片上绘制红色 (Red=255) 小方块。当我保存图片并计算红色等于 255 的像素数时,即使我用纯红色绘制了很多像素,我也只会得到很少的像素。但是当我用眼睛检查图像时,我注意到我绘制的红色像素没有正确保存为我选择的正确红色 (255)。

有人知道如何解决这个问题吗?我的意思是在不降低质量的情况下使用 OpenCV 保存图片。

【问题讨论】:

  • 你写什么格式? jpg? gif?

标签: python opencv colors python-2.x


【解决方案1】:

JPEG 是一种有损格式,您需要将图像保存为 PNG,因为它是一种无损格式。

【讨论】:

  • 每次有人抱怨为什么保存到文件时图像质量很差,从我在回答问题时看到的情况来看,这就是原因。 +1。
  • 尝试将 jpeg 转换为 png,但它仍然遭受重大的颜色损失,好像在其上添加了一层消除了所有亮度。如果有人有兴趣,这里有2个进行比较。 storage.googleapis.com/p_temp/…storage.googleapis.com/p_temp/1.png
猜你喜欢
  • 2020-02-27
  • 1970-01-01
  • 2020-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-24
  • 1970-01-01
相关资源
最近更新 更多