基于GA-BP神经网络的三维点云孔洞修补研究*

2018-03-30 06:25王春香王岩辉
制造技术与机床 2018年3期
关键词:孔洞权值遗传算法

王春香 张 勇 梁 亮 王岩辉

(内蒙古科技大学机械学院,内蒙古 包头 014010)

在三维点云数据获取过程中,被测实物具有复杂型面和较深的销孔及内腔,破损以及测量设备的限制,导致所测得的数据不完整,以及孔洞和缺口,为了得到完整的点云数据模型对实物进行重建与创新设计,需要对测量点云数据进行修补,否则会影响曲面重构后精度以及创新型研究。因此,点云孔洞修补技术是逆向设计的关键技术之一,为后期模型重构提供高质量的点云数据。

目前,随着逆向工程应用领域不断的扩大,对逆向设计关键技术要求越来越高,国内外学者对点云孔洞修补技术也进行了广泛的研究,并取得了一定的成果。赵鑫[1]等利用BP神经网络强大的非线性逼近能力,实现了点云的去燥和孔洞修补;刘俊[2]等通过建立特征平面,并在特征平面上调整填充点,实现孔洞修补;张育峰[3]等提出引入松弛变量改变,收敛过程中陷入局部最小值,实现对孔洞修补;Chen[4]等利用径向基神经网络构造隐式曲面,恢复了孔洞区域特征信息,孔洞修补效果较好等;朱春红[5]等提出自适应算法,利用孔洞区域与周围数据的连续特性,拟合曲面,通过逐步迭代方式获得最优解,实现孔洞修补;王春香[6]等通过孔洞周围点建立最小二乘平面完成孔洞初步填充,并用RBF神经网络调整填充点,达到较好的修补效果,但RBF神经网络聚类中心和初始聚类数不易确定,影响修补效果;高印寒[7]等利用GA-BP神经网络高效而准确地评价了车内噪声的品质;黄建国[8]等通过用GA(遗传算法)优化BP神经网络的权值和阈值,改善搜索能力,很好地实现了基于时间序列的预测能力。

本文在分析和研究已有算法基础上,充分考虑到BP神经网络具有良好的非线性映射能力、泛化能力以及容错能力,利用遗传算法(GA)优化BP神经网络权值和阈值,克服了BP神经网络易陷入局部最优和收敛速度慢等缺点,提高了全局优化能力。算法通过利用点云孔洞周围数据作为训练样本,建立BP神经网络模型,以三角网格形式不断填充孔洞,最后用该算法对基础面进行不断优化,实现对点云孔洞修补。实验结果表明,该方法提高了修补精度和效率。

1 BP神经网络原理及遗传算法

BP神经网络原理:(1)网络初始化:初始化权值、训练精度和最大迭代次数。(2)信号正向传播:输入样本→隐含层→输出层;考虑到样本输入顺序对训练结果有影响,所以本文采用随机输入样本的方式来计算输出,而不是顺序输入。(3)判断是否转入反向传播阶段:计算实际输出与期望输出的偏差。如果二者不相符,则转入反向传播。(4)误差反向传播:修正输入层和隐含层之间的连接权值以及隐含层和输出层之间的连接权值。(5)计算全局误差。(6)判断网络误差是否满足要求,即网络的实际输出值和期望输出值之间的均方误差最小。

遗传算法是模拟自然界遗传机制和生物进化论的一种并行随机搜索的最优化方法,主要包括选择、交叉、变异等操作,具有良好的全局搜索能力,能够寻找到网络结构中的最优权值和阈值,减小搜索范围,使BP神经网络具有良好的优化结构,结合GA-BP能够精确和高效地实现三维散乱点云数据孔洞修补[9]。

2 散乱点云孔洞修补步骤

孔洞修补包括:孔洞边界提出→孔洞初步填充→孔洞点云处的优化调整(实现修补)。本次研究以挖掘机斗齿(图1)人为孔洞为例,利用GA-BP混合算法进行孔洞修补技术研究,并将修补结果与BP优化结果进行比较分析。分析斗齿结构及配合要求,斗齿外部精度要求不高,易于扫描探测,斗齿内腔精度要求较高,扫描仪不易探测,从而导致点云数据缺失,形成孔洞。故实验以斗齿内腔(图2)为研究对象,其中+号聚集部分为人为漏洞缺失部分,在软件无法实现较好修补情况下,对斗齿内腔大面积点云数据缺失部分进行修补研究。

孔洞边界提取和孔洞填充:基于Imageware13.2,经过点云分割,将斗齿内腔分离出来,并将人为孔洞提取出来。基于软件的实效性,通过将孔洞周围的点进行三角网格化,识别出点云孔洞边界(图3),利用填充孔命令,以孔洞周围点为基础,通过不断向内插值完成孔的填充,然后在每个三角形面片中间插值点,形成新的网格,并且进一步细化初步填充的三角形网格,避免发生重叠和移出过长三角形网格,将三角形网格离散成点(图4),实现孔洞初步填充。孔洞的初步填充实现了对缺失部分粗略修补,填充时未考虑孔洞周围曲率变化以及光滑过渡,极易导致曲面表面光顺度差,需进一步进行优化调整。本文通过充分发挥软件优势,实现自动探测孔洞边界,基于此并实现了孔洞的初步填充,相较于编程实现孔洞边界识别和建立特征平面实现孔洞区域填充更符合逆向设计的高效性,并利用GA-BP神经网络来对填充点调整,实现孔洞区域的精确修补。

