在ImageMagick中将TIFF图像转换为PNG时颜色出现错误

10

我正在开发一个PHP脚本,用于自动将TIFF图像转换为PNG文件。

为此,我使用ImageMagick:

$ convert a.tif a.png

这在某种程度上可行,但颜色非常明显,并且与我在电脑上看到的图片不同。为了说明问题,请查看附带的文件,其中包括:

  • Windows Live照片库输出(基本上是我想要的样子)
  • ImageMagick输出(我最后得到的混乱)
  • 原始TIFF文件

是否有人知道如何修改ImageMagick的颜色解释方式?

非常感谢!


3
Imagemagick似乎将图像解释为sRGB,而实际的色彩空间信息嵌入了一个XMP元数据标签作为ICC配置文件,但它忽略了它。我不知道如何修复它。 - ergosys
1
哇,这就解决了问题。我能够在eci.org上下载ISO 12647-2:2004 ICC配置文件并将其转换为eciRGB(也可以在eci.org上找到)。结果甚至比Windows中的更好:http://cvdb.de/sonstiges/tiff/c.png$ convert -geometry 300 -profile ISOcoated_v2_eci.icc -profile eciRGB_v2.icc a.tif c.png解决了问题。 - clausvdb
2个回答

6

好的,多亏了ergosys,问题轻松解决:我需要应用ICC色彩配置文件。 XMP声明了ISO 12647-2:2004,可以在http://eci.org找到。

$ convert -profile ISOcoated_v2_eci.icc -profile eciRGB_v2.icc a.tif c.png

1

当从CMYK颜色空间转换为RGB颜色空间时,例如从tiff到png,您必须同时转换图像和颜色空间。尝试:

convert -colorspace rgb a.tif a.png

我在本地运行了这个程序,得到的结果比你提出的命令行更好,但是我的色觉不太好,所以不能保证这正是你想要的。希望它能让你走上正确的轨道。

谢谢您的建议,但输出在视觉上并没有改变。 我将继续寻找颜色空间问题。 http://cvdb.de/sonstiges/tiff/b.png - clausvdb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接