[发明专利]面向GPU和神经网络的网格质量检测方法有效

专利信息
申请号: 202010803829.0 申请日: 2020-08-11
公开(公告)号: CN111783964B 公开(公告)日: 2022-09-06
发明(设计)人: 刘杰;陈新海;龚春叶;迟利华;刘金宝;杨博;甘新标;李胜国;陈旭光;肖调杰 申请(专利权)人: 中国人民解放军国防科技大学
主分类号: G06N3/04 分类号: G06N3/04;G06N3/08;G06T1/20
代理公司: 湖南企企卫知识产权代理有限公司 43257 代理人: 任合明
地址: 410073 湖*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 面向 gpu 神经网络 网格 质量 检测 方法
【权利要求书】:

1.一种面向GPU和神经网络的网格质量检测方法,其特征在于包括以下步骤:

第一步、搭建基于神经网络的网格质量检测系统,基于神经网络的网格质量检测系统由网格处理模块、4个特征提取模块、3个压缩模块、分类模块、结果分析模块组成;4个特征提取模块、3个压缩模块、分类模块部署在GPU上,网格处理模块、结果分析模块部署在CPU上;

CPU端的网格处理模块从文件读入网格,将网格转化为适用于神经网络训练的输入特征矩阵,将输入特征矩阵发送给GPU端的特征提取模块;

第一特征提取模块、第二特征提取模块、第三特征提取模块均是由2个卷积层组成的神经网络;第一特征提取模块与第一压缩模块相连,负责从输入特征矩阵中提取与计算结果精度相关的第一高维特征,将第一高维特征发送给第一压缩模块;

第一压缩模块、第二压缩模块、第三压缩模块均是由最大池化层构成的神经网络;第一压缩模块负责连接第一特征提取模块和第二特征提取模块;第一压缩模块从第一特征提取模块接收第一高维特征,对第一高维特征维度进行压缩,将压缩后的第一高维特征输出给第二特征提取模块;

第二特征提取模块与第一压缩模块、第二压缩模块相连,负责从压缩后的第一高维特征中提取与计算结果精度相关的第二高维特征,将第二高维特征发送给第二压缩模块;

第二压缩模块从第二特征提取模块接收第二高维特征,对第二高维特征的特征维度进行压缩,将压缩后的第二高维特征发送给第三特征提取模块;

第三特征提取模块与第二压缩模块、第三压缩模块相连,负责从压缩后的第二高维特征中提取与计算结果精度相关的第三高维特征,将第三高维特征发送给第三压缩模块;

第三压缩模块从第三特征提取模块接收第三高维特征,对第三高维特征维度进行压缩,将压缩后的第三高维特征发送给第四特征提取模块;

第四特征提取模块是由四个卷积层组成的神经网络;第四特征提取模块与第三压缩模块、分类模块相连,负责从压缩后的第三高维特征中提取与计算结果精度相关的第四高维特征,将第四高维特征发送给分类模块;

分类模块是由一个卷积层、一个全局池化层和一个Softmax层构成的神经网络;分类模块从第四特征提取模块接收第四高维特征,对第四高维特征进行分类,得到分类结果,将分类结果发送给结果分析模块;

结果分析模块接收分类模块输出的分类结果,对分类结果进行分析,输出计算网格的质量检测结果;

第二步,构建训练数据集,方法是:

2.1设置训练数据库的预期规模N,N为正整数;

2.2根据飞行器的外形参数,绘制飞行器的几何外形,并将绘制好的外形导入Gmsh网格生成软件;

2.3设置Gmsh网格生成软件中的网格参数,生成不同质量的计算网格;

2.4根据网格参数,用Gmsh网格软件生成计算网格,并将该套计算网格放到训练数据集中作为训练数据集中的一个网格样本;

2.5若训练数据集中的网格样本数少于N,转2.2;若生成的网格数量等于N,转2.6;

2.6对训练数据集中的N个网格样本进行标注,具体步骤如下:

2.6.1初始化i=1;

2.6.2将训练数据集中的第i套网格导入Fluent求解器中进行数值计算,设置Fluent迭代次数Ep,Ep为正整数,记录计算结果,方法是:

