我正在从大型照片中生成缩略图和中等大小的图像。这些较小的照片可在在线图库中显示。许多摄影师使用Adobe RGB提交JPEG图像。我被问到缩略图和中等大小的图像是否可以使用sRGB作为图像,在某些浏览器中显示为“平坦”。
我目前正在使用ImageMagick来创建较小的版本。它有一个-colorspace
选项,但似乎没有做我想要的。
还有其他办法吗?另外,你认为这是值得的吗?
答案 0 :(得分:10)
您可以使用ImageMagic -profile
选项:
convert image.jpg -profile <adobe.icc> -profile <sRGB.icc> new_image.jpg
请点击此处了解更多详情: http://www.imagemagick.org/Usage/formats/#color_profile
答案 1 :(得分:8)
您是否尝试过使用Little CMS?此命令将具有特殊颜色配置文件(即Adobe RGB 1998)的图像转换为没有颜色配置文件但具有相同有效颜色的图像:
jpgicc -q100 input.jpg output.jpg
我在这里将JPEG质量设置为100。
答案 2 :(得分: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
答案 3 :(得分:0)
使用Krita重新导出图像对我来说似乎已经足够好了:
class PooledObject
{
public:
void* operator new(size_t size)
{
void * p = Pool<PooledObject>::getInstance().acquire();
return p;
}
void operator delete(void * p)
{
Pool<PooledObject>::getInstance().release((PooledObject*)p);
}
};
class Foo : public PooledObject
{
int i;
public:
};
Krita是开放源代码的Photoshop / Paint,具有(n个极为有限的)命令行界面。用
安装 krita my_img.jpg --export --export-filename my_img_in_srgb.jpg