Public Member Functions | Protected Member Functions | Protected Attributes

pcl::IntegralImage2D< DataType, IIDataType > Class Template Reference
[Module features]

Generic implementation for creating 2D integral images (including second order integral images). More...

#include <pcl/features/integral_image_2d.h>

List of all members.

Public Member Functions

 IntegralImage2D (DataType *data, const int width, const int height, const int dimensions, const bool compute_second_order_integral_images, const int element_stride, const int row_stride)
 Constructor.
virtual ~IntegralImage2D ()
 Destructor.
IIDataType getSum (const int start_x, const int start_y, const int width, const int height, const int dimension_index)
 Computes the sum of the "dimension_index"-th dimension of the elements within the specified area.
IIDataType getSum (const int start_x, const int start_y, const int width, const int height, const int dimension_index_1, const int dimension_index_2)
 Computes the sum of the "dimension_index1"-th dimension of the elements times the "dimension_index2"-th dimension of the elements within the specified area.

Protected Member Functions

void computeIntegralImages (DataType *data)
 Computes integral images for multiple dimensions.
void computeIntegralImagesOneDimensional (DataType *data)
 Computes integral image for one dimension.

Protected Attributes

int width_
 the width of the 2d input data array
int height_
 the height of the 2d input data array
int dimensions_
 number of dimensions of each element
int element_stride_
 number of DataType entries per element
int row_stride_
 number of DataType entries per row
bool are_second_order_ii_available_
 indicates whether second order integral images are available
std::vector< IIDataType * > first_order_integral_images_
 first order integral images
std::vector< std::vector
< IIDataType * > > 
second_order_integral_images_
 second order integral images

Detailed Description

template<class DataType, class IIDataType>
class pcl::IntegralImage2D< DataType, IIDataType >

Generic implementation for creating 2D integral images (including second order integral images).

Author:
Stefan Holzer

Definition at line 51 of file integral_image_2d.h.


Constructor & Destructor Documentation

template<class DataType, class IIDataType >
pcl::IntegralImage2D< DataType, IIDataType >::IntegralImage2D ( DataType *  data,
const int  width,
const int  height,
const int  dimensions,
const bool  compute_second_order_integral_images,
const int  element_stride,
const int  row_stride 
)

Constructor.

Internally creates the integral images.

Parameters:
data the dense 2d input data array.
width the width of the 2d input data array.
height the height of the 2d input data array.
dimensions number of dimensions of each element.
compute_second_order_integral_images whether to compute second order integral images.
element_stride number of DataType entries per element (equal or bigger than dimensions).
row_stride number of DataType entries per row (equal or bigger than element_stride * number of elements per row).

Definition at line 41 of file integral_image_2d.hpp.

template<class DataType , class IIDataType >
pcl::IntegralImage2D< DataType, IIDataType >::~IntegralImage2D (  )  [virtual]

Destructor.

Definition at line 87 of file integral_image_2d.hpp.


Member Function Documentation

template<class DataType, class IIDataType >
void pcl::IntegralImage2D< DataType, IIDataType >::computeIntegralImages ( DataType *  data  )  [protected]

Computes integral images for multiple dimensions.

Definition at line 144 of file integral_image_2d.hpp.

template<class DataType, class IIDataType >
void pcl::IntegralImage2D< DataType, IIDataType >::computeIntegralImagesOneDimensional ( DataType *  data  )  [protected]

Computes integral image for one dimension.

Definition at line 254 of file integral_image_2d.hpp.

template<class DataType , class IIDataType >
IIDataType pcl::IntegralImage2D< DataType, IIDataType >::getSum ( const int  start_x,
const int  start_y,
const int  width,
const int  height,
const int  dimension_index 
)

Computes the sum of the "dimension_index"-th dimension of the elements within the specified area.

Definition at line 105 of file integral_image_2d.hpp.

template<class DataType , class IIDataType >
IIDataType pcl::IntegralImage2D< DataType, IIDataType >::getSum ( const int  start_x,
const int  start_y,
const int  width,
const int  height,
const int  dimension_index_1,
const int  dimension_index_2 
)

Computes the sum of the "dimension_index1"-th dimension of the elements times the "dimension_index2"-th dimension of the elements within the specified area.

Definition at line 125 of file integral_image_2d.hpp.


Member Data Documentation

template<class DataType, class IIDataType>
bool pcl::IntegralImage2D< DataType, IIDataType >::are_second_order_ii_available_ [protected]

indicates whether second order integral images are available

Definition at line 114 of file integral_image_2d.h.

template<class DataType, class IIDataType>
int pcl::IntegralImage2D< DataType, IIDataType >::dimensions_ [protected]

number of dimensions of each element

Definition at line 108 of file integral_image_2d.h.

template<class DataType, class IIDataType>
int pcl::IntegralImage2D< DataType, IIDataType >::element_stride_ [protected]

number of DataType entries per element

Definition at line 110 of file integral_image_2d.h.

template<class DataType, class IIDataType>
std::vector<IIDataType *> pcl::IntegralImage2D< DataType, IIDataType >::first_order_integral_images_ [protected]

first order integral images

Definition at line 117 of file integral_image_2d.h.

template<class DataType, class IIDataType>
int pcl::IntegralImage2D< DataType, IIDataType >::height_ [protected]

the height of the 2d input data array

Definition at line 106 of file integral_image_2d.h.

template<class DataType, class IIDataType>
int pcl::IntegralImage2D< DataType, IIDataType >::row_stride_ [protected]

number of DataType entries per row

Definition at line 112 of file integral_image_2d.h.

template<class DataType, class IIDataType>
std::vector<std::vector <IIDataType*> > pcl::IntegralImage2D< DataType, IIDataType >::second_order_integral_images_ [protected]

second order integral images

Definition at line 119 of file integral_image_2d.h.

template<class DataType, class IIDataType>
int pcl::IntegralImage2D< DataType, IIDataType >::width_ [protected]

the width of the 2d input data array

Definition at line 104 of file integral_image_2d.h.


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