IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Namespaces | Functions
ExtremaUtils.h File Reference

Utility functions for extrema management. More...

#include <IPSDKMath/IPSDKMathExports.h>
#include <IPSDKMath/Statistics/ExtremaTypes.h>
#include <boost/bind.hpp>
#include <boost/function.hpp>

Go to the source code of this file.

Namespaces

 ipsdk
 Main namespace for IPSDK library.
 
 ipsdk::math
 Namespace agregating IPSDK mathematical routines and classes.
 

Functions

template<typename T , typename IndexType >
IPSDKMATH_API void ipsdk::math::findLocalStrictExtrema (const std::vector< T > &inputColl, const eExtremaBorderPolicy &extremaBorderPolicy, const eExtremaType &extremaType, std::vector< IndexType > &extremaIdxColl)
 generic function allowing to search for local strict extrema into a collection of values More...
 
template<typename T , typename IndexType >
void ipsdk::math::findLocalStrictMinima (const std::vector< T > &inputColl, const eExtremaBorderPolicy &extremaBorderPolicy, std::vector< IndexType > &extremaIdxColl)
 generic function allowing to search for local strict minima into a collection of values More...
 
template<typename T , typename IndexType >
void ipsdk::math::findLocalStrictMaxima (const std::vector< T > &inputColl, const eExtremaBorderPolicy &extremaBorderPolicy, std::vector< IndexType > &extremaIdxColl)
 generic function allowing to search for local strict maxima into a collection of values More...
 
template<typename T >
IPSDKMATH_API void ipsdk::math::findLocalDilatedExtrema (const std::vector< T > &inputColl, const eExtremaBorderPolicy &extremaBorderPolicy, const eExtremaType &extremaType, const T &dilateFactor, ExtremaRangeColl &extremaRangeColl)
 generic function allowing to search for local 'dilated' extrema into a collection of values More...
 
template<typename T , typename IndexType >
IPSDKMATH_API void ipsdk::math::findLocalExtrema (const std::vector< T > &inputColl, const eExtremaBorderPolicy &extremaBorderPolicy, const eExtremaType &extremaType, std::vector< IndexType > &extremaIdxColl)
 function allowing to search for local extrema into a collection of values (this is the non strict extrema search version) More...
 
template<typename T , typename IndexType >
void ipsdk::math::findLocalMinima (const std::vector< T > &inputColl, const eExtremaBorderPolicy &extremaBorderPolicy, std::vector< IndexType > &extremaIdxColl)
 function allowing to search for local minima into a collection of values More...
 
template<typename T , typename IndexType >
void ipsdk::math::findLocalMaxima (const std::vector< T > &inputColl, const eExtremaBorderPolicy &extremaBorderPolicy, std::vector< IndexType > &extremaIdxColl)
 function allowing to search for local maxima into a collection of values More...
 
template<typename ExtremaInfo , typename T >
IPSDKMATH_API void ipsdk::math::filterExtrema (const eExtremaType &extremaType, const ipReal64 minDistance, const T extremaThresholdValue, boost::function< void(const ExtremaInfo &, ipReal64 &, T &)> extractExtremaCoordsWrapper, std::vector< ExtremaInfo > &extremaInfoColl)
 function allowing to filter a collection of extrema using a distance criterion More...
 
template<typename T , typename IndexType >
void ipsdk::math::extractBasicExtremaCoords (const std::vector< T > &inputColl, const IndexType &dataIdx, ipReal64 &extremaLocation, T &extremaValue)
 
template<typename T >
IPSDKMATH_API void ipsdk::math::extractBasicExtremaCoords (const std::vector< T > &inputColl, const ExtremaRange &extremaRange, ipReal64 &extremaLocation, T &extremaValue)
 basic function to retrieve extrema coordinates from an extrema range information More...
 
template<typename T , typename IndexType >
void ipsdk::math::filterMinima (const std::vector< T > &inputColl, const ipReal64 minDistance, std::vector< IndexType > &extremaInfoColl)
 function allowing to filter a collection of minima using a distance criterion Extrema are first sorted in function of there value and then filtered using a distance criterion More...
 
template<typename T , typename IndexType >
void ipsdk::math::filterMinima (const std::vector< T > &inputColl, const ipReal64 minDistance, const T extremaThresholdValue, std::vector< IndexType > &extremaInfoColl)
 function allowing to filter a collection of minima using a distance criterion and a value threshold Extrema are first sorted in function of there value and then filtered using a distance criterion More...
 
template<typename T , typename IndexType >
void ipsdk::math::filterMaxima (const std::vector< T > &inputColl, const ipReal64 minDistance, std::vector< IndexType > &extremaInfoColl)
 function allowing to filter a collection of maxima using a distance criterion Extrema are first sorted in function of there value and then filtered using a distance criterion More...
 
template<typename T , typename IndexType >
void ipsdk::math::filterMaxima (const std::vector< T > &inputColl, const ipReal64 minDistance, const T extremaThresholdValue, std::vector< IndexType > &extremaInfoColl)
 function allowing to filter a collection of maxima using a distance criterion and a value threshold Extrema are first sorted in function of there value and then filtered using a distance criterion More...
 

Detailed Description

Utility functions for extrema management.

Author
E.Noirfalise
Date
2018/07/16