2009-05-03 120 views
8

我从大型照片生成缩略图和中等大小的图像。这些较小的照片用于在线图库中显示。许多摄影师使用Adobe RGB提交JPEG图像。我被问到缩略图和中等大小的图像是否可以使用sRGB作为在某些浏览器中显示为“平坦”的图像。在Linux上转换JPEG色彩空间(Adobe RGB到sRGB)

我目前使用ImageMagick来创建较小的版本。它有一个-colorspace选项,但这似乎并没有达到我想要的效果。

有没有其他方法可以做到这一点?另外,你认为这是值得的吗?

回答

8

可以使用ImageMagic -profile选项:

convert image.jpg -profile sRGB.icc rgb_image.jpg 

在这里看到更多的细节: http://www.imagemagick.org/Usage/formats/#color_profile

+0

此命令附加icc配置文件(在本例中为sRGB),但图像查看器工具的问题是它不更新信息。基本上一个图像附有多个配置文件。有些是简单的xml文件,记录用户在photoshop中所做的一切,记录它的颜色配置文件和类似的东西。如果附加二进制文件sRGB.icc,它实际上会添加配置文件,但imagemagick甚至是photoshop(可能是菜单来更新信息)不会更新其他配置文件(基本上是xml),因此图像查看器无论如何显示以前的配置文件。 – Pramod 2012-03-06 06:53:46

1

在ImageMagick的论坛下面的主题讨论的正是这种在一些细节:http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=16464

我现在用这个bash脚本转换任何图像(包括CMYK)为sRGB: http://alma.ch/scripts/any2srgb

它要求ICC配置文件对于没有嵌入配置文件的图像。这些可以很容易地在网上找到。例如在Adobe的网站上:http://www.adobe.com/cfusion/search/index.cfm?term=icc+profile&siteSection=support%3Adownloads

7

您是否尝试过使用Little CMS?此命令将图像具有特殊的颜色配置文件(即Adobe RGB的1998年)转换到一个没有颜色的个人资料,但相同的有效颜色:

jpegicc -q100 input.jpg output.jpg 

我设置JPEG质量100这里。