2.6.2.1初始化j=1,初始化第i组计算结果数组Ri为空;

2.6.2.2 Fluent求解器进行数值计算,令第i套网格的第j轮计算结果为rij,并将rij放到计算结果数组Ri中;

2.6.2.3 j=j+1,若jEp,转2.6.2.2,否则转2.6.3;

2.6.3分析Ri,根据Ri对计算网格进行标注,方法是:

2.6.3.1若Ri数组收敛即计算结果随着j的变大逐渐趋近某一固定值且最后两轮的计算结果即ri,Ep-1和ri,Ep之差小于等于10-6,则将第i套网格标注为“高质量网格”,转2.6.4,否则转2.6.3.2;

2.6.3.2若Ri收敛但ri,Ep-1和ri,Ep之差大于10-6,则将第i套网格标注为“网格光滑性差”,转2.6.4,否则转2.6.3.3;

2.6.3.3若Ri不收敛,则将第i套网格标注为“网格分布不合理”,转2.6.4;

2.6.4令i=i+1,若iN,转2.6.2,否则转第三步;

第三步,采用训练数据集对基于神经网络的网格质量检测系统进行训练,方法是:

3.1部署在CPU端的网格处理模块对训练数据集中的网格进行量化和预处理,方法是:

3.1.1初始化变量i=1;

3.1.2采用输入特征矩阵构建方法为训练数据集构建输入特征矩阵,方法是:

3.1.2.1采用x方向边长提取方法提取第i套网格样本内所有网格单元x方向边长,得到x方向边长特征数组Feature_x:

3.1.2.1.1初始化变量m为0,初始化网格单元x方向特征数组Feature_x为空,Feature_x中有M个元素,M为组成计算网格中的网格单元个数;

3.1.2.1.2提取网格单元的x方向边长,将第m个网格单元的x方向边长的值写入x方向边长特征数组Feature_x,记为Feature_x[m];

3.1.2.1.3 m=m+1,若mM,转3.1.2.1.2,否则转3.1.2.2;

3.1.2.2采用y方向边长提取方法提取第i套网格样本内所有网格单元y方向边长,得到y方向边长特征数组Feature_y:

3.1.2.2.1初始化变量m为0,初始化网格单元y方向特征数组Feature_y为空,Feature_y数组中也有M个元素;

3.1.2.2.2提取网格单元的y方向边长,将第m个网格单元的y方向边长的值写入Feature_y数组,记为Feature_y[m];

3.1.2.2.3 m=m+1,若mM,转3.1.2.2.2,否则转3.1.2.3;

3.1.2.3采用最大内角角度提取方法提取第i套网格样本内所有网格单元最大内角角度,得到最大内角角度特征数组Feature_angle:

3.1.2.3.1初始化变量m为0,初始化网格单元最大内角角度特征数组Feature_angle为空,Feature_angle数组中有M个元素;

3.1.2.3.2提取网格单元的最大内角角度,将第m个网格单元的最大内角角度的值写入为Feature_angle数组,记为Feature_angle[m];

3.1.2.3.3 m=m+1,若mM,转3.1.2.3.2,否则转3.1.3;

3.1.3对数组Feature_x,Feature_y和Feature_angle进行数据预处理,得到预处理后的数组Feature_X,Feature_Y和Feature_Angle,方法是:

3.1.3.1计算数组Feature_x中M个元素的均值和方差σx,计算数组Feature_y中M个元素的均值和方差σy,计算数组Feature_angle中M个元素的均值和方差σangle

3.1.3.2对Feature_x进行预处理,方法是:将Feature_x中的M个元素均按以下公式进行变换:其中,Feature_X[m]为预处理后的Feature_X数组中的第m个元素;

3.1.3.3对Feature_y进行预处理,方法是:将Feature_y中的M个元素均按以下公式进行变换:其中,Feature_Y[m]为预处理后的Feature_Y数组中的第m个元素;

3.1.3.4对Feature_Angle进行预处理,方法是:将Feature_Angle中的M个元素均按以下公式进行变换:其中,Feature_Angle[m]为预处理后的Feature_Angle数组中的第m个元素;

