Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
jsk_pcl_ros::ICPRegistration Class Reference

#include <icp_registration.h>

Inheritance diagram for jsk_pcl_ros::ICPRegistration:
Inheritance graph
[legend]

List of all members.

Public Types

typedef
jsk_pcl_ros::ICPRegistrationConfig 
Config
typedef
message_filters::sync_policies::ExactTime
< sensor_msgs::PointCloud2,
geometry_msgs::PoseStamped > 
OffsetSyncPolicy
typedef pcl::PointXYZRGBNormal PointT
typedef
message_filters::sync_policies::ExactTime
< sensor_msgs::PointCloud2,
sensor_msgs::PointCloud2 > 
ReferenceSyncPolicy
typedef
message_filters::sync_policies::ExactTime
< sensor_msgs::PointCloud2,
jsk_recognition_msgs::BoundingBox > 
SyncPolicy

Public Member Functions

 ICPRegistration ()

Protected Member Functions

virtual void align (const sensor_msgs::PointCloud2::ConstPtr &msg)
virtual void align (const sensor_msgs::PointCloud2::ConstPtr &msg, const sensor_msgs::PointCloud2::ConstPtr &reference_msg)
virtual double alignPointcloud (pcl::PointCloud< PointT >::Ptr &cloud, pcl::PointCloud< PointT >::Ptr &reference, const Eigen::Affine3f &offset, pcl::PointCloud< PointT >::Ptr &output_cloud, Eigen::Affine3d &output_transform)
virtual double alignPointcloudWithICP (pcl::PointCloud< PointT >::Ptr &cloud, pcl::PointCloud< PointT >::Ptr &reference, const Eigen::Affine3f &offset, pcl::PointCloud< PointT >::Ptr &output_cloud, Eigen::Affine3d &output_transform)
virtual double alignPointcloudWithNDT (pcl::PointCloud< PointT >::Ptr &cloud, pcl::PointCloud< PointT >::Ptr &reference, const Eigen::Affine3f &offset, pcl::PointCloud< PointT >::Ptr &output_cloud, Eigen::Affine3d &output_transform)
virtual
jsk_recognition_msgs::ICPResult 
alignPointcloudWithReferences (pcl::PointCloud< PointT >::Ptr &cloud, const Eigen::Affine3f &offset, const std_msgs::Header &header)
virtual bool alignService (jsk_recognition_msgs::ICPAlign::Request &req, jsk_recognition_msgs::ICPAlign::Response &res)
virtual void alignWithBox (const sensor_msgs::PointCloud2::ConstPtr &msg, const jsk_recognition_msgs::BoundingBox::ConstPtr &box_msg)
virtual bool alignWithBoxService (jsk_recognition_msgs::ICPAlignWithBox::Request &req, jsk_recognition_msgs::ICPAlignWithBox::Response &res)
virtual void alignWithOffset (const sensor_msgs::PointCloud2::ConstPtr &msg, const geometry_msgs::PoseStamped::ConstPtr &pose_msg)
virtual void cameraInfoCallback (const sensor_msgs::CameraInfo::ConstPtr &msg)
virtual void configCallback (Config &config, uint32_t level)
virtual void onInit ()
virtual void publishDebugCloud (ros::Publisher &pub, const pcl::PointCloud< PointT > &cloud)
virtual void referenceAddCallback (const sensor_msgs::PointCloud2::ConstPtr &msg)
virtual void referenceArrayCallback (const jsk_recognition_msgs::PointsArray::ConstPtr &msg)
virtual void referenceCallback (const sensor_msgs::PointCloud2::ConstPtr &msg)
virtual double scorePointcloudAlignment (pcl::PointCloud< PointT >::Ptr &cloud, pcl::PointCloud< PointT >::Ptr &reference, const Eigen::Affine3f &offset, Eigen::Affine3f &offset_result, pcl::PointCloud< PointT >::Ptr transformed_cloud, Eigen::Affine3d &transform_result)
virtual void subscribe ()
virtual void unsubscribe ()

