Browse Source

Fix Hue to match MS docs

TODO: Convert to linear

Former-commit-id: af898d45d09caa596459983cc3f2dc0440898468
Former-commit-id: a86f85f3b188efe209db49a75d3d0c20582cd611
Former-commit-id: b6615c2a90fc62ca9b4f1980fb95832aef80b8b4
pull/17/head
James Jackson-South 10 years ago
parent
commit
88540d32de
  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