Browse Source

Fix Hue to match MS docs

TODO: Convert to linear

Former-commit-id: 2e4c1de47485a67c541eb2d505ce89f49b2caa6c
Former-commit-id: 84a6dd3824ea04b095f6e072ac4574f4e5521471
Former-commit-id: c141fc8d5af9aa24d5740b06b9410f67b4c3c6aa
af/merge-core
James Jackson-South 10 years ago
parent
commit
d04c841b9f
  1. 18
      src/ImageProcessor/Filters/ColorMatrix/Hue.cs

18
src/ImageProcessor/Filters/ColorMatrix/Hue.cs

@ -59,15 +59,15 @@
// Number are taken from https://msdn.microsoft.com/en-us/library/jj192162(v=vs.85).aspx
Matrix4x4 matrix4X4 = new Matrix4x4()
{
M11 = (float)(+lumR + (cosradians * oneMinusLumR) - (sinradians * lumR)),
M12 = (float)(+lumR - (cosradians * lumR) - (sinradians * lumR)),
M13 = (float)(+lumR - (cosradians * lumR) - (sinradians * 0.787)),
M21 = (float)(+lumG - (cosradians * lumG) - (sinradians * lumG)),
M22 = (float)(+lumG + (cosradians * oneMinusLumG) + (sinradians * 0.140)),
M23 = (float)(+lumG - (cosradians * lumG) + (sinradians * lumG)),
M31 = (float)(+lumB - (cosradians * lumB) + (sinradians * oneMinusLumB)),
M32 = (float)(+lumB - (cosradians * lumB) - (sinradians * 0.283)),
M33 = (float)(+lumB + (cosradians * oneMinusLumB) + (sinradians * lumB))
M11 = (float)(lumR + (cosradians * oneMinusLumR) - (sinradians * lumR)),
M12 = (float)(lumR - (cosradians * lumR) - (sinradians * 0.143)),
M13 = (float)(lumR - (cosradians * lumR) - (sinradians * oneMinusLumR)),
M21 = (float)(lumG - (cosradians * lumG) - (sinradians * lumG)),
M22 = (float)(lumG + (cosradians * oneMinusLumG) + (sinradians * 0.140)),
M23 = (float)(lumG - (cosradians * lumG) + (sinradians * lumG)),
M31 = (float)(lumB - (cosradians * lumB) + (sinradians * oneMinusLumB)),
M32 = (float)(lumB - (cosradians * lumB) - (sinradians * 0.283)),
M33 = (float)(lumB + (cosradians * oneMinusLumB) + (sinradians * lumB))
};
this.matrix = matrix4X4;

Loading…
Cancel
Save