コード例 #1
0
void testBinarization (void)
{
    G12Buffer *image = BufferFactory::getInstance()->loadG12Bitmap("data/pair/image0001_c0.pgm");

    Histogram *histogram = new Histogram(image);

    int meanLevel   = histogram->getMeanThreshold();
    int medianLevel = histogram->getMedianThreshold();
    int otsuLevel   = histogram->getOtsuThreshold();

    G12Buffer *meanImage   = image->binarize(meanLevel);
    BMPLoader().save("mean.bmp", meanImage);

    G12Buffer *medianImage = image->binarize(medianLevel);
    BMPLoader().save("median.bmp", medianImage);

    G12Buffer *otsuImage   = image->binarize(otsuLevel);
    BMPLoader().save("otsu.bmp", otsuImage);

    delete otsuImage;
    delete medianImage;
    delete meanImage;
    delete histogram;
    delete image;

}