Ask Your Question
0

PCL removing outliers using radius as condition

asked 2016-02-11 03:43:39 -0600

jhlim6 gravatar image

updated 2016-02-11 06:03:02 -0600

Hi I'm using a radius filter to remove outliers from my pointcloud, however the code hangs while creating the filtering object. The code never gotten to the point of outputting the message "cloud after filtering".

 
   std::cerr << "Cloud before statistical filtering: " << std::endl;
   std::cerr << PCL1_temp_cloud << std::endl;
   // Create the filtering object
   pcl::RadiusOutlierRemoval<pcl::pointxyz> outrem;
   outrem.setInputCloud(PCL1_temp_cloud);
   outrem.setRadiusSearch(0.8);
   outrem.setMinNeighborsInRadius (2);
   outrem.filter (PCL1_cloud_filtered);
   std::cerr << "Cloud after filtering: " << std::endl;   // code stops before this point
   std::cerr << PCL1_cloud_filtered << std::endl;
   pcl::toROSMsg    (PCL1_cloud_filtered, output);

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2016-02-11 05:06:22 -0600

Akif gravatar image

Is this line intended?

 sor.filter (PCL1_cloud_filtered);

It is possibly for statistical outlier removal. If it is not related, you can try removing it.

edit flag offensive delete link more

Comments

Mistake when pasting the code. Statistical outlier removal works for me. But it doesn't fully remove all the noise.

jhlim6 gravatar imagejhlim6 ( 2016-02-11 06:04:42 -0600 )edit

Did you try debugging with something like gdb? Do you have any console output?

Akif gravatar imageAkif ( 2016-02-11 06:13:37 -0600 )edit

I used rviz to note that the pointcloud was present prior to filtering. It output the cloud details before filtering, but after that it hangs.

jhlim6 gravatar imagejhlim6 ( 2016-02-11 06:37:30 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2016-02-11 03:43:39 -0600

Seen: 647 times

Last updated: Feb 11 '16