基于点云的3ds Max快速精细三维建模方法及系统的制作方法 插件开发

时间:2023-03-08 22:11:32
基于点云的3ds Max快速精细三维建模方法及系统的制作方法 插件开发
                             基于点云的3ds Max快速精细三维建模方法及系统的制作方法
【技术领域】
[0001]本发明涉及数字城市三维建模领域,尤其涉及一种基于点云的3ds Max快速精细三维建模方法及系统。
【背景技术】
[0002]目前,数字城市建模主要有三种方式:利用三维建模软件人工建模、利用激光点云建模、利用航空立体像对建模。利用三维建模软件,如3ds Max、AutoCAD、SketchUp进行建模属于传统方式,虽然能在模型精细程度上有很大的保证,但无法满足城市大范围快速建模的需要。航空影像在成本、覆盖度、自动化程度上很有优势,可以通过像对匹配点云或提取线要素等方式对建筑物进行三维重建,但是在纹理重建方面,由于航空影像只有下视,经常出现遮挡、拍摄死角现象,导致建筑物侧面纹理信息缺失,影响重建速度和质量。现有的利用航空立体像对进行建模的软件产品中,大多数也之只能构建简单建筑物,对模型的编辑修改支持比较弱。
[0003]激光点云中包含着丰富的自然和人工地物信息,主要包括植被、建筑物、道路、绿地等地物信息,但由于地物的复杂性,如何从众多的激光点云中提取出所要的建筑物信息一直是国内外研究的热点。利用机载激光雷达提取出所需要的建筑物模型可以分为两个步骤:建筑物检测盒建筑物模型生成。建筑物轮廓线是城市制图和建立三维建筑模型的基础,基于点云数据提取建筑物轮廓线是当前点云数据处理的一大热点和难点。目前基于点云数据提取建筑物的一般方法是将点云数据先栅格化为深度影像DSM,进一步求得规则化的nDSM,再利用图像的分割算法及边界线提取算法等图像分析手段实现轮廓线提取。美国普顿大学Alhartthy等人设计了通过渐进滤波方法进行建筑物三维信息的提取;荷兰Delft大学Vosselman等人利用3D Hough变换获取建筑物平面,以实现建筑物三维重建的目的。李树楷等使用DSM结合影像进行建筑边线的提取,分成三个实施步骤,依次是激光测距点分析、阴影分析和建筑物边界重构。尤红建提出了基于预测方向的方位角从同一建筑的激光角点中分离出最靠近建筑物轮廓边缘上的激光点,对分离出的激光边界点依据建筑物的特点进行边缘规则化处理。同时依据边缘点连线方向角的变化进行边界点的分组,再依据分组的边界点计算出建筑物的主方向,通过主方向对边界点进行边缘规则化,最后得到建筑物最外侧的轮廓。
[0004]激光点云建模利用三维激光扫描仪获取的点云数据,能够完整并高精度地重建扫描实物数据。但实际应用中因为三维激光扫描点云密集,实体信息隐含特征提取困难。三维建模的软件对于激光点云的承载能力有限,并且激光点云数据通常需要预处理,因此需要借助点云处理软件删除噪点,减少点云的加载量。在点云处理的同时将点云生成面片,将面片导入建模软件辅助建模。数据需要在点云处理软件系统和三维建模系统中来回导入导出,反复人工核对,工作十分繁琐,效率低下。

【发明内容】

