Index: olena/ChangeLog from Niels Van Vliet niels@lrde.epita.fr
* olena/oln/morpho/laplacian.inc: Add a FIXME. * olena/oln/morpho/watershed.hh: Add a FIXME.
Index: tools/swilena/ChangeLog from Niels Van Vliet niels@lrde.epita.fr
* tools/swilena/generate_morpho_instantiations.py: Fix and add some algorithms.
Index: olena/oln/morpho/laplacian.inc --- olena/oln/morpho/laplacian.inc Fri, 02 Apr 2004 17:50:27 +0200 van-vl_n (oln/41_laplacian. 1.16 600) +++ olena/oln/morpho/laplacian.inc Sun, 11 Apr 2004 23:50:47 +0200 van-vl_n (oln/41_laplacian. 1.16 600) @@ -110,7 +110,10 @@ ** \image latex lena256_pgm.png ** => ** \image html oln_morpho_fast_laplacian_overload.png -** \image latex oln_morpho_fast_laplacian_overload.png +** \image latex oln_morpho_fast_laplacian_overload.pn +** +** \todo FIXME: Not instantiated in swilena (see +** tools/swilena/generate_morpho_instantiations.py) */ template<class DestValue, class I, class E> typename mute<I, DestValue>::ret Index: olena/oln/morpho/watershed.hh --- olena/oln/morpho/watershed.hh Fri, 02 Apr 2004 17:50:27 +0200 van-vl_n (oln/48_watershed. 1.14 600) +++ olena/oln/morpho/watershed.hh Sun, 11 Apr 2004 23:48:41 +0200 van-vl_n (oln/48_watershed. 1.14 600) @@ -216,6 +216,9 @@ ** \arg D Input image. ** \arg M Image of labels. ** \arg Ng Neighborhood to consider. + ** + ** \todo FIXME: Not instantiated in swilena (see + ** tools/swilena/generate_morpho_instantiations.py) */ template<class I1, class I2, class N> oln_concrete_type(I2)& Index: tools/swilena/generate_morpho_instantiations.py --- tools/swilena/generate_morpho_instantiations.py Sun, 11 Apr 2004 22:22:47 +0200 van-vl_n (oln/v/24_generate_m 1.6 700) +++ tools/swilena/generate_morpho_instantiations.py Mon, 12 Apr 2004 01:00:19 +0200 van-vl_n (oln/v/24_generate_m 1.6 700) @@ -110,7 +110,7 @@ instantiate(idx, "hit_or_miss_closing_bg", img_type, img_type, win_type, win_type) instantiate(idx, "fast_hit_or_miss_closing_bg", img_type, img_type, win_type, win_type)
- # FIXME: these algorithms do not work with float neither binary types + # FIXME: This should work with other types. if type != "ntg_bin": instantiate(idx, "beucher_gradient", img_type, img_type, win_type) instantiate(idx, "fast_beucher_gradient", img_type, img_type, win_type) @@ -132,36 +132,31 @@
instantiate(idx, "top_hat_contrast_op", img_type, img_type, win_type) instantiate(idx, "fast_top_hat_contrast_op", img_type, img_type, win_type) - - # FIXME: fix this when available - #if type == "ntg_int_u8": # Watershed - #img_ret_type = "::oln::image%(dim)sd< ntg_int_u32 >" % vars() - #instantiate(dim, "watershed_seg", img_ret_type, img_type, neighb_type) - #instantiate(dim, "watershed_con", img_ret_type, img_type, neighb_type) - #instantiate(dim, "watershed_seg_or", img_type, img_type, img_ret_type, neighb_type) - - # FIXME: this is broken - # instantiate(dim, "laplacian", img_type, img_type, win_type) - # instantiate(dim, "fast_laplacian", img_type, img_type, win_type) - - # FIXME: this is broken - # bin_img_type = "::oln::image%(dim)sd< ntg_bin >" % vars() - # instantiate(dim, "sure_minima_imposition", img_type, img_type, bin_img_type, neighb_type) - # instantiate(dim, "sequential_minima_imposition", img_type, img_type, bin_img_type, neighb_type) - # instantiate(dim, "hybrid_minima_imposition", img_type, img_type, bin_img_type, neighb_type) - - # FIXME: this is broken - # instantiate(dim, "sure_regional_minima", bin_img_type, img_type, neighb_type) - # instantiate(dim, "sequential_regional_minima", bin_img_type, img_type, neighb_type) - # instantiate(dim, "hybrid_regional_minima", bin_img_type, img_type, neighb_type) + img_ret_type = "::oln::image%(dim)sd< ntg_int_u32
" % vars()
+ instantiate(idx, "watershed_seg", img_ret_type, img_type, neighb_type) + instantiate(idx, "watershed_con", img_ret_type, img_type, neighb_type) + bin_img_type = "::oln::image%(dim)sd< ntg_bin >" % vars() + instantiate(idx, "sure_minima_imposition", img_type, img_type, bin_img_type, neighb_type) + instantiate(idx, "sequential_minima_imposition", img_type, img_type, bin_img_type, neighb_type) + instantiate(idx, "hybrid_minima_imposition", img_type, img_type, bin_img_type, neighb_type) + + instantiate(idx, "sure_regional_minima", bin_img_type, img_type, neighb_type) + instantiate(idx, "sequential_regional_minima", bin_img_type, img_type, neighb_type) + instantiate(idx, "hybrid_regional_minima", bin_img_type, img_type, neighb_type)
# Extrema killers - # FIXME: extrema killers work only with ntg::int_u8 data type - # instantiate(dim, "sure_maxima_killer", img_type, neighb_type) - # instantiate(dim, "fast_maxima_killer", img_type, neighb_type) - # instantiate(dim, "sure_minima_killer", img_type, neighb_type) - # instantiate(dim, "fast_minima_killer", img_type, neighb_type) + instantiate(idx, "fast_maxima_killer", img_type, neighb_type) + instantiate(idx, "fast_minima_killer", img_type, neighb_type) + # FIXME: This should work with other types. + if type == "ntg_int_u8": + instantiate(idx, "sure_maxima_killer", img_type, neighb_type) + instantiate(idx, "sure_minima_killer", img_type, neighb_type) + + #FIXME: Does not work due to the return type: + #instantiate(idx, "watershed_seg_or", img_type, img_type, img_ret_type, neighb_type) + #instantiate(idx, "laplacian", img_type, img_type, win_type) + #instantiate(idx, "fast_laplacian", img_type, img_type, win_type)
def main(): if len(sys.argv) != 2: