Milena (Olena)  User documentation 2.0a Id
mln::data Namespace Reference

Namespace of image processing routines related to pixel data. More...

Namespaces

namespace  approx
 

Namespace of image processing routines related to pixel levels with approximation.


namespace  impl
 

Implementation namespace of data namespace.


namespace  naive
 

Namespace of image processing routines related to pixel levels with naive approach.


Functions

template<typename I , typename O >
void abs (const Image< I > &input, Image< O > &output)
template<typename I >
void abs_inplace (Image< I > &input)
template<typename I , typename F >
void apply (Image< I > &input, const Function_v2v< F > &f)
template<typename A , typename I >
A::result compute (const Accumulator< A > &a, const Image< I > &input)
 Compute an accumulator onto the pixel values of the image input.
template<typename A , typename I >
A::result compute (Accumulator< A > &a, const Image< I > &input)
 Compute an accumulator onto the pixel values of the image input.
template<typename V , typename I >
mln::trait::ch_value< I, V >::ret convert (const V &v, const Image< I > &input)
 Convert the image input by changing the value type.
template<typename I , typename W , typename O >
void fast_median (const Image< I > &input, const Window< W > &win, Image< O > &output)
template<typename I , typename D >
void fill (Image< I > &ima, const D &data)
template<typename I , typename J >
void fill_with_image (Image< I > &ima, const Image< J > &data)
 Fill the image ima with the values of the image data.