3.1.3.5构建输入特征矩阵,初始化第i套网格样本的输入特征矩阵为Ai,Ai为维度为3×n的矩阵,将数组Feature_X的值赋给矩阵Ai的第一行,将数组Feature_Y的值赋给矩阵Ai的第二行,将数组Feature_Angle的值赋给矩阵Ai的第三行,矩阵Ai就是用于神经网络训练的第i套网格样本的输入特征矩阵;

3.1.3.6令i=i+1,若i≤N,转3.1.2,否则转3.2;

3.2将N个输入特征矩阵即A1,…,Ai,…,AN从CPU端传输至GPU端;

3.3在GPU端用N个输入特征矩阵训练4个特征提取模块、3个压缩模块、分类模块;

第四步,采用训练后的基于神经网络的网格质量检测系统对待检测的网格进行质量检测,方法是:

4.1在CPU端采用网格处理模块构建待检测网格的输入特征矩阵Ain,方法是:

4.1.1采用3.1.2.1所述的x方向边长提取方法提取待检测网格中所有网格单元的x方向边长,得到待检测网格x方向边长特征数组Feature_x’;

4.1.2采用3.1.2.2所述的y方向边长提取方法提取待检测网格中所有网格单元的y方向边长,得到待检测网格y方向边长特征数组Feature_y’;

4.1.3采用3.1.2.3所述的最大内角角度提取方法提取待检测网格中所有网格单元的最大内角角度,待检测网格最大内角角度特征数组Feature_angle’;

4.2采用3.1.3所述预处理方法对Feature_x’、Feature_y’、Feature_angle’进行预处理,得到预处理后的数组Feature_X’,Feature_Y’和Feature_Angle’,并利用到Feature_X’,Feature_Y’和Feature_Angle’构建输入特征矩阵Ain

4.3将输入特征矩阵Ain传输至GPU端的第一特征提取模块;

4.4训练后的基于神经网络的网格质量检测系统对Ain进行质量检测,方法是:

4.4.1第一特征提取模块从Ain中提取与计算结果精度相关的第一高维特征,将第一高维特征输出给第一压缩模块;

4.4.2第一压缩模块使用最大池化层对第一高维特征进行压缩,将压缩后的第一高维特征输出给第二特征提取模块;

4.4.3第二特征提取模块从压缩后的第一高维特征中提取第二高维特征,将第二高维特征输出给第二压缩模块;

4.4.4第二压缩模块使用最大池化层对第二高维特征进行压缩,将压缩后的第二高维特征输出给第三特征提取模块;

4.4.5第三特征提取模块从压缩后的第二高维特征中提取第三高维特征,将第三高维特征输出给第三压缩模块;

4.4.6第三压缩模块使用最大池化层对输入的第三高维特征进行压缩,将压缩后的第三高维特征输出给第四特征提取模块;

4.4.7第四特征提取模块从压缩后的第三高维特征中提取第四高维特征,将第四高维特征输出给分类模块;

4.4.8分类模块采用卷积层、全局池化层和Softmax层对第四高维特征进行分类,分类模块中的卷积层和全局池化层先将第四高维特征压缩为通道数为3的分类特征,然后由Softmax层对分类特征进行分类,得到分类结果;

4.5分类模块将分类结果传输到CPU端的结果分析模块;

4.6部署在CPU端的结果分析模块对分类结果进行分析:若得到的分类结果为“高质量网格”,转第七步;若分类结果为“网格光滑性差”,转第五步;若分类结果为“网格分布不合理”,转第六步;

第五步、输出“被检测的网格存在不光滑,网格单元过渡不均匀的问题,需要在计算前用网格光顺或局部变换优化算法进一步优化网格质量”,转第八步;

第六步,输出“需要用网格点拓扑重构,网格细化等方法对网格附面层区域进行网格加密,以确保后续计算结果的准确性”,转第八步;

第七步,输出“被检测的网格能够满足计算的最低要求,可以无需后续优化直接用于计算”,转第八步;

第八步,结束。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010803829.0/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top