OpenCV - 它如何处理颜色配置文件?

Jiv*_*son 9 profile opencv colors image-processing

我有一个jpeg.当然,它的颜色配置文件是sRGB.我将它加载到"图像"并调用

cvCvtColor(image, gray, CV_BGR2GRAY); 
Run Code Online (Sandbox Code Playgroud)

将其转换为灰度.当我在调试器中进入该例程时,我发现它将像素乘以这些值:

#define cscGr_32f  0.299f
#define cscGg_32f  0.587f
#define cscGb_32f  0.114f
Run Code Online (Sandbox Code Playgroud)

Waaaait一分钟.这些是NTSC RGB的亮度值,而不是sRGB.此外,我无法看到它正在做任何有关伽马校正的事情.我很迷惑.当OpenCV对图像进行解码时,是否会删除伽马校正并转换为NTSC RGB?

奖金问题:大师们有没有OpenCV论坛?我用Google搜索是徒劳的.

Кон*_*Ван 1

它忽略了。OpenCV通常不进行伽玛校正。嗯,只有在将 RGB 转换为 L*a*b*/L*u*v*时才会如此cvtColor (但是,如何实现?OpenCV 是否假定输入图像的伽玛值?)