[0005]本发明主要研究利用机载或车载激光雷达点云数据进行城市建筑物房屋三维建模,为了发挥点云的高精度位置几何信息以及建模软件的精细建模功能,本发明提出一种基于点云的3ds Max快速精细建模的技术方案。
[0006]为达到上述目的,本发明采用如下的技术方案:
一种基于点云的3ds Max快速精细三维建模方法,包括以下步骤:
步骤一、点云预处理,包括先对机载或车载激光雷达所获取的点云数据进行点云去噪,然后进行快速聚类和构建Κ-D树,再进行点云抽稀;
所述快速聚类,包括对去噪处理后的点云数据构建不规则三角网模型,计算不规则三角网模型中每个三角面的法向量,将具有相似法向量值的点聚类到同一个平面点集;
所述构建Κ-D树,包括根据快速聚类结果,对于每一个类别分别构建Κ-D树;
步骤二、进行3ds Max点云缩略图加载,包括基于3ds Max根据步骤一中聚类后的每个类别的中心点提供全部点云的缩略图;
步骤三、生成局部点云,包括当用户在步骤二所得缩略图中选择一个点时,利用Κ-D树索引搜索出该点的邻近点,生成用户感兴趣的局部点云;
步骤四、修正用户测点和测线,引导用户完成建筑物轮廓的绘制,包括当用户进行测点,提取相应特征点修正用户测点,当用户进行测线,提取相应特征线修正用户测点,实现方式如下,
在3ds Max操作视窗中提供步骤三所得局部点云,当用户进行测点中采用3ds Max捕捉功能调整角度选取建筑物角点时,通过用户选取的建筑物角点所在类别的Κ-D树获取邻域点云,通过角点提取算法从邻域点云中提取到其中所有的角点,作为特征点;
对邻域点云中点云数据进行平面拟合,得到平面的交线,作为特征线;
显示并选中与用户所选取建筑物角点最邻近的特征点,实现修正用户测点,向用户提供修正后的建筑物角点;当用户从一个修正后的建筑物角点出发进行测线时,捕捉相应特征线并检索下一个建筑物的角点,实现修正用户测线,绘制建筑的轮廓边线;
步骤五、进行3ds Max精细建模,包括基于3ds Max根据所得建筑物轮廓完成建模。
[0007]而且,所述进行平面拟合的实现方式为,利用随机选择的3个点算出待拟合的平面中参数初始值,然后根据参数初始值寻找点集合内的其他点,包括判断其他点到平面的距离,距离在预设阈值内的点也属于平面的点集合。
[0008]本发明还相应提供一种基于点云的3ds Max快速精细三维建模系统,包括以下模块:
点云预处理模块,用于先对机载或车载激光雷达所获取的点云数据进行点云去噪,然后进行快速聚类和构建Κ-D树,再进行点云抽稀;
所述快速聚类,包括对去噪处理后的点云数据构建不规则三角网模型,计算不规则三角网模型中每个三角面的法向量,将具有相似法向量值的点聚类到同一个平面点集;
所述构建Κ-D树,包括根据快速聚类结果,对于每一个类别分别构建Κ-D树;
缩略图加载模块,用于基于3ds Max根据点云预处理模块所得聚类后的每个类别的中心点提供全部点云的缩略图;
局部点云生成模块,用于包括当用户在缩略图加载模块所得缩略图中选择一个点时,利用Κ-D树索引搜索出该点的邻近点,生成用户感兴趣的局部点云; 用户测点和测线修正模块,用于引导用户完成建筑物轮廓的绘制,包括当用户进行测点,提取相应特征点修正用户测点,当用户进行测线,提取相应特征线修正用户测点,实现方式如下,
在3ds Max操作视窗中提供局部点云生成模块所得局部点云,当用户进行测点中采用3ds Max捕捉功能调整角度选取建筑物角点时,通过用户选取的建筑物角点所在类别的K-D树获取邻域点云,通过角点提取算法从邻域点云中提取到其中所有的角点,作为特征点;
对邻域点云中点云数据进行平面拟合,得到平面的交线,作为特征线;
显示并选中与用户所选取建筑物角点最邻近的特征点,实现修正用户测点,向用户提供修正后的建筑物角点;当用户从一个修正后的建筑物角点出发进行测线时,捕捉相应特征线并检索下一个建筑物的角点,实现修正用户测线,绘制建筑的轮廓边线;
精细建模模块,用于基于3ds Max根据所得建筑物轮廓完成建模。
[0009]而且,所

                                                             述进行平面拟合的实现方式为,利用随机选择的3个点算出待拟合的平面中参数初始值,然后根据参数初始值寻找点集合内的其他点,包括判断其他点到平面的距离,距离在预设阈值内的点也属于平面的点集合。
