Closed nidhinsoni closed 2 months ago
@nidhinsoni I would say it is probably the parameter choice. Have you tested different values for alpha?
Hey You could alternatively try with: 1) Filter height (z=1350) (also X and Y if you want to remove the last noisy points) 2) Voxelfilter (I didn't do it, but could be done for faster processing / smoothing) 3) Project points to plane of objects - if you know that they are supposed to be flat. Some edges, seems to go up and downwards? If you have multiple layers, this option needs to be run after some clustering etc. 4) Normal estimation (k=50) (already here you can filter points by curvature) 5)Run Boundary_estimation (k=50) - it gave the following:
And from the side:
@larshg hey thanks a lot for your suggestion. Do you mind sharing the code here? I didn't quite get the third point you mentioned
I quickly just used the pcl_tools, so I don't have any code :smile:
A small tutorial for projecting points to a given plane can be found here https://pcl.readthedocs.io/projects/tutorials/en/latest/project_inliers.html
@nidhinsoni I would say it is probably the parameter choice. Have you tested different values for alpha?
Thanks this was it!
Hello, I'm trying to create a boundary line using concave hull using the PCL library. I pre-downsampled, pre-segmented, pre-filtered the pcd file. From 2.3m data points, i came down to around 80 data points. Getting an error saying input cloud has no data. i'm new to Point clouds, so i was wondering whether it's the parameters or the limitation of the algorithm itself. I have uploaded the files here.
include
include <pcl/io/pcd_io.h>
include <pcl/point_types.h>
include <pcl/filters/passthrough.h>
include <pcl/segmentation/sac_segmentation.h>
include <pcl/segmentation/extract_clusters.h>
include <pcl/filters/voxel_grid.h>
include <pcl/filters/extract_indices.h>
include <pcl/features/normal_3d.h>
include <pcl/features/moment_of_inertia_estimation.h>
include <pcl/visualization/pcl_visualizer.h>
include <pcl/common/common.h>
include <pcl/keypoints/agast_2d.h>
include <pcl/filters/statistical_outlier_removal.h>
include <pcl/filters/passthrough.h>
include <pcl/surface/concave_hull.h>
int main() { // Load point cloud data pcl::PointCloud::Ptr cloud(new pcl::PointCloud);
pcl::PCDReader reader;
reader.read("holz1.pcd", *cloud);
}
holz.zip