TuttleOFX  1
terry::filter::detail Namespace Reference

Data Structures

class  correlator_n
struct  correlator_k
struct  inner_product_k_t
struct  inner_product_k_t< 0 >
class  kernel_1d_adaptor
 kernel adaptor for one-dimensional cores Core needs to provide size(),begin(),end(),operator[], value_type,iterator,const_iterator,reference,const_reference More...

Functions

template<typename T >
GIL_FORCEINLINE bool operator>= (const point2< T > &p1, const point2< T > &p2)
template<typename T >
GIL_FORCEINLINE bool operator<= (const point2< T > &p1, const point2< T > &p2)
template<typename T , typename T2 >
GIL_FORCEINLINE bool operator>= (const point2< T > &p, const T2 v)
template<typename T , typename T2 >
GIL_FORCEINLINE bool operator<= (const point2< T > &p, const T2 v)
template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView , typename Correlator >
void correlate_rows_imp (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, Correlator correlator)
template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_imp (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::true_ rows, const boost::mpl::false_)
template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_imp (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::true_ rows, const boost::mpl::true_)
template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_imp (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::false_ rows, const boost::mpl::false_ fixed)
template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_imp (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::false_ rows, const boost::mpl::true_ fixed)
template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_auto_imp (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::true_ fixed)
template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_auto_imp (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::false_)
template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_auto (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::true_ autoEnabled)
template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void correlate_1d_auto (const SrcView &src, const Kernel &ker, const DstView &dst, const typename SrcView::point_t &dst_tl, const convolve_boundary_option option, const boost::mpl::false_ autoEnabled)

Function Documentation

template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_auto ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::true_  autoEnabled 
)

correlate a 1D variable-size kernel along the rows of an image

Definition at line 383 of file convolve.hpp.

template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_auto ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::false_  autoEnabled 
)

correlate a 1D variable-size kernel along the rows of an image

Definition at line 394 of file convolve.hpp.

template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_auto_imp ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::true_  fixed 
)

correlate a 1D fixed-size kernel along the rows of an image

Definition at line 331 of file convolve.hpp.

template<bool rows, typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_auto_imp ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::false_   
)

correlate a 1D variable-size kernel along the rows of an image

Definition at line 342 of file convolve.hpp.

template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_imp ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::true_  rows,
const boost::mpl::false_   
)

correlate a 1D variable-size kernel along the rows of an image

Definition at line 290 of file convolve.hpp.

template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_imp ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::true_  rows,
const boost::mpl::true_   
)

correlate a 1D fixed-size kernel along the rows of an image

Definition at line 300 of file convolve.hpp.

template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_imp ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::false_  rows,
const boost::mpl::false_  fixed 
)

correlate a 1D variable-size kernel along the columns of an image can be remove with "fixed" param as template argument

Definition at line 311 of file convolve.hpp.

template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView >
GIL_FORCEINLINE void terry::filter::detail::correlate_1d_imp ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
const boost::mpl::false_  rows,
const boost::mpl::true_  fixed 
)

correlate a 1D fixed-size kernel along the columns of an image

Definition at line 321 of file convolve.hpp.

template<typename PixelAccum , typename SrcView , typename Kernel , typename DstView , typename Correlator >
void terry::filter::detail::correlate_rows_imp ( const SrcView &  src,
const Kernel &  ker,
const DstView &  dst,
const typename SrcView::point_t &  dst_tl,
const convolve_boundary_option  option,
Correlator  correlator 
)

compute the correlation of 1D kernel with the rows of an image

Parameters:
srcsource view
dstdestination view
kerdynamic size kernel
dst_tltopleft point of dst in src coordinates. Must be Point(0,0) if src.dimensions()==dst.dimensions(). We can see it as a vector to move dst in src coordinates.
optionboundary option
correlatorcorrelator functor

Definition at line 65 of file convolve.hpp.

References terry::numeric::assign_pixels(), terry::filter::convolve_option_extend_constant, terry::filter::convolve_option_extend_mirror, terry::filter::convolve_option_extend_padded, terry::filter::convolve_option_extend_zero, terry::filter::convolve_option_output_ignore, terry::filter::convolve_option_output_zero, tuttle::plugin::merge::fill_pixels(), tuttle::max(), tuttle::min(), and terry::subimage_view().

Here is the call graph for this function:

template<typename T >
GIL_FORCEINLINE bool terry::filter::detail::operator<= ( const point2< T > &  p1,
const point2< T > &  p2 
)

Definition at line 48 of file convolve.hpp.

template<typename T , typename T2 >
GIL_FORCEINLINE bool terry::filter::detail::operator<= ( const point2< T > &  p,
const T2  v 
)

Definition at line 54 of file convolve.hpp.

template<typename T >
GIL_FORCEINLINE bool terry::filter::detail::operator>= ( const point2< T > &  p1,
const point2< T > &  p2 
)

Definition at line 45 of file convolve.hpp.

template<typename T , typename T2 >
GIL_FORCEINLINE bool terry::filter::detail::operator>= ( const point2< T > &  p,
const T2  v 
)

Definition at line 51 of file convolve.hpp.