pcl::registration::IncrementalRegistration< PointT, Scalar > Class Template Reference
Module registration

Incremental IterativeClosestPoint class. More...

`#include <pcl/registration/incremental_registration.h>`

## Public Types

typedef pcl::PointCloud< PointT >::Ptr | PointCloudPtr
typedef pcl::PointCloud< PointT >::ConstPtr | PointCloudConstPtr
typedef pcl::Registration< PointT, PointT, Scalar >::Ptr | RegistrationPtr
typedef pcl::Registration< PointT, PointT, Scalar >::Matrix4 | Matrix4

## Public Member Functions

| IncrementalRegistration ()
virtual | ~IncrementalRegistration ()
| Empty destructor. More...
bool | registerCloud (const PointCloudConstPtr &cloud, const Matrix4 &delta_estimate=Matrix4::Identity())
| Register new point cloud incrementally. More...
Matrix4 | getDeltaTransform () const
| Get estimated transform between the last two registered clouds. More...
Matrix4 | getAbsoluteTransform () const
| Get estimated overall transform. More...
void | reset ()
| Reset incremental Registration without resetting registration_. More...
void | setRegistration (RegistrationPtr)
| Set registration instance used to align clouds. More...

## Protected Attributes

PointCloudConstPtr | last_cloud_
| last registered point cloud More...
RegistrationPtr | registration_
| registration instance to align clouds More...
Matrix4 | delta_transform_
| estimated transforms More...
Matrix4 | abs_transform_

## Detailed Description

### template<typename PointT, typename Scalar = float>
class pcl::registration::IncrementalRegistration< PointT, Scalar >

Incremental IterativeClosestPoint class.

This class provides a way to register a stream of clouds where each cloud will be aligned to the previous cloud.

IterativeClosestPoint<PointXYZ,PointXYZ>::Ptr icp (new IterativeClosestPoint<PointXYZ,PointXYZ>);
icp->setMaxCorrespondenceDistance (0.05);
icp->setMaximumIterations (50);
IncrementalRegistration<PointXYZ> iicp;
iicp.setRegistration (icp);
while (true){
PointCloud<PointXYZ>::Ptr cloud (new PointCloud<PointXYZ>);
read_cloud (*cloud);
iicp.registerCloud (cloud);
PointCloud<PointXYZ>::Ptr tmp (new PointCloud<PointXYZ>);
transformPointCloud (*cloud, *tmp, iicp.getAbsoluteTransform ());
write_cloud (*tmp);
}

Author
  Michael 'v4hn' Goerner

Definition at line 74 of file incremental_registration.h.

## Member Typedef Documentation

## Matrix4

template<typename PointT, typename Scalar = float>

typedef pcl::Registration<PointT,PointT,Scalar>::Matrix4 pcl::registration::IncrementalRegistration< PointT, Scalar >::Matrix4

Definition at line 80 of file incremental_registration.h.

## PointCloudConstPtr

template<typename PointT, typename Scalar = float>

typedef pcl::PointCloud<PointT>::ConstPtr pcl::registration::IncrementalRegistration< PointT, Scalar >::PointCloudConstPtr

Definition at line 77 of file incremental_registration.h.

## PointCloudPtr

template<typename PointT, typename Scalar = float>

typedef pcl::PointCloud<PointT>::Ptr pcl::registration::IncrementalRegistration< PointT, Scalar >::PointCloudPtr

Definition at line 76 of file incremental_registration.h.

## RegistrationPtr

template<typename PointT, typename Scalar = float>

typedef pcl::Registration<PointT,PointT,Scalar>::Ptr pcl::registration::IncrementalRegistration< PointT, Scalar >::RegistrationPtr

Definition at line 79 of file incremental_registration.h.

## Constructor & Destructor Documentation

## IncrementalRegistration()

template<typename PointT , typename Scalar >

pcl::registration::IncrementalRegistration< PointT, Scalar >::IncrementalRegistration | ( |  | ) |

Definition at line 42 of file incremental_registration.hpp.

## ~IncrementalRegistration()

template<typename PointT, typename Scalar = float>

virtual pcl::registration::IncrementalRegistration< PointT, Scalar >::~IncrementalRegistration | ( |  | ) |

inline virtual

Empty destructor.

Definition at line 85 of file incremental_registration.h.

References pcl::registration::IncrementalRegistration< PointT, Scalar >::getAbsoluteTransform(), pcl::registration::IncrementalRegistration< PointT, Scalar >::getDeltaTransform(), pcl::registration::IncrementalRegistration< PointT, Scalar >::registerCloud(), pcl::registration::IncrementalRegistration< PointT, Scalar >::reset(), and pcl::registration::IncrementalRegistration< PointT, Scalar >::setRegistration().

## Member Function Documentation

## getAbsoluteTransform()

template<typename PointT , typename Scalar >

