diff --git a/pcl_ros/CMakeLists.txt b/pcl_ros/CMakeLists.txt index 24f506ae..57c8ba61 100644 --- a/pcl_ros/CMakeLists.txt +++ b/pcl_ros/CMakeLists.txt @@ -64,15 +64,15 @@ class_loader_hide_library_symbols(pcl_ros_io) add_library (pcl_ros_features src/pcl_ros/features/feature.cpp # Compilation is much faster if we include all the following CPP files in feature.cpp -# src/pcl_ros/features/boundary.cpp -# src/pcl_ros/features/fpfh.cpp -# src/pcl_ros/features/fpfh_omp.cpp -# src/pcl_ros/features/moment_invariants.cpp -# src/pcl_ros/features/normal_3d.cpp -# src/pcl_ros/features/normal_3d_omp.cpp -# src/pcl_ros/features/pfh.cpp -# src/pcl_ros/features/principal_curvatures.cpp -# src/pcl_ros/features/vfh.cpp + src/pcl_ros/features/boundary.cpp + src/pcl_ros/features/fpfh.cpp + src/pcl_ros/features/fpfh_omp.cpp + src/pcl_ros/features/moment_invariants.cpp + src/pcl_ros/features/normal_3d.cpp + src/pcl_ros/features/normal_3d_omp.cpp + src/pcl_ros/features/pfh.cpp + src/pcl_ros/features/principal_curvatures.cpp + src/pcl_ros/features/vfh.cpp ) #rosbuild_add_compile_flags (pcl_ros_features ${SSE_FLAGS}) target_link_libraries (pcl_ros_features ${PCL_LIBRARIES} ${Boost_LIBRARIES} ${catkin_LIBRARIES}) @@ -99,7 +99,7 @@ class_loader_hide_library_symbols(pcl_ros_filters) add_library (pcl_ros_segmentation src/pcl_ros/segmentation/segmentation.cpp src/pcl_ros/segmentation/segment_differences.cpp -# src/pcl_ros/segmentation/extract_clusters.cpp + src/pcl_ros/segmentation/extract_clusters.cpp src/pcl_ros/segmentation/extract_polygonal_prism_data.cpp src/pcl_ros/segmentation/sac_segmentation.cpp ) @@ -113,7 +113,7 @@ add_library (pcl_ros_surface src/pcl_ros/surface/surface.cpp # Compilation is much faster if we include all the following CPP files in surface.cpp src/pcl_ros/surface/convex_hull.cpp - #src/pcl_ros/surface/moving_least_squares.cpp + src/pcl_ros/surface/moving_least_squares.cpp ) #rosbuild_add_compile_flags (pcl_ros_surface ${SSE_FLAGS}) target_link_libraries (pcl_ros_surface ${PCL_LIBRARIES} ${Boost_LIBRARIES} ${catkin_LIBRARIES}) diff --git a/pcl_ros/include/pcl_ros/features/principal_curvatures.h b/pcl_ros/include/pcl_ros/features/principal_curvatures.h index 7a0ddfb6..d7dcdf49 100644 --- a/pcl_ros/include/pcl_ros/features/principal_curvatures.h +++ b/pcl_ros/include/pcl_ros/features/principal_curvatures.h @@ -38,6 +38,7 @@ #ifndef PCL_ROS_PRINCIPAL_CURVATURES_H_ #define PCL_ROS_PRINCIPAL_CURVATURES_H_ +#define EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET true #include #include "pcl_ros/features/feature.h" diff --git a/pcl_ros/src/pcl_ros/features/boundary.cpp b/pcl_ros/src/pcl_ros/features/boundary.cpp index 0e17c5fd..5fa970f6 100644 --- a/pcl_ros/src/pcl_ros/features/boundary.cpp +++ b/pcl_ros/src/pcl_ros/features/boundary.cpp @@ -55,9 +55,6 @@ pcl_ros::BoundaryEstimation::computePublish (const PointCloudInConstPtr &cloud, // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/fpfh.cpp b/pcl_ros/src/pcl_ros/features/fpfh.cpp index 7782fde9..081696b1 100644 --- a/pcl_ros/src/pcl_ros/features/fpfh.cpp +++ b/pcl_ros/src/pcl_ros/features/fpfh.cpp @@ -55,9 +55,6 @@ pcl_ros::FPFHEstimation::computePublish (const PointCloudInConstPtr &cloud, // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/fpfh_omp.cpp b/pcl_ros/src/pcl_ros/features/fpfh_omp.cpp index 51880a9f..09a573f6 100644 --- a/pcl_ros/src/pcl_ros/features/fpfh_omp.cpp +++ b/pcl_ros/src/pcl_ros/features/fpfh_omp.cpp @@ -55,9 +55,6 @@ pcl_ros::FPFHEstimationOMP::computePublish (const PointCloudInConstPtr &cloud, // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/moment_invariants.cpp b/pcl_ros/src/pcl_ros/features/moment_invariants.cpp index 85bd209a..49838204 100644 --- a/pcl_ros/src/pcl_ros/features/moment_invariants.cpp +++ b/pcl_ros/src/pcl_ros/features/moment_invariants.cpp @@ -54,9 +54,6 @@ pcl_ros::MomentInvariantsEstimation::computePublish (const PointCloudInConstPtr // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/normal_3d.cpp b/pcl_ros/src/pcl_ros/features/normal_3d.cpp index a512c41f..31b4dc70 100644 --- a/pcl_ros/src/pcl_ros/features/normal_3d.cpp +++ b/pcl_ros/src/pcl_ros/features/normal_3d.cpp @@ -54,9 +54,6 @@ pcl_ros::NormalEstimation::computePublish (const PointCloudInConstPtr &cloud, // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/normal_3d_omp.cpp b/pcl_ros/src/pcl_ros/features/normal_3d_omp.cpp index e53fe9c7..06c1b31a 100644 --- a/pcl_ros/src/pcl_ros/features/normal_3d_omp.cpp +++ b/pcl_ros/src/pcl_ros/features/normal_3d_omp.cpp @@ -54,9 +54,6 @@ pcl_ros::NormalEstimationOMP::computePublish (const PointCloudInConstPtr &cloud, // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/pfh.cpp b/pcl_ros/src/pcl_ros/features/pfh.cpp index f40e0bab..94b97c88 100644 --- a/pcl_ros/src/pcl_ros/features/pfh.cpp +++ b/pcl_ros/src/pcl_ros/features/pfh.cpp @@ -55,9 +55,6 @@ pcl_ros::PFHEstimation::computePublish (const PointCloudInConstPtr &cloud, // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/principal_curvatures.cpp b/pcl_ros/src/pcl_ros/features/principal_curvatures.cpp index d6431160..471549ab 100644 --- a/pcl_ros/src/pcl_ros/features/principal_curvatures.cpp +++ b/pcl_ros/src/pcl_ros/features/principal_curvatures.cpp @@ -55,9 +55,6 @@ pcl_ros::PrincipalCurvaturesEstimation::computePublish (const PointCloudInConstP // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/features/vfh.cpp b/pcl_ros/src/pcl_ros/features/vfh.cpp index f13028e3..86ddc137 100644 --- a/pcl_ros/src/pcl_ros/features/vfh.cpp +++ b/pcl_ros/src/pcl_ros/features/vfh.cpp @@ -55,9 +55,6 @@ pcl_ros::VFHEstimation::computePublish (const PointCloudInConstPtr &cloud, // Set the parameters impl_.setKSearch (k_); impl_.setRadiusSearch (search_radius_); - // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, k_); - impl_.setSearchMethod (tree_); // Set the inputs impl_.setInputCloud (cloud); diff --git a/pcl_ros/src/pcl_ros/segmentation/extract_clusters.cpp b/pcl_ros/src/pcl_ros/segmentation/extract_clusters.cpp index 3c067f0a..0bff57bf 100644 --- a/pcl_ros/src/pcl_ros/segmentation/extract_clusters.cpp +++ b/pcl_ros/src/pcl_ros/segmentation/extract_clusters.cpp @@ -100,14 +100,12 @@ pcl_ros::EuclideanClusterExtraction::onInit () NODELET_DEBUG ("[%s::onInit] Nodelet successfully created with the following parameters:\n" " - max_queue_size : %d\n" " - use_indices : %s\n" - " - cluster_tolerance : %f\n" - " - spatial_locator : %d", + " - cluster_tolerance : %f\n", getName ().c_str (), max_queue_size_, - (use_indices_) ? "true" : "false", cluster_tolerance, spatial_locator); + (use_indices_) ? "true" : "false", cluster_tolerance); // Set given parameters here - impl_.setSpatialLocator (spatial_locator); impl_.setClusterTolerance (cluster_tolerance); } diff --git a/pcl_ros/src/pcl_ros/surface/moving_least_squares.cpp b/pcl_ros/src/pcl_ros/surface/moving_least_squares.cpp index c79c0195..2cb41cff 100644 --- a/pcl_ros/src/pcl_ros/surface/moving_least_squares.cpp +++ b/pcl_ros/src/pcl_ros/surface/moving_least_squares.cpp @@ -149,7 +149,6 @@ pcl_ros::MovingLeastSquares::input_indices_callback (const PointCloudInConstPtr // Reset the indices and surface pointers impl_.setInputCloud (cloud); - impl_.setOutputNormals (normals); IndicesPtr indices_ptr; if (indices) @@ -158,11 +157,9 @@ pcl_ros::MovingLeastSquares::input_indices_callback (const PointCloudInConstPtr impl_.setIndices (indices_ptr); // Initialize the spatial locator - initTree (spatial_locator_type_, tree_, 0); //k_); - impl_.setSearchMethod (tree_); // Do the reconstructon - impl_.reconstruct (output); + //impl_.process (output); // Publish a Boost shared ptr const data // Enforce that the TF frame and the timestamp are copied