3 遗传算法优化BP神经网络模型

GA-BP算法流程图如图5所示。

3.1 参数设定

本文GA-BP神经网络采用3层网络结构(输入层、隐含层和输出层),其中神经网络结构为2-5-1,即输入层2个节点,隐含层5个节点,输出层1个节点。其中最大迭代次数为5 000次,预先设定误差0.000 01,学习率为0.1,与传统BP神经网络结构基本一致,利用遗传算法寻找最优个体优化网络权值和阈值,最后实现仿真输出。

3.2 GA-BP和BP神经网络训练和测试

本文根据孔洞周围曲率变化,提取出471个点云数据为训练数据训练神经网络,随机抽取5组数据所占百分比为(50%,60%,70%,80%,90%)作为训练数据,其余作为测试数据。以点云的X和Y坐标作为输入,Z坐标作为输出,训练前将数据进行归一化处理,通过每次迭代,直到预测值与真实值之间的均方误差MSE满足预先设定目标误差为0.000 01,停止运行,并保存网络。

3.3 预测结果分析比较

本实验基于MatlabR2015a做为实验平台,设备Win7(64)操作系统,硬件配置IntelCorei5-3210MCPU,4GB内存下进行试验操作。

表1通过对样本在GA-BP和BP两种模型下,预测值与真实值之间均方误差MSE可以看出,GA-BP神经网络模型预测能力要优于BP神经网络模型,预测效果明显。基于图6和图7可以看出:通过BP网络与GA-BP网络预测误差相比较,GA-BP神经网络预测能力更强,偏差较小,其优化后比BP神经网络预测值更接近真实值,从而说明预测结果更好。

表1 两种模型预测误差

模型各样本数据误差MSE50%60%70%80%90%平均误差BP2.29853.02640.54740.35670.13051.2719GA-BP0.43792.23850.25150.24750.06970.6490

3.4 结果比较

通过以孔洞填充点数据X和Y坐标作为输入数据,Z坐标作为输出数据,利用GA-BP和BP神经网络进行仿真,得到预测输出值Z′,并将X和Y坐标与Z′进行整合获得孔洞填充点优化后的三维点云坐标XYZ′,并将其保存为.txt格式。基于Imageware13.2,将调整后的孔洞处点云数据导入完成孔洞修补。并通过比较BP神经网络优化后坐标值与原始点云偏差和GA-BP优化后坐标值与原始点云偏差;如图8和图9所示,从中可以看出GA-BP优化后点云最大偏差为0.336 mm,BP优化后点云最大偏差为0.438 mm,比较分析可得,GA-BP神经网络优化效果较BP神经网络明显,修补效果好,精度高。

4 结语

本文充分发挥逆向软件Imageware优势,实现孔洞边界检测与孔洞填充,在点云数据缺失严重大面积缺失和跨面漏洞,基于软件修补效果差的情况下,利用算法修补,针对BP神经网络所具有的优势(泛化能力强,非线性映射能力和容错能力好)和缺点(容易陷入局部极小值,收敛速度慢等)等问题,提出了一种基于GA-BP神经网络混合算法,对BP神经网络的权值和阈值进行优化,经过预测仿真输出,相较于BP神经网络预测精度高,收敛速度快。通过实验证明了该方法的可行性和时效性,对孔洞修补具有更好的修补效果。

[1]赵鑫,吴侃,敖建锋,等.基于BP神经网络的点云去噪与空洞修补集成算法研究[C].2011全国矿山测量新技术学术会议论文集,2011:164-168.

[2]刘俊,何建英.基于神经网络的点云残缺数据修补方法[J].机械工程师,2007(2):32-34.

[3]张育锋, 陈庚, 朱杰. 基于改进BP神经网络的孔洞修复探讨[J]. 北京测绘,2014(2):21-24.

[4]Chen C Y, Cheng K Y, Liao H Y M. A sharpness dependent approach to 3D polygon mesh hole filling[DB/OL]. www.mendeley.com ,2005.

[5]朱春红, 达飞鹏. 基于B样条曲面的点云孔洞拟合填充[J]. 中国机械工程,2006(s2):270-274.

[6]王春香, 陈浩宏, 孔艳彬,等. RBF神经网络在斗齿散乱点云漏洞修补中的应用[J]. 机械科学与技术, 2014, 33(10):1479-1483.

[7]高印寒, 唐荣江, 梁杰,等. 汽车声品质的GA-BP神经网络预测与权重分析[J]. 光学精密工程, 2013, 21(2):462-468.

[8]黄建国, 罗航, 王厚军,等. 运用GA-BP神经网络研究时间序列的预测[J]. 电子科技大学学报, 2009, 38(5):687-692.

[9]高玉明, 张仁津. 基于遗传算法和BP神经网络的房价预测分析[J]. 计算机工程, 2014, 40(4):187-191.

猜你喜欢
孔洞权值遗传算法
一种融合时间权值和用户行为序列的电影推荐模型
一种面向孔洞修复的三角网格复杂孔洞分割方法
孔洞加工工艺的概述及鉴定要点简析
基于遗传算法的智能交通灯控制研究
强规划的最小期望权值求解算法∗
程序属性的检测与程序属性的分类
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于权值动量的RBM加速学习算法研究
强动载作用下孔洞汇合对延性金属层裂损伤演化过程的影响*
基于改进的遗传算法的模糊聚类算法