从 Python 中的 3D 点云提取边缘作为 3D 线例如 .dwg 或 .shp 特征

问题描述

在浏览了这个论坛和一些论文并经历了如何正确检测和提取点云中的边缘的起伏之后,我必须提出这个问题:

1) 我已经拥有的:

我的数据: 3D 点云,例如房屋、墙壁或街道旁的路边 - 任何一种情况。

到目前为止我的尝试:我遇到了许多 Python 库(open3d、PyntCloud、laspy),并且所有这些库我都能够计算特征值,然后从这种曲率/边缘检测,但它没有按我预期的那样工作 - 我的点云似乎太嘈杂/波浪状,所以例如太多或太少的点被检测为边缘,甚至没有检测到应该是边缘的边缘。

我还尝试了 3D 中的 Hough 变换,但这在更大的点云上需要数小时。 (我的通常在 100.000-300.000 点之间)

2) 最后我希望得到什么:

.dwg 或 .shp 要素仅包含底部和顶部线(根据高程),以便我可以将要素加载到 ArcMap 或 QGIS 中,并具有例如墙壁或房屋的底部和顶部作为 3D 线要素。

那么,有人知道如何正确实现这一目标吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)