喵の窝

JPG文件中的色彩空间

昨天在某空间上传了张照片.我在电脑上看到的图片是这样的.

上传到空间以后就变成这样了….

恩……没错.我电脑上看到的要黄(洋红)一点.

在排除了眼花,显示器偏色等原因外.我请教了一位老司机以后,得知可能是色彩配置文件(色彩空间)有问题.

之前我只知道RGB与CMYK色彩空间的区别.如果去印刷厂印文件什么的,那么一定要把文件的色彩空间转为CMYK,否则会有问题.可是我都是在RGB色彩空间下处理照片,这也会有问题?

好吧,其实RGB色彩空间有很多种标准.其中应用最广泛的是sRGB(标准rgb).除了sRGB外,还有Adobe RGB(一个逗比RGB),Prophoto RGB(专业老法师RGB)等等.而不同的应用对这几种标准的支持也不一样.专业的图像处理软件能很好的支持这些标准,比如Lightroom CC默认的色彩空间就是Prophoto RGB.而有些浏览器只支持sRGB色彩空间(比如IE……我真不是在黑……-_-).其中最主要的问题在于不同的标准所能表示的颜色数也不一样.Prophoto RGB标准的色域最大,也就是能表示的颜色更多,sRGB的色域最小,能表示的颜色最少.如下图.

以我上传的照片为例,Lightroom默认导出的图片色彩空间为Prophoto RGB,能表示出很多种黄色(非常黄,偏绿一点的黄,偏红一点的黄,暗黄,非常暗的黄等等….).而上传到空间以后,空间会丢弃掉颜色配置文件,强行以sRGB标准来解释照片,而sRGB所能表示的颜色又不如Prophoto RGB所能表示的颜色多,比如只能表示非常黄和暗黄两种黄色.因此我在电脑上看到的照片就比上传到空间之后的照片显得黄.(这段想歪的同学请自行购买去污粉)

不同RGB标准之间的色差问题不能完全解决.但是可以减轻.我们可以先把照片(有损)转换到sRGB色域,然后再发布到网上.这样一般就不会出现严重的偏色问题了.前面也说到,sRGB的色域是RGB标准里面最小的.所以把非sRGB色域转换到sRGB色域肯定会有色彩损失.但是这种损失比强行用sRGB色域解释非sRGB色域的照片好太多了.文章一开始的两幅图中,第一幅是在Photoshop中把Prophoto RGB转换到sRGB然后上传到空间,第二幅是直接上传Prophoto RGB到空间.两者的差别还是非常大的.

把色彩空间转换到sRGB其实非常简单.在Photoshop中选择’菜单栏->编辑(Edit)->转换到配置文件(Convert to Profile)’,然后在弹出的对话框中选择sRGB,再点OK就好了.

PS:由于第一张照片是把Prophoto RGB转换成sRGB的.所以颜色上还是有一些损失.真正的Prophoto RGB的原片在这里.点开大图与上文的第一幅图比较,还是可以看到些差别的.比如画面左下角阴影之间的高光部分以及自行车后轮的轮圈,Prophoto RGB会更黄(-_-).不过,如果你点开原片看到的却是第二张图一样的死黄色,那说明你的浏览器还不支持Prophoto RGB颜色空间,在电脑上用Chrome看就好了.