Determines an integral image representation for a given organized data array. More...
#include <integral_image2D.h>
Public Types | |
typedef Eigen::Matrix < typename IntegralImageTypeTraits < DataType >::IntegralType, Dimension, 1 > | ElementType |
typedef Eigen::Matrix < typename IntegralImageTypeTraits < DataType >::IntegralType, second_order_size, 1 > | SecondOrderType |
Public Member Functions | |
unsigned | getFiniteElementsCount (unsigned start_x, unsigned start_y, unsigned width, unsigned height) const |
Compute the number of finite elements within a given rectangle. | |
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. | |
ElementType | getFirstOrderSum (unsigned start_x, unsigned start_y, unsigned width, unsigned height) const |
Compute the first order sum within a given rectangle. | |
ElementType | getFirstOrderSumSE (unsigned start_x, unsigned start_y, unsigned end_x, unsigned end_y) const |
Compute the first order sum within a given rectangle. | |
SecondOrderType | getSecondOrderSum (unsigned start_x, unsigned start_y, unsigned width, unsigned height) const |
Compute the second order sum within a given rectangle. | |
SecondOrderType | getSecondOrderSumSE (unsigned start_x, unsigned start_y, unsigned end_x, unsigned end_y) const |
Compute the second order sum within a given rectangle. | |
IntegralImage2D (bool compute_second_order_integral_images) | |
Constructor for an Integral Image. | |
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. | |
void | setSecondOrderComputation (bool compute_second_order_integral_images) |
sets the computation for second order integral images on or off. | |
virtual | ~IntegralImage2D () |
Destructor. | |
Static Public Attributes | |
static const unsigned | second_order_size = (Dimension * (Dimension + 1)) >> 1 |
Private Types | |
typedef Eigen::Matrix < typename IntegralImageTypeTraits < DataType >::Type, Dimension, 1 > | InputType |
Private Member Functions | |
void | computeIntegralImages (const DataType *data, unsigned row_stride, unsigned element_stride) |
Compute the actual integral image data. | |
Private Attributes | |
bool | compute_second_order_integral_images_ |
Indicates whether second order integral images are available. | |
std::vector< unsigned > | finite_values_integral_image_ |
std::vector< ElementType, Eigen::aligned_allocator < ElementType > > | first_order_integral_image_ |
unsigned | height_ |
The height of the 2d input data array. | |
std::vector< SecondOrderType, Eigen::aligned_allocator < SecondOrderType > > | second_order_integral_image_ |
unsigned | width_ |
The width of the 2d input data array. |
Determines an integral image representation for a given organized data array.
Definition at line 107 of file integral_image2D.h.
typedef Eigen::Matrix<typename IntegralImageTypeTraits<DataType>::IntegralType, Dimension, 1> pcl::IntegralImage2D< DataType, Dimension >::ElementType |
Definition at line 111 of file integral_image2D.h.
typedef Eigen::Matrix<typename IntegralImageTypeTraits<DataType>::Type, Dimension, 1> pcl::IntegralImage2D< DataType, Dimension >::InputType [private] |
Definition at line 203 of file integral_image2D.h.
typedef Eigen::Matrix<typename IntegralImageTypeTraits<DataType>::IntegralType, second_order_size, 1> pcl::IntegralImage2D< DataType, Dimension >::SecondOrderType |
Definition at line 112 of file integral_image2D.h.
pcl::IntegralImage2D< DataType, Dimension >::IntegralImage2D | ( | bool | compute_second_order_integral_images | ) | [inline] |
Constructor for an Integral Image.
[in] | compute_second_order_integral_images | set to true if we want to compute a second order image |
Definition at line 117 of file integral_image2D.h.
virtual pcl::IntegralImage2D< DataType, Dimension >::~IntegralImage2D | ( | ) | [inline, virtual] |
Destructor.
Definition at line 129 of file integral_image2D.h.
void pcl::IntegralImage2D< DataType, Dimension >::computeIntegralImages | ( | const DataType * | data, |
unsigned | row_stride, | ||
unsigned | element_stride | ||
) | [private] |
Compute the actual integral image data.
[in] | data | the input data |
[in] | element_stride | the element stride of the data |
[in] | row_stride | the row stride of the data |
Definition at line 154 of file integral_image2D.hpp.
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.
[in] | start_x | x position of rectangle |
[in] | start_y | y position of rectangle |
[in] | width | width of rectangle |
[in] | height | height of rectangle |
Definition at line 98 of file integral_image2D.hpp.
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.
[in] | start_x | x position of the start of the rectangle |
[in] | start_y | x position of the start of the rectangle |
[in] | end_x | x position of the end of the rectangle |
[in] | end_y | x position of the end of the rectangle |
Definition at line 140 of file integral_image2D.hpp.
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.
[in] | start_x | x position of rectangle |
[in] | start_y | y position of rectangle |
[in] | width | width of rectangle |
[in] | height | height of rectangle |
Definition at line 70 of file integral_image2D.hpp.
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.
[in] | start_x | x position of the start of the rectangle |
[in] | start_y | x position of the start of the rectangle |
[in] | end_x | x position of the end of the rectangle |
[in] | end_y | x position of the end of the rectangle |
Definition at line 112 of file integral_image2D.hpp.
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.
[in] | start_x | x position of rectangle |
[in] | start_y | y position of rectangle |
[in] | width | width of rectangle |
[in] | height | height of rectangle |
Definition at line 84 of file integral_image2D.hpp.
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.
[in] | start_x | x position of the start of the rectangle |
[in] | start_y | x position of the start of the rectangle |
[in] | end_x | x position of the end of the rectangle |
[in] | end_y | x position of the end of the rectangle |
Definition at line 126 of file integral_image2D.hpp.
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.
[in] | data | the input data |
[in] | width | the width of the data |
[in] | height | the height of the data |
[in] | element_stride | the element stride of the data |
[in] | row_stride | the row stride of the data |
Definition at line 54 of file integral_image2D.hpp.
void pcl::IntegralImage2D< DataType, Dimension >::setSecondOrderComputation | ( | bool | compute_second_order_integral_images | ) |
sets the computation for second order integral images on or off.
compute_second_order_integral_images |
Definition at line 47 of file integral_image2D.hpp.
bool pcl::IntegralImage2D< DataType, Dimension >::compute_second_order_integral_images_ [private] |
Indicates whether second order integral images are available.
Definition at line 223 of file integral_image2D.h.
std::vector<unsigned> pcl::IntegralImage2D< DataType, Dimension >::finite_values_integral_image_ [private] |
Definition at line 215 of file integral_image2D.h.
std::vector<ElementType, Eigen::aligned_allocator<ElementType> > pcl::IntegralImage2D< DataType, Dimension >::first_order_integral_image_ [private] |
Definition at line 213 of file integral_image2D.h.
unsigned pcl::IntegralImage2D< DataType, Dimension >::height_ [private] |
The height of the 2d input data array.
Definition at line 220 of file integral_image2D.h.
std::vector<SecondOrderType, Eigen::aligned_allocator<SecondOrderType> > pcl::IntegralImage2D< DataType, Dimension >::second_order_integral_image_ [private] |
Definition at line 214 of file integral_image2D.h.
const unsigned pcl::IntegralImage2D< DataType, Dimension >::second_order_size = (Dimension * (Dimension + 1)) >> 1 [static] |
Definition at line 110 of file integral_image2D.h.
unsigned pcl::IntegralImage2D< DataType, Dimension >::width_ [private] |
The width of the 2d input data array.
Definition at line 218 of file integral_image2D.h.