Converting JPEG colorspace (Adobe RGB to sRGB) on Linux
-
03-07-2019 - |
Question
I am generating thumbnails and medium sized images from large photos. These smaller photos are for display in an online gallery. Many of the photographers are submitting JPEG images using Adobe RGB. I have been asked if the thumbnail and medium size images can use sRGB as the images as is appear "flat" in some browsers.
I'm currently using ImageMagick to create the smaller versions. It has a -colorspace
option, but that doesn't seem to do what I want.
Is there any other way to do this? Also, do you think this is worthwhile?
Solution
You can use the ImageMagic -profile
option:
convert image.jpg -profile <adobe.icc> -profile <sRGB.icc> new_image.jpg
See here for more details: http://www.imagemagick.org/Usage/formats/#color_profile.
OTHER TIPS
Have you tried using Little CMS? This command will convert an image with a special color profile (i.e. Adobe RGB 1998) to one with no color profile but the same effective colors:
jpgicc -q100 input.jpg output.jpg
I'm setting JPEG quality to 100 here.
The following thread in the ImageMagick forum discusses exactly this in some detail: http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=16464
I now use this bash script to convert any picture (including CMYK) to sRGB: http://alma.ch/scripts/any2srgb
It requires icc profiles for images which don't have embedded profiles. These can be found easily on the web. For example on Adobe's site: http://www.adobe.com/cfusion/search/index.cfm?term=icc+profile&siteSection=support%3Adownloads