我有一个图像,它有可供参考的对象。例如,特定位置的矩形。
对于(Rectnangle(,我们已经有了它的理想/参考颜色值,例如R=255,g=255,B=255。
Reactangle的平均RGB是不同的,例如R=200,g=200,B=200。
因此,与理想/参考颜色存在R=55,G=55,B=55的偏差。
如何使用颜色矩阵来填补这个颜色的空白,这样我就能得到校准的图像?
如果有比这更好的方法,请提出建议。
您可以计算两种颜色的商,即255/200,并将其输入到颜色矩阵的对角线值中。即
var cr = referenceRed/ actualRed;
...
float[][] colorMatrixElements = {
new float[] {cr, 0, 0, 0, 0}, // red scaling factor
new float[] {0, cg, 0, 0, 0}, // green scaling factor
new float[] {0, 0, cb, 0, 0}, // blue scaling factor
new float[] {0, 0, 0, 1, 0}, // alpha scaling factor of 1
new float[] {0, 0, 0, 0, 1}};