$extrastylesheet
#include <mln/core/internal/labeled_image_base.hh>
Public Member Functions | |
const bbox_t & | bbox (const typename I::value &label) const |
const util::array< bbox_t > & | bboxes () const |
mln::metal::const_< const I > ::ret * | delegatee_ () const |
const I * | delegatee_ () |
void | destroy () |
const const I::domain_t & | domain () const |
bool | has (const psite &p) const |
bool | has (const typename const I::psite &p) const |
bool | is_valid () const |
I::value | nlabels () const |
std::size_t | nsites () const |
rvalue | operator() (const typename I::domain_t::psite &p) const |
lvalue | operator() (const typename I::domain_t::psite &p) |
E & | rw () |
p_if< mln_box(I), fun::eq_v2b_expr_< pw::value_ < I >, pw::cst_< typename I::value > > > | subdomain (const typename I::value &label) const |
const I & | unmorph_ () |
mln::metal::const_< const I > ::ret & | unmorph_ () const |
const t_eligible_values_set & | values_eligible () const |
const t_values_space & | values_space () const |
Constructors. | |
labeled_image_base () | |
Relabel according to a function. | |
Merge or delete labels according to the given function. These methods ensure that the labeling remains contiguous. | |
template<typename F > | |
void | relabel (const Function_v2v< F > &f) |
template<typename F > | |
void | relabel (const Function_v2b< F > &f) |
Protected Member Functions | |
template<typename F > | |
void | relabel_ (const Function_v2v< F > &f) |
template<typename F > | |
void | relabel_ (const Function_v2b< F > &f) |
void | update_data (const fun::i2v::array< typename I::value > &relabel_fun) |
Methods called during relabeling. | |
void | init_update_data_ () |
void | prepare_update_data_ (const typename I::value &lbl, const typename I::value &new_lbl) |
void | update_data_ (const fun::i2v::array< typename I::value > &relabel_fun) |
Protected Attributes | |
mln::util::tracked_ptr < internal::data< E > > | data_ |
Public Types | |
typedef accu::shape::bbox < typename I::psite >::result | bbox_t |
typedef I::domain_t::bkd_piter | bkd_piter |
typedef Image< void > | category |
typedef const I | delegatee |
typedef I::domain_t | domain_t |
typedef E | exact_t |
typedef I::domain_t::fwd_piter | fwd_piter |
typedef internal::morpher_lvalue_ < const I >::ret | lvalue |
typedef fwd_piter | piter |
typedef I::domain_t::psite | psite |
typedef const I::rvalue | rvalue |
typedef I::domain_t::site | site |
typedef mln::value::set< const I::value > | t_eligible_values_set |
typedef mln::value::set < typename mln::value::super_value< const I::value >::ret > | t_values_space |
typedef const I | unmorph |
typedef const I::value | value |
Base class Morpher providing an improved interface for labeled image.
I | The label image type. |
This image type allows to access every site set at a given label.
This image type guaranties that labels are contiguous (from 1 to n).
Definition at line 118 of file labeled_image_base.hh.
mln::labeled_image_base< I, E >::labeled_image_base | ( | ) |
Constructor without argument.
const bbox_t& mln::labeled_image_base< I, E >::bbox | ( | const typename I::value & | label | ) | const |
Return the bounding box of the component label
.
const util::array<bbox_t>& mln::labeled_image_base< I, E >::bboxes | ( | ) | const |
Return the component bounding boxes.
|
inherited |
INTERNAL_API Return the delegatee_ pointer; default code.
|
inherited |
Return the delegatee_ pointer (non-const version); default code.
|
inherited |
Detach data from an image (free it if nobody else hold it).
|
inherited |
|
inherited |
Test if p
belongs to the image domain.
|
inherited |
|
protected |
|
inherited |
Test if this image has been initialized; default impl.
Reimplemented from mln::internal::image_base< const I::value, I::domain_t, E >.
I ::value mln::labeled_image_base< I, E >::nlabels | ( | ) | const |
Return the number of labels;.
|
inherited |
Give the number of sites of the image domain.
|
inherited |
Read-only access of pixel value at point site p
.
|
inherited |
Read-write access of pixel value at point site p
.
|
protected |
void mln::labeled_image_base< I, E >::relabel | ( | const Function_v2v< F > & | f | ) |
void mln::labeled_image_base< I, E >::relabel | ( | const Function_v2b< F > & | f | ) |
Labels may be removed.
This overload make sure the labeling is still contiguous.
|
protected |
|
protected |
|
inherited |
State that the morpher is writable.
This allows for C++ to use it as a mutable object even if it is a temporary object.
p_if<mln_box(I), fun::eq_v2b_expr_<pw::value_<I>, pw::cst_<typename I ::value> > > mln::labeled_image_base< I, E >::subdomain | ( | const typename I::value & | label | ) | const |
Return the domain of the component with label label
.
|
inherited |
INTERNAL_API Give the morphed image (mutable version).
|
inherited |
Give the morphed image (const version).
|
protected |
Update bounding boxes information.
|
protected |
|
inherited |
|
inherited |
Return the value space of the image.
|
protectedinherited |
INTERNAL_API Internal data, sharable by several images.
Definition at line 176 of file core/internal/image_base.hh.
typedef accu::shape::bbox<typename I ::psite>::result mln::labeled_image_base< I, E >::bbox_t |
Type of the bounding component bounding boxes.
Definition at line 126 of file labeled_image_base.hh.
|
inherited |
Backward Site_Iterator associated type.
Definition at line 122 of file core/internal/image_base.hh.
|
inherited |
Definition at line 78 of file core/concept/image.hh.
|
inherited |
Delegatee associated type.
Definition at line 60 of file image_morpher.hh.
|
inherited |
Site_Set associated type.
Definition at line 109 of file core/internal/image_base.hh.
|
inherited |
|
inherited |
Forward Site_Iterator associated type.
Definition at line 119 of file core/internal/image_base.hh.
|
inherited |
Return type of read-write access.
Definition at line 143 of file image_identity.hh.
|
inherited |
Site_Iterator associated type; default definition is fwd_piter.
Definition at line 127 of file core/internal/image_base.hh.
|
inherited |
Point_Site associated type.
Definition at line 112 of file core/internal/image_base.hh.
|
inherited |
Return type of read-only access.
Definition at line 140 of file image_identity.hh.
|
inherited |
Site associated type.
Definition at line 115 of file core/internal/image_base.hh.
|
inherited |
Eligible-value-set associated type.
Definition at line 95 of file core/internal/image_base.hh.
|
inherited |
Value space associated type.
Definition at line 102 of file core/internal/image_base.hh.
|
inherited |
Unmorph image associated type.
Definition at line 72 of file image_morpher.hh.
|
inherited |
Value associated type.
Definition at line 137 of file image_identity.hh.