2017-06-02 74 views
0

我曾经见过像compressjpeg,kraken,tinyjpg和其他几个在压缩时决定最佳质量的网站。如果图像质量为99,则它们有时会压缩到94质量,有时会压缩到70。自动决定自适应图像压缩的最终质量

我试图研究他们的模式,发现他们都使用imagemagick,并且很可能他们有一些表读取这些图像的RGB模式,并决定什么应该是最佳的压缩级别。

我想质量是动态的所有图像,而不是下面的ImageMagick命令,我使用目前: -

convert -quality 70% input.jpg output.jpg 

下面是一些图片及其相应的质量压缩后

Name R G B Overall Size width height Tinyimg size Tinypng compression  original 
7.jpg 95.0354 120.168 158.313 124.506 266 1920 1200 159.8  70 91 
2.jpg 155.466 126.892 121.507 134.622 59 720 378 55.3 92 94 
3.jpg 230.791 230.596 230.532 230.64 28.5 720 378 10.3 69 94 
1.jpg 74.8786 99.9428 101.71 92.1772 33.5 650 400 32.8 64 69 
4.jpg 235.647 52.3033 50.1626 112.704 384 400 250 25.3 95 99 
9.jpg 194.461 180.839 183.859 186.386 12.71 300 188 12.9 75 75 
6.jpg 170.337 169.707 153.873 164.639 6.69 184 274 6.9 74 74 
5.jpg 154.196 130.809 111.683 132.229 8.5 259 194 8.5 74 74 
8.jpg 162.161 184.608 194.416 180.395 6.04 126 83 5.9 89 89 

任何指导都会有用。

+0

问题是什么? –

+0

@MarkSetchell自动选择最佳质量,同时使用imagemagick压缩图像 – janet

+0

最好的质量是100%。其他一切都是质量,尺寸和压缩时间之间的主观权衡。如果您明确将质量设置为70%,那么它将是静态的,而不是动态的。 –

回答

1

我打算把这个作为一个评论,但我决定把它作为一个答案,所以人们可以添加/删除参数和结论。

我不相信有最佳质量设置。我认为这取决于图像的目的和图像的内容 - 也许还有其他一些东西。

如果图像具有许多平滑渐变,则需要比图像具有(高频率)细节负载更高的质量设置,其中许多细节可能会丢失而没有明显的质量损失。

如果图像的目的是作为网页预览,它的质量设置可能远远低于如果图像的目的是将一幅美术风景/人像摄影传递给打印机或客户已经支付了1000英镑(我在看你冒险英国)。

一两件事你可以做的是设置你希望实现的最大文件大小,但无视上述所有:

convert -size 2048x2048 xc:gray +noise random -define jpeg:extent=100KB out.jpg 

我想我说“这取决于”

+0

它如何成为答案。如何10 kb的文件大小?你想将它们转换为100kb?如何检测图像中的高频?使用imagemagick – janet

+0

如果图像已经低于您的目标图像大小,您显然不打扰降低质量。这不是一个可以自动为你决定一切的神奇的子弹,这就是为什么我说*“它取决于”*。例如,您可以使用Fourrier分析来检测高频。 –

0

答案是Google的Guetzli

查看解释here

+0

完成这项工作需要数年的时间。它的速度很慢并且消耗整个CPU – janet

+0

CPU密集型,是的,但仍然可用。但无论如何,要么你应用一个压缩级别(btw不要忘记使用色度子采样,在JPEG压缩中降压效果最好),或者尝试优化(在这个游戏中Guetzli可能会比你更好)。 – xenoid

0

您可以尝试jpeg-archive。此实用程序使用各种指标(如SSIM,Multi-SSIM和Smallfry)提供动态压缩。你应该尝试的命令是: -

jpeg-recompress --accurate -m smallfry --quality high image.jpg compressed.jpg 

注意,这种方法欠采样保持在默认情况下,应该在良好的尺寸减小如此保持。

IMO,Guetzli现在不适合生产,特别是对于大量图像。