pcl::registration::IncrementalRegistration< PointT, Scalar >::Matrix4 pcl::registration::IncrementalRegistration< PointT, Scalar >::getAbsoluteTransform | ( |  | ) | const

inline

Get estimated overall transform.

Definition at line 85 of file incremental_registration.hpp.

References pcl::registration::IncrementalRegistration< PointT, Scalar >::abs_transform_.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::~IncrementalRegistration().

## getDeltaTransform()

template<typename PointT , typename Scalar >

pcl::registration::IncrementalRegistration< PointT, Scalar >::Matrix4 pcl::registration::IncrementalRegistration< PointT, Scalar >::getDeltaTransform | ( |  | ) | const

inline

Get estimated transform between the last two registered clouds.

Definition at line 79 of file incremental_registration.hpp.

References pcl::registration::IncrementalRegistration< PointT, Scalar >::delta_transform_.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::~IncrementalRegistration().

## registerCloud()

template<typename PointT , typename Scalar >

bool pcl::registration::IncrementalRegistration< PointT, Scalar >::registerCloud | ( | const PointCloudConstPtr & | cloud,
|  | const Matrix4 & | delta_estimate = `Matrix4::Identity ()`
| ) |  |

Register new point cloud incrementally.

Note
  You have to set a valid registration object with setRegistration before using this
  The class doesn't copy cloud. If you afterwards change cloud, that will affect this class.

Parameters

  [in] | cloud | point cloud to register
  [in] | delta_estimate | estimated transform between last registered cloud and this one

Returns
  true if registration converged

Definition at line 48 of file incremental_registration.hpp.

References pcl::registration::IncrementalRegistration< PointT, Scalar >::abs_transform_, pcl::registration::IncrementalRegistration< PointT, Scalar >::delta_transform_, pcl::registration::IncrementalRegistration< PointT, Scalar >::last_cloud_, and pcl::registration::IncrementalRegistration< PointT, Scalar >::registration_.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::~IncrementalRegistration().

## reset()

template<typename PointT , typename Scalar >

void pcl::registration::IncrementalRegistration< PointT, Scalar >::reset | ( |  | ) |

inline

Reset incremental Registration without resetting registration_.

Definition at line 91 of file incremental_registration.hpp.

References pcl::registration::IncrementalRegistration< PointT, Scalar >::abs_transform_, pcl::registration::IncrementalRegistration< PointT, Scalar >::delta_transform_, and pcl::registration::IncrementalRegistration< PointT, Scalar >::last_cloud_.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::~IncrementalRegistration().

## setRegistration()

template<typename PointT , typename Scalar >

void pcl::registration::IncrementalRegistration< PointT, Scalar >::setRegistration | ( | RegistrationPtr | registration | ) |

inline

Set registration instance used to align clouds.

Definition at line 98 of file incremental_registration.hpp.

References pcl::registration::IncrementalRegistration< PointT, Scalar >::registration_.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::~IncrementalRegistration().

## Member Data Documentation

## abs_transform_

template<typename PointT, typename Scalar = float>

Matrix4 pcl::registration::IncrementalRegistration< PointT, Scalar >::abs_transform_

protected

Definition at line 122 of file incremental_registration.h.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::getAbsoluteTransform(), pcl::registration::IncrementalRegistration< PointT, Scalar >::registerCloud(), and pcl::registration::IncrementalRegistration< PointT, Scalar >::reset().

## delta_transform_

template<typename PointT, typename Scalar = float>

Matrix4 pcl::registration::IncrementalRegistration< PointT, Scalar >::delta_transform_

protected

estimated transforms

Definition at line 121 of file incremental_registration.h.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::getDeltaTransform(), pcl::registration::IncrementalRegistration< PointT, Scalar >::registerCloud(), and pcl::registration::IncrementalRegistration< PointT, Scalar >::reset().

## last_cloud_

template<typename PointT, typename Scalar = float>

PointCloudConstPtr pcl::registration::IncrementalRegistration< PointT, Scalar >::last_cloud_

protected

last registered point cloud

Definition at line 115 of file incremental_registration.h.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::registerCloud(), and pcl::registration::IncrementalRegistration< PointT, Scalar >::reset().

## registration_

template<typename PointT, typename Scalar = float>

RegistrationPtr pcl::registration::IncrementalRegistration< PointT, Scalar >::registration_

protected

registration instance to align clouds

Definition at line 118 of file incremental_registration.h.

Referenced by pcl::registration::IncrementalRegistration< PointT, Scalar >::registerCloud(), and pcl::registration::IncrementalRegistration< PointT, Scalar >::setRegistration().

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

- /build/pcl-OilVEB/pcl-1.8.1+dfsg1/registration/include/pcl/registration/incremental_registration.h
- /build/pcl-OilVEB/pcl-1.8.1+dfsg1/registration/include/pcl/registration/impl/incremental_registration.hpp