需要帮助来创建Jpeg代际降级代码

时间:2019-07-13 16:48:20

标签: python image python-imaging-library jpeg cv2

我目前正在为.jpeg张图片创建Generation loss代码。

理论:- .jpg是一种有损压缩格式(大部分情况下)。即,每次将图像转换为.jpg时,原始图像的某些内容/数据都会在处理过程中丢失。这样可以减小文件大小,但是由于丢失数据,图像的质量比原始图像低。在大多数使用情况下,质量的下降可以忽略不计。但是,如果执行此过程的时间很长,那么图像的所有像素数据都会被压缩(丢失)很多次,以至于我们最终只能得到随机噪声。

我尝试在PILcv2上执行此操作,但没有成功。

我尝试过的操作:-打开图像(例如,图像格式为.png的图像,然后将其转换为.jpg。然后将图像(当前格式为.jpg)转换回.png,以便可以多次执行上述过程。

我背后的原因是,由于我们将原始图像转换为jpeg,因此一些数据应该丢失。

我正在使用cv2.imshow()显示图像,因为该窗口一直保持活动状态,直到显式销毁为止,或者遇到cv2.destroyWindow() / cv2.destroyAllWindows()

我希望图像能够显示出来,并且随着程序的进行,图像的质量会逐渐降低,但是由于某些原因,图像保持不变。因此,我希望有人能帮助我从头开始创建代码(因为我目前的努力徒劳)。

P.S。:-我之所以没有发布任何代码,是因为它更多的是虚假的东西,而不是任何具体的东西,并且对实现目标没有任何帮助。所以我上传它只会浪费时间,其他人会花时间分析它。

1 个答案:

答案 0 :(得分:0)

理论上的缺陷在这里:

  

每次将图像转换为.jpg时,原始图像的某些内容/数据都会在此过程中丢失。

如果您已经转换为JPEG并使用相同的设置重新压缩,则可能不会丢失数据。