我正在处理通过立体声获得的视差图(1024x768),我能够使用XYZRGB pcl::Points获得点云。然而,并不是视差图中的所有像素都是有效的深度,因此永远不会有1024x768 = 786432个XYZRGB点。幸运的是,我能够保存无组织的点云(即height=1)。不幸的是,一些普通的估计方法等,是为有组织的点云量身定做的。我怎样才能用它创建有组织的点云呢?
发布于 2014-04-15 06:42:25
我相信这是不可能的。
首先,unorganized point cloud (PC)只是写入文件中的随机顺序的点的列表,另一方面,organized PC携带了深度相机获取原点的顺序等信息。这些信息存储在我们称之为网格的地方。
一旦你破坏了这个格网,省略了一些点,就没有算法可以把它恢复到原来的样子。
您可以使用其他方法,这些方法提供不以OPC为参数的PCL。结果将与使用有组织的点云相同,只是速度稍慢一些(取决于输入云的大小)
发布于 2014-03-11 23:35:35
我假设您有将图像点及其深度转换为3D点所需的校准参数,对吧?在这种情况下,您只需创建一个2D点云,并对视差图的每个像素执行以下操作:
If the point is valid:
set the corresponding point in the point cloud to the 3D point
else:
set the corresponding point in the cloud to NaN (i.e. a 3D point with NaN as coordinates)https://stackoverflow.com/questions/22151012
复制相似问题