
#146: Ensure the output value type is large enough in labeling algorithms -----------------------+---------------------------------------------------- Reporter: levill_r | Owner: levill_r Type: defect | Status: new Priority: major | Milestone: Olena 1.1 Component: Milena | Version: 1.0 Resolution: | Keywords: overflow labeling -----------------------+---------------------------------------------------- Changes (by levill_r): * milestone: Olena 1.0 => Olena 1.1 Old description:
Most labeling algorithm do not check that the output value is large enough to hold the whole set of labels. This is at least the case in
* source:trunk/milena/mln/labeling/regional_minima.hh * source:trunk/milena/mln/labeling/regional_maxima.hh * source:trunk/milena/mln/morpho/meyer_wst.hh
These algorithms should trigger an error if this happens, even if the output value type is not equipped to detect overflows.
New description: Most labeling algorithm do not check that the output value is large enough to hold the whole set of labels. This is at least the case in * source:trunk/milena/mln/labeling/regional_minima.hh * source:trunk/milena/mln/labeling/regional_maxima.hh * source:trunk/milena/mln/morpho/watershed/flooding.hh (and its ancestor source:trunk/milena/mln/morpho/meyer_wst.hh) These algorithms should trigger an error if this happens, even if the output value type is not equipped to detect overflows. To do: 1. Write (small) test cases for each algorithm. 1. Choose a sound behavior (exceptions?). 1. Apply the required modifications. -- -- Ticket URL: <https://trac.lrde.org/olena/ticket/146#comment:1> Olena <http://olena.lrde.epita.fr> Olena, a generic and efficient C++ image processing library.