我有非线性 sRGB 格式的 iphone 照片。我需要线性RGB。我在 opencv(python) 中找不到将它们转换为线性 RGB 的方法。
还尝试了 ImageMagick convert :
convert output0.jpg -colorspace RGB output0.jpg
还是一样的sRGB没有效果。
有任何想法吗 ?
我有非线性 sRGB 格式的 iphone 照片。我需要线性RGB。我在 opencv(python) 中找不到将它们转换为线性 RGB 的方法。
还尝试了 ImageMagick convert :
convert output0.jpg -colorspace RGB output0.jpg
还是一样的sRGB没有效果。
有任何想法吗 ?
只有极少数图像格式真正支持线性 RGB。PNG可以,但不是JPG。您可以判断伽玛值是否为 1,它是线性的。您可以使用 ImageMagick 在线性色彩空间中进行处理,但保存为 JPG 可能会显示正确的线性像素值,但 JPG 元数据不存储它是线性 RGB 的事实。如果图像较暗,您可以判断像素数据是否已更改为线性。您可以为 JPG 分配一个线性配置文件,但我不确定您会在哪里找到它。还要注意在非常旧版本的 ImageMagick -colorspace RGB 实际上产生 sRGB,反之亦然
例如,您的命令没有任何改变,因为 JPG 并不真正支持线性 RGB。
输入:
convert logo.jpg -colorspace RGB logoRGB.jpg
但PNG确实:
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