28 #include <mln/core/image/image2d.hh>
29 #include <mln/value/int_u8.hh>
30 #include <mln/io/pgm/load.hh>
31 #include <mln/io/ppm/load.hh>
32 #include <mln/io/pbm/save.hh>
33 #include <mln/data/transform.hh>
34 #include <mln/fun/v2v/rgb_to_int_u.hh>
36 #include <scribo/binarization/sauvola_ms.hh>
37 #include <scribo/postprocessing/fill_object_holes.hh>
38 #include <scribo/preprocessing/denoise.hh>
40 int main(
int argc,
char *argv[])
43 using namespace scribo;
48 std::cout <<
"Usage: " << argv[0] <<
" <input.{pgm,ppm}> <output.pbm>" << std::endl;
49 std::cout <<
"--------------" << std::endl;
50 std::cout <<
"EPITA/LRDE - 2010" << std::endl;
54 std::string ext = argv[1];
55 ext = ext.substr(ext.length() - 3, 3);
56 for (
unsigned i = 0; i < ext.length(); ++i)
57 ext[i] = tolower(ext[i]);
64 else if (ext ==
"ppm")
74 std::cout <<
"Invalid input file format! Expecting PGM or PPM images." << std::endl;