Update BufferedImageLuminanceSource.java

This commit is contained in:
wood 2015-10-02 00:25:39 +08:00
parent a2159ed0f4
commit 249d043f91

View file

@ -70,12 +70,14 @@ public final class BufferedImageLuminanceSource extends LuminanceSource {
pixel = 0xFFFFFFFF; // = white pixel = 0xFFFFFFFF; // = white
} }
// .299R + 0.587G + 0.114B (YUV/YIQ for PAL and NTSC) // .299R + 0.587G + 0.114B (YUV/YIQ for PAL and NTSC),
// (306*R) >> 10 is approximately equal to R*0.299, and so on.
// 0x200 >> 10 is 0.5, it implements rounding.
buffer[x] = buffer[x] =
(306 * ((pixel >> 16) & 0xFF) + (306 * ((pixel >> 16) & 0xFF) +
601 * ((pixel >> 8) & 0xFF) + 601 * ((pixel >> 8) & 0xFF) +
117 * (pixel & 0xFF) 117 * (pixel & 0xFF) +
) >> 10; 0x200) >> 10;
} }
raster.setPixels(left, y, width, 1, buffer); raster.setPixels(left, y, width, 1, buffer);
} }