我有iphone的照片是非线性的sRGB格式。我需要线性RGB。我无法在opencv(python)中找到将它们转换为线性RGB的方法。
还尝试了ImageMagick转换:
convert output0.jpg -colorspace RGB output0.jpg仍然一样,sRGB没有效果。
有什么想法吗?
发布于 2018-05-18 19:02:30
只有极少数的图像格式真正支持线性RGB。巴布亚新几内亚有,但没有JPG。你可以知道伽马值是1,它是线性的。您可以使用ImageMagick在线性颜色空间中进行处理,但是保存到JPG可能会显示适当的线性像素值,但是JPG元数据并不存储它是线性RGB的事实。如果图像较暗,则可以判断像素数据是否已更改为线性数据。您可以为JPG分配一个线性配置文件,但我不确定您在哪里会找到一个。注意,在非常老版本的ImageMagick -colorspace中,RGB实际上正在生成sRGB,反之亦然。
例如,您的命令不做任何更改,因为JPG并不真正支持线性RGB。
输入:

convert logo.jpg -colorspace RGB logoRGB.jpg

但是巴布亚新几内亚:
convert logo.jpg -colorspace RGB logoRGB.png

Colorspace: RGB
Gamma: 1为了在JPG中强制转换为线性RGB,您可以执行以下操作使像素数据线性化。但元数据仍将显示非线性sRGB,gamma=0.4545。
convert logo.jpg -colorspace RGB -set colorspace sRGB logoRGB2.jpg

Colorspace: sRGB
Gamma: 0.454545编辑:如果你想要一个线性RGB配置文件,下面的链接可能是有用的。请参阅http://fnordware.blogspot.com/2008/05/making-linear-icc-profile.html
发布于 2018-05-18 18:49:43
https://stackoverflow.com/questions/50417076
复制相似问题