RGB平均値の値によって二値化してみる。ソースコードは一部を抜粋 これがテンプレートhttp://codetter.com/?p=547
RGB平均値の値によって二値化してみる。ソースコードは一部を抜粋 これがテンプレートhttp://codetter.com/?p=547
/* 2値化のしきい値 */ public static final double THRESHOLD = 255 / 2.0; /* 2値化のサンプル */ private static void doProcess() { for (int x = 0; x < image.getWidth(); x++) { for (int y = 0; y < image.getHeight(); y++) { int rgb = image.getRGB(x, y); double rgbAverage = getRGBAverage(rgb); if (rgbAverage <= THRESHOLD) { image.setRGB(x, y, 0x00FFFFFF); //しきい値以下なら白 } else { image.setRGB(x, y, 0x00000000); //しきい値より大きければ黒 } } } } /* rgb各成分の平均値 */ private static double getRGBAverage(int rgb) { int r = (rgb & 0x00FF0000) >> 16; int g = (rgb & 0x0000FF00) >> 8; int b = (rgb & 0x000000FF); return (r + g + b) / 3.0; }