1. 引言
机械零件的特征识别,国内外已开展大量的研究,而多数研究都是在对三维实体模型进行特征识别和提取。但工程图通常都是由点、线来表示,其包含的零件信息比三维实体所包含的信息少很多。特征识别任务可以被看作是一个分类问题,然而由于零件轴的2D工程图表示是多样的,图形形状和特征知识认知很难表示为知识规则。不同类型的特征存在强烈的依赖关系,条件随机场(Conditional random fields, CRFs)模型是用于建立依赖关系以进行更好多目标分类的最成功的方法之一。它是一种判别式概率模型,是随机场的一种,可以自动整合规则,常用于标注或分析序列资料,如自然语言文字或是生物序列。因此,本文应用CRFs模型来解决对工程图的特征识别问题。
从工程图中识别零件特征,国内外开展了相关的研究。Wen等 [1] 采用条件随机场模型识别轴的特征来进行三维建模,但其所识别的特征较简单,也没有给出模型训练和识别的细节。廖友军等 [2] ,根据每种特征的尺寸特点将其分类,将工程图的轮廓识别出来并将其放入链表结构,然后通过遍历链表将其特征一一识别。
本文针对轴类零件工程图,开展基于条件随机场模型的特征识别,是一项为以后更复杂的零件特征识别的尝试。特征识别任务可以被看作是一个分类问题,首先识别出零件图中的各个轮廓环,然后确定环与环之间的关系,再使用无向图形式来描述2D视图的环之间的关系。在无向图模型的基础上,通过引入这些环的属性特征和关系特征,将CRFs模型应用于元素的识别,通过主动输入确定的特征来训练CRFs模型,最后再将训练好的CRFs模型用于工程图的特征识别。
2. 特征分析
轴类零件的特征一般包括圆柱面、圆锥面、键槽(平键槽、花键槽)、孔(通孔、盲孔、螺钉孔等)、倒角、圆角、退刀槽等。
2.1. 轴特征在工程图中的形状表示
在轴的主视图中每个特征都会投影形成一个轮廓环,如图1所示。轮廓环5(由顶点a、b、c、d、a连接
而成)对应于该轴的一段圆柱面,它是关于中心线对称的一个矩形;环3代表一个孔,是一个圆形;环4代表一个退刀槽,也是关于中心线对称的矩形,但宽度尺寸相对圆柱面要小很多;环8是一个键槽,它关于中心线对称,并且有两个方向相反的半圆;环10代表一个圆锥面,是关于中心线对称的一个梯形;环11代表倒角,它是关于中心线对称的梯形,但尺寸相对圆锥面要小的多。
2.2. 特征轮廓环之间的关系
每个特征都不是独立存在的,每一个特征都与其它某些特征存在着联系。通过对轴零件工作图分析,特征轮廓环与环之间存在如下关系,定义如下:
1) 相邻关系
如果一个环La与另一个环Lb相交在其环边界上,则这两个环为相邻关系环。La是Lb的相邻环,同样Lb是La的相邻环,如图2(a)所示。
相邻关系可以表示两个特征的并操作(填料操作)。
(a) (b) (c) (d)
Figure 2. Relations between contour rings: (a) adjacent relation; (b) include relations; (c) (d) cut into relationship
图2. 轮廓环之间的关系:(a) 相邻关系;(b) 包含关系;(c) 切入关系;(d) 切入关系
2) 包含关系
如果一个环La包含另一个环Lb,并且不相交,则这两个环为包含关系环。根据其几何位置,La是Lb的外部环,同样Lb是La的内部环,如图2(b)所示。
包含关系,在轴零件中,较多地表示特征的减操作(除料操作),即被包含的环或内部环一般是除料特征,例如孔特征、键槽特征等。
3) 切入关系
如果一个环La包含另一个环Lb,并且相交在环边界上,则这两个环为切入关系环。根据其几何位置,La是Lb的外切环,同样Lb是La的内切环,如图2(c)、图2(d)所示。
切入关系,在轴零件中,较多地表示特征的减操作(除料操作),即内切环一般是除料特征,例如孔特征、键槽特征等。
3. 条件随机场(CRFs)模型
条件随机场是由Lafferty等人于2001年提出的一种典型的判别式模型,其模型思想的主要来源是最大熵模型 [3] 。条件随机场是一种无向图概率模型,在给定输入序列状态的条件下,计算输出序列节点状态的联合概率分布来预测输出序列节点状态的概率 [4] 。条件随机场理论可以用于序列标记、数据分割、组块分析等自然语言处理任务中 [5] 。
本文中将利用CRFs模型自动整合各种特征来预测环对应的类别,也可以利用环之间的关系进行预测任务,从而得到对所有环的全局优化结果。
3.1. 条件随机场定义
设
为一个无向图,其中顶点V是X和Y的集合,随机变量X表示被观察的输入节点集合,随机变量Y表示相应的输出节点集合,即想要预测出的特征的集合,E是节点间的边,表示节点之间的关系。当在条件X下,如果随机变量
的条件概率分布服从图的马尔可夫性,即
,这时称
是一个条件随机场,其中
表示
是无向图G的边,表示j与i在G中式相邻的。
3.2. 条件随机场概率模型的形式
理论上讲,图G的结构可以随意取,但在构造无向图模型时,CRFs则采用了最简单和最重要的一阶链式结构。如图3所示。这种简单结构可以被利用来在标记序列上定义一个联合概率分布
:
其中
是特定于实例的归一化函数,
是一个布尔型的特征函数,它包含两种类型:一种是状态特征函数,另一个是转换特征函数。参数
是特征函数
的权重,可以用标记的训练数据集来估计参数值
[6] 。从方程可以看到,CRFs模型同时计算所有标记的全局结果,而不是单个标记的局部结果,这是CRFs模式的优点之一。
4. 构造轴的训练模型
4.1. 构造无向图
为说明问题,以图4所示的简单轴零件模型为例,构造无向图。在图4(a)中,主视图一共有8个环,将识别出的各个环根据图2中特征与特征之间的关系建立一个无向图,如图4(b)所示。
在获得无向图之后,需要生成CRFs模型的图结构,由于要实现的目标是根据CRFs模型假设来预测
Figure 3. Structure of linear chain CRFs
图3. 线性链CRFs的结构
Figure 4. Construction of the CRFS model diagram structure: (a) the contour ring identification of the axis; (b) undirected graph; (c) CRFS model diagram
图4. CRFS模型图结构的构建:(a) 轴的轮廓环识别;(b) 无向图;(c) CRFS模型图
环的标记,所以隐藏标记也与观察序列具有相同的关系,如图4(c)显示了CRFs模型的相应图形结构。
是观测变量的集合,
是输出变量的集合,它表示要预测的隐藏标记。X和Y的基数是相同的,因为一个循环只有一个预测结果。
4.2. 特征集
跟据每一种特征在平面图中独特的图形表示以及环与环之间的关系,总结出每一个环的属性特征、以及环与环之间的关系特征,建立属性特征集与关系特征集,如表1所示。
表1中使用的几个术语解释如下:
1) 边界线/非边界线,位于视图边界的轮廓线被定义为边界线否则,这是一条非边界线。
2) 切割线,一条切割线显示了一个物体被切割的位置,以获得剖面图。
在表1中,n表示环的序号,e表示环与环之间的关系,总共有6个属性特征和3个关系特征。以图4为例,环
的属性特征集为
,环
的属性特征集为
。假设
的关系是
,
的关系是
。
的关系特征集是
,
的关系特征集是
。
Table 1. Attribute feature set and relational feature set
表1. 属性特征集与关系特征集
4.3. 特征函数
特征函数
包括两种类型:一种是状态特征函数
,它模拟了标记y和观测值x之间的关系;另一个是转换特征函数
,其模拟标记y和
之间的关系,标记关系还可以取决于观察值x。则
:
其中,参数
和
可以由从训练数据中估计,大的非负参数值意味着优先选择相应的特征事件,大的负值所对应的特征事件不太可能发生。
我们根据表1列出的特征定义离散特征函数。例如,属性特征DC(n)的相应状态特征函数为:
其中y是节点i的标记,x对应于观察到的变量。关系特征XL(e)的相应转换特征函数是:
其中y是节点i的标记,
是节点i通过边e连接的标记。
4.4. 参数估计和预测
要估计参数值以及预测最佳标记有两个子任务:第一,由于特征函数是手工定义的,需要知道参数
的值以便计算
;其次,需要为新实例x找到最好的预测。如果实例包含n个节点,并且有m个标记,则y的标记分配数量为
。从这些指数计算中找到最好的分配是没有效率的,需要采用一种有效的方法来预测最佳的标记分配。
因此,要训练CRFs模型,参数估计是用标记的训练数据集
来估计参数
,由最大熵模型可知参数估计的实质是对概率的对数最大似然函数求最值。在这里,使用条件对数似然:
目标是解决优化问题:
,为了避免过度拟合,增加一个正规化器来惩罚大的参数值。正规化的对数似然是:
正则化的对数似然关于参数 的导数是:
其中
是给定
的变量y和
的边际分布。
有几种推理算法来计算树型CRFs模型的边际分布,Sum-Product算法 [7] 是一个精确的推理算法,它采用消息传递技术迭代处理相邻变量。这是一个动态规划算法,它提供了一个有效的方法来计算边际分布,因此Sum-Product算法可以作为推理算法。同时,由于目标函数L(θ)是凹的,所以保证局部最大值是全局最大值,这个优化函数可以通过L-BFGS算法 [8] 迭代技术来解决。
在获得训练步骤中的所有参数值之后,要在测试步骤中预测新实例的标记。预测过程是为新实例x找到最可能的标记分配
:
为了找到获得概率
最大的最佳
,不可能列举所有的标记赋值,因为这个蛮力方法的时间复杂度是
,其中m是类别或标记类型的数量,n是实例x中的节点数量。Max-Product [7] 是找到最佳预测的一种有效方法,它是Sum-Product算法的一个变种,前一种算法将后一种算法中的和计算更改为最大乘积计算。Max-Product算法也是一种动态规划方法,它将预测复杂度从
降低到
,使用Max-Product算法来找到最好的标记分配
。利用训练的参数,可以正确地预测图4中8个环的标记,预测结果如表2所示。
5. 实现和识别测试
如前面所述,条件随机场模型已经在很多领域广泛应用,也推出CRFs的开源计算工具。本文的上述方法采用CRFs的MATLIB工具包进行函数训练和识别测试。
5.1. 样本标记和训练
为了训练条件随机场模型,收集了30张不同应用场合的轴零件工程图,有机床主轴零件、一般减速箱轴零件等。按下述步骤进行手工标记、构造出一组训练数据集和模型训练:
1) 对工程图纸进行分析,标记轴零件工程视图上轮廓环
每一张图纸作为一组数据集,由有经验的工程师对图纸进行标记,标记轮廓环,包括环类型、对应的特征形状(作为观察值)、轮廓环之间的关系等。
2) 构造数据训练集
将步骤1收集的标记数据,构造如表1所示的特征数据向量,形成一组数据训练集。目前还是采用
Table 2. The feature recognition results of the axis in Figure 4
表2. 图4中轴的特征识别结果
Table 3. The test results of partial instance recognition
表3. 部分实例识别测试结果
手工方式构造,用数据文件方式保存;今后将改进为可视化方式与计算机交互完成。
3) 通过收集的数据训练集训练每个特征的特征函数及其环与环之间的转移特征函数,训练出参数
。
5.2. 识别测试
对上述30张训练工程图样本,随机选取10张图作为测试数据集,即将手工标注的预测结果(特征识别结果)去除,再输入到上一步完成训练的函数中,进行识别测试。发现测试结果与训练时手工标注的结果基本一致,表3给出其中3个测试实例结果。测试说明该方法可以正确识别零件特征,并且识别结果与人的认知结果一致。
6. 结论
条件随机场模型有很好的多目标分类特性,在各种智能识别应用中有广泛的应用。本文采用条件随机场模型,从二维工程图中识别和构建轴零件特征模型,通过几何特征分析、样本标记和训练,训练后的识别模型具备一定的轴特征识别能力;目前还只是一个初步的工作,下一步将其扩展应用到其它更为复杂零件的特征识别中。
采用数据驱动和关系学习方法的主要优势是可以将形状和特征的经验认知标记在大量样本数据中,不需要定义和组织形式化的启发式规则,通过自动学习来获取分类关系的能力。