[0010]本发明所提供技术方案的特点如下:
1.提供了 3DMax辅助的城市精细三维模型构建:3ds Max是由AutoDesk推出的专业建模软件,拥有完善的交互式建模引擎,具备丰富的编辑工具,是目前使用最为广泛的手动建模工具。另外,3ds Max提供3ds Max SDK用于创建扩展应用的面向对象的开发平台,可以支持C++以及多种脚本语言可供插件开发。因此本发明所提供方法可以融合到3ds Max中,充分利用其丰富的精细模型编辑能力,对算法自动提取结果进行快速编辑。
[0011]2.提出基于三维平面片拟合的局部特征点、特征线提取:在角点提取和局部拟合面片的基础上,帮助建模人员精确拾取特征角点,并跟踪用户的特征线的绘制过程,自动定位到精确的特征线,保证了建模的高精度和高效率。
[0012]3.实现了快速拾取局部点云:基于快速聚类结果,避免全部点云加载带来的操作不流畅,并且能快速根据用户测点获取最适视角的局部点云数据,以便进行快速特征点、特征线的提取,辅助人工建模操作。
【附图说明】
[0013]图1是本发明实施例的流程图。
[0014]图2是本发明实施例的点云预处理流程图。
【具体实施方式】
[0015]以下结合附图和实施例对本发明技术方案进行详细描述。
[0016]如图1所示,本发明实施例所提供方法从原始点云到模型构建的具体实现流程如下:
步骤一、点云预处理;
机载或车载激光雷达所获取的点云数据是一系列不连续的三维空间坐标点,它是不规则离散分布的,数据量巨大且存在大量数据冗余,因此需要进行去噪以及有效的组织与索引以便后续的处理。
[0017]实施例中点云数据预处理的流程图参见图2,包括点云去噪,然后进行快速聚类和构建Κ-D树,再进行点云抽稀。
[0018]实施例中,首先进行点云去噪,去除无穷远点(如天空)和杂志点(如树木,玻璃等),这些点信息对数据处理与三维建模产生负影响,因此需要将这些无效点或干扰点去除。对去噪处理后的点云构建不规则三角网(Triangulated Irregular Network, TIN)模型,计算TIN模型中每个小三角面的法向量,将具有相似法向量值的点聚类到同一个平面点集。并且,对于每一个类别分别构建Κ-D树,通过使用空间数据结构Κ-D树来组织全部数据,可以高效率地找到离一个给定的聚类中心最近的所有的数据。然后对点云数据进行抽稀,实施例采用基于TIN的抽稀算法,具体实施时可以考虑路面、建筑物等地物数据特点,保留地面特征点,抽稀掉平坦路面的数据点,从而降低数据冗余度,对数据的精度影响也很小。
[0019]步骤二、3ds Max点云缩略图加载;
3ds Max2015支持点云的加载但是点云的承载能力有限,因此实施例根据步骤一中聚类算法所得聚类后的每个类别的中心点提供全部点云的缩略图,达到缩略和快速索引进行导航的功能。例如在3ds Max2015所提供人机交互界面中,在右下角提供缩略图的小窗口,减少3ds Max的点云加载负担,同时提供局部精细的点云浏览窗口,可供编辑人员观察和操作。
[0020]步骤三、当用户在缩略图中选择一个点时,生成用户感兴趣的局部点云;
在步骤二所得缩略图中用户可以迅速定位到感兴趣的区域,算法在点云聚类的基础上快速构建索引,用户通过缩略图的引导可以快速观察到感兴趣的局部点云。
[0021]实施例中,用户为建筑物轮廓的绘制通常需要进行测点、测线,用户测点是选取建筑物角点试图构建建筑物轮廓的过程,测线是用户从角点出发沿着点云勾勒建筑物边线的过程。为准确操作,首先需要定位用户感兴趣的局部点云。当用户在缩略图中选择一个点,可以利用Κ-D树索引管理技术搜索出该点的邻近点,从而快速建立起点云的拓扑关系。反映在缩略图上就是有一个矩形框,矩形框区域就是当前大的界面显示的区域,鼠标移动即拖动矩形框可以改变当前地图显示的位置,从而起到导航的作用。
[0022]步骤四、修正用户测点和测线,引导用户完成建筑物轮廓的绘制,包括基于步骤三所得局部点云,当用户进行测点,提取相应特征点修正用户测点,当用户进行测线,提取相应特征线修正用户测点;
具体实施时,在3ds Max操作视窗中,可以通过用户操作窗口提供步骤三所生成的用户感兴趣的局部点云(类似步骤二中所述的局部点云显示窗口),用户进行测点时,可以开启3ds Max捕捉功能,在3ds Max操作视窗中调整角度选取可能的建筑物角点(即初始的用户测点结果),再通过可能的建筑物角点所在类别的Κ-D树获取邻域点云,从邻域点云中通过角点提取算法可以提取到该区域所有的角点,作为特征点。角点提取算法可采用现有技术,本发明不予赘述。
[0023]为了提高后续绘制效率,可以预先进行平面拟合:
基于通过可能的建筑物角点所在类别的Κ-D树获取的邻域点云,实施例采用随机抽样一致性算法(RANdom SAmple Consensus, RANSAC)结合特征值法对点云数据进行平面拟合。在进行待拟合平面的参数估计时,可以采用针对具体数据设定的判断准则,利用此判断准则迭代地剔除那些与所估计的参数不一致的输入数据,然后通过正确的输入数据来估计参数。其具体做法是利用随机选择的3个点算出待拟合平面的参数初始值,然后根据参数初始值寻找点集合内的其他点。此时需要建立判断准则以确定该点是否为平面上的点,实施例中用到的方法是计算点到平面的距离,在实际的拟合过程中可以由本领域技术人员预先设置阈值来拟合平面,设距离在预设阈值内的点也属于该平面的点集合。
[0024]平面拟合算法处理完毕后,可以将特征点反馈给用户,用户尝试根据建筑物的轮廓绘制图形时,可以通过点云的平面拟合算法处理结果快速找到建筑物平面的交线,作为特征线,为后续建模提供保障。
[0025]实施例的修正用户测点、测线:
在用户选点之后,将根据角点提取算法提取到的建筑物角点(特征点)中与用户选点最邻近者在视图(3ds Max操作视窗提供步骤三所得局部点云的视图)中高亮度显示并自动捕捉到该点,实现修正用户测点,用户可获得修正后的建筑物角点。再根据平面拟合算法拟合出的平面的交线(特征线),当用户从一个修正后的建筑物角点出发时,自动捕捉到相应平面的交线并从该区域的角度检索到下一个建筑物的角点,实现修正用户测线,绘制建筑的轮廓边线,引导用户较为精准地完成整个建筑物轮廓的绘制。
[0026]步骤五、3ds Max精细建模;
根据以上步骤所得的建筑物轮廓,结合3ds Max强大的模型编辑功能,用户就可以利用3dsMax精细地编辑和完善模型。从标准模型的创建、修改,到模型的放样和创建复合体,再到高级的面片建模,完善的建模功能帮助用户方便真实地表达现实中的场景。
[0027]具体实施时,以上流程可采用计算机软件技术实现自动运行,也可以采用模块化方式提供相应系统。
[0028]本发明实施例还相应提供一种基于点云的3
                                                             ds Max快速精细三维建模系统,包括以下模块:
