1 #include <mln/core/image/dmorph/extended.hh>
2 #include <mln/core/image/dmorph/image_if.hh>
3 #include <mln/core/routine/extend.hh>
4 #include <mln/core/var.hh>
6 #include <mln/data/transform.hh>
7 #include <mln/data/paste.hh>
9 #include <mln/fun/p2b/big_chess.hh>
11 #include <mln/value/rgb8.hh>
12 #include <mln/literal/colors.hh>
14 #include <tests/data.hh>
16 #include <doc/tools/sample_utils.hh>
21 struct saturate_rgb8 :
public Function_v2v<saturate_rgb8>
24 typedef value::rgb8 result;
26 value::rgb8 operator()(
const value::rgb8& v)
const
29 v2.red() > 50 ? v2.red() -= 50 : v2.red() = 0;
30 v2.green() > 50 ? v2.green() -= 50 : v2.green() = 0;
31 v2.blue() > 50 ? v2.blue() -= 50 : v2.blue() = 0;
43 struct my_ext :
public Function_v2v<my_ext>
46 typedef value::rgb8 result;
48 value::rgb8 operator()(
const point2d&
p)
const
50 if ((p.row() + p.col()) % 20)
70 box2d bbox_enlarged = lena.domain();
93 mln_VAR(ext_with_ima,
extend(ima_roi, lena));
100 data::fill((mask | ima_roi.domain()).rw(),
false);