基于三维激光点云的雕塑Nurbs模型构建方法研究
2021-04-14孙迪
孙 迪
(福建省地质测绘院,福州,350011)
雕塑是城市景观的重要组成部分,一般具有丰富的寓意,既是观赏物,也是纪念物。高精度获取雕塑的空间外形是进行修复工作的前提[1],三维激光扫描技术的出现为获取雕塑高密度三维点云,进而进行逆向建模提供了可靠的保障。目前,根据工作方式的不同,用于雕塑建模的三维激光扫描设备主要分为架站式扫描仪和手持式扫描仪[2],二者都需要一定的空间特征点或在雕塑上布设标定物,将不同时序下获取的三维点云拼接成一个整体,从而为后续逆向建模做准备[3]。
根据空间几何单元组成及表现形式的不同,基于三维点云构建的模型主要分为Mesh网格模型和Nurbs模型[4],Mesh网格模型由三角面片组成[5],即设定三角面片几何参数,并基于一定的点云滤波和空间筛选算法,将三维点云按照一定间隔,优选最佳的扫描点位,组成连续的三角形,进而形成空间三维模型[6]。Nurbs是“非均匀有理B样条”(Non-Uniform Rational B-Splines)的缩写,其模型是由空间连续的不规则曲面构成,建模方式能够更好地控制物体表面的曲线度,其展现形式更贴近于扫描物体的真实空间形态[7]。笔者提出基于三维激光点云自动构建Mesh模型,再利用Mesh模型构建Nurbs模型的方法,自动化程度高,处理时间短,且精度高,以利用一个石狮子雕塑为例,介绍了如何利用该方法进行模雕塑模型构建。
1 外业扫描及点云预处理
1.1 外业扫描
在采用架站式三维激光扫描仪对石狮子雕塑采集空间三维点云数据作业前,首先需要进行现场踏勘,制定合理、高效的架站方式,根据现场情况及后续成果的要求设置适当的扫描密度等参数。每相邻2站采集数据时,应保证有足够的空间重叠区域,通常重叠区域应保证在30%以上[8],并在测站之间布设若干个标靶,用于后续的点云拼接及校核。 现场共架设3站,6个标靶,用于相邻测站的点云拼接(图1)。由于现场城墙距离石狮子雕塑太近及高度的影响,雕塑背部及顶部有局部区域未能获取三维点云数据,现场设置的主要扫描参数及仪器精度(表1)。
图1 现场数据采集平面布置示意图Fig.1 Layout plan of the field datas acquisition
表1 仪器精度及扫描参数
1.2 点云预处理
在进行建模之前,需要对原始观测数据点云进行预处理,预处理过程为先导入点云原始数据→点云拼接、配准→点云滤波、去噪→点云抽稀、优化→格式转换、导出等步骤[9],由于原始观测点云数据是每个测站独立的三维点云,因此首先需将各个测站的点云拼接成一个整体,点云拼接目前主要有3种方式,第1种是基于控制点或特征点进行拼接[10],即在相邻2个测站点云中通过3个及以上同名控制点或特征点进行拼接;第2种是基于空间视图进行拼接,即利用相邻2个测站的公共区域进行拼接[11],首先在平面俯视图中通过平移、旋转等操作将公共区域进行对齐,然后在侧视图中通过平移操作使公共区域完全重合,2个测站公共区域越多,空间轮廓特征越明显[12];第3种方式是基于视觉追踪技术进行拼接[13],即扫描仪自身配备有多个视觉追踪相机,在迁站的过程中,仪器实时记录空间特征信息,并基于SLAM算法匹配2个测站的空间位置,从而实现2个测站点云的自动化拼接。实例中石狮子雕塑三维扫描采用视觉追踪技术进行自动拼接,在内业中采用第1种和第2种拼接方式进行检查、校核。
点云滤波、去噪是将拼接后的点云中干扰部分进行删除,如现场扫描过程中因遮挡或物体移动在空中形成的漂浮状点云,对于大面积的区域可通过人工围栅进行删除,对于离散点云,也可根据点云在空间的几何形态及与主点云群的空间距离设置滤波参数行进行自动删除。实例中点云滤波以半径作为判断依据,对于空间离散点,判断其邻域点数量是否达到给定的值N,若数量大于N,该点保留,否则剔除。算法主要实现过程如下。
(1)计算点云中每个点在半径(d)范围内空间邻域点的数量,记为k。
(2)根据点云的采集密度及相关要求设置滤波阙值N。
(3)若k 为便于点云导入其它第三方软件进行再次处理,需要对点云进行抽稀、优化。经点云预处理后石狮子雕塑效果(图2)。 图2 点云预处理后石狮子雕塑效果图Fig.2 Impression image of stone lion sculpture after point cloud pretreatment 在构建Nurbs模型之前,首先对点云的空间点进行采样,将采样点作为Tin三角形的顶点,进而生成空间连续三角形的面片,最常用的采样方式为空间均匀采样,根据点云的空间密度设置适当的空间采样间隔,按等距方式采样空间点,该方式算法简单,建模速度快,但对于空间复杂曲面造型的表达及展现力度不够。实例中对该建模方式进行改进,先根据点云空间分布及密度进行粗略建模,再对粗略模型进行精化处理(图3a)。 设置精化模型Tin三角形的大小为5 mm,并依据该值对细小空缺区域进行内插,进一步删除离散点形成的空间钉状结构并进行平滑处理,具体精化参数(表2),精化后模型效果(图3b)。 表2 Mesh网格模型精化参数 图3 Mesh网格模型构建效果图Fig.3 Effect diagram of Mesh grid model construction 其中精化标准偏差3 mm表示内插后顶点与原粗略模型的空间距离小于3 mm,离散点阙值8 mm表示将空间离开主点云群超过8 mm的离散点形成的钉状结构进行删除,空洞探测值50 mm表示空洞尺寸大于50 mm继续保留,小于该值的空洞进行内插平滑处理。 图4 Mesh网格模型空洞处理效果图Fig.4 Effect diagram of Mesh mesh model cavity processing 对于空洞尺寸大于50 mm的区域需要进一步做修补处理,若空洞较小,且周边模型空间形态均匀平滑,可在建模软件中直接做补洞处理;若空洞较大,如石狮子雕塑头部,由于现场环境所限,未能获取三维点云,则需在空洞区域依据周边模型空间形态先进行搭桥处理,再进行补洞(图4)。 搭桥时需根据模型空洞区域周边的形态调整桥身空间姿态参数,并应尽量选择空间形态平缓的区域作为桥身连接点;当空洞区域较大时,应选择合适的区域搭桥后进行再次搭桥,直至形成的空洞区域周边模型空间形态变化平缓,最后进行补洞处理。 Mesh网格模型建好后,需要对模型表面做进一步优化处理,使其表面平顺,空间Tin三角面片依序连接,为后续Nurbs建模做准备。优化处理方法主要是对模型中非流形边、Tin三角片自相交、高度折射边、钉状物,以及孔洞等问题进行检查、分析,并根据具体情况进行修补、删除、填充、光顺等优化操作。优化处理后的Mesh网格模型(图5)。 图5 优化后的Mesh网格模型效果图Fig.5 Effect diagram of Mesh grid model construction after optimization 相对于Mesh网格模型,Nurbs模型更易于表达复杂曲面造型,其空间曲面由控制网格点、节点矢量以及权重确定,每一个控制网格点的影响范围均可改变。Nurbs模型的数学模型可以用非均匀有理B样条双参数曲面来表达,并基于该数学模型来内插控制顶点之间的空间点。曲面方程[14]: (1) 式中:(u,v)∈ [Umin,Umax]×[Vmin,Vmax],Pi,j为控制点,Wi,j,Ni,p(u)为权,是u方向P次B样条函数,Nj,q是v方向q次B样条基函数。 基于Mesh网格模型构建Nurbs模型,需先探测Mesh模型轮廓线,即依据Mesh模型的空间形态将其划分为若干个空间区域,曲面片即以这些轮廓线为界进行构建,为了尽量避免后续构建的曲面区出现自相交的情况,调整轮廓线空间走向,使其在模型表面的法向量尽可能平滑、连续,基于轮廓线构造曲面片边界后,即可依据边界构造格栅,并修复格栅中扭曲、自相交等问题。最后,构建Nurbs曲面片,并拟合生成Nurbs模型。 从效果图可以看,最终生成的Nurbs模型(图6a),Nurbs模型表面并不是连续的三角面片,而是连续光滑的曲面,模型更接近于雕塑本身实际外观结构,也更便于进行3D打印及相关空间分析研究。 为了验证Nurbs模型的空间精度,将Nurbs模型与三维点云进行空间叠加碰撞分析,以优化处理后的三维激光点云为基准,计算Nurbs模型表面与三维点云在模型表面法向量方向上的差值,并以不同的色差表示差值的大小,计算分析结果(图6b),从分析图、差值图谱可以看出,除了石狮子雕塑底座部分有极少区域差值在3 m左右,雕塑其它绝大多部分区域的差值都在2 mm之内,该精度完整了再现了石狮子雕塑的空间形态,为后续修复等工作提供了可靠的保障。 图6 Nurbs模型及精度对比效果图Fig.6 Effect diagram of Nurbs model and precision contrast (1)三维激光扫描技术为雕塑的逆向建模及修复等工作提供了有效的技术支撑,构建Nurbs模型更接近于雕塑本身真实的空间结构特征,与Mesh网格模型相比,Nurbs模型表面光滑、平顺,更能体现雕塑逼真的空间形态,基于三维激光点云先构建Mesh网格模型,再对Mesh网格模型精化处理的基础上,借助于Nurbs建模软件,可快速实现Nurbs模型的构建及分析应用。 (2)Nurbs模型的空间精度与多个因素有关,其中外业扫描获取的测试点云数据质量起到关键作用。为了保证三维激光点云能够完整的覆盖雕塑所在空间,外业采集数据时应尽可能提高采集密度及分辨率,在相邻测站之间应通过多种拼接方式对点云的拼接精度进行检核;在对点云及Mesh模型进行精化处理时,应根据点云的空间密度及形态设置相应的精化参数,在点云没有覆盖的空洞区域可用搭桥等方式进行修补,Nurbs模型的精度可用三维点云为基准进行空间对比分析,从而可以验证从点云处理至最终的模型构建是否满足修复等工作的需求。2 Nurbs模型构建
2.1 Mesh网格模型构建
2.2 Nurbs模型构建
3 总结