Protected Attributes

int algorithm_
bool align_box_
sensor_msgs::CameraInfo::ConstPtr camera_info_msg_
int correspondence_algorithm_
double correspondence_distance_
int correspondence_randomness_
bool done_init_
double euclidean_fittness_epsilon_
int max_iteration_
int maximum_optimizer_iterations_
boost::mutex mutex_
double ndt_outlier_ratio_
double ndt_resolution_
double ndt_step_size_
ros::Publisher pub_average_time_
ros::Publisher pub_debug_flipped_cloud_
ros::Publisher pub_debug_result_cloud_
ros::Publisher pub_debug_source_cloud_
ros::Publisher pub_debug_target_cloud_
ros::Publisher pub_icp_result
ros::Publisher pub_latest_time_
ros::Publisher pub_result_cloud_
ros::Publisher pub_result_pose_
double ransac_iterations_
double ransac_outlier_threshold_
std::vector< pcl::PointCloud
< PointT >::Ptr > 
reference_cloud_list_
double rotation_epsilon_
boost::shared_ptr
< dynamic_reconfigure::Server
< Config > > 
srv_
ros::ServiceServer srv_icp_align_
ros::ServiceServer srv_icp_align_with_box_
ros::Subscriber sub_
message_filters::Subscriber
< jsk_recognition_msgs::BoundingBox > 
sub_box_
ros::Subscriber sub_camera_info_
message_filters::Subscriber
< sensor_msgs::PointCloud2 > 
sub_input_
message_filters::Subscriber
< geometry_msgs::PoseStamped > 
sub_offset_
ros::Subscriber sub_reference_
ros::Subscriber sub_reference_add
ros::Subscriber sub_reference_array_
message_filters::Subscriber
< sensor_msgs::PointCloud2 > 
sub_sync_input_
message_filters::Subscriber
< sensor_msgs::PointCloud2 > 
sub_sync_reference_
boost::shared_ptr
< message_filters::Synchronizer
< SyncPolicy > > 
sync_
boost::shared_ptr
< message_filters::Synchronizer
< OffsetSyncPolicy > > 
sync_offset_
boost::shared_ptr
< message_filters::Synchronizer
< ReferenceSyncPolicy > > 
sync_reference_
bool synchronize_reference_
tf::TransformListenertf_listener_
jsk_recognition_utils::WallDurationTimer timer_
double transform_epsilon_
bool use_flipped_initial_pose_
bool use_normal_
 Store value of ~use_normal. If this parameter is true, ICPRegistration nodelet expects reference and input pointcloud have normal_x, normal_y and normal_z fields.
bool use_offset_pose_
 set via ~use_offset_pose parameter. default is false.

Detailed Description

Definition at line 59 of file icp_registration.h.


Member Typedef Documentation

typedef jsk_pcl_ros::ICPRegistrationConfig jsk_pcl_ros::ICPRegistration::Config

Definition at line 63 of file icp_registration.h.

typedef message_filters::sync_policies::ExactTime< sensor_msgs::PointCloud2, geometry_msgs::PoseStamped > jsk_pcl_ros::ICPRegistration::OffsetSyncPolicy

Definition at line 69 of file icp_registration.h.

typedef pcl::PointXYZRGBNormal jsk_pcl_ros::ICPRegistration::PointT

Definition at line 62 of file icp_registration.h.

typedef message_filters::sync_policies::ExactTime< sensor_msgs::PointCloud2, sensor_msgs::PointCloud2 > jsk_pcl_ros::ICPRegistration::ReferenceSyncPolicy

Definition at line 73 of file icp_registration.h.

typedef message_filters::sync_policies::ExactTime< sensor_msgs::PointCloud2, jsk_recognition_msgs::BoundingBox > jsk_pcl_ros::ICPRegistration::SyncPolicy

Definition at line 66 of file icp_registration.h.


Constructor & Destructor Documentation

Definition at line 74 of file icp_registration.h.


Member Function Documentation

