用于过滤的GPUImage颜色空间?

时间:2014-09-05 09:02:46

标签: matrix colors filter space gpuimage

我正在使用GPUImage,但我问自己过滤器使用的颜色空间是什么?像棕褐色。

我认为这是XYZCIE,但我的OpenCV与同一矩阵有不同的结果。

感谢帮助我!

1 个答案:

答案 0 :(得分:0)

色彩空间是简单的RGB。与GPUImageSepiaFilter类似,GPUImageColorMatrixFilter的子类通过将像素的RGBA颜色矢量与4x4颜色矩阵相乘来工作。

用于执行此操作的着色器代码如下:

 vec4 textureColor = texture2D(inputImageTexture, textureCoordinate);
 vec4 outputColor = textureColor * colorMatrix;

 gl_FragColor = (intensity * outputColor) + ((1.0 - intensity) * textureColor);

第二行是矩阵乘法发生的地方。 OpenCV可能不会应用相同的矩阵乘法,或者它们可能在矩阵中使用不同的列与行排序。