点云预处理模块,用于先对机载或车载激光雷达所获取的点云数据进行点云去噪,然后进行快速聚类和构建Κ-D树,再进行点云抽稀;
所述快速聚类,包括对去噪处理后的点云数据构建不规则三角网模型,计算不规则三角网模型中每个三角面的法向量,将具有相似法向量值的点聚类到同一个平面点集;
所述构建Κ-D树,包括根据快速聚类结果,对于每一个类别分别构建Κ-D树;
缩略图加载模块,用于基于3ds Max根据点云预处理模块所得聚类后的每个类别的中心点提供全部点云的缩略图;
局部点云生成模块,用于包括当用户在缩略图加载模块所得缩略图中选择一个点时,利用Κ-D树索引搜索出该点的邻近点,生成用户感兴趣的局部点云;
用户测点和测线修正模块,用于引导用户完成建筑物轮廓的绘制,包括当用户进行测点,提取相应特征点修正用户测点,当用户进行测线,提取相应特征线修正用户测点,实现方式如下,
在3ds Max操作视窗中提供局部点云生成模块所得局部点云,当用户进行测点中采用3ds Max捕捉功能调整角度选取建筑物角点时,通过用户选取的建筑物角点所在类别的K-D树获取邻域点云,通过角点提取算法从邻域点云中提取到其中所有的角点,作为特征点;
对邻域点云中点云数据进行平面拟合,得到平面的交线,作为特征线; 显示并选中与用户所选取建筑物角点最邻近的特征点,实现修正用户测点,向用户提供修正后的建筑物角点;当用户从一个修正后的建筑物角点出发进行测线时,捕捉相应特征线并检索下一个建筑物的角点,实现修正用户测线,绘制建筑的轮廓边线;
精细建模模块,用于基于3ds Max根据所得建筑物轮廓完成建模。
[0029]本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
【主权项】
1.一种基于点云的3dS Max快速精细三维建模方法,其特征在于,包括以下步骤: 步骤一、点云预处理,包括先对机载或车载激光雷达所获取的点云数据进行点云去噪,然后进行快速聚类和构建Κ-D树,再进行点云抽稀; 所述快速聚类,包括对去噪处理后的点云数据构建不规则三角网模型,计算不规则三角网模型中每个三角面的法向量,将具有相似法向量值的点聚类到同一个平面点集; 所述构建Κ-D树,包括根据快速聚类结果,对于每一个类别分别构建Κ-D树; 步骤二、进行3ds Max点云缩略图加载,包括基于3ds Max根据步骤一中聚类后的每个类别的中心点提供全部点云的缩略图; 步骤三、生成局部点云,包括当用户在步骤二所得缩略图中选择一个点时,利用Κ-D树索引搜索出该点的邻近点,生成用户感兴趣的局部点云; 步骤四、修正用户测点和测线,引导用户完成建筑物轮廓的绘制,包括当用户进行测点,提取相应特征点修正用户测点,当用户进行测线,提取相应特征线修正用户测点,实现方式如下, 在3ds Max操作视窗中提供步骤三所得局部点云,当用户进行测点中采用3ds Max捕捉功能调整角度选取建筑物角点时,通过用户选取的建筑物角点所在类别的Κ-D树获取邻域点云,通过角点提取算法从邻域点云中提取到其中所有的角点,作为特征点; 对邻域点云中点云数据进行平面拟合,得到平面的交线,作为特征线; 显示并选中与用户所选取建筑物角点最邻近的特征点,实现修正用户测点,向用户提供修正后的建筑物角点;当用户从一个修正后的建筑物角点出发进行测线时,捕捉相应特征线并检索下一个建筑物的角点,实现修正用户测线,绘制建筑的轮廓边线; 步骤五、进行3ds Max精细建模,包括基于3ds Max根据所得建筑物轮廓完成建模。2.根据权利要求1所述基于点云的3dsMax快速精细三维建模方法,其特征在于:所述进行平面拟合的实现方式为,利用随机选择的3个点算出待拟合的平面中参数初始值,然后根据参数初始值寻找点集合内的其他点,包括判断其他点到平面的距离,距离在预设阈值内的点也属于平面的点集合。3.—种基于点云的3ds Max快速精细三维建模系统,其特征在于,包括以下模块: 点云预处理模块,用于先对机载激光雷达所获取的点云数据进行点云去噪,然后进行快速聚类和构建Κ-D树,再进行点云抽稀; 所述快速聚类,包括对去噪处理后的点云数据构建不规则三角网模型,计算不规则三角网模型中每个三角面的法向量,将具有相似法向量值的点聚类到同一个平面点集; 所述构建Κ-D树,包括根据快速聚类结果,对于每一个类别分别构建Κ-D树; 缩略图加载模块,用于基于3ds Max根据点云预处理模块所得聚类后的每个类别的中心点提供全部点云的缩略图; 局部点云生成模块,用于包括当用户在缩略图加载模块所得缩略图中选择一个点时,利用Κ-D树索引搜索出该点的邻近点,生成用户感兴趣的局部点云; 用户测点和测线修正模块,用于引导用户完成建筑物轮廓的绘制,包括当用户进行测点,提取相应特征点修正用户测点,当用户进行测线,提取相应特征线修正用户测点,实现方式如下, 在3ds Max操作视窗中提供局部点云生成模块所得局部点云,当用户进行测点中采用3ds Max捕捉功能调整角度选取建筑物角点时,通过用户选取的建筑物角点所在类别的K-D树获取邻域点云,通过角点提取算法从邻域点云中提取到其中所有的角点,作为特征点;对邻域点云中点云数据进行平面拟合,得到平面的交线,作为特征线; 显示并选中与用户所选取建筑物角点最邻近的特征点,实现修正用户测点,向用户提供修正后的建筑物角点;当用户从一个修正后的建筑物角点出发进行测线时,捕捉相应特征线并检索下一个建筑物的角点,实现修正用户测线,绘制建筑的轮廓边线;精细建模模块,用于基于3ds Max根据所得建筑物轮廓完成建模。4.根据权利要求3所述基于点云的3ds Max快速精细三维建模系统,其特征在于:所述进行平面拟合的实现方式为,利用随机选择的3个点算出待拟合的平面中参数初始值,然后根据参数初始值寻找点集合内的其他点,包括判断其他点到平面的距离,距离在预设阈值内的点也属于平面的点集合。
【专利摘要】本发明提供一种基于点云的3ds?Max快速精细三维建模方法及系统,包括点云预处理,包括先对机载或车载激光雷达所获取的点云数据进行点云去噪,然后进行快速聚类和构建K-D树,再进行点云抽稀;基于3ds?Max根据聚类后的每个类别的中心点提供全部点云的缩略图;生成局部点云,当用户选取建筑物角点时,通过所在类别的K-D树获取邻域点云,采用角点提取算法从邻域点云中提取到其中所有的角点作为特征点,对邻域点云中点云数据进行平面拟合,得到平面的交线,作为特征线;根据特征点修正用户测点,当用户进行测线时,搜索绘制建筑的轮廓边线,修正用户测线;基于3ds?Max根据建筑物轮廓完成建模。
【IPC分类】G06T19/00, G06T5/00
【公开号】CN105354883
【申请号】CN201510831919
【发明人】黄玉春, 孙慧, 丁亚兰, 袁野
【申请人】武汉大学
【公开日】2016年2月24日
【申请日】2015年11月25日                                                         
基于点云的3ds Max快速精细三维建模方法及系统的制作方法 插件开发