APP下载

基于多轮廓线的地下工井三维建模

2021-05-25刘启康

科学技术创新 2021年11期
关键词:边界点轮廓线角点

刘启康

(1、北京建筑大学 测绘与城市空间信息学院,北京100044 2、北京北建大科技有限公司,北京100044)

1 概述

利用物体的轮廓线来重建三维形体的表面是三维建模领域一项重要的研究课题,已广泛应用于医学CT 切片成像、三维地质建模、地形表面重建等领域。而依托三维激光扫描仪获得的地下工井点云进行模型重建也是必然的趋势,马洪滨[1]等提出了一种新的多轮廓线重构三维形体算法——切开-缝合法,该法通过引入控制点对作为切口, 将轮廓线对进行坐标转换和轮廓对应后, 切开并铺展成两条平行直线段, 通过寻求轮廓线对顶点的对应关系, 生成了符合Delaunay 法则的三维形体表面三角面片, 并将其应用到基于剖面的三维地质建模中;刘坤良[2]等提出了三维重构中每一个实现步骤具体的解决方案。对轮廓线一对多分叉问题提出了按周长比率解决问题的思路;在末端轮廓线的三角剖分算法中提出了最大张角三角形方法,减少了三角剖分的计算量,达到了在各种形态轮廓线条件下能够实现正确的拼接;谭正华[3]等提出了一种高质量的基于空间轮廓线的矿体表面三维建模方法,该方法首先根据地层属性和高程,对轮廓线的空间交点进行一致性校验,并进行拓扑预处理;其次建立结点-路径网络拓扑关系,采用内层路径优先的搜索算法提取空间网格;最后采用生成过渡轮廓线的方法,对空间网格进行单独建模并无缝拼接成完整的矿体表面模型;Fuchs[4]提出了在一组横截面轮廓上构造曲面的一般解决方案,该方法以表面积最小为目标,确定了每对连续轮廓线之间的最佳三角面片组合;Ekoule[5]提出了一种简单的启发式三角剖分算法,该算法将原始的任意轮廓分解为基本凸子轮廓,解决了链接不同轮廓对的困难以及轮廓分叉的问题。

本文根据地下工井的特点,提出了以网格法分离工井上下面,切片法提取工井边界线,切割插入法进行边界点云排序,最后将上、下轮廓线构成三角网模型的方法实现工井的模型重建,不仅解决了规则工井的模型重建,同样适用于不规则工井的模型重建。

图1

2 地下工井建模流程

本文采取的地下工井主要建模流程如图1 所示。

2.1 网格法分离上、下面(图2)

网格法分离工井上、下面的算法流程如下:

2.1.1 计算x、y 方向的极值;

2.1.2 设置网格的大小d*d,记录每个网格的编码code;

2.1.3 计算每个网格内部点云z 方向的极值;

2.1.4 在z 方向设置阈值threshold,分离工井上、下面。

图2

2.2 切片法提取边界线(图3)

切片法提取工井上、下面的边界线的算法流程如下:

2.2.1 在提取的工井上、下面的基础上,分别计算上、下面在x、y 方向的极值;

2.2.2 在x 方向上设置切片宽度为d,计算切片内y 方向的极大值和极小值,设置阈值,得到x 方向的边界点;

2.2.3 同理可得到y 方向的边界点,合并边界点;

2.2.4 边界点滤波、采样。

图3

2.3 边界点排序(图4-5)

对于获取的工井边界点,本文采取切割插入法进行排序,以便提取角点,算法如下:

2.3.1 在x 方向设置阈值,计算x 的极大值和极小值,将边界点划分为left_loop、right_loop 两个区域;

2.3.2 获取左右区域距离最大的两个点的索引start(left_loop)、end(right_loop);

2.3.3 规定起始方向start-end,顺时针方向为左环,逆时针方向为右环;

2.3.4 利用knn 搜索邻近点,依次迭代插入,并将左环与右环相连,形成最终的有序边界点。

图4

图5

2.4 提取角点并构建三角网(图6-7)

提取边界线角点的方法是采用从起始点开始遍历,向前取五个点front,向后取五个点back,分别对front、back 做直线拟合得到方向向量,并进行归一化处理,计算两个方向向量的点积,设置阈值,满足条件则保存为角点。

以相邻轮廓线点对之间的距离最小为局部最优原则, 通过遍历所有的轮廓线顶点, 可以搜索出算法最优的控制点对作为“切口”,沿轮廓线统一方向,依次向前取点,将此时对角线最短的两点作为作为三角形索引点,重复上述操作,直至所有的点都成为三角形的索引点,最后将起点对应的线段“缝合”构建无约束Delaunay 三角网。

具体构建三角网步骤:(1)将边界点按时针排列;(2)沿着轮廓线方向,迭代选取Pi、Pi+1、Pi+2连续的三个顶点,组成三角面片,下一个三角面片从Pi+2开始选取;(3)利用PiPi+1、Pi+1Pi+2的叉乘判断该三角面片是否为逆时针,再判断其它点Px 是否在三角面片内;(4)若true,则保存此三角面片,记录索引点,将Pi、Pi+2作为下一次迭代的边界点;若false,则继续迭代选取,直至剩余最后一个三角面片;(5)得到新的边界点后,重复2、3、4 步骤,直至所有的边界点都组成一个三角面片。

图7

3 实验成果(图8)

图8

猜你喜欢

边界点轮廓线角点
立体图像任意剖面轮廓线提取方法仿真研究
汽车驾驶员前方视野测量中A柱双目障碍角边界点选取的分析
多支撑区域模式化融合角点检测算法仿真
基于安全性的自主环境探索算法的改进方法
角点检测技术综述①
基于灰度差预处理的改进Harris角点检测算法
区分平面中点集的内点、边界点、聚点、孤立点
基于FAST角点检测算法上对Y型与X型角点的检测
墨戏
多阈值提取平面点云边界点的方法