void jsk_pcl_ros::ICPRegistration::align ( const sensor_msgs::PointCloud2::ConstPtr &  msg) [protected, virtual]

Definition at line 371 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::align ( const sensor_msgs::PointCloud2::ConstPtr &  msg,
const sensor_msgs::PointCloud2::ConstPtr &  reference_msg 
) [protected, virtual]

Definition at line 398 of file icp_registration_nodelet.cpp.

double jsk_pcl_ros::ICPRegistration::alignPointcloud ( pcl::PointCloud< PointT >::Ptr &  cloud,
pcl::PointCloud< PointT >::Ptr &  reference,
const Eigen::Affine3f &  offset,
pcl::PointCloud< PointT >::Ptr &  output_cloud,
Eigen::Affine3d &  output_transform 
) [protected, virtual]

Definition at line 513 of file icp_registration_nodelet.cpp.

double jsk_pcl_ros::ICPRegistration::alignPointcloudWithICP ( pcl::PointCloud< PointT >::Ptr &  cloud,
pcl::PointCloud< PointT >::Ptr &  reference,
const Eigen::Affine3f &  offset,
pcl::PointCloud< PointT >::Ptr &  output_cloud,
Eigen::Affine3d &  output_transform 
) [protected, virtual]

Definition at line 560 of file icp_registration_nodelet.cpp.

double jsk_pcl_ros::ICPRegistration::alignPointcloudWithNDT ( pcl::PointCloud< PointT >::Ptr &  cloud,
pcl::PointCloud< PointT >::Ptr &  reference,
const Eigen::Affine3f &  offset,
pcl::PointCloud< PointT >::Ptr &  output_cloud,
Eigen::Affine3d &  output_transform 
) [protected, virtual]

Definition at line 529 of file icp_registration_nodelet.cpp.

jsk_recognition_msgs::ICPResult jsk_pcl_ros::ICPRegistration::alignPointcloudWithReferences ( pcl::PointCloud< PointT >::Ptr &  cloud,
const Eigen::Affine3f &  offset,
const std_msgs::Header header 
) [protected, virtual]

Definition at line 423 of file icp_registration_nodelet.cpp.

bool jsk_pcl_ros::ICPRegistration::alignService ( jsk_recognition_msgs::ICPAlign::Request &  req,
jsk_recognition_msgs::ICPAlign::Response &  res 
) [protected, virtual]

Definition at line 231 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::alignWithBox ( const sensor_msgs::PointCloud2::ConstPtr &  msg,
const jsk_recognition_msgs::BoundingBox::ConstPtr &  box_msg 
) [protected, virtual]

Definition at line 280 of file icp_registration_nodelet.cpp.

bool jsk_pcl_ros::ICPRegistration::alignWithBoxService ( jsk_recognition_msgs::ICPAlignWithBox::Request &  req,
jsk_recognition_msgs::ICPAlignWithBox::Response &  res 
) [protected, virtual]

Definition at line 198 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::alignWithOffset ( const sensor_msgs::PointCloud2::ConstPtr &  msg,
const geometry_msgs::PoseStamped::ConstPtr &  pose_msg 
) [protected, virtual]

Definition at line 321 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::cameraInfoCallback ( const sensor_msgs::CameraInfo::ConstPtr &  msg) [protected, virtual]

Definition at line 506 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::configCallback ( Config config,
uint32_t  level 
) [protected, virtual]

Definition at line 179 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::onInit ( void  ) [protected, virtual]

Reimplemented from jsk_topic_tools::ConnectionBasedNodelet.

Definition at line 52 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::publishDebugCloud ( ros::Publisher pub,
const pcl::PointCloud< PointT > &  cloud 
) [protected, virtual]

Definition at line 166 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::referenceAddCallback ( const sensor_msgs::PointCloud2::ConstPtr &  msg) [protected, virtual]

Definition at line 712 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::referenceArrayCallback ( const jsk_recognition_msgs::PointsArray::ConstPtr &  msg) [protected, virtual]

Definition at line 696 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::referenceCallback ( const sensor_msgs::PointCloud2::ConstPtr &  msg) [protected, virtual]

