28 #include <mln/core/image/image2d.hh>
29 #include <mln/core/site_set/p_array.hh>
30 #include <mln/io/pbm/load.hh>
31 #include <mln/io/pgm/load.hh>
33 #include <scribo/util/component_precise_outline.hh>
35 #include <mln/draw/line.hh>
36 #include "tests/data.hh"
41 using namespace scribo;
43 static const point2d ref_compress[] = {
53 static const point2d ref_no_compress[] = {
63 static const point2d ref_lbl_no_compress[] = {
73 static const point2d ref_lbl_compress[] = {
86 std::string f = SCRIBO_IMG_DIR
"/single_object.pbm";
93 for (
unsigned i = 0; i < par.
nsites(); ++i)
94 mln_assertion(par[i] == ref_compress[i]);
100 std::string f = SCRIBO_IMG_DIR
"/single_object.pbm";
105 p_array<point2d> par = scribo::util::component_precise_outline(input,
true,
false);
107 for (
unsigned i = 0; i < par.
nsites(); ++i)
108 mln_assertion(par[i] == ref_no_compress[i]);
115 std::string f = SCRIBO_IMG_DIR
"/several_objects.pgm";
120 p_array<point2d> par = scribo::util::component_precise_outline(input, 1,
false);
122 for (
unsigned i = 0; i < par.
nsites(); ++i)
123 mln_assertion(par[i] == ref_lbl_no_compress[i]);
129 std::string f = SCRIBO_IMG_DIR
"/several_objects.pgm";
134 p_array<point2d> par = scribo::util::component_precise_outline(input, 1,
true);
136 for (
unsigned i = 0; i < par.
nsites(); ++i)
137 mln_assertion(par[i] == ref_lbl_compress[i]);