


价格:面议
0
联系人:
电话:
地址:
3D建模的原理
3D建模的过程实际上是一个三维重建过程,这个过程包括点云数据预处理、分割、三角网格化、网格渲染。
由于激光扫描获取的数据中常常伴有杂点或噪声,影响了后续的处理,因此为了获取完整的模型,需要对点云数据进行一定的预处理,常用的方法有滤波去噪、数据精简、数据插补等。
分割是指将整个点云聚类为多个点云,每个点云对应独立的物体对象。分割算法大体上是先选定一个点,利用kd树计算以该点为中心的球,球内的点都属于该物体,球的半径设为一个阈值,三维实景建模,之后遍历该物体的其他点都这么处理,会将点云分割成一个一个的物体。
为了便于后续的网格渲染,需要提前将点云进行三角网格化,采用的算法通常是凸包或凹包算法。
以上几步基本上已经得出了点云的空间拓扑结构,要得到逼真的物体,还需要网格渲染。网格渲染主要为纹理映射,就是将数码相机中的图像望网格上贴。
经过以上几步就完成了整个3D建模。
精细配准是一种更深层次的配准方法。经过前一步粗配准,得到了变换估计值。将此值作为初始值,在经过不断收敛与迭代的精细配准后,达到更加准确的效果。以经典的ICP算法为例,该算法首先计算初始点云上所有点与目标点云的距离,实景建模技术,保证这些点和目标点云的zui近点相互对应,同时构造残差平方和的目标函数。ICP算法能够获得精正确无误的配准结果,对自由形态曲面配准问题具有重要意义。另外还有如SAA(Simulate Anneal Arithmetic,模拟退火)算法、GA(Genetic Algorithm,遗传)算法等也有各自的特点与使用范畴。
libpcl filters:如采样、去除离群点、特征提取、拟合估计等数据实现过滤器;
libpcl features:实现多种三维特征,如曲面法线、曲率、边界点估计、矩不变量、主曲率,PFH和FPFH特征,旋转图像、积分图像,NARF描述子,RIFT,相对标准偏差,数据强度的筛选等等;
libpcl I/O:实现数据的输入和输出操作,例如点云数据文件(PCD)的读写;
libpcl segmentation:实现聚类提取,如通过采样一致性方法对一系列参数模型(如平面、柱面、球面、直线等)进行模型拟合点云分割提取,广州实景建模,提取多边形棱镜内部点云等等;
libpcl surface:实现表面重建技术,如网格重建、凸包重建、移动zui小二乘法平滑等;
libpcl register:实现点云配准方法,如ICP等;
libpclkeypoints:实现不同的关键点的提取方法,这可以用来作为预处理步骤,决定在哪儿提取特征描述符;
libpcl range :实现支持不同点云数据集生成的范围图像。