Definition at line 675 of file icp_registration_nodelet.cpp.

double jsk_pcl_ros::ICPRegistration::scorePointcloudAlignment ( pcl::PointCloud< PointT >::Ptr &  cloud,
pcl::PointCloud< PointT >::Ptr &  reference,
const Eigen::Affine3f &  offset,
Eigen::Affine3f &  offset_result,
pcl::PointCloud< PointT >::Ptr  transformed_cloud,
Eigen::Affine3d &  transform_result 
) [protected, virtual]

Definition at line 631 of file icp_registration_nodelet.cpp.

void jsk_pcl_ros::ICPRegistration::subscribe ( ) [protected, virtual]
void jsk_pcl_ros::ICPRegistration::unsubscribe ( ) [protected, virtual]

Member Data Documentation

Definition at line 190 of file icp_registration.h.

Definition at line 161 of file icp_registration.h.

sensor_msgs::CameraInfo::ConstPtr jsk_pcl_ros::ICPRegistration::camera_info_msg_ [protected]

Definition at line 199 of file icp_registration.h.

Definition at line 191 of file icp_registration.h.

Definition at line 194 of file icp_registration.h.

Definition at line 205 of file icp_registration.h.

Definition at line 215 of file icp_registration.h.

Definition at line 196 of file icp_registration.h.

Definition at line 193 of file icp_registration.h.

Definition at line 206 of file icp_registration.h.

Definition at line 163 of file icp_registration.h.

Definition at line 213 of file icp_registration.h.

Definition at line 211 of file icp_registration.h.

Definition at line 212 of file icp_registration.h.

Definition at line 152 of file icp_registration.h.

Definition at line 153 of file icp_registration.h.

Definition at line 153 of file icp_registration.h.

Definition at line 153 of file icp_registration.h.

Definition at line 153 of file icp_registration.h.

Definition at line 157 of file icp_registration.h.

Definition at line 151 of file icp_registration.h.

Definition at line 150 of file icp_registration.h.

Definition at line 149 of file icp_registration.h.

Definition at line 197 of file icp_registration.h.

Definition at line 198 of file icp_registration.h.

Definition at line 192 of file icp_registration.h.

Definition at line 204 of file icp_registration.h.

boost::shared_ptr<dynamic_reconfigure::Server<Config> > jsk_pcl_ros::ICPRegistration::srv_ [protected]

Definition at line 162 of file icp_registration.h.

Definition at line 160 of file icp_registration.h.

Definition at line 159 of file icp_registration.h.

Definition at line 143 of file icp_registration.h.

message_filters::Subscriber<jsk_recognition_msgs::BoundingBox> jsk_pcl_ros::ICPRegistration::sub_box_ [protected]

Definition at line 165 of file icp_registration.h.

Definition at line 142 of file icp_registration.h.

Definition at line 164 of file icp_registration.h.

Definition at line 166 of file icp_registration.h.

Definition at line 144 of file icp_registration.h.

Definition at line 145 of file icp_registration.h.

Definition at line 146 of file icp_registration.h.

Definition at line 147 of file icp_registration.h.

Definition at line 148 of file icp_registration.h.

Definition at line 167 of file icp_registration.h.

Definition at line 168 of file icp_registration.h.

Definition at line 169 of file icp_registration.h.

Definition at line 188 of file icp_registration.h.

Definition at line 170 of file icp_registration.h.

Definition at line 158 of file icp_registration.h.

Definition at line 195 of file icp_registration.h.

Definition at line 189 of file icp_registration.h.

Store value of ~use_normal. If this parameter is true, ICPRegistration nodelet expects reference and input pointcloud have normal_x, normal_y and normal_z fields.

Definition at line 183 of file icp_registration.h.

set via ~use_offset_pose parameter. default is false.

Definition at line 176 of file icp_registration.h.


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


jsk_pcl_ros
Author(s): Yohei Kakiuchi
autogenerated on Sun Oct 8 2017 02:43:51