I’m trying to concatenate a pcl::PolygonMesh triangulation variable (triang) to a "buffer" pcl::PolygonMesh triangulation variable (triang_buffer). I’ve tried to do it by: triang_buffer += triang; and by: bool pcl::PolygonMesh::concatenate(triang_buffer, triang); but when I compile it, it appears these errors respectively: error: no match for ‘operator+=’ (operand types are ‘pcl::PolygonMesh’ and ‘pcl::PolygonMesh’) triang_buffer += triang; and ..
I understand that pcl::VoxelGrid<PointT> can be used to downsample a PointCloud. In my use case, I want to get the number of points within each voxel grid. From PCL docs I found the leaf struct allows me to get the number of points in one voxel by calling getPointCount(). And pcl::VoxelGridCovariance allows me to get ..
I’m using PCL library and RTAB-Map for maps generation. When the video is too long, the map post-processing takes too much time, so I would like to make this process lighter. In order to that, I would like to remove the already processed points (or older) from the incoming map, and take only the new ..
I am seeing a weird behavior of Voxel Grid Filter in PCL. In general, all the points inside a voxel are replaced by one point. Thus the minimum distance between two points should never be less than the size of voxel. However, it doesn’t look like so. Please see the code snippet below. #include <iostream> ..
Software: Visual Studio 2019 PCL Version 1.8.1 Is there a method in PCL that can determine which segmentation model can/should be used, and when to stop? One of the issues I am running into is that when using Normal Plane Segmentation, a cylindrical item or a person would be segmented as a ‘plane’ or several ..
I am working on 3D point cloud object tracking(a cylindrical object) using particle filter in PCL(Point Cloud Library). The documentation does not quiet explains about the parameters on how it influences the results. I have done some study about the particle filter, but most of the parameters particle filter and coherence(I suppose the coherence here ..
I have made my own point type which has a scalar value. My point cloud is huge, so I need to voxel grid it. However, when I voxel grid my data I lose my scalar values, they are turned to 0 : //include #define PCL_NO_PRECOMPILE #include <pcl/pcl_macros.h> #include <pcl/point_types.h> #include <pcl/point_cloud.h> #include <pcl/filters/approximate_voxel_grid.h> using namespace ..
Visual Studio 2019 (MSVC2017) Libary: PCL 1.8.1 I am not all that familiar with programming, currently I am attempting to use SampleConsensusModelNormalPlane so I can utilize both the XYZ coordinate points and the Normals that were generated using PCL’s Normal Estimation, but I am unable to find nor understand how to implement not initialize it. ..
I am new to C++, I only have 1.5 years of experience with that language. I have to work with a library that has premade data structures, and it offers a way to make our own data structure following certain rules in order to adapt it with the library. This is the PCL library. The ..
I just wondering how to referes my PointCloud::Ptr to my another PointCloud::Ptr without copying it to another classes. So i have 3 class: typedef pcl::PointCloud<PointXYZ> PointCloud; –main_program.hpp PointCloud::Ptr cloud_original_ = …; //I opened the pcd file VolumeServer volume_; volume_.setPointCloud(cloud_original_); CutCloud process_; process_.setPointCloud(cloud_original_); … –volume.hpp have VolumeServer class PointCloud::Ptr cloud_volume_; void setPointCloud(const PointCloud::Ptr &cloud = nullptr) ..