template<typename I , typename W >
mln::trait::concrete< I >::ret median (const Image< I > &input, const Window< W > &win)
template<typename A , typename I >
 mln_meta_accu_result (A, typename I::value) compute(const Meta_Accumulator< A > &a
 Compute an accumulator onto the pixel values of the image input.
template<typename I , typename J >
void paste (const Image< I > &input, Image< J > &output)
 Paste the contents of image input into the image output.
template<typename I , typename J >
void paste_without_localization (const Image< I > &input, Image< J > &output)
 Paste the contents of image input into the image output without taking into account the localization of sites.
template<typename I >
void replace (Image< I > &input, const typename I::value &old_value, const typename I::value &new_value)
template<typename V , typename I >
mln::trait::ch_value< I, V >::ret saturate (V v, const Image< I > &input)
template<typename I , typename V >
mln::trait::ch_value< I, V >::ret saturate (const Image< I > &input, const V &min, const V &max)
template<typename I >
void saturate_inplace (Image< I > &input, const typename I::value &min, const typename I::value &max)
template<typename I >
util::array< unsigned > sort_offsets_increasing (const Image< I > &input)
 Sort pixel offsets of the image input wrt increasing pixel values.
template<typename I >
p_array< typename I::psite > sort_psites_decreasing (const Image< I > &input)
template<typename I >
p_array< typename I::psite > sort_psites_increasing (const Image< I > &input)
template<typename V , typename I >
mln::trait::ch_value< I, V >::ret stretch (const V &v, const Image< I > &input)
template<typename I , typename O >
void to_enc (const Image< I > &input, Image< O > &output)
template<typename I , typename F >
mln::trait::ch_value< I,
typename F::result >::ret 
transform (const Image< I > &input, const Function_v2v< F > &f)
template<typename I1 , typename I2 , typename F >
mln::trait::ch_value< I1,
typename F::result >::ret 
transform (const Image< I1 > &input1, const Image< I2 > &input2, const Function_vv2v< F > &f)
template<typename I , typename F >
void transform_inplace (Image< I > &ima, const Function_v2v< F > &f)
template<typename I1 , typename I2 , typename F >
void transform_inplace (Image< I1 > &ima, const Image< I2 > &aux, const Function_vv2v< F > &f)
template<typename A , typename I >
A::result update (Accumulator< A > &a, const Image< I > &input)
template<typename V , typename I >
mln::trait::ch_value< I, V >::ret wrap (const V &v, const Image< I > &input)
 Routine to wrap values such as 0 -> 0 and [1, lmax] maps to [1, Lmax] (using modulus).
template<typename I , typename V >
void fill_with_value (Image< I > &ima, const V &val)
 Fill the whole image ima with the single value v.

Detailed Description

Namespace of image processing routines related to pixel data.


Function Documentation

template<typename I , typename O >
void mln::data::abs ( const Image< I > &  input,
Image< O > &  output 
) [inline]

Apply the absolute value (abs) function to image pixel values.

Parameters:
[in]inputThe input image.
[out]outputThe output image.

Definition at line 68 of file data/abs.hh.

References transform().

template<typename I >
void mln::data::abs_inplace ( Image< I > &  input) [inline]

Apply the absolute value (abs) function to image pixel values.

Parameters:
[in,out]inputThe input image.

Definition at line 80 of file data/abs.hh.

References apply().

template<typename I , typename F >
void mln::data::apply ( Image< I > &  input,
const Function_v2v< F > &  f 
) [inline]

Apply a function-object to the image input.

Parameters:
[in,out]inputThe input image.
[in]fThe function-object.

This routine runs:
for all p of input, input(p) = f( input(p) )

This routine is equivalent to data::tranform(input, f, input) but it is faster since a single iterator is required.

Definition at line 95 of file apply.hh.

Referenced by abs_inplace(), and saturate_inplace().

template<typename A , typename I >
A::result mln::data::compute ( const Accumulator< A > &  a,
const Image< I > &  input 
) [inline]

Compute an accumulator onto the pixel values of the image input.

Be ware that the given accumulator won't be modified and won't store any result.

Parameters:
[in]aAn accumulator.
[in]inputThe input image.
Returns:
The accumulator result.

It fully relies on data::update.

Definition at line 93 of file data/compute.hh.

Referenced by mln::estim::mean(), mln::estim::min_max(), and mln::estim::sum().

template<typename A , typename I >
A::result mln::data::compute ( Accumulator< A > &  a,
const Image< I > &  input 
) [inline]

Compute an accumulator onto the pixel values of the image input.

Parameters:
[in,out]aAn accumulator.
[in]inputThe input image.
Returns:
The accumulator result.

It fully relies on data::update.

Definition at line 104 of file data/compute.hh.

template<typename V , typename I >
mln::trait::ch_value< I, V >::ret mln::data::convert ( const V &  v,
const Image< I > &  input 
) [inline]

Convert the image input by changing the value type.

Parameters:
[in]vA value of the destination type.
[in]inputThe input image.

Definition at line 154 of file mln/data/convert.hh.

Referenced by mln::morpho::watershed::superpose(), and mln::debug::superpose().

template<typename I , typename W , typename O >
void mln::data::fast_median ( const Image< I > &  input,
const Window< W > &  win,
Image< O > &  output 
) [inline]

Compute in output the median filter of image input by the window win.

Parameters:
[in]inputThe image to be filtered.
[in]winThe window.
[in,out]outputThe output image.
Precondition:
input and output have to be initialized.

Definition at line 167 of file fast_median.hh.

template<typename I , typename J >
void mln::data::fill_with_image ( Image< I > &  ima,
const Image< J > &  data 
) [inline]

Fill the image ima with the values of the image data.

Parameters:
[in,out]imaThe image to be filled.
[in]dataThe image.
Warning:
The definition domain of ima has to be included in the one of data.
Precondition:
ima.domain <= data.domain.

Definition at line 124 of file fill_with_image.hh.

template<typename I , typename V >
void mln::data::fill_with_value ( Image< I > &  ima,
const V &  val 
) [inline]

Fill the whole image ima with the single value v.

Parameters:
[in,out]imaThe image to be filled.
[in]valThe value to assign to all sites.
Precondition:
ima has to be initialized.

Definition at line 130 of file fill_with_value.hh.

Referenced by mln::p_image< I >::clear().

template<typename I , typename W >
mln::trait::concrete< I >::ret mln::data::median ( const Image< I > &  input,
const Window< W > &  win 
)

Compute in output the median filter of image input by the window win.

Parameters:
[in]inputThe image to be filtered.
[in]winThe window.
Precondition:
input have to be initialized.

Definition at line 270 of file median.hh.

template<typename A , typename I >
mln::data::mln_meta_accu_result ( ,
typename I::value   
) const [inline]

Compute an accumulator onto the pixel values of the image input.

Parameters:
[in]aA meta-accumulator.
[in]inputThe input image.
Returns:
The accumulator result.
template<typename I , typename J >
void mln::data::paste ( const Image< I > &  input,
Image< J > &  output 
) [inline]

Paste the contents of image input into the image output.

Parameters:
[in]inputThe input image providing pixels values.
[in,out]outputThe image in which values are assigned.

This routine runs:
for all p of input, output(p) = input(p).

Warning:
The definition domain of input has to be included in the one of output; so using mln::safe_image does not make pasting outside the output domain work.
Precondition:
input.domain <= output.domain

Definition at line 137 of file paste.hh.

Referenced by mln::make::image3d(), mln::draw::line(), mln::debug::mosaic(), mln::geom::rotate(), mln::debug::slices_2d(), and mln::labeling::superpose().

template<typename I , typename J >
void mln::data::paste_without_localization ( const Image< I > &  input,
Image< J > &  output 
) [inline]

Paste the contents of image input into the image output without taking into account the localization of sites.

Parameters:
[in]inputThe input image providing pixels values.
[in,out]outputThe image in which values are assigned.

Definition at line 349 of file paste_without_localization.hh.

template<typename I >
void mln::data::replace ( Image< I > &  input,
const typename I::value &  old_value,
const typename I::value &  new_value 
)

Replace old_value by new_value in the image input

Parameters:
[in]inputThe input image.
[in]old_valueThe value to be replaced...
[in]new_value...by this one.

Definition at line 88 of file replace.hh.

template<typename V , typename I >
mln::trait::ch_value< I, V >::ret mln::data::saturate ( v,
const Image< I > &  input 
) [inline]

Apply the saturate function to image pixel values.

Parameters:
[in]vA value of the output type.
[in]inputThe input image.

The saturation is based on the min and max values of the output value type. This assumes that the range of values in the input image is larger than the one of the output image.

Definition at line 87 of file data/saturate.hh.

References transform().

template<typename I , typename V >
mln::trait::ch_value< I, V >::ret mln::data::saturate ( const Image< I > &  input,
const V &  min,
const V &  max 
) [inline]

Apply the saturate function to image pixel values.

Parameters:
[in]inputThe input image.
[in]minThe minimum output value.
[in]maxThe maximum output value.

Definition at line 103 of file data/saturate.hh.

References transform().

template<typename I >
void mln::data::saturate_inplace ( Image< I > &  input,
const typename I::value &  min,
const typename I::value &  max 
) [inline]

Apply the saturate function to image pixel values.

Parameters:
[in,out]inputThe input image.
[in]minThe minimum output value.
[in]maxThe maximum output value

Definition at line 119 of file data/saturate.hh.

References apply().

template<typename I >
util::array< unsigned > mln::data::sort_offsets_increasing ( const Image< I > &  input) [inline]

Sort pixel offsets of the image input wrt increasing pixel values.

Definition at line 298 of file sort_offsets.hh.

template<typename I >
p_array< typename I::psite > mln::data::sort_psites_decreasing ( const Image< I > &  input) [inline]

Sort psites the image input through a function f to set the output image in decreasing way.

Parameters:
[in]inputThe input image.
Precondition:
input.is_valid

Definition at line 229 of file sort_psites.hh.

Referenced by mln::morpho::tree::min_tree().

template<typename I >
p_array< typename I::psite > mln::data::sort_psites_increasing ( const Image< I > &  input) [inline]

Sort psites the image input through a function f to set the output image in increasing way.

Parameters:
[in]inputThe input image.
Precondition:
input.is_valid

Definition at line 219 of file sort_psites.hh.

Referenced by mln::morpho::tree::max_tree().

template<typename V , typename I >
mln::trait::ch_value< I, V >::ret mln::data::stretch ( const V &  v,
const Image< I > &  input 
) [inline]

Stretch the values of input so that they can be stored in output.

Parameters:
[in]vA value to set the output value type.
[in]inputThe input image.
Returns:
A stretch image with values of the same type as v.
Precondition:
input.is_valid

Definition at line 128 of file stretch.hh.

References mln::data::impl::stretch().

template<typename I , typename O >
void mln::data::to_enc ( const Image< I > &  input,
Image< O > &  output 
) [inline]

Set the output image with the encoding values of the image input pixels.

Parameters:
[in]inputThe input image.
[out]outputThe result image.
Precondition:
output.domain >= input.domain

Definition at line 60 of file to_enc.hh.

References transform().

template<typename I , typename F >
mln::trait::ch_value< I, typename F::result >::ret mln::data::transform ( const Image< I > &  input,
const Function_v2v< F > &  f 
) [inline]

Transform the image input through a function f.

Parameters:
[in]inputThe input image.
[in]fThe function.

This routine runs:
for all p of input, output(p) = f( input(p) ).

Definition at line 202 of file data/transform.hh.

Referenced by abs(), mln::logical::and_not(), mln::labeling::colorize(), mln::arith::diff_abs(), mln::labeling::fill_holes(), mln::linear::mln_ch_convolve_grad(), mln::labeling::pack(), mln::labeling::pack_inplace(), mln::labeling::relabel(), saturate(), mln::data::impl::stretch(), to_enc(), wrap(), and mln::labeling::wrap().

template<typename I1 , typename I2 , typename F >
mln::trait::ch_value< I1, typename F::result >::ret mln::data::transform ( const Image< I1 > &  input1,
const Image< I2 > &  input2,
const Function_vv2v< F > &  f 
) [inline]

Transform two images input1 input2 through a function f.

Parameters:
[in]input1The 1st input image.
[in]input2The 2nd input image.
[in]fThe function.

This routine runs:
for all p of input, output(p) = f( input1(p), input2(p) ).

Definition at line 219 of file data/transform.hh.

template<typename I , typename F >
void mln::data::transform_inplace ( Image< I > &  ima,
const Function_v2v< F > &  f 
)

Transform inplace the image ima through a function f.

Parameters:
[in,out]imaThe image to be transformed.
[in]fThe function.

This routine runs:
for all p of ima, ima(p) = f( ima(p) ).

Definition at line 490 of file transform_inplace.hh.

Referenced by mln::logical::and_inplace(), mln::logical::and_not_inplace(), mln::logical::not_inplace(), mln::logical::or_inplace(), mln::labeling::relabel_inplace(), and mln::logical::xor_inplace().

template<typename I1 , typename I2 , typename F >
void mln::data::transform_inplace ( Image< I1 > &  ima,
const Image< I2 > &  aux,
const Function_vv2v< F > &  f 
)

Transform inplace the image ima with the image aux through a function f.

Parameters:
[in]imaThe image to be transformed.
[in]auxThe auxiliary image.
[in]fThe function.

This routine runs:
for all p of ima, ima(p) = f( ima(p), aux(p) ).

Definition at line 502 of file transform_inplace.hh.

template<typename A , typename I >
A::result mln::data::update ( Accumulator< A > &  a,
const Image< I > &  input 
) [inline]

Update an accumulator with the pixel values of the image input.

Parameters:
[in]aThe accumulator.
[in]inputThe input image.
Returns:
The accumulator result.

Definition at line 191 of file update.hh.

template<typename V , typename I >
mln::trait::ch_value< I, V >::ret mln::data::wrap ( const V &  v,
const Image< I > &  input 
)

Routine to wrap values such as 0 -> 0 and [1, lmax] maps to [1, Lmax] (using modulus).

Parameters:
[in]vThe target value type.
[in]inputInput image.
Returns:
An image with wrapped values.

Definition at line 65 of file data/wrap.hh.

References transform().

 All Classes Namespaces Functions Variables Typedefs Enumerator