Point Cloud Library (PCL)  1.14.0-dev
List of all members | Public Types | Public Member Functions | Static Public Attributes
pcl::IntegralImage2D< DataType, Dimension > Class Template Reference

Determines an integral image representation for a given organized data array. More...

#include <pcl/features/integral_image2D.h>

+ Inheritance diagram for pcl::IntegralImage2D< DataType, Dimension >:

Public Types

using Ptr = shared_ptr< IntegralImage2D< DataType, Dimension > >
 
using ConstPtr = shared_ptr< const IntegralImage2D< DataType, Dimension > >
 
using ElementType = Eigen::Matrix< typename IntegralImageTypeTraits< DataType >::IntegralType, Dimension, 1 >
 
using SecondOrderType = Eigen::Matrix< typename IntegralImageTypeTraits< DataType >::IntegralType, second_order_size, 1 >
 

Public Member Functions

 IntegralImage2D (bool compute_second_order_integral_images)
 Constructor for an Integral Image. More...
 
virtual ~IntegralImage2D ()=default
 Destructor. More...
 
void setSecondOrderComputation (bool compute_second_order_integral_images)
 sets the computation for second order integral images on or off. More...
 
void setInput (const DataType *data, unsigned width, unsigned height, unsigned element_stride, unsigned row_stride)
 Set the input data to compute the integral image for. More...
 
ElementType getFirstOrderSum (unsigned start_x, unsigned start_y, unsigned width, unsigned height) const
 Compute the first order sum within a given rectangle. More...
 
ElementType getFirstOrderSumSE (unsigned start_x, unsigned start_y, unsigned end_x, unsigned end_y) const
 Compute the first order sum within a given rectangle. More...
 
SecondOrderType getSecondOrderSum (unsigned start_x, unsigned start_y, unsigned width, unsigned height) const
 Compute the second order sum within a given rectangle. More...
 
SecondOrderType getSecondOrderSumSE (unsigned start_x, unsigned start_y, unsigned end_x, unsigned end_y) const
 Compute the second order sum within a given rectangle. More...
 
unsigned getFiniteElementsCount (unsigned start_x, unsigned start_y, unsigned width, unsigned height) const
 Compute the number of finite elements within a given rectangle. More...
 
unsigned getFiniteElementsCountSE (unsigned start_x, unsigned start_y, unsigned end_x, unsigned end_y) const
 Compute the number of finite elements within a given rectangle. More...
 

Static Public Attributes

static const unsigned second_order_size = (Dimension * (Dimension + 1)) >> 1
 

Detailed Description

template<class DataType, unsigned Dimension>
class pcl::IntegralImage2D< DataType, Dimension >

Determines an integral image representation for a given organized data array.

Author
Suat Gedikli

Definition at line 109 of file integral_image2D.h.

Member Typedef Documentation

◆ ConstPtr

template<class DataType , unsigned Dimension>
using pcl::IntegralImage2D< DataType, Dimension >::ConstPtr = shared_ptr<const IntegralImage2D<DataType, Dimension> >

Definition at line 113 of file integral_image2D.h.

◆ ElementType

template<class DataType , unsigned Dimension>
using pcl::IntegralImage2D< DataType, Dimension >::ElementType = Eigen::Matrix<typename IntegralImageTypeTraits<DataType>::IntegralType, Dimension, 1>

Definition at line 115 of file integral_image2D.h.

◆ Ptr

template<class DataType , unsigned Dimension>
using pcl::IntegralImage2D< DataType, Dimension >::Ptr = shared_ptr<IntegralImage2D<DataType, Dimension> >

Definition at line 112 of file integral_image2D.h.

◆ SecondOrderType

template<class DataType , unsigned Dimension>
using pcl::IntegralImage2D< DataType, Dimension >::SecondOrderType = Eigen::Matrix<typename IntegralImageTypeTraits<DataType>::IntegralType, second_order_size, 1>

Definition at line 116 of file integral_image2D.h.

Constructor & Destructor Documentation

◆ IntegralImage2D()

template<class DataType , unsigned Dimension>
pcl::IntegralImage2D< DataType, Dimension >::IntegralImage2D ( bool  compute_second_order_integral_images)
inline

Constructor for an Integral Image.

Parameters
[in]compute_second_order_integral_imagesset to true if we want to compute a second order image

Definition at line 121 of file integral_image2D.h.

◆ ~IntegralImage2D()

template<class DataType , unsigned Dimension>
virtual pcl::IntegralImage2D< DataType, Dimension >::~IntegralImage2D ( )
virtualdefault

Destructor.

Member Function Documentation

◆ getFiniteElementsCount()

template<typename DataType , unsigned Dimension>
unsigned pcl::IntegralImage2D< DataType, Dimension >::getFiniteElementsCount ( unsigned  start_x,
unsigned  start_y,
unsigned  width,
unsigned  height 
) const
inline

