2017-08-19 54 views
0

我在Photoshop中打开某些jpeg文件(来自Facebook和Instagram以及部分三星手机的文件)时出现问题。我读过如果使用mogrify -comment test insert-image-here.jpg,它会“处理”文件,并以某种方式在Photoshop中打开。令人惊讶的是,它工作得很好。Mogrify在添加exif注释时减少图像文件大小

但是,我最近使用上面的命令“mogrified”一个图像,只是让文件大小减少了0.71mb,这令人震惊,因为我不想用jpeg重新压缩图像。然后我再次模仿了十次,但我没有看到任何明显的视觉损失。我尝试了将一幅170kb的小图像“原始”化20次,并且文件大小最初减小了,然后每次迭代都增加了。我通过快速交换文件来比较文件,但没有看到任何质量损失。

什么是mogrify这样做是减少文件大小,看似没有降低质量?是否有一个质量选项,我可以添加使mogrify不减少文件大小?

这是来自另一个用户Why does the size of my image decrease when I add a comment to an image?的类似问题,但我无法辨别任何质量损失,所以通过95%或70%质量20次运行我的图像将立即引人注目。

这里是链接到图像,我使用作为测试:http://ocicat.wildrain.tripod.com/sitebuildercontent/sitebuilderpictures/aragon.jpg

编辑:

我通过mogrify命令跑了多个图像1000倍(其我没有白噪声中的一个” )我仍然没有看到任何质量损失 - 是不明显的JPEG压缩(也许我的眼睛让我失望)。有趣的是,这两幅图像的最终文件大小和原始文件大小是相同的。

零迭代: enter image description here

1000次迭代: enter image description here

+0

我注意到我的iPad上的Safari浏览器无法加载该映像。你知道什么程序创建它?或者它来自哪里?我建议更好的解决方案可能不是首先生成有问题的图像,而不是担心引起新问题的*“修正”*。 –

+0

@Mark Setchell那么,我得到的图像只能从Instagram或Facebook(不幸的是)他们几乎在我尝试过的所有图像编辑器中都能打开100%,除了Photoshop。我会使用Camera Raw打开它们(这是可行的),但最近却完全冻结了计算机。我刚刚发现一个非常大的猫的图像文件,以查看mogrify是否将图像文件大小减少了一个固定的数量或百分比。 – alexy13

回答

0

我不明白你为什么会遇到麻烦从这些来源打开JPG。但一些观众不会正确处理CMYK jpg文件。如果Photoshop有这个问题,我会感到惊讶。如果您使用Imagemagick添加评论,那么它会解压缩文件并重新压缩它。 Imagemagick将在文件中使用-quality值,如果它能找到它并使输出相同。但是,如果它无法在文件中找到质量值,则它将压缩到值92.如果文件大小为100作为输入,但会在92处重新压缩,则可能会导致文件大小减小。下一次执行相同操作时它将继续使用92.但是,可能会损失有效的质量,因为JPG是有损的。但在92年,它可能不会在视觉上引人注目。你可以尝试转换成mogrify的地方,看看是否有任何不同。也没有必要添加评论。只需读取输入并再次保存,将在Imagemagick中进行解压缩并重新压缩。见http://www.imagemagick.org/script/command-line-options.php#quality

您的图片sRGB和具有75质量根据ImageMagick的

identify -verbose Aragon.jpg 

Format: JPEG (Joint Photographic Experts Group JFIF format) 
    Mime type: image/jpeg 
    Class: DirectClass 
    Geometry: 9600x14400+0+0 
    Resolution: 2400x2400 
    Print size: 4x6 
    Units: PixelsPerInch 
    Type: TrueColor 
    Endianess: Undefined 
    Colorspace: sRGB 
    Depth: 8-bit 
... 
    Compression: JPEG 
    Quality: 75 
    Orientation: Undefined 
    Properties: 
    date:create: 2017-08-18T21:26:37-07:00 
    date:modify: 2017-08-18T21:26:37-07:00 
    jpeg:colorspace: 2 
    jpeg:sampling-factor: 2x2,1x1,1x1 
    signature: bad15aa674dc45312d47627b620c895ee76b1fa4457b55bf1acca85883de5963 
    Artifacts: 
    filename: aragon.jpg 
    verbose: true 

所以CMYK的问题不存在。

此文件是在您使用Imagemagick mogrify处理之前还是之后?

如果此文件最初质量为75,并且重新压缩为92或高于75的某个值,则文件大小可能会增加。

如果您不希望文件大小减小然后重新压缩到75或更高。 100会给你最小的压缩率,但可能会增加文件大小。

其他因素可能是JPG的变化是取样因素。请参阅http://www.imagemagick.org/script/command-line-options.php#sampling-factor。压缩表也可能有所不同。 Imagemagick使用libjpg来读取和解压缩JPG。原始JPG可能已经使用其他工具进行了压缩。

另一个因素可能是引入或删除颜色配置文件。 Imagemagick不应该自动更改。

我最好的建议是检查输入的质量和分配给输出的质量。同时检查输入的色彩空间。使用标识-verbose yourimage来查看可能发生了什么变化。

不幸的是,我不知道到底发生了什么。我只能告诉你一些可能涉及的因素。

我用Imagemagick 6.9.9.7 Q16 Mac OSX来转换你的文件。

convert aragon.jpg aragon2.jpg 

该输入具有文件大小:5.94157MiB。输出具有文件大小:5.23264MiB。这两个文件具有相同的质量75.因此,由于解压缩和再压缩,文件大小会有轻微变化,这可能是由于JPG具有有损压缩的事实导致实际质量损失。或者可能是由于所使用的压缩表的更改。再次执行此操作会生成文件大小:5.23289MiB。所以非常轻微的增加。这样做

convert aragon.jpg -quality 100 aragon4.jpg 

产生一个作品尺寸:13.968MiB,因为我们已经要求它使用比输入更大的压缩质量,使文件的大小将显着增加,即使它是一种有损压缩。

+0

感谢您的分析!我不知道谁拥有aragorn.jpg,但我不认为它之前是用mogrify压缩的。减小文件大小似乎出现在我从谷歌搜索中尝试的任何图像上,所以aragorn.jpg只是一个用于测试的大文件。 – alexy13