一种基于点体素的实景树木三维模型重建方法

文档序号:32418058发布日期:2022-12-02 22:32阅读:142来源:国知局
一种基于点体素的实景树木三维模型重建方法

1.本发明涉及计算机图形学及三维重建技术领域,具体来说,是一种实景树木三维模型的重建方法。


背景技术:

2.树木、灌木和其他树在城市环境中无处不在,树木的真实模型可以为数字城市场景添加真实感。同时,在游戏、林业管理领域,树木模型同样有着重要的应用。尤其是近期数字孪生、元宇宙等概念的兴起,使得人们开始探索如何将物理世界中的场景映射到虚拟三维世界,其中树木模型是虚拟场景中不可或缺的。因此,获取精确的三维树木模型是必要的,对现代社会具有重要意义。
3.传统的树木建模方式是建模师通过建模工具,从零开始创建网格,最终创建出完整模型,这种方式虽然能够得到精美的三维模型,但需要大量具有专业技能的从业人员,且费时费力,对于林场等大规模场景并不适用。
4.市场上虽存在基于多视角图像的三维重建软件,但对于树木这种形态复杂的物体,重建出的模型会损失大量细节。基于参数的树木建模软件通过用户输入的参数来模拟树木的生长,但想要模拟出真实世界中的树木形态较为困难。


技术实现要素:

5.鉴于以上,本发明提出一种基于点体素的实景树木三维模型重建方法,以克服现有技术中存在的缺陷与不足。
6.本发明的技术方案如下、
7.一种基于点体素的实景树木三维模型重建方法,其特殊之处在于,该方法包括:
8.s100、点云采集,提取真实场景中的树木点云数据,并进行点云预处理,从中过滤叶子点云,保留枝干点云;
9.s200、枝干分割,利用训练好的基于点体素的网络对s100所获得的枝干点云进行特征提取及融合,预测出每个点云所属的簇编号,分割出每一个枝干点云;
10.s300、骨架提取,从每一个枝干点云中提取骨架结构,并将所有骨架连接为完整的树骨架;
11.s400、程序建模,基于提取的骨架结构拟合圆柱体生成树模型,添加树皮和树叶纹理贴图完成树木模型重建。
12.优选的,所述s100的点云采集,包括:
13.s101、使用sfm方法采集树木的稀疏点云;
14.s102、为保证s200的枝干分割质量,通过pointnet++网络作为过滤器,将树木点云中的枝干点云和叶子点云分为两个簇,从中过滤掉叶子点云,随后使用dbscan聚类方法继续过滤离群点和噪音,完成树木点云的预处理,保留枝干点云。
15.优选的,所述s200的枝干分割,包括:
16.s201、使用程序建模方法创建树模型文件,通过对模型文件表面提取点获得树点云文件,手动分割每组枝干点云,将处理好的树木点云数据作为模型训练数据集;
17.s202、创建基于点体素的神经分解网络,使用s201得到的模型训练数据集在基于点体素的神经分解网络上进行训练,得到训练好的神经分解网络;
18.s203、使用训练好的神经分解网络分割s100保留的枝干点云数据,神经分解网络中基于点云的网络提取枝干点云的单点特征,基于体素的网络提取枝干点云的局部特征,将点云的单点特征和局部特征进行融合,预测每个点所属的簇编号,得到一个具有多个簇的集合{(p,b)i},其中p表示点云,b表示点云所属的簇编号,完成枝干分割。
19.优选的,所述s300的骨架提取,包括:
20.s301、使用l中值方法将s200分割出的每一个枝干点云的枝干截面中心点提取出来,形成单个枝干骨架;
21.s302、将提取的枝干骨架按照欧式距离与基于角度的优化策略进行连接,获得完整的树骨架结构;
22.具体的,在获取单个枝干骨架后,通过主干的每个节点与支干的根节点的欧式距离初步选择连接点,此时基于支干末端两个节点的方向进行优化连接点,从初始连接点开始向主干两个方向移动,每次判断连接点与支干末端两点形成的夹角,并根据夹角优化移动方向和距离,当三点夹角大于170度小于190度时,确定当前主干连接点为最终的连接点,重复以上步骤直至所有枝干骨架都被连接到树骨架。
23.优选的,所述s400的程序建模,包括:
24.s401、基于从s300提取的树骨架结构拟合圆柱体。首先对树原始点云构建kd树数据结构,以加快搜索速度,如图5所示,从树骨架结构的根节点开始搜索,基于骨架节点pi从原始树点云中搜索n个最近点,取均值作为圆柱体的半径以相邻的两个骨架节点的方向向量a作为枝干方向,并以向量a为中心轴旋转获取n个点坐标,拟合圆形;
25.s402、按照异速生长模型和s401所述半径获取方法进行权重分配,获取其余枝干骨架的半径并拟合圆柱体,直至拟合所有圆柱体,最终生成的树三维模型如图2d所示;
26.s403、对圆柱体添加树皮纹理,并基于枝干末端顶点随机方向选择四个点作为树叶纹理,并通过参数选择树叶密度和可生成树叶的树枝范围,添加纹理后的树模型如图2e所示。
27.本发明的一种基于点体素的实景树三维模型重建方法,实现了对实景树木的精准三维建模。方法中基于点体素的点云网络训练更加高效,能够大幅降低gpu占用,且因为包含了基于体素的网络,可以提取局部特征,从而也提高分割的精度;采用两个骨架的欧式距离对枝干骨架进行初步连接,同时配合基于角度的优化连接点方法对连接进行优化;使用基于异速生长模型得到的半径和从原始点云中计算出的半径分别给一个权重,算出最终的枝干半径。与现有的实景树木三维模型重建方法相比,本发明的方法基于分割后的枝干进行提取骨架,大大提高了骨架提取的准确性,并且通过异速生长模型和原始点云搜索相结合的方法计算半径,使得树木枝干拟合圆柱体更加接近真实枝干,保证了精确的树木三维重建。
附图说明
28.图1为本发明方法的流程框图;
29.图2为本发明方法的重建过程示意图;
30.图3为本发明方法中基于点体素的神经分解网络架构图;
31.图4为本发明方法中骨架连接点示意图;
32.图5为本发明方法中搜索圆柱体半径示意图。
具体实施方式
33.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
34.下面结合附图和实施例对本发明的技术方案做进一步的说明。
35.实施例
36.如图1所示,一种基于点体素的实景树三维模型重建方法,包括:
37.s100、点云采集
38.s101、采用多角度以目标树为中心进行拍摄,每次旋转角度不超过30度,将拍摄的树照片使用sfm方法重建出树木的稀疏点云;
39.s102、通过pointnet++网络作为过滤器,将树木点云中的枝干点云和叶子点云分为两个簇,从中过滤掉叶子点云,随后使用dbscan聚类方法继续过滤离群点和噪音,完成树木点云的预处理,保留枝干点云,预处理结果如图2a所示。
40.s200、枝干分割
41.s201、使用程序建模方法创建树模型文件,通过对模型文件表面提取点获得树点云文件,并手动分割每组枝干点云,将处理好的树木点云数据作为模型训练数据集;
42.s202、创建基于点体素的神经分解网络,使用数据集在基于点体素的神经分解网络上进行训练,并得到训练好的基于点体素的神经分解网络;
43.s203、使用训练好的基于点体素的神经分解网络分割s100中的枝干点云数据,将点云作为输入,神经分解网络结构如图3所示,其中基于点云的网络提取枝干点云的单点特征,基于体素的网络将枝干点云映射到体素空间并进行三维卷积操作,提取枝干点云的局部特征并将其映射到点云中,使点云的局部特征与从基于点云的网络中提取的单点特征相融合,预测每个点所属的簇编号,得到一个具有多个簇的集合{(p,b)i},其中p表示点云,b表示点云所属簇的编号,拥有相同簇编号的点云组成一个树木枝干,分割结果如图2b所示。
44.s300、骨架提取
45.s301、使用l中值方法将s200分割出的每一个枝干点云的枝干截面中心点提取出来,形成单个枝干骨架;
46.s302、将提取的枝干骨架按照欧式距离与基于角度的优化策略进行连接,获得完整的树骨架结构;
47.具体的,如图4所示,在获取单个枝干骨架后,通过主干的每个节点与支干的根节点的欧式距离初步选择连接点,此时基于支干末端两个节点的方向进行优化连接点,从初
始连接点开始向主干两个方向移动,每次判断连接点与支干末端两点形成的夹角,并根据夹角优化移动方向和距离,当三点夹角大于170度小于190度时,确定当前主干连接点为最终的连接点,重复以上步骤直至所有枝干骨架都被连接到树骨架,连接结果如图2c所示。
48.s400、程序建模
49.s401、基于从s300提取的树骨架结构拟合圆柱体。首先对树原始点云构建kd树数据结构,以加快搜索速度,如图5所示,从树骨架结构的根节点开始搜索,基于骨架节点pi从原始树点云中搜索n个最近点,取均值作为圆柱体的半径以相邻的两个骨架节点的方向向量a作为枝干方向,并以向量a为中心轴旋转获取n个点坐标,拟合圆形;
50.s402、按照异速生长模型和s401所述半径获取方法进行权重分配,获取其余枝干骨架的半径并拟合圆柱体,直至拟合所有圆柱体,最终生成的树三维模型如图2d所示;
51.s403、对圆柱体添加树皮纹理,并基于枝干末端顶点随机方向选择四个点作为树叶纹理,并通过参数选择树叶密度和可生成树叶的树枝范围,添加纹理后的树模型如图2e所示。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1