Namespace of labeling routines. More...
Namespaces | |
| namespace | colorize_ |
| namespace | impl |
Implementation namespace of labeling namespace. | |
| namespace | internal |
Functions | |
| template<typename I , typename N , typename L > | |
| mln::trait::ch_value< I, L >::ret | background (const Image< I > &input, const Neighborhood< N > &nbh, L &nlabels) |
| template<typename I , typename N , typename L > | |
| mln::trait::ch_value< I, L >::ret | blobs (const Image< I > &input, const Neighborhood< N > &nbh, L &nlabels) |
| Connected component labeling of the binary objects of a binary image. | |
| template<typename V , typename L > | |
| mln::trait::ch_value< L, V >::ret | colorize (const V &value, const Image< L > &labeled_image) |
| template<typename L > | |
| mln::trait::ch_value< L, mln::value::rgb8 >::ret | colorize (const Image< L > &input, const typename L::value &nlabels) |
| template<typename V , typename L > | |
| mln::trait::ch_value< L, V >::ret | colorize (const V &value, const Image< L > &labeled_image, const typename L::value &nlabels) |
| Create a new color image from a labeled image and fill each component with a random color. | |
| template<typename A , typename I , typename L > | |
| util::array < mln_meta_accu_result(A, typename I::value)> | compute (const Meta_Accumulator< A > &a, const Image< I > &input, const Image< L > &label, const typename L::value &nlabels) |
Compute an accumulator onto the pixel values of the image input. | |
| template<typename A , typename L > | |
| util::array< typename A::result > | compute (const Accumulator< A > &a, const Image< L > &label, const typename L::value &nlabels) |
Compute an accumulator onto the pixel sites of each component domain of label. | |
| template<typename A , typename L > | |
| util::array < mln_meta_accu_result(A, typename L::psite)> | compute (const Meta_Accumulator< A > &a, const Image< L > &label, const typename L::value &nlabels) |
Compute an accumulator onto the pixel sites of each component domain of label. | |
| template<typename A , typename I , typename L > | |
| util::array< typename A::result > | compute (util::array< A > &a, const Image< I > &input, const Image< L > &label, const typename L::value &nlabels) |
Compute an accumulator onto the pixel values of the image input. | |
| template<typename A , typename I , typename L > | |
| util::array< typename A::result > | compute (const Accumulator< A > &a, const Image< I > &input, const Image< L > &label, const typename L::value &nlabels) |
Compute an accumulator onto the pixel values of the image input. | |
| template<typename A , typename I , typename L > | |
| mln::trait::ch_value< L, typename A::result >::ret | compute_image (const util::array< typename A::result > &a, const Image< I > &input, const Image< L > &labels, const typename L::value &nlabels) |
Compute an accumulator onto the pixel values of the image input. | |
| template<typename A , typename I , typename L > | |
| mln::trait::ch_value< L, typename A::result >::ret | compute_image (const Accumulator< A > &accu, const Image< I > &input, const Image< L > &labels, const typename L::value &nlabels) |
Compute an accumulator onto the pixel values of the image input. | |
| template<typename A , typename I , typename L > | |
| mln::trait::ch_value< L, typename mln::internal::meta_accu_ret_result_helper < A, typename I::value > ::result >::ret | compute_image (const Meta_Accumulator< A > &accu, const Image< I > &input, const Image< L > &labels, const typename L::value &nlabels) |
Compute an accumulator onto the pixel values of the image input. | |
| template<typename A , typename I , typename L > | |
| mln::trait::ch_value< L, typename A::result >::ret | compute_image (const util::array< typename A::result > &a, const Image< L > &labels, const typename L::value &nlabels) |
| template<typename I , typename N , typename L > | |
| I | fill_holes (const Image< I > &input, const Neighborhood< N > &nbh, L &nlabels) |
| Filling holes of a single object in a binary image. | |
| template<typename I , typename N , typename L > | |
| mln::trait::ch_value< I, L >::ret | flat_zones (const Image< I > &input, const Neighborhood< N > &nbh, L &nlabels) |
| Connected component labeling of the flat zones of an image. | |
| template<typename I , typename N , typename L > | |
| mln::trait::ch_value< I, L >::ret | foreground (const Image< I > &input, const Neighborhood< N > &nbh, L &nlabels) |
| template<typename I , typename L > | |
| mln::trait::concrete< I >::ret | mean_colors (const Image< I > &input, const Image< L > &lbl, typename L::value nlabels) |
| template<typename I , typename L > | |
| mln::trait::concrete< I >::ret | mean_values (const Image< I > &input, const Image< L > &lbl, typename L::value nlabels) |
| template<typename L , typename V > | |
| util::array< L > | n_max (const util::array< V > &in_arr, unsigned n) |
| template<typename L > | |
| util::array< typename L::value > | n_max (const Image< L > &lbl, const typename L::value &nlabels, unsigned n) |
| template<typename I > | |
| mln::trait::concrete< I >::ret | pack (const Image< I > &label, typename I::value &new_nlabels) |
| Relabel a labeled image in order to have a contiguous labeling. | |
| template<typename I > | |
| void | pack_inplace (Image< I > &label, typename I::value &new_nlabels) |
| Relabel inplace a labeled image in order to have a contiguous labeling. | |
| template<typename I , typename N , typename L > | |
| mln::trait::ch_value< I, L >::ret | regional_maxima (const Image< I > &input, const Neighborhood< N > &nbh, L &nlabels) |
| template<typename I , typename N , typename L > | |
| mln::trait::ch_value< I, L >::ret | regional_minima (const Image< I > &input, const Neighborhood< N > &nbh, L &nlabels) |
| template<typename I , typename F > | |
| mln::trait::concrete< I >::ret | relabel (const Image< I > &label, const typename I::value &nlabels, const Function_v2v< F > &fv2v) |
| Remove components and relabel a labeled image. | |
| template<typename I , typename F > | |
| mln::trait::concrete< I >::ret | relabel (const Image< I > &label, const typename I::value &nlabels, typename I::value &new_nlabels, const Function_v2b< F > &fv2b) |
| Remove components and relabel a labeled image. | |
| template<typename I , typename F > | |
| void | relabel_inplace (Image< I > &label, typename I::value &nlabels, const Function_v2b< F > &fv2b) |
| Remove components and relabel a labeled image inplace. | |
| template<typename I , typename F > | |
| void | relabel_inplace (Image< I > &label, typename I::value &nlabels, const Function_v2v< F > &fv2v) |
| Remove components and relabel a labeled image inplace. | |
| template<typename I , typename N , typename L > | |
| mln::trait::ch_value< I, L >::ret | value (const Image< I > &input, const typename I::value &val, const Neighborhood< N > &nbh, L &nlabels) |
| Connected component labeling of the image sites at a given value. | |
| template<typename V , typename I > | |
| mln::trait::ch_value< I, V >::ret | wrap (const V &value_type, const Image< I > &input) |
| Wrap labels such as 0 -> 0 and [1, lmax] maps to [1, Lmax] (using modulus). | |
| template<typename I > | |
| mln::trait::ch_value< I, mln::value::label_8 >::ret | wrap (const Image< I > &input) |
| Wrap labels such as 0 -> 0 and [1, lmax] maps to [1, Lmax] (using modulus). | |
Namespace of labeling routines.
| mln::trait::ch_value< I, L >::ret mln::labeling::background | ( | const Image< I > & | input, | |
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) | [inline] |
Connected component labeling of the background part in a binary image.
| [in] | input | The input image. |
| [in] | nbh | The connexity of the background. |
| [out] | nlabels | The number of labels. |
This routine actually calls mln::labeling::value with the value set to false.
References mln::trace::entering(), mln::exact(), mln::trace::exiting(), and value().
Referenced by fill_holes().
| mln::trait::ch_value< I, L >::ret mln::labeling::blobs | ( | const Image< I > & | input, | |
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) | [inline] |
Connected component labeling of the binary objects of a binary image.
| [in] | input | The input image. |
| [in] | nbh | The connexity of the objects. |
| [out] | nlabels | The Number of labels. Its value is set in the algorithms. |
A fast queue is used so that the algorithm is not recursive and can handle large binary objects (blobs).
References mln::labeling::impl::blobs_(), mln::trace::entering(), mln::exact(), and mln::trace::exiting().
Referenced by mln::graph::labeling(), and mln::my_algorithm().
| mln::trait::ch_value< L, V >::ret mln::labeling::colorize | ( | const V & | value, | |
| const Image< L > & | labeled_image | |||
| ) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
References colorize(), compute(), mln::trace::entering(), mln::exact(), and mln::trace::exiting().
| mln::trait::ch_value< L, mln::value::rgb8 >::ret mln::labeling::colorize | ( | const Image< L > & | input, | |
| const typename L::value & | nlabels | |||
| ) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
References colorize().
| mln::trait::ch_value< L, V >::ret mln::labeling::colorize | ( | const V & | value, | |
| const Image< L > & | labeled_image, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Create a new color image from a labeled image and fill each component with a random color.
litera::black is used for component 0, e.g. the background. Min and max values for RGB values can be set through the global variables mln::labeling::colorize_::min_value and mln::labeling::colorize_::max_value.
| [in] | value | value type used in the returned image. |
| [in] | labeled_image | A labeled image ( |
| [in] | nlabels | Number of labels. |
References mln::literal::black, mln::trace::entering(), mln::exact(), mln::trace::exiting(), mln::labeling::internal::random_color(), mln::fun::i2v::array< T >::resize(), mln::fun::i2v::array< T >::size(), and mln::data::transform().
Referenced by colorize().
| util::array< mln_meta_accu_result(A, typename I::value)> mln::labeling::compute | ( | const Meta_Accumulator< A > & | a, | |
| const Image< I > & | input, | |||
| const Image< L > & | label, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Compute an accumulator onto the pixel values of the image input.
for each component of the image label.
| [in] | a | A meta-accumulator. |
| [in] | input | The input image. |
| [in] | label | The labeled image. |
| [in] | nlabels | The number of labels in label. |
References compute(), mln::exact(), and mln::accu::unmeta().
| util::array< typename A::result > mln::labeling::compute | ( | const Accumulator< A > & | a, | |
| const Image< L > & | label, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Compute an accumulator onto the pixel sites of each component domain of label.
| [in] | a | An accumulator. |
| [in] | label | The labeled image. |
| [in] | nlabels | The number of labels in label. |
References mln::labeling::internal::compute_dispatch(), mln::labeling::internal::compute_tests(), mln::trace::entering(), and mln::trace::exiting().
| util::array< mln_meta_accu_result(A, typename L::psite)> mln::labeling::compute | ( | const Meta_Accumulator< A > & | a, | |
| const Image< L > & | label, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Compute an accumulator onto the pixel sites of each component domain of label.
| [in] | a | A meta-accumulator. |
| [in] | label | The labeled image. |
| [in] | nlabels | The number of labels in label. |
References compute(), mln::exact(), and mln::accu::unmeta().
| util::array< typename A::result > mln::labeling::compute | ( | util::array< A > & | a, | |
| const Image< I > & | input, | |||
| const Image< L > & | label, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Compute an accumulator onto the pixel values of the image input.
for each component of the image label.
| [in] | a | An array of accumulator. |
| [in] | input | The input image. |
| [in] | label | The labeled image. |
| [in] | nlabels | The number of labels in label. |
References mln::labeling::internal::compute_dispatch(), mln::trace::entering(), and mln::trace::exiting().
Referenced by colorize(), compute(), mln::labeling::internal::compute_dispatch(), compute_image(), fill_holes(), mln::labeling::impl::mean_values_rgb(), mln::my_algorithm(), n_max(), mln::make::p_edges_with_mass_centers(), mln::make::p_vertices_with_mass_centers(), pack(), pack_inplace(), and mln::labeled_image< I >::update_().
| util::array< typename A::result > mln::labeling::compute | ( | const Accumulator< A > & | a, | |
| const Image< I > & | input, | |||
| const Image< L > & | label, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Compute an accumulator onto the pixel values of the image input.
for each component of the image label.
| [in] | a | An accumulator. |
| [in] | input | The input image. |
| [in] | label | The labeled image. |
| [in] | nlabels | The number of labels in label. |
References mln::labeling::internal::compute_dispatch(), mln::labeling::internal::compute_tests(), mln::trace::entering(), and mln::trace::exiting().
| mln::trait::ch_value< L , typename A ::result >::ret mln::labeling::compute_image | ( | const util::array< typename A::result > & | a, | |
| const Image< I > & | input, | |||
| const Image< L > & | labels, | |||
| const typename L::value & | nlabels | |||
| ) |
Compute an accumulator onto the pixel values of the image input.
for each component of the image label.
| [in] | a | The mln::p_array of accumulator result. |
| [in] | input | The input image (values). |
| [in] | labels | The label image. |
| [in] | nlabels | The count of labels. |
Referenced by compute_image().
| mln::trait::ch_value< L, typename A::result >::ret mln::labeling::compute_image | ( | const Accumulator< A > & | accu, | |
| const Image< I > & | input, | |||
| const Image< L > & | labels, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Compute an accumulator onto the pixel values of the image input.
for each component of the image label.
| [in] | accu | The accumulator. |
| [in] | input | The input image (values). |
| [in] | labels | The label image. |
| [in] | nlabels | The count of labels. |
References compute(), mln::labeling::internal::compute_image(), mln::trace::entering(), and mln::trace::exiting().
| mln::trait::ch_value< L, typename mln::internal::meta_accu_ret_result_helper< A, typename I::value >::result >::ret mln::labeling::compute_image | ( | const Meta_Accumulator< A > & | accu, | |
| const Image< I > & | input, | |||
| const Image< L > & | labels, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
Compute an accumulator onto the pixel values of the image input.
for each component of the image label.
| [in] | accu | The meta-accumulator. |
| [in] | input | The input image (values). |
| [in] | labels | The label image. |
| [in] | nlabels | The count of labels. |
References compute(), compute_image(), mln::trace::entering(), and mln::trace::exiting().
| mln::trait::ch_value< L , typename A ::result >::ret mln::labeling::compute_image | ( | const util::array< typename A::result > & | a, | |
| const Image< L > & | labels, | |||
| const typename L::value & | nlabels | |||
| ) | [inline] |
References compute_image(), mln::trace::entering(), and mln::trace::exiting().
| I mln::labeling::fill_holes | ( | const Image< I > & | input, | |
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) | [inline] |
Filling holes of a single object in a binary image.
| [in] | input | The input image. |
| [in] | nbh | The connexity of the background. |
| [out] | nlabels | The number of labels. |
This routine actually calls mln::labeling::background
References background(), compute(), mln::trace::entering(), mln::exact(), mln::trace::exiting(), mln::data::fill(), mln::initialize(), mln::util::array< T >::nelements(), and mln::pw::value().
| mln::trait::ch_value< I, L >::ret mln::labeling::flat_zones | ( | const Image< I > & | input, | |
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) |
Connected component labeling of the flat zones of an image.
| [in] | input | The input image. |
| [in] | nbh | The connexity of the flat zones. |
| [out] | nlabels | The number of labels. |
References mln::trace::entering(), mln::exact(), mln::trace::exiting(), and mln::canvas::labeling_video().
| mln::trait::ch_value< I, L >::ret mln::labeling::foreground | ( | const Image< I > & | input, | |
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) | [inline] |
Connected component labeling of the object part in a binary image.
| [in] | input | The input image. |
| [in] | nbh | The connexity of the foreground. |
| [out] | nlabels | The number of labels. |
This routine actually calls mln::labeling::value with the value set to true.
References mln::trace::entering(), mln::exact(), mln::trace::exiting(), and value().
| mln::trait::concrete< I >::ret mln::labeling::mean_colors | ( | const Image< I > & | input, | |
| const Image< L > & | lbl, | |||
| typename L::value | nlabels | |||
| ) |
| mln::trait::concrete< I >::ret mln::labeling::mean_values | ( | const Image< I > & | input, | |
| const Image< L > & | lbl, | |||
| typename L::value | nlabels | |||
| ) |
| util::array< L > mln::labeling::n_max | ( | const util::array< V > & | in_arr, | |
| unsigned | n | |||
| ) |
References mln::trace::entering(), mln::trace::exiting(), and mln::util::array< T >::nelements().
| util::array< typename L::value > mln::labeling::n_max | ( | const Image< L > & | lbl, | |
| const typename L::value & | nlabels, | |||
| unsigned | n | |||
| ) |
References compute(), and mln::exact().
| mln::trait::concrete< I >::ret mln::labeling::pack | ( | const Image< I > & | label, | |
| typename I::value & | new_nlabels | |||
| ) |
Relabel a labeled image in order to have a contiguous labeling.
| [in] | label | The labeled image. |
| [out] | new_nlabels | The number of labels after relabeling. |
References compute(), mln::trace::entering(), mln::trace::exiting(), mln::labeling::internal::pack_tests(), mln::make::relabelfun(), mln::fun::i2v::array< T >::size(), and mln::data::transform().
| void mln::labeling::pack_inplace | ( | Image< I > & | label, | |
| typename I::value & | new_nlabels | |||
| ) |
Relabel inplace a labeled image in order to have a contiguous labeling.
| [in] | label | The labeled image. |
| [out] | new_nlabels | The number of labels after relabeling. |
References compute(), mln::trace::entering(), mln::exact(), mln::trace::exiting(), mln::labeling::internal::pack_tests(), mln::make::relabelfun(), mln::fun::i2v::array< T >::size(), and mln::data::transform().
Referenced by mln::labeled_image< I >::pack_().
| mln::trait::ch_value< I, L >::ret mln::labeling::regional_maxima | ( | const Image< I > & | input, | |
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) |
Connected component labeling of the regional maxima of an image.
| [in] | input | The input image. |
| [in] | nbh | The connexity of the regional maxima. |
| [out] | nlabels | The number of labeled regions. |
References mln::trace::entering(), mln::exact(), mln::trace::exiting(), and mln::canvas::labeling_sorted().
| mln::trait::ch_value< I, L >::ret mln::labeling::regional_minima | ( | const Image< I > & | input, | |
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) |
Connected component labeling of the regional minima of an image.
| [in] | input | The input image. |
| [in] | nbh | The connexity of the regional minima. |
| [out] | nlabels | The number of labeled regions. |
References mln::trace::entering(), mln::exact(), mln::trace::exiting(), and mln::canvas::labeling_sorted().
Referenced by mln::morpho::watershed::impl::generic::flooding(), mln::morpho::watershed::impl::flooding_fastest(), and mln::morpho::meyer_wst().
| mln::trait::concrete< I >::ret mln::labeling::relabel | ( | const Image< I > & | label, | |
| const typename I::value & | nlabels, | |||
| const Function_v2v< F > & | fv2v | |||
| ) | [inline] |
Remove components and relabel a labeled image.
| [in] | label | the labeled image. |
| [in] | nlabels | the number of labels in label. |
| [in] | fv2v | function returning the new component id for each pixel value. |
References mln::trace::entering(), mln::trace::exiting(), mln::labeling::internal::relabel_tests(), and mln::data::transform().
| mln::trait::concrete< I >::ret mln::labeling::relabel | ( | const Image< I > & | label, | |
| const typename I::value & | nlabels, | |||
| typename I::value & | new_nlabels, | |||
| const Function_v2b< F > & | fv2b | |||
| ) | [inline] |
Remove components and relabel a labeled image.
| [in] | label | the labeled image. |
| [in] | nlabels | the number of labels in label. |
| [out] | new_nlabels | the number of labels after relabeling. |
| [in] | fv2b | function returning whether a label must be replaced by the background. |
References mln::trace::entering(), mln::trace::exiting(), mln::labeling::internal::relabel_tests(), and mln::make::relabelfun().
| void mln::labeling::relabel_inplace | ( | Image< I > & | label, | |
| typename I::value & | nlabels, | |||
| const Function_v2b< F > & | fv2b | |||
| ) | [inline] |
Remove components and relabel a labeled image inplace.
| [in,out] | label | the labeled image. |
| [in,out] | nlabels | the number of labels in label. |
| [in] | fv2b | function returning whether a label must be replaced by the background. |
References mln::trace::entering(), mln::trace::exiting(), mln::labeling::internal::relabel_inplace_tests(), and mln::make::relabelfun().
Referenced by mln::labeled_image< I >::relabel().
| void mln::labeling::relabel_inplace | ( | Image< I > & | label, | |
| typename I::value & | nlabels, | |||
| const Function_v2v< F > & | fv2v | |||
| ) | [inline] |
Remove components and relabel a labeled image inplace.
| [in,out] | label | the labeled image. |
| [in,out] | nlabels | the number of labels in label. |
| [in] | fv2v | function returning the new component id for each pixel value. |
References mln::trace::entering(), mln::trace::exiting(), mln::labeling::internal::relabel_inplace_tests(), and mln::data::transform_inplace().
| mln::trait::ch_value< I, L >::ret mln::labeling::value | ( | const Image< I > & | input, | |
| const typename I::value & | val, | |||
| const Neighborhood< N > & | nbh, | |||
| L & | nlabels | |||
| ) |
Connected component labeling of the image sites at a given value.
| [in] | input | The input image. |
| [in] | val | The value to consider. |
| [in] | nbh | The connectivity of components. |
| [out] | nlabels | The number of labels. |
References mln::trace::entering(), mln::trace::exiting(), mln::canvas::labeling_video(), and mln::labeling::internal::value_tests().
Referenced by background(), and foreground().
| mln::trait::ch_value< I, V >::ret mln::labeling::wrap | ( | const V & | value_type, | |
| const Image< I > & | input | |||
| ) | [inline] |
Wrap labels such as 0 -> 0 and [1, lmax] maps to [1, Lmax] (using modulus).
| [in] | value_type | The type used to wrap the label type. |
| [in] | input | The label image. |
References mln::trace::entering(), mln::exact(), mln::trace::exiting(), and mln::data::transform().
Referenced by wrap().
| mln::trait::ch_value< I, mln::value::label_8 >::ret mln::labeling::wrap | ( | const Image< I > & | input | ) | [inline] |
Wrap labels such as 0 -> 0 and [1, lmax] maps to [1, Lmax] (using modulus).
Use label_8 as label type.
| [in] | input | The label image. |
References wrap().
1.7.1