在点云中删除异常(Remove outlier in Point Cloud)

2019-09-26 08:40发布

随着OpenCV的/ Matlab的,我计算的视差图。 我使用OpenCV的SGBM函数来得到它。 其结果是好的。 我有点噪音在我的形象。 随着在Matlab medfilt2,我删除了很多坏像素。

但是,在噪声比真实数据,创造异常区(事下属厂)更存在。 我想删除所有。 我在寻找一个更好的方式来做到这一点?

随着中值滤波,至少图像获取投影图像的顶部哪里有什么产生的地平面,少点少点。

我的假设是:

  • 一个更好的差距删除更大的噪音
  • reprojectionImageTo3D之前操作的方式上视差图预处理(OpenCV的)
  • 点云做后期处理,以除去协调,也许颜色异常以Z

我不知道该怎么做。 我在寻找好的滤波方法,也许可以帮助我了点。 我可以用Matlab和OpenCV正常工作。

在这里我的形象的一个例子,我有:

视差图与噪声(左)和视差图与medfilt(右) 与喧闹的视差图生成点云。 与medfilt视差图生成点云。

编辑

该medfilt2的问题是,我使用的65.所以利于大工厂的窗口大小,但近地面的植物失去它们的形状和得到圆,融合与地面。 它通常这是medfilt做。 但我想避免这种情况,我在寻找,让更好的结果,并在年末减少噪音的过滤器。

Answer 1:

你可以给StatisticalOutlierRemoval从PointCloudLibrary了一枪。 你可以找到一个有用的教程在这里 ,用一个例子一起。



文章来源: Remove outlier in Point Cloud