Compute the number of finite elements within a given rectangle.

Parameters
[in]start_xx position of rectangle
[in]start_yy position of rectangle
[in]widthwidth of rectangle
[in]heightheight of rectangle

Definition at line 100 of file integral_image2D.hpp.

◆ getFiniteElementsCountSE()

template<typename DataType , unsigned Dimension>
unsigned pcl::IntegralImage2D< DataType, Dimension >::getFiniteElementsCountSE ( unsigned  start_x,
unsigned  start_y,
unsigned  end_x,
unsigned  end_y 
) const
inline

Compute the number of finite elements within a given rectangle.

Parameters
[in]start_xx position of the start of the rectangle
[in]start_yx position of the start of the rectangle
[in]end_xx position of the end of the rectangle
[in]end_yx position of the end of the rectangle

Definition at line 142 of file integral_image2D.hpp.

◆ getFirstOrderSum()

template<typename DataType , unsigned Dimension>
pcl::IntegralImage2D< DataType, Dimension >::ElementType pcl::IntegralImage2D< DataType, Dimension >::getFirstOrderSum ( unsigned  start_x,
unsigned  start_y,
unsigned  width,
unsigned  height 
) const
inline

Compute the first order sum within a given rectangle.

Parameters
[in]start_xx position of rectangle
[in]start_yy position of rectangle
[in]widthwidth of rectangle
[in]heightheight of rectangle

Definition at line 72 of file integral_image2D.hpp.

Referenced by pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computePointNormal().

◆ getFirstOrderSumSE()

template<typename DataType , unsigned Dimension>
pcl::IntegralImage2D< DataType, Dimension >::ElementType pcl::IntegralImage2D< DataType, Dimension >::getFirstOrderSumSE ( unsigned  start_x,
unsigned  start_y,
unsigned  end_x,
unsigned  end_y 
) const
inline

Compute the first order sum within a given rectangle.

Parameters
[in]start_xx position of the start of the rectangle
[in]start_yx position of the start of the rectangle
[in]end_xx position of the end of the rectangle
[in]end_yx position of the end of the rectangle

Definition at line 114 of file integral_image2D.hpp.

Referenced by pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computePointNormalMirror().

◆ getSecondOrderSum()

template<typename DataType , unsigned Dimension>
pcl::IntegralImage2D< DataType, Dimension >::SecondOrderType pcl::IntegralImage2D< DataType, Dimension >::getSecondOrderSum ( unsigned  start_x,
unsigned  start_y,
unsigned  width,
unsigned  height 
) const
inline

Compute the second order sum within a given rectangle.

Parameters
[in]start_xx position of rectangle
[in]start_yy position of rectangle
[in]widthwidth of rectangle
[in]heightheight of rectangle

Definition at line 86 of file integral_image2D.hpp.

Referenced by pcl::IntegralImageNormalEstimation< PointInT, PointOutT >::computePointNormal().

◆ getSecondOrderSumSE()

template<typename DataType , unsigned Dimension>
pcl::IntegralImage2D< DataType, Dimension >::SecondOrderType pcl::IntegralImage2D< DataType, Dimension >::getSecondOrderSumSE ( unsigned  start_x,
unsigned  start_y,
unsigned  end_x,
unsigned  end_y 
) const
inline

Compute the second order sum within a given rectangle.

Parameters
[in]start_xx position of the start of the rectangle
[in]start_yx position of the start of the rectangle
[in]end_xx position of the end of the rectangle
[in]end_yx position of the end of the rectangle

Definition at line 128 of file integral_image2D.hpp.

◆ setInput()

template<typename DataType , unsigned Dimension>
void pcl::IntegralImage2D< DataType, Dimension >::setInput ( const DataType *  data,
unsigned  width,
unsigned  height,
unsigned  element_stride,
unsigned  row_stride 
)

Set the input data to compute the integral image for.

Parameters
[in]datathe input data
[in]widththe width of the data
[in]heightthe height of the data
[in]element_stridethe element stride of the data
[in]row_stridethe row stride of the data

Definition at line 56 of file integral_image2D.hpp.

◆ setSecondOrderComputation()

template<typename DataType , unsigned Dimension>
void pcl::IntegralImage2D< DataType, Dimension >::setSecondOrderComputation ( bool  compute_second_order_integral_images)

sets the computation for second order integral images on or off.

Parameters
compute_second_order_integral_images

Definition at line 49 of file integral_image2D.hpp.

Member Data Documentation

◆ second_order_size

template<class DataType , unsigned Dimension>
const unsigned pcl::IntegralImage2D< DataType, Dimension >::second_order_size = (Dimension * (Dimension + 1)) >> 1
static

Definition at line 114 of file integral_image2D.h.


The documentation for this class was generated from the following files: