Point Cloud Library (PCL)  1.9.1-dev
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
pcl::keypoints::brisk::ScaleSpace Class Reference

BRISK Scale Space helper. More...

#include <pcl/keypoints/brisk_2d.h>

Public Member Functions

 ScaleSpace (int octaves=3)
 Constructor. More...
 
 ~ScaleSpace ()
 
void constructPyramid (const std::vector< unsigned char > &image, int width, int height)
 Construct the image pyramids. More...
 
void getKeypoints (const int threshold, std::vector< pcl::PointWithScale, Eigen::aligned_allocator< pcl::PointWithScale > > &keypoints)
 Get the keypoints for the associated image and threshold. More...
 

Protected Member Functions

bool isMax2D (const uint8_t layer, const int x_layer, const int y_layer)
 Nonmax suppression. More...
 
float refine1D (const float s_05, const float s0, const float s05, float &max)
 1D (scale axis) refinement: around octave More...
 
float refine1D_1 (const float s_05, const float s0, const float s05, float &max)
 1D (scale axis) refinement: around intra More...
 
float refine1D_2 (const float s_05, const float s0, const float s05, float &max)
 1D (scale axis) refinement: around octave 0 only More...
 
float subpixel2D (const int s_0_0, const int s_0_1, const int s_0_2, const int s_1_0, const int s_1_1, const int s_1_2, const int s_2_0, const int s_2_1, const int s_2_2, float &delta_x, float &delta_y)
 2D maximum refinement More...
 
float refine3D (const uint8_t layer, const int x_layer, const int y_layer, float &x, float &y, float &scale, bool &ismax)
 3D maximum refinement centered around (x_layer,y_layer) More...
 
int getScoreAbove (const uint8_t layer, const int x_layer, const int y_layer)
 interpolated score access with recalculation when needed More...
 
int getScoreBelow (const uint8_t layer, const int x_layer, const int y_layer)
 
float getScoreMaxAbove (const uint8_t layer, const int x_layer, const int y_layer, const int threshold, bool &ismax, float &dx, float &dy)
 return the maximum of score patches above or below More...
 
float getScoreMaxBelow (const uint8_t layer, const int x_layer, const int y_layer, const int threshold, bool &ismax, float &dx, float &dy)
 

Protected Attributes

uint8_t layers_
 
std::vector< pcl::keypoints::brisk::Layerpyramid_
 
uint8_t threshold_
 
uint8_t safe_threshold_
 
float safety_factor_
 
float basic_size_
 

Detailed Description

BRISK Scale Space helper.

Definition at line 391 of file brisk_2d.h.

Constructor & Destructor Documentation

pcl::keypoints::brisk::ScaleSpace::ScaleSpace ( int  octaves = 3)

Constructor.

Specify the number of octaves.

Parameters
[in]octavesthe number of octaves (default: 3)
pcl::keypoints::brisk::ScaleSpace::~ScaleSpace ( )

Member Function Documentation

void pcl::keypoints::brisk::ScaleSpace::constructPyramid ( const std::vector< unsigned char > &  image,
int  width,
int  height 
)

Construct the image pyramids.

Parameters
[in]imagethe image to construct pyramids for
[in]widththe image width
[in]heightthe image height

Referenced by pcl::BriskKeypoint2D< PointInT, PointOutT, IntensityT >::detectKeypoints().

void pcl::keypoints::brisk::ScaleSpace::getKeypoints ( const int  threshold,
std::vector< pcl::PointWithScale, Eigen::aligned_allocator< pcl::PointWithScale > > &  keypoints 
)

Get the keypoints for the associated image and threshold.

Parameters
[in]thresholdthe threshold for the keypoints
[out]keypointsthe resultant list of keypoints

Referenced by pcl::BriskKeypoint2D< PointInT, PointOutT, IntensityT >::detectKeypoints().

int pcl::keypoints::brisk::ScaleSpace::getScoreAbove ( const uint8_t  layer,
const int  x_layer,
const int  y_layer 
)
inlineprotected

interpolated score access with recalculation when needed

int pcl::keypoints::brisk::ScaleSpace::getScoreBelow ( const uint8_t  layer,
const int  x_layer,
const int  y_layer 
)
inlineprotected
float pcl::keypoints::brisk::ScaleSpace::getScoreMaxAbove ( const uint8_t  layer,
const int  x_layer,
const int  y_layer,
const int  threshold,
bool &  ismax,
float &  dx,
float &  dy 
)
inlineprotected

return the maximum of score patches above or below

float pcl::keypoints::brisk::ScaleSpace::getScoreMaxBelow ( const uint8_t  layer,
const int  x_layer,
const int  y_layer,
const int  threshold,
bool &  ismax,
float &  dx,
float &  dy 
)
inlineprotected
bool pcl::keypoints::brisk::ScaleSpace::isMax2D ( const uint8_t  layer,
const int  x_layer,
const int  y_layer 
)
inlineprotected

Nonmax suppression.

float pcl::keypoints::brisk::ScaleSpace::refine1D ( const float  s_05,
const float  s0,
const float  s05,
float &  max 
)
inlineprotected

1D (scale axis) refinement: around octave

float pcl::keypoints::brisk::ScaleSpace::refine1D_1 ( const float  s_05,
const float  s0,
const float  s05,
float &  max 
)
inlineprotected

1D (scale axis) refinement: around intra

float pcl::keypoints::brisk::ScaleSpace::refine1D_2 ( const float  s_05,
const float  s0,
const float  s05,
float &  max 
)
inlineprotected

1D (scale axis) refinement: around octave 0 only

float pcl::keypoints::brisk::ScaleSpace::refine3D ( const uint8_t  layer,
const int  x_layer,
const int  y_layer,
float &  x,
float &  y,
float &  scale,
bool &  ismax 
)
inlineprotected

3D maximum refinement centered around (x_layer,y_layer)

float pcl::keypoints::brisk::ScaleSpace::subpixel2D ( const int  s_0_0,
const int  s_0_1,
const int  s_0_2,
const int  s_1_0,
const int  s_1_1,
const int  s_1_2,
const int  s_2_0,
const int  s_2_1,
const int  s_2_2,
float &  delta_x,
float &  delta_y 
)
inlineprotected

2D maximum refinement

Member Data Documentation

float pcl::keypoints::brisk::ScaleSpace::basic_size_
protected

Definition at line 477 of file brisk_2d.h.

uint8_t pcl::keypoints::brisk::ScaleSpace::layers_
protected

Definition at line 468 of file brisk_2d.h.

std::vector<pcl::keypoints::brisk::Layer> pcl::keypoints::brisk::ScaleSpace::pyramid_
protected

Definition at line 469 of file brisk_2d.h.

uint8_t pcl::keypoints::brisk::ScaleSpace::safe_threshold_
protected

Definition at line 473 of file brisk_2d.h.

float pcl::keypoints::brisk::ScaleSpace::safety_factor_
protected

Definition at line 476 of file brisk_2d.h.

uint8_t pcl::keypoints::brisk::ScaleSpace::threshold_
protected

Definition at line 472 of file brisk_2d.h.


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