微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ImageMagic 如何确定 PNG 的色彩空间?

如何解决ImageMagic 如何确定 PNG 的色彩空间?

假设我创建了一个简单的 PNG:

convert -size 1x1 canvas:red red.png

这是一张类似的图片(更大尺寸)供参考:

enter image description here

然后在其上运行命令 identify。它告诉我图像的 ColorSpace 是 sRGB,但文件中似乎没有这方面的指示。事实上运行

$ hexdump -C red.png 
00000000  89 50 4e 47 0d 0a 1a 0a  00 00 00 0d 49 48 44 52  |.PNG........IHDR|
00000010  00 00 00 01 00 00 00 01  01 03 00 00 00 25 db 56  |.............%.V|
00000020  ca 00 00 00 04 67 41 4d  41 00 00 b1 8f 0b fc 61  |.....gAMA......a|
00000030  05 00 00 00 20 63 48 52  4d 00 00 7a 26 00 00 80  |.... cHRM..z&...|
00000040  84 00 00 fa 00 00 00 80  e8 00 00 75 30 00 00 ea  |...........u0...|
00000050  60 00 00 3a 98 00 00 17  70 9c ba 51 3c 00 00 00  |`..:....p..Q<...|
00000060  06 50 4c 54 45 ff 00 00  ff ff ff 41 1d 34 11 00  |.pltE......A.4..|
00000070  00 00 01 62 4b 47 44 01  ff 02 2d de 00 00 00 07  |...bKGD...-.....|
00000080  74 49 4d 45 07 e5 01 0d  17 04 37 80 ef 04 02 00  |tIME......7.....|
00000090  00 00 0a 49 44 41 54 08  d7 63 60 00 00 00 02 00  |...IDAT..c`.....|
000000a0  01 e2 21 bc 33 00 00 00  25 74 45 58 74 64 61 74  |..!.3...%tEXtdat|
000000b0  65 3a 63 72 65 61 74 65  00 32 30 32 31 2d 30 31  |e:create.2021-01|
000000c0  2d 31 33 54 32 33 3a 30  34 3a 35 35 2b 30 30 3a  |-13T23:04:55+00:|
000000d0  30 30 2d af d4 01 00 00  00 25 74 45 58 74 64 61  |00-......%tEXtda|
000000e0  74 65 3a 6d 6f 64 69 66  79 00 32 30 32 31 2d 30  |te:modify.2021-0|
000000f0  31 2d 31 33 54 32 33 3a  30 34 3a 35 35 2b 30 30  |1-13T23:04:55+00|
00000100  3a 30 30 5c f2 6c bd 00  00 00 00 49 45 4e 44 ae  |:00\.l.....IEND.|
00000110  42 60 82                                          |B`.|
00000113

没有提供我知道的线索。

我了解识别不包含该信息的图像的 ColorSpace 是一个非常困难的问题 - 请参阅查看颜色直方图 here一个建议解决方案。

那么来自 ImageMagick 套件的 identify 如何确定此图像的色彩空间?

解决方法

假设没有嵌入或 sidecar ICC 配置文件或没有明确编码描述的图像根据 IEC 61966-2-1:1999 进行编码,即 sRGB规范。

,

这只是 ImageMagick 中的一个错误。您可以使用 exiftool 检查是否存在 sRGB + sRGB 意图块。在这种情况下,没有。

Gamma 2.2 不是 sRGB。因此 ImageMagic 在这里是错误的。这是维基百科上的一个常见问题,所有 SVG 图像在转换为 PNG 时都有这个问题,它会破坏颜色。请参阅:https://phabricator.wikimedia.org/T26768

我们将不得不重新编码维基百科上的所有图像,因为我们使用 ImageMagick。叹气。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。