Index: olena/ChangeLog
from Niels Van Vliet <niels(a)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(a)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: