一种基于单幅图像的工件制造特征自动识别方法及装置与流程

文档序号:16682556发布日期:2019-01-19 00:39阅读:194来源:国知局
一种基于单幅图像的工件制造特征自动识别方法及装置与流程
本发明属于基于图像的特征识别
技术领域
,尤其涉及一种基于单幅图像的工件制造特征自动识别方法及装置。
背景技术
:基于图像的工件制造特征识别是计算机视觉在工业上的典型应用之一,其目的是获取不同类别工件的形状指数和偏转角度等几何形状信息,以此对工件进行识别,是工业生产线智能化的发展趋势之一。近几年来,随着软硬件技术的快速发展,基于图像的制造特征识别技术已广泛的应用于反求设计、并行工程等机械加工领域。目前比较成熟的制造特征识别方法有基于图、线索的方法以及基于制造资源的方法和混合方法等,其中基于图和线索的方法统称为模式匹配法,基本思想是将零件表面的几何特性与预定义的特征模式进行比对,从中找出符合特征边界模式的区域。基于制造资源的识别方法是指利用映射构建信息模型,然后通过表面聚类为制造特征,但该类方法对复杂零件模型曲面特征的识别效果并不理想。基于规则和图的混合算法则要求模型表面区域的曲率变化处存在能将表面分割的实边,但一旦一个面包含多个凹凸区域,则该方法将无法对这些凹凸制造特征加以识别。上述特征识别方法均需要以零件的cad三维模型作为初始输入,然而在智能化工厂中,机器人在装配或二次加工等生产环节,是无法获取cad三维模型的特征信息和工程尺寸信息的,此时为了从制造的角度解释零件特征,就需要大量的人工辅助和二次输入,进而严重降低了企业全自动化生产加工的效率,增加了企业的生产加工成本。此外,对于中国大多数从事制造业的中小企业来说,他们的主要业务和利润来源仍然是来料加工、装配和二次加工以及贴牌生产等,那不可避免的要面对缺少零件的cad模型及核心设计信息的尴尬局面。因此传统的以cad模型为依据的工件形状特征识别方法对于此类企业的局限性就较大。因此,如何绕开基于cad设计模型进行制造特征识别的传统思路进行特征识别,解决来料加工、二次装配等生产加工过程中的制造特征自动识别问题,是本领域技术人员目前迫切解决的技术问题。技术实现要素:为克服上述现有技术的不足,本发明提供了一种基于单幅图像的工件制造特征自动识别方法。该方法以零件的单幅图像为初始输入,首先对图像的光源方向参数进行估计,据此实现工件表面的三维重建;然后对重建三维模型表面的形状指数进行分析计算特征分割线,利用特征线将曲面分割以获得相应的特征区域;最后基于特征识别规则实现对工件制造特征的有效识别。该方法不依赖于cad三维模型,仅需要在零件单幅二维图像的基础上,应用计算机辅助几何设计的相关技术便可实现对工件制造特征的自动识别,在机器人自动识别方面具有较高的实用价值。为实现上述目的,本发明采用如下技术方案:一种基于单幅图像的工件制造特征自动识别方法,包括以下步骤:获取一幅工件图像,确定所述图像对应的反射图方程;逆向求解反射图方程,得到表面梯度和高度,重建工件的三维曲面;获取所述三维曲面的形状特征,根据形状特征对所述曲面进行分割;结合凹凸特征识别规则,得到每个分割曲面的凹凸特征。进一步地,所述反射图方程的确定包括以下步骤:确定反射图函数,所述函数的自变量包括光源极角、光源方位角和表面梯度;根据图像上的像素值估计光源极角和光源方位角;以表面梯度为变量,对反射图函数进行线性化处理,确定目标实体成像的反射图方程。进一步地,所述逆向求解反射图方程,得到表面梯度和高度包括:通过后向有限差分法近似离散物体表面梯度;对应给定的图像上某一点利用反射图方程进行泰勒展开,利用松弛迭代法得到高度的迭代公式;采用所述迭代公式迭代求解整个所述图像的高度值。进一步地,所述获取所述三维曲面的形状特征,根据形状特征对所述曲面进行分割包括:根据曲率计算所述三维曲面各点的形状特征;根据所述形状特征获取分割不同类型曲面的特征线;基于所述特征线对所述曲面进行分割。进一步地,所述形状特征为形状指数,所述不同类型曲面是由三种不同形状指数共同确定的:kt=1+3(1+sgn(kh,e))+(1-sgn(kg,e))其中,l=puu·n,m=puv·n,n=pvv·n,f=pu·pv,pu和pv是参数曲面的一阶微商,puu、pvv以及puv是参数曲面的二阶微商,进一步地,所述获取分割不同类型曲面的特征线包括:计算与形状指数等价的标量域;将所述标量域与平面z=0交线的参数曲线映射回曲面,即特征线。进一步地,所述凹凸识别规则为:假设si与sj表示两个互相关联的局部表面,pi与pj分别代表si与sj的中心点,ni与nj分别代表pi与pj的实际法向量;并且要求:(1)pi与pj两者位于某一个坐标系当中;(2)ni与nj都为单位向量;(3)法向量方向是表面朝外;记dij=pi-pj,α=(ni,dij),γ=(nj,dij),假如符合以下条件:α-γ≥0,则si和sj具有局部凹关系,形成凹特征;假如符合条件:α-γ≤0,则si和sj具有局部凸关系,形成凸特征;对于三个以及三个以上局部表面构成的复合凹凸特征:具有c0、c1连续性的凹坑、谷以及平面型区域集合而成的形状,其中至少包含一个坑型区域,为复合凹特征;具有c0、c1连续性的峰、脊及平面型区域集合而成的形状,其中至少包含一个峰型区域,为复合凸特征;其中,c0连续性是指两个区域相连;c1连续性是指两个区域一阶微分连续,或者是相切连续的。进一步地,所述方法还包括:将凹凸特征相同的分割曲面按照连接关系合并。根据本发明的第二目的,本发明还提供了一种计算装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的基于单幅图像的工件制造特征自动识别方法。根据本发明的第三目的,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述的基于单幅图像的工件制造特征自动识别方法。本发明的有益效果1、本发明基于单幅二维图像进行特征识别,操作简便,且效率较高。该方法不依赖于cad三维设计模型,对于从事来料加工、二次加工以及贴牌生产类型的中小企业具有较高的实用价值。2、本发明采用了像素的八邻域点来局部估计光源的仰角和方位角,对传统光照模型进行了改进,以使其能应用于具有复杂光照环境下的三维重建。3、本发明不需要人工干预和昂贵的检测设备,仅需要在单幅图像的基础上,应用计算机辅助几何设计的相关技术便可实现对工件制造特征的自动识别,成本低。4、本发明引入多种形状指数,全面涵盖了曲面的凹凸类型,结合设定的凹凸特征识别规则,能够实现工件凹凸特征准确的界定。附图说明构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。图1为本发明完整流程的流程图;图2为系统坐标示意图;图3为方向选取示意图;图4为实际鼠标灰度图像的三维重建比较,其中,图4(a)为原始灰度图像,图4(b)传统sfs算法的三维重建效果,图4(c)改进sfs算法的三维重建效果;图5为曲面分割的两个示例;图6为凹凸特征识别实例,其中,图6(a)为原始二维图像,图6(b)为为凹凸特征识别效果图;图7为凹凸形状特征分类;图8为法兰盘的cad设计模型;图9为法兰盘的造型方法;图10为法兰盘的特征识别树;图11为本文算法对法兰盘零件的凹凸特征识别结果;图12模具凹凸特征识别,其中,图12(a)为原始灰度图像,图12(b)凹凸特征识别结果;图13为u型槽零件的凹凸特征识别,其中,图13(a)u型槽零件的原始二维图像(b)u型槽零件凹凸特征识别结果。具体实施方式应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属
技术领域
的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。实施例一本实施例公开了一种基于单幅图像的工件制造特征自动识别方法,如图1所示,具体包含以下步骤:步骤1:获取一幅工件图像,确定所述图像对应的反射图方程。步骤1.1:获取一幅工件图像,采用光照模型模拟场景的光环境;本文选用的三维重建方法是从阴影恢复形状(shapefromshading,sfs)的方法,其主要思想是以单幅图像的灰度值为依据来恢复物体表面各点的朝向和相对高度。在sfs问题中,基于朗伯表面的反射方程如下:其中,e(x,y)是像素点(x,y)处的灰度值,i(x,y)是入射光的强度,p是反射率,(p,q,-1)是由梯度表示的表面法向量,(ps,qs,-1)是光源的入射方向。传统的sfs方法为简化问题一般对成像条件、光学特征等做如下的假设:光源为无限远处的点光源,或者均匀照明的平行光;反射模型为朗伯体表面反射模型;成像几何关系为正交投影。但受生产现场高噪声,低光照和设备震动等因素的影响,这种苛刻的假设条件并不能对实际情况有一个很好的模拟,从而得不到精确的、具有普适性的三维重建结果,严重影响了后续制造特征识别的精度。因此为使该方法更接近于实际的工作和实验环境,本文将传统sfs方法中对光源问题的假设做了改进。在对sfs问题的研究中,通常把物体表面高度表示为z=f(x,y),式(1)可简写为更抽象的一般形式的亮度约束方程,即:e(x,y)=r(p,q)(2)其中,e(x,y)是像素点(x,y)处的灰度值,r是反射图函数,p和q是表面高度值z关于x,y的偏导数。ρ是反射率,(p,q,-1)是由梯度表示的表面法向量,(ps,qs,-1)是光源的入射方向。把公式(1)改写为如下形式:式(3)中,n为曲面法矢;为光源矢量方向;和θs分别为光源极角和方位角,如图2所示。在图像处理时,ρ和i一般设为常数。光源极角可由式(4)估计得到:其中:系数αi为:a0=0.5673a1=0.6230a2=0.1901a3=-0.6314a4=-0.5430a5=0.8982a6=0.3534a7=-0.5001光源方位角θs可由式(5)估计得到:这里ex,yo运算是表示把图像经过预处理后其上所有像素点计算出来的均值;n为选取的方向数,方向选取方法如图3所示,本算法中选择8邻域点为增量方向,δii为(δxi,δyi)方向上的灰度变化值。所以,在估计完光照参数和θs之后,我们便可以求取物体表面的梯度(p,q)和高度。与传统方法相比,改进后的方法不再是简单的把光源方向统一假设为(0,0,-1),而是首先假设在三维空间中物体表面法矢的分布是一致,然后利用图像上像素点的八邻域点来局部估计光源的仰角和方位角,最终采用统计学的有关方法得到关于光源方向的估计参数。此方法降低了传统方法中不合适地假设某些先验条件而限制了sfs应用的局限性,使此三维重建的方法能更灵活的适用于不同的环境。步骤1.2:利用表面梯度对反射图函数进行线性化处理,确定目标实体成像的反射图方程。将表面梯度(p,q)作为变量,利用此变量对反射图函数进行线性化处理,其假设条件为反射图中的低阶项起主要作用,因此直接将式(1)中关于p和q的非线性项略去,从而得到如下的线性sfs问题:其中:步骤2:逆向求解反射图方程,得到表面梯度或高度,重建工件的三维曲面。步骤2.1:通过后向有限差分法近似离散物体表面梯度(p,q),即,使m,n分别为离散图像的行数和列数。将上述差分代入式(6)中并进行适当变形可得到下式:其中:(8)中h≠0,亦即ps≠qs。对于公式(7),如果已知边界条件zi,0,z0,j,即可以求解出表面每一点的高度值。步骤2.2:对图像的反射图方程进行变形,对应给定的灰度图像上某一点利用反射图方程进行泰勒展开,最终利用松弛迭代法得到高度的迭代公式(9):其中ω为松弛因子,为zi,j的第n次迭代结果,并且有:为保证松弛迭代格式的收敛性,松弛因子ω的取值范围为:0<ω<2。对于迭代的初始值一般假设为步骤2.3:利用公式(9)就可迭代求解出整个二维灰度图像的高度值,实现对零件的三维曲面重构。图4给出了实际鼠标灰度图像的三维重建效果图,通过图4(b)和(c)的对比可以看出本文的改进算法重构出的三维效果图在连续性和光滑性有很好的提高,表面轮廓清晰度较高,比较逼真的重现了鼠标的三维外貌。表1显示了改进的sfs算法与传统sfs算法在鼠标图像三维重建上的误差以及在算法所需的时间方面的对比。虽然改进的sfs算法在处理时间上稍慢,但却极大的减小了重构的误差,使得平均误差值减小。表1改进sfs算法与传统sfs算法对鼠标三维重建的性能比较步骤3:获取所述三维曲面的形状特征,根据形状特征对所述曲面进行分割;机械零件的特征具有功能专一性同时也具有某些共性,如果把这些共性部分设计为共享模型,会大大减少数据信息冗余,起到事半功倍的效果。而凸凹加工特征是机加工零件的基本加工特征,是低层次几何描述与面向特定领域的特征之间连接的一个桥梁,是开发共享模型的首选特征,因此本文主要针对几何形状特征中的凹凸特征进行识别。下面需要在重构的三维模型基础上对制造特征进行识别。空间曲面上的任意一点的曲率是描述三维模型形状的重要属性,它反映了点所在曲面的凹凸程度,具有旋转不变性和平移不变性。高斯曲率、平均曲率包含了曲面的形状信息,以这两个曲率为基础计算不同的凹凸区域,就可以作为三维物体识别的基本研究方法。当然如果考虑零件材料方向的影响,的确能够提高凹凸特征识别的细节和精度。但是仍然需要人工干预和检测设备,效率太低,而且对于机器人自动识别而言,不需要识别出如此细微的特征。因此本文根据曲率计算出曲面的形状指数,就可以很方便地识别曲面的凹凸形状结构。步骤3.1:根据曲率计算出曲面的形状指数;在三维空间中,一个离散参数曲面通常可表示为:p=p(u,v)=[u,v,f(u,v)]t,u=1,...,m;v=1,...,n。(11)本实施例的形状指数可以选择kg或kh:其中,l=puu·n,m=puv·n,n=pvv·n,f=pu·pv,pu和pv是参数曲面的一阶微商,puu、pvv以及puv是参数曲面的二阶微商。kg和kh为由曲面的两种基本形式定义的。为使该方法具有更高精确度和稳定性,还可以引入另一个形状指数kt,其计算公式为:kt=1+3(1+sgn(kh,e))+(1-sgn(kg,e))(13)其中:步骤3.2:需利用形状指数获取分割不同区域的特征线;根据形状指数kg和kh正负性质,一般存在8种类型的区域表示,如表2所示。表2由形状指数确定的8种表面类型曲面区域类型kgkhkt凹坑++7峰/顶面+-1山谷/谷面0+8山脊/脊面0-2鞍谷-+9鞍脊--3最小/迷向-06平面005曲面分割完成后可以根据每个区域上采样点形状指数的正负性质判断所属区域的类型。例如:分割后某区域上一点的kg值为正时,则该区域可能是凹坑或峰型区域。此时,还需要判断该点kh的正负,若kh的值为正则该区域为凹坑型;否则,为峰型。假设p(u,v)是一个c2连续的正则参数曲面,则在曲面上满足kg=0的点的轨迹线被称为抛物曲线,它将曲面分割为形状指数kg大于0和小于0的两部分区域。把式(13)代入式(12)得由于p=p(u,v)是正则曲面,则因此,根据式(15)可进一步简化式(14),要求形状指数kg=0,就相当于计算标量域:ψ=(puu·(pu×pv))(pvv·(pu×pv))-(puv·(pu×pv))2=0(16)与kg类似,通过化简形状指数kh,可得到与kh有相同零解集的标量域φ:φ=(puu·(pu×pv))|pv|2-2(puv·(pu×pv))pu·pv+(pvv·(pu×pv))|pu|2(17)现在把标量域ψ和φ与平面z=0交线的参数曲线映射回曲面p=p(u,v)上,可获得将原曲面分割为不同区域的特征曲线,分割示例如图5所示。步骤3.3:通过这些特征线对曲面进行分割。由这些不同区域及其相互间的拓扑关系得到与原模型相对应的惟一区域分割表示。步骤4:结合凹凸特征识别规则,界定每个分割曲面的凹凸特征。曲面凹凸特征识别基于以下定义:假设:si与sj表示两个互相关联的局部表面,pi与pj分别代表si与sj的中心点,ni与nj分别代表pi与pj的实际法向量。并且要求:(1)pi与pj两者位于某一个坐标系当中;(2)ni与nj都为单位向量;(3)法向量是表面朝外。定义1局部凹关系,si和sj两者可以分别结合pi与pj及其ni与nj展开相应的描述,记dij=pi-pj,α=(ni,dij),γ=(nj,dij),假如符合以下条件:α-γ≥0,则si和sj具有局部凹关系,形成凹特征,对应的形状指数kg≥0,kh>0。定义2局部凸关系,与局部凹关系具有相同的初始描述,假如符合条件:α-γ≤0,则si和sj具有局部凸关系,形成凸特征,对应的形状指数kg≥0,kh<0。以上定义的凹凸特征识别规则是基于两个表面的,但如果存在三个以及三个以上表面构成的复合凹凸特征,则需要采用如下识别规则:下列定义中的的c0连续性是指两个区域相连或位置是连续的,这种连续仅仅保证曲面间没有缝隙而是完全接触;c1连续性是指两个区域一阶微分连续,或者是相切连续的。定义3复合凹特征是一类具有c0、c1连续性的凹坑、谷以及平面型区域集合而成的形状,其中至少包含一个坑型区域,对应的形状指数kh>0。定义4复合凸特征是一类具有c0、c1连续性的峰、脊及平面型区域集合而成的形状,其中至少包含一个峰型区域,对应的形状指数kh<0。定义5过渡特征属于辅助形状特征,可划分为凸棱圆角、凹棱圆角和倒角3种情况,主要起到分隔的作用。它由以下2组曲率域组合而成:(1)包含峰、鞍或脊型曲率域的凸过渡组合;(2)包含凹坑、鞍或谷型曲率域的凹过渡组合。步骤5:将凹凸特征相同的分割曲面按照连接关系合并。相同类型的曲面经过聚合后会根据连接关系形成面积大小不一的区域,要得到模型的局部曲面特征,还需要将这些区域按照一定的规则连接合并而成。这里运用区域生长的方法从区域表示模型中识别制造特征。具体步骤如下:(1)以任意一个未被访问的曲面片为出发点,搜索其相邻曲面片,如果访问的曲面片与起始曲面片拥有相同的凹(凸)特征定义,则将其融合到起始区域中,把该曲面片设置为已访问。(2)如果所有的曲面片都已被访问,则搜索结束,否则转向第(1)步。直至再也没有符合条件的曲面片为止。实施例二本实施例的目的是提供一种计算装置。一种基于单幅图像的工件制造特征自动识别装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤,包括:获取一幅工件图像,确定所述图像对应的反射图方程;逆向求解反射图方程,得到表面梯度和高度,重建工件的三维曲面;获取所述三维曲面的形状特征,根据形状特征对所述曲面进行分割;结合凹凸特征识别规则,得到每个分割曲面的凹凸特征。实施例三本实施例的目的是提供一种计算机可读存储介质。一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时执行以下步骤:获取一幅工件图像,确定所述图像对应的反射图方程;逆向求解反射图方程,得到表面梯度和高度,重建工件的三维曲面;获取所述三维曲面的形状特征,根据形状特征对所述曲面进行分割;结合凹凸特征识别规则,得到每个分割曲面的凹凸特征。以上实施例二和三中涉及的各步骤与方法实施例一相对应,具体实施方式可参见实施例一的相关说明部分。术语“计算机可读存储介质”应该理解为包括一个或多个指令集的单个介质或多个介质;还应当被理解为包括任何介质,所述任何介质能够存储、编码或承载用于由处理器执行的指令集并使处理器执行本发明中的任一方法。验证结果:以一个机械零件的模型为例,如图6所示,图6(a)为原始二维图像,图6(b)为凹凸特征识别效果图。由此图可看出使用本文算法成功识别出此机械零件模型的凹凸区域,共计有3个凹面区域(字母a所示区域)和4个凸面区域(字母b所示区域),其中a1面中心点的形状指数kg=1.0845e-04,kh=0.0206,kt=8,根据表2此面即为山谷凹面,其余表面则为非特征区域。常用的凹凸形状特征具体分类如图7所示。在cad中设计一个法兰盘模型(如图8),利用传统特征识别方法和本文识别方法进行比较。在原cad模型中,使用到的造型方法包括拉伸、切除、镜像以及圆角等(如图9),这些信息都是面向几何建模的操作,不是零件的制造特征,因此在识别过程中需要人工二次输入零件的特征和尺寸参数信息,利用传统的制造特征识别方法,系统将这些设计特征映射成相应的槽、孔、台阶、倒角等加工制造特征(如图10),在人工辅助的条件下识别的精度较高。图11是利用本文算法对此法兰盘零件的识别结果,识别过程不需要人工干预,仅需要零件的单幅二维图像便可识别出此法兰盘的凹凸制造特征(其中四个圆孔处的形状指数kh均大于零为凹特征,中间处为一复合凸特征),效率较高,但识别的精度有待提高。为进一步验证本文所述方法的效果,分别对两个零件图像进行了凹凸特征的识别。其中图12是一个模具的原始灰度图像和凹凸特征识别结果,如图12(b)中所示白色轮廓线内是由凹坑、谷以及平面型区域集合而成的复合凹特征。图13给出了一个u型槽零件识别过程中的部分结果,表3给出了图13(b)中各标号采样点的主要形状特征值。结合表3和凹凸特征识别规则可识别出各采样点的局部凹凸特性,采样点1位置是凹特征;采样点2位置是复合凸特征,但接近于平面;采样点3位置是复合凸特征,采样点4位置是凹槽特征。由此可得基于三维重建特征识别结果与实物的凹凸结构是非常相吻合的,也充分证明了本文算法的有效性。表3图13(b)中各标号点的形状指数特征列表本发明的有益效果1、本发明基于单幅二维图像进行特征识别,操作简便,且效率较高。该方法不依赖于cad三维设计模型,对于从事来料加工、二次加工以及贴牌生产类型的中小企业具有较高的实用价值。2、本发明采用了像素的八邻域点来局部估计光源的仰角和方位角,对传统光照模型进行了改进,以使其能应用于具有复杂光照环境下的三维重建。3、本发明不需要人工干预和昂贵的检测设备,仅需要在单幅图像的基础上,应用计算机辅助几何设计的相关技术便可实现对工件制造特征的自动识别,成本低。4、本发明引入多种形状指数,全面涵盖了曲面的凹凸类型,结合设定的凹凸特征识别规则,能够实现工件凹凸特征准确的界定。本领域技术人员应该明白,上述本发明的各模块或各步骤可以用通用的计算机装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。本发明不限制于任何特定的硬件和软件的结合。以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1