29 #include <mln/core/image/image2d.hh>
30 #include <mln/win/all.hh>
32 #include <mln/io/pgm/load.hh>
33 #include <mln/io/pgm/save.hh>
35 #include <mln/value/int_u8.hh>
36 #include <mln/debug/iota.hh>
37 #include <mln/debug/println.hh>
39 #include <mln/data/approx/median.hh>
40 #include <mln/data/fast_median.hh>
41 #include <mln/data/median.hh>
43 #include <mln/core/dpoints_pixter.hh>
44 #include <mln/core/pixel.hh>
46 #include "tests/data.hh"
62 len = float(end_ - start_) / CLOCKS_PER_SEC;
77 std::ostream& operator<<(std::ostream& ostr, timer t)
79 return ostr << t.lenght() <<
"s";
82 template <
typename I,
typename W,
typename O>
91 std::cout <<
"Fast median : " << chrono << std::endl;
96 std::cout <<
"Median : " << chrono << std::endl;
101 std::cout <<
"Approx median : " << chrono << std::endl;
108 std::cout <<
"-----------------------" << std::endl;
109 std::cout <<
"-----With rectangle 21x21" << std::endl;
110 std::cout <<
"-----------------------" << std::endl;
113 border::thickness = 50;
119 tests(lena, rect, out);
125 std::cout <<
"-----------------------" << std::endl;
126 std::cout <<
"-----With octogone 13" << std::endl;
127 std::cout <<
"-----------------------" << std::endl;
130 border::thickness = 50;
136 tests(lena, oct, out);
142 std::cout <<
"-----------------------" << std::endl;
143 std::cout <<
"-----With disk2d 10" << std::endl;
144 std::cout <<
"-----------------------" << std::endl;
147 border::thickness = 50;
153 tests(lena, win, out);