Population
Image processing library in C++
Classes | Functions

template class for n-dimensional matrices which fixed type More...

Classes

class  pop::MatN< Dim, PixelType >
 template class for matrix (or Image) More...
 

Functions

template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::minimum (const pop::MatN< Dim, PixelType > &f, const pop::MatN< Dim, PixelType > &g)
 minimum value for each VecN $h(x)=\min(f(x),g(x))$ More...
 
template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::maximum (const pop::MatN< Dim, PixelType > &f, const pop::MatN< Dim, PixelType > &g)
 maximum value for each VecN $h(x)=\max(f(x),g(x))$ More...
 
template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::absolute (const pop::MatN< Dim, PixelType > &f)
 absolute value for each VecN $h(x)=abs(f(x))$ More...
 
template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::squareRoot (const pop::MatN< Dim, PixelType > &f)
 square value for each pixel value $h(x)=\sqrt{f(x)}$ More...
 
template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::log (const pop::MatN< Dim, PixelType > &f)
 log value in e-base for each VecN h(x)=std::log(f(x)) More...
 
template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::log10 (const pop::MatN< Dim, PixelType > &f)
 log value in 10-base for each pixel value h(x)=std::log10(f(x)) More...
 
template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::exp (const pop::MatN< Dim, PixelType > &f)
 exponentiel value for each pixel value h(x)=std::exp(f(x)) More...
 
template<int Dim, typename PixelType >
pop::MatN< Dim, PixelType > pop::pow (const pop::MatN< Dim, PixelType > &f, F32 exponant)
 pow value for each pixel value h(x)=std::pow(f(x),exponant) More...
 
template<int Dim, typename PixelType >
F32 pop::normValue (const pop::MatN< Dim, PixelType > &A, int p=2)
 "Entrywise" norms normValue(A,p) = $ \Vert A \Vert_{p} = \left( \sum_{i=1}^m \sum_{j=1}^n | a_{ij} |^p \right)^{1/p}. $ More...
 
template<int Dim, typename PixelType >
F32 pop::distance (const pop::MatN< Dim, PixelType > &A, const pop::MatN< Dim, PixelType > &B, int p=2)
 distance between two vectors $\vert u-v \vert^p$ More...
 
template<int Dim, typename PixelType >
F32 pop::normPowerValue (const pop::MatN< Dim, PixelType > &f, int p=2)
 "Entrywise" norms normPowerValue(A,p) = $ \Vert A \Vert_{p}^p = \sum_{i=1}^m \sum_{j=1}^n | a_{ij} |^p $ More...
 
template<class PixelType >
std::ostream & pop::operator<< (std::ostream &out, const pop::MatN< 1, PixelType > &in)
 
template<int Dim, class PixelType >
std::istream & pop::operator>> (std::istream &in, pop::MatN< Dim, PixelType > &f)
 

Detailed Description

template class for n-dimensional matrices which fixed type

Function Documentation

template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::absolute ( const pop::MatN< Dim, PixelType > &  f)

absolute value for each VecN $h(x)=abs(f(x))$

Parameters
ffirst input matrix
Returns
output matrix
template<int Dim, typename PixelType >
F32 pop::distance ( const pop::MatN< Dim, PixelType > &  A,
const pop::MatN< Dim, PixelType > &  B,
int  p = 2 
)

distance between two vectors $\vert u-v \vert^p$

Parameters
Afirst matrix
Bsecond matrix
pp-norm
Returns
output scalar value
template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::exp ( const pop::MatN< Dim, PixelType > &  f)

exponentiel value for each pixel value h(x)=std::exp(f(x))

Parameters
ffirst input matrix
Returns
output matrix
template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::log ( const pop::MatN< Dim, PixelType > &  f)

log value in e-base for each VecN h(x)=std::log(f(x))

Parameters
ffirst input matrix
Returns
output matrix
template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::log10 ( const pop::MatN< Dim, PixelType > &  f)

log value in 10-base for each pixel value h(x)=std::log10(f(x))

Parameters
ffirst input matrix
Returns
output matrix
template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::maximum ( const pop::MatN< Dim, PixelType > &  f,
const pop::MatN< Dim, PixelType > &  g 
)

maximum value for each VecN $h(x)=\max(f(x),g(x))$

Parameters
ffirst input matrix
gfirst input matrix
Returns
output matrix
template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::minimum ( const pop::MatN< Dim, PixelType > &  f,
const pop::MatN< Dim, PixelType > &  g 
)

minimum value for each VecN $h(x)=\min(f(x),g(x))$

Parameters
ffirst input matrix
gfirst input matrix
Returns
output matrix
template<int Dim, typename PixelType >
F32 pop::normPowerValue ( const pop::MatN< Dim, PixelType > &  f,
int  p = 2 
)

"Entrywise" norms normPowerValue(A,p) = $ \Vert A \Vert_{p}^p = \sum_{i=1}^m \sum_{j=1}^n | a_{ij} |^p $

Parameters
finput matrix
pp-norm
Returns
scalar value
template<int Dim, typename PixelType >
F32 pop::normValue ( const pop::MatN< Dim, PixelType > &  A,
int  p = 2 
)

"Entrywise" norms normValue(A,p) = $ \Vert A \Vert_{p} = \left( \sum_{i=1}^m \sum_{j=1}^n | a_{ij} |^p \right)^{1/p}. $

Parameters
Ainput matrix
pp-norm
Returns
scalar value
template<class PixelType >
std::ostream& pop::operator<< ( std::ostream &  out,
const pop::MatN< 1, PixelType > &  in 
)
Parameters
outoutput stream
ininput matrix
Returns
output stream

stream extraction of the Vec

template<int Dim, class PixelType >
std::istream& pop::operator>> ( std::istream &  in,
pop::MatN< Dim, PixelType > &  f 
)
Parameters
ininput stream
fouput matrix
Returns
input stream

stream insertion of the Vec

template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::pow ( const pop::MatN< Dim, PixelType > &  f,
F32  exponant 
)

pow value for each pixel value h(x)=std::pow(f(x),exponant)

Parameters
ffirst input matrix
exponantexponant
Returns
output matrix
template<int Dim, typename PixelType >
pop::MatN<Dim, PixelType> pop::squareRoot ( const pop::MatN< Dim, PixelType > &  f)

square value for each pixel value $h(x)=\sqrt{f(x)}$

Parameters
ffirst input matrix
Returns
output matrix