$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Operators

Functions

template<typename L , typename R >
mln::trait::ch_value< L,
typename mln::fun::vv2v::land
< typename L::value, typename
R::value >::result >::ret 
mln::logical::and_ (const Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
void mln::logical::and_inplace (Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
mln::trait::ch_value< L,
typename
mln::fun::vv2v::land_not
< typename L::value, typename
R::value >::result >::ret 
mln::logical::and_not (const Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
void mln::logical::and_not_inplace (Image< L > &lhs, const Image< R > &rhs)
template<typename I >
mln::trait::concrete< I >::ret mln::logical::not_ (const Image< I > &input)
template<typename I >
void mln::logical::not_inplace (Image< I > &input)
template<typename L , typename R >
bool mln::operator< (const Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
bool mln::operator<= (const Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
bool mln::operator== (const Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
mln::trait::ch_value< L,
typename mln::fun::vv2v::lor
< typename L::value, typename
R::value >::result >::ret 
mln::logical::or_ (const Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
void mln::logical::or_inplace (Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
mln::trait::ch_value< L,
typename mln::fun::vv2v::lxor
< typename L::value, typename
R::value >::result >::ret 
mln::logical::xor_ (const Image< L > &lhs, const Image< R > &rhs)
template<typename L , typename R >
void mln::logical::xor_inplace (Image< L > &lhs, const Image< R > &rhs)

Detailed Description

All operators applying to images.

Function Documentation

template<typename L , typename R >
mln::trait::ch_value< L , typename mln::fun::vv2v:: land < typename L ::value, typename R ::value >::result >::ret mln::logical::and_ ( const Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise "logical and" between images lhs and rhs.

Parameters
[in]lhsFirst operand image.
[in]rhsSecond operand image.
Returns
The result image.
Precondition
lhs.domain == rhs.domain
template<typename L , typename R >
void mln::logical::and_inplace ( Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise in-place "logical and" of image rhs in image lhs.

  \param[in,out] lhs First operand image.
  \param[in] rhs Second operand image.

  It performs: \n
    for all p of rhs.domain \n
      lhs(p) = lhs(p) and rhs(p)

  \pre \p rhs.domain >= \p lhs.domain
template<typename L , typename R >
mln::trait::ch_value< L , typename mln::fun::vv2v:: land_not < typename L ::value, typename R ::value >::result >::ret mln::logical::and_not ( const Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise "logical and-not" between images lhs and rhs.

Parameters
[in]lhsFirst operand image.
[in]rhsSecond operand image.
Returns
The result image.
Precondition
lhs.domain == rhs.domain
template<typename L , typename R >
void mln::logical::and_not_inplace ( Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise in-place "logical and-not" of image rhs in image lhs.

Parameters
[in,out]lhsFirst operand image.
[in]rhsSecond operand image.

It performs:
for all p of rhs.domain
lhs(p) = lhs(p) and not rhs(p)

Precondition
rhs.domain >= lhs.domain
template<typename I >
mln::trait::concrete< I >::ret mln::logical::not_ ( const Image< I > &  input)

Point-wise "logical not" of image input.

Parameters
[in]inputthe input image.
Returns
The result image.
Precondition
input.is_valid
template<typename I >
void mln::logical::not_inplace ( Image< I > &  input)

Point-wise in-place "logical not" of image input.

Parameters
[in,out]inputThe target image.

It performs:
for all p of input.domain
input(p) = not input(p)

Precondition
input.is_valid
template<typename L , typename R >
bool mln::operator< ( const Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise test if the pixel values of lhs are point-wise less than the pixel values of rhs.

Parameters
[in]lhsA first image.
[in]rhsA second image.
Precondition
lhs.domain == rhs.domain
template<typename L , typename R >
bool mln::operator<= ( const Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise test if the pixel values of lhs are point-wise less than or equal to the pixel values of rhs.

Parameters
[in]lhsA first image.
[in]rhsA second image.
Precondition
lhs.domain == rhs.domain
template<typename L , typename R >
bool mln::operator== ( const Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise test if the pixel values of lhs are equal to the pixel values of rhs.

Parameters
[in]lhsA first image.
[in]rhsA second image.
Precondition
lhs.domain == rhs.domain
template<typename L , typename R >
mln::trait::ch_value< L , typename mln::fun::vv2v:: lor < typename L ::value, typename R ::value >::result >::ret mln::logical::or_ ( const Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise "logical or" between images lhs and rhs.

Parameters
[in]lhsFirst operand image.
[in]rhsSecond operand image.
Returns
The result image.
Precondition
lhs.domain == rhs.domain
template<typename L , typename R >
void mln::logical::or_inplace ( Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise in-place "logical or" of image rhs in image lhs.

Parameters
[in,out]lhsFirst operand image.
[in]rhsSecond operand image.

It performs:
for all p of rhs.domain
lhs(p) = lhs(p) or rhs(p)

Precondition
rhs.domain >= lhs.domain
template<typename L , typename R >
mln::trait::ch_value< L , typename mln::fun::vv2v:: lxor < typename L ::value, typename R ::value >::result >::ret mln::logical::xor_ ( const Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise "logical xor" between images lhs and rhs.

Parameters
[in]lhsFirst operand image.
[in]rhsSecond operand image.
Returns
The result image.
Precondition
lhs.domain == rhs.domain
template<typename L , typename R >
void mln::logical::xor_inplace ( Image< L > &  lhs,
const Image< R > &  rhs 
)

Point-wise in-place "logical xor" of image rhs in image lhs.

Parameters
[in,out]lhsFirst operand image.
[in]rhsSecond operand image.

It performs:
for all p of rhs.domain
lhs(p) = lhs(p) xor rhs(p)

Precondition
rhs.domain >= lhs.domain