模型特征识别(共8篇)
模型特征识别 篇1
摘要:构件识别被认为是基于构件的软件开发过程中最重要的阶段之一。主要介绍如何根据构件特征和特征模型间的对应关系, 运用聚类算法从特征模型中识别出业务构件。首先, 给出特征模型的形式化定义, 然后给出基于特征的构件模型的形式化定义, 最后根据构件模型和特征模型的关系, 运用聚类算法从特征模型中识别出业务构件。
关键词:特征模型,业务构件,构件识别
基于构件的软件开发 (Component-BasedSoftwareDevelopment, CBSD) 被认为是解决企业信息系统重构的关键技术之一[1]。随着标准构件模型如CORBA, DCOM, EJB等的迅速发展和日益成熟, 基于构件的软件开发被广泛应用到企业信息系统的开发过程中。与传统的软件开发方法相比, 基于构件的软件开发主要侧重于获取可重用构件并且通过这些构件的组装满足应用系统的功能需求。在基于构件的软件开发中主要由两个阶段组成:业务构件的构造 (businesscomponentFabrication) 和应用系统的组装 (applicationsystem assembly) [2]。
业务构件的构造通常包含以下四步: (1) 领域分析和领域建模; (2) 业务构件识别; (3) 业务构件设计; (4) 业务构件实现。
领域分析和领域建模的主要目的是建立领域的业务模型。领域业务模型来自领域知识, 具有相对的稳定性, 但由于外部因素的影响, 领域知识也会逐渐变化和发展, 领域业务模型应该能够支持领域知识的这种演化, 所以现阶段的领域工程研究活动中, 大多采用特征来刻画业务模型的语义[3]。特征是从用户角度对系统的感知, 是从用户角度对系统的认识, 能够充分体现用户的需求, 且能体现系统具有的某种能力或特点。因此, 用特征模型来刻画领域业务模型是一种非常值得借鉴的方法。
业务构件识别阶段的主要任务是从企业的业务模型中识别出可重用的业务构件。
现主要研究如何根据构件和特征模型中特征间的关系, 运用聚类算法从特征模型中识别出业务构件。
1扩展特征模型的形式化定义
如上文介绍, 因为用特征模型来刻画领域业务模型是一种非常值得借鉴的方法, 因此本文也采用这种方法。但由于应用领域的业务过程的复杂性、多样性及流程性决定了每个领域的特征之间存在一定的偏序关系。现有的特征模型虽然对特征间常见的结构关系、配置依赖和运行依赖进行了总结和分析, 但无法对特征之间的偏序关系进行描述, 因此有必要对现有的特征模型进行扩展, 以描述这种偏序关系。
可以用一个五元组来描述本文扩展的特征模型:FM= (F, A, C, λA, λC) 。其中:
(1) F:特征模型中的特征集合。特征可定义为一个二元组F= (n, M) 。
■n为特征的名称。
■M={bop1, bop2, …, bopk}为特征所包含的业务操作集, 特征通过对外提供业务操作来完成相应的业务需求。M中的每个业务操作bopk (k=1, 2, …, m) 可以定义为bopk= (nk, tk, dk, Prebopk, Postbopk) 。其中:
●nk为业务操作的名称;
●tk为业务操作的类型, 业务操作通过具体的操作类型对底层的业务数据进行维护。tk∈{Insert, Update, Delete, Query};
●dk为业务操作所操作的业务表单;
●Prebopk为业务操作执行的前置条件;
●Postbopk为业务操作执行的后置条件;
●可以将业务操作执行的前置条件和后置条件, 称为事件。事件是驱动业务操作执行的动因。在业务过程中存在需求事件、通知事件和时间事件。需求事件由业务环境产生, 通常来自于人机接口, 并可被业务活动所接收;通知事件由业务活动产生, 它或者将事件的描述信息传递给环境, 或者进一步触发其他业务活动的执行;时间事件指在时间上触发的一个变更。特征间存在的偏序关系可以通过业务操作执行的前置条件和后置条件来反映。
(2) A:特征模型中的特征关联集合。主要存在两种关联关系:聚集和泛化。
(3) C:特征模型中的特征配置依赖约束集合, 包括必须 (mandatory) 、异或 (alternative) 、或 (or) 和可选 (optional) 四种, 配置依赖刻画了从领域工程到应用工程映射的时候, 特征被选取时应满足的约束条件。
(4) λA:表示集合F到集合A幂集的映射, 即:λA:F→P (A) , 其中P (A) 表示集合A的幂集, 并且满足
即对于任意一个特征, 可以和其它特征之间存在多种关联关系, 而对于任意一个特征关联, 至少牵涉到两个特征。
(5) λC:表示集合F到集合C幂集的映射, 即:λC:F※P (C) , 其中P (C) 表示集合C的幂集, 并且满足:
即对于任意一个特征, 可以存在多种约束表达, 而对于任意一个特征约束, 至少牵涉到两个特征。
由此可见, 现提出的扩展特征模型的概念实际上由两部分组成;一方面, 扩展特征模型通过对特征结构关系和配置依赖关系进行形式化定义和完善, 对特征模型进行了扩展, 构成了扩展特征模型的底层架构和基础;另一方面, 扩展特征模型通过对模型中的特征定义进行形式化描述, 引入了特征执行的操作、操作的业务表单、执行的前置条件及后置条件, 从而对特征模型进行了细化, 构成了特征模型的上层建筑。两者紧密结合, 实现了领域工程软件开发全生命周期阶段特征选取确定可复用框架之上的各类应用系统的快速定位和组装, 生成满足配置依赖关系和约束条件的应用系统。
2基于特征的构件模型
在领域分析和领域建模阶段, 用特征刻画了业务模型的语义, 为了在业务模型空间和构件空间建立明确的映射关系, 为能够从业务模型中识别出可重用业务构件, 继续用特征来刻画业务构件的语义。
定义1 (基于特征的构件模型) :一个业务构件定义了特定业务领域的一个特征子空间。基于特征的构件模型可以表示为C[cid, froot, F, D, C, PS, RS], 其中:
(1) cid为构件的唯一标识;
(2) froot为构件特征空间的根特征, 是构件所有其它特征的祖先特征;
(3) F为构件特征空间包含的除根特征外其它特征构成的集合;
(4) D为特征关联的集合;
(5) C为特征约束的集合。;
(6) PS为构件向外提供特征的集合;
(7) RS为构件从外界需求特征的集合;
(8) PS F, 且RS F。因为特征间存在偏序关系, 而构件的运行既需要从外界获取特征, 又需要向外界提供特征。所以, 通过特征间存在的偏序关系反映了构件间存在的偏序关系。
基于特征的构件模型还应满足以下约束条件:
(1) Fdescendant (froot) 。
(2) 对必有parent (f) RS。
(3) 构件模型中只有一个根特征, 如果在实际业务模型中, 存在多个根特征, 需要为这些根特征构造一个虚拟的父特征以使构件只有一个根特征。例如图1对领域特征分解中, 构件C2中包含了两个兄弟特征f2, f3都为根特征。为与定义一致, 构造一个虚拟特征vf作为f2, f3的虚拟父特征, 并将其作为C2的根特征。
3 基于相似度的构件识别算法
本节采用聚类的思想, 根据特征模型中各个特征间的依赖关系及约束关系, 从特征模型中识别出业务构件。该算法的基本思想是:找出当前特征模型中包含的最大关联集, 并将该集合中的所有特征映射为一个构件。
3.1 基于相似度的构件识别算法[4]
输入:领域特征模型FM, 样本点关联阈值Rmin
输出:构件集合C_set;
步骤:
Step 1:将特征模型中每个特征作为一个样本点, 并将这些样本点记为undefined。此时, 集合X中的每个样本点自成一类;
Step 2:确定任意两个样本点之间的关联值 (即相似程度) 的计算方法, 将样本点Xi与Xj之间的关联值记为Rij;
Step 3:计算n个样本点两两之间的关联值, 得样本点间的关联值矩阵D;
Step 4:选定一个合理的最小关联值Rmin, 将其作为将两个样本点放入一个聚集的判定依据;
Step 5:依据关联值矩阵D中每个单元的关联值Rij, 执行以下聚类过程:
■ (阈值) 如果Rij≥Rmin, 则将样本点Xi和样本点Xj放入一个聚集;
■ (传递性) 如果Xi和Xj属于一个聚集, 且Xj和Xk属于一个聚集, 那么将Xi, Xj, Xk放入一个聚集;
Step 6:最后, 将每个聚集中的所有样本点合在一起转换为一个业务构件内。
3.2 关联值计算公式的选择
通过分析基于相似度的构件识别算法, 知道该算法的关键在于样本点间的关联值的计算以及样本点间最小关联值Rmin的确定。
通过第二节介绍的扩展特征模型, 知道扩展特征模型中各个特征之间并不是独立存在的事物, 而是这些特征通过相互合作以完成领域系统或应用系统的功能需求, 因此, 除了要计算特征间的静态关联值以外, 还需要计算特征间应为约束关系存在的动态关联值。结合文献[2]究成果, 给出特征间关联值的计算公式如下。
① 特征间静态关联值
RSij=undefinedundefined
其中:
■ RSij表示特征 (样本点) fi和fj间的静态关联值, 且fi和fj为两个不相同的特征;
■ Uαi为二值变量:如果关联关系α包含了特征 (样本点) fi, 则Uαi设为1;如果关系α中不包含特征fi, 则Uαi设为0;
■ Uαj与Uαi的取值方法相同;
■ Wα为该关系α所占的权重, 根据关系α紧密程度设定:泛化关系Wα=5;聚集关联Wα=3;无关联, Wα=0。
② 特征间动态关联值
RDij=undefinedundefined
其中:
■ RDij表示特征 (样本点) fi和fj间的动态关联值, 且fi和fj为两个不相同的特征;
■ Vci为二值变量:如果约束关系c包含了特征 (样本点) fi, 则Vci设为1;如果约束关系c中不包含特征fj, 则Vci设为0;
■ Vcj与Vci的取值方法相同;
■ Wc为该约束关系c所占的权重, 根据关系c紧密程度设定:必须特征, Wc=1;可选特征, Wc=0;或约束, Wc=0;异或约束, Wc=-2。
③ 特征间关联值:
undefined
其中
■ Rij表示特征fi和fj间的关联值;RSij和RDij分别表示的是特征fi和fj间的静态关联值和动态关联值;
■ fi≠fj表示的是fi和fj为两个不相同的特征;
■ fi=fj表示的是fi和fj为两个相同的特征。
3.3 算法的时间复杂性分析
在进行算法时间复杂性分析之前, 设特征模型中特征的个数为n;特征模型中特征之间的关联关系个数为nα, 则nα≤n2;特征模型中特征之间的约束关系个数为nc, 则nc≤n2。
对该算法的时间复杂性分析如下:
① step 1的时间复杂性为O (1) ;
② step 2的时间复杂性为O (1) ;
③ step 3需要计算样本点间的静态关联值和动态关联值, 其复杂性分别为O (nα) 和O (nc) , 且step 3需要计算n2个样本点间的关联值, 所以其复杂性为undefined, 即undefined;
④ step 4的时间复杂性为O (1) ;
⑤ step 5的时间复杂性为O (n2) ;
综合起来, 整个算法的复杂性为undefined。
4 应用举例
设一个库存子系统的部分特征模型如图2所示。
下面开始构造特征间的关联矩阵。由于图2中包含的特征比较多, 本文仅列出以“入库”为根特征构造的特征关联矩阵, 如表1所示。
如果选择Rmin=6, 则以“入库”为根特征的特征子空间由表1可以得到以下3个构件。入库构件c1, 且F (c1) ={入库, 采购入库, 社会捐赠入库};记账构件c2, 且F (c2) ={记账};价格核算构件c3, 且F (c3) ={价格核算, 计划价格核算}。
如果根据Rmin识别出的构件不够理想, 可以根据实际情况, 重新为Rmin赋值, 以获取合适的构件。
5 结束语
运用聚类思想从领域的业务模型中识别出了可重用的业务构件。为了在领域的业务模型空间与构件空间之间建立明确的映射关系, 从而能够从业务模型中识别出构件。本文借鉴现阶段已被广泛接受的方法, 用特征来刻画业务模型和构件的语义, 通过特征建立二者之间明确的映射关系。
为了更好的刻画业务模型和构件的语义, 本文首先针对现有各种特征模型的不足, 提出了一个扩展的特征模型, 反映了特征间存在的偏序关系。然后, 又提出了一个基于特征的构件模型, 从而又实现了用特征刻画业务构件。最后, 用聚类的思想从领域的特征模型图中识别出业务构件, 并用实例说明了业务构件的识别过程。
参考文献
[1]Meng Fanchao, Zhan Dechen, Xu Xiaofei.Business component iden-tification of enterprise information system:a hierarchical clustering method.E-Business Engineering, 2005:473—480
[2]Jain H, Chalimeda N, Ivaturi N, et al.Business component identifi-cation—a formal approach.In:Proceedings of the5th IEEE Interna-tional Enterprise Distributed Object Computing Conference.Seattle:IEEE Computer Society Press, 2001:183—187
[3]胡燕, 崔华.基于特征领域模型的精确建模过程研究.理工大学学报, 2006;28 (5) :116—119
[4]徐玮, 尹宝林, 李昭原.企业信息系统业务构件设计研究.软件学报, 2003;14 (7) :1213—1220
模型特征识别 篇2
基于结构特征的空间目标识别算法
提出了基于结构特征的空间目标识别算法.卫星结构的对称性使得卫星的`一维距离像具有对称性,碎片结构的不对称性使得碎片的一维距离像不具有对称性,文中首先应用RELAX算法提取出目标的强散射中心的位置和幅度,然后根据模式匹配和对称性测度两种方法来检测强散射中心是否具有对称性,进而对卫星和碎片进行识别.经过计算机仿真实验,该算法取得了比较好的识别效果.
作 者:马君国 赵宏钟 李保国 MA Jun-guo ZHAO Hong-zhong LI Bao-guo 作者单位:国防科技大学ATR实验室,湖南,长沙,410073 刊 名:现代雷达 ISTIC PKU英文刊名:MODERN RADAR 年,卷(期): 27(7) 分类号:V474.2 关键词:模式匹配 对称性测度 空间目标识别
模型特征识别 篇3
随着企业信息化建设的普及及设计过程的三维化推广,企业中积累了大量的三维模型数据,如何充分利用这些三维模型数据成为企业关注的焦点。然而,由于三维模型数据量大、不同CAD系统产生的数据在异构平台下不兼容以及网络带宽的限制,故三维模型数据的交换和共享具有困难。为了实现产品全生命周期内三维模型数据的交换和共享,人们对三维模型的轻量化进行了大量的研究和探索,涌现了许多轻量化格式,如达索的3DXML格式、UGS的JT格式、Actify的3D格式、欧洲计算机制造商协会推出的通用3D(universal 3D,U3D)文件格式[1],以及由虚拟现实建模语言(virtual reality modeling language,VRML)发展而来的X3D格式等。其中,U3D格式作为一个开放的、可扩展的、与平台无关的轻量化格式而备受关注,目前,许多商品化三维CAD系统及软件(如Pro/E、Adobe等)都支持U3D格式。
加工特征识别是实现CAD/CAPP集成的有效途径和关键技术。然而,轻量化模型仅仅保留了与模型快速显示有关的低层次几何信息,如三角网格(triangle)、线(line)、点(point),缺乏传统三维模型所具有的面(face)、环(loop)、边(edge)、顶点(vertex)等高层次几何信息和拓扑信息,不便于加工特征的提取。因此,首先需要对轻量化模型进行重新表示,建立轻量化模型的边界表示(boundary representation,B-rep)模型,然后从B-rep模型中识别出零件的加工特征。在传统的基于三维模型的加工特征识别方法当中,基于图(graph-based)的方法[2,3,4,5]、基于痕迹(hintbased)的方法[2]以及体积分解(volumetric decomposition)法[4]是3种最常用的特征识别方法,基于图的方法使用最为普遍,其中最常用的是将实体的边界表示转换为零件的属性邻接图(attributed adjacency graph,AAG),采用启发式规则[2,3]、人工神经网络、遗传算法[5]等方式进行子图的分解与匹配。本文在研究轻量化模型的基础上,建立了面向特征的轻量化数据模型,并根据轻量化模型的特点,采用基于属性邻接图的方法对加工特征识别进行研究。
1 基于轻量化模型的加工特征识别过程
基于轻量化模型的加工特征识别过程如图1所示。首先从轻量化模型中提取出零件的边界信息,建立零件的B-rep模型;然后根据相邻表面间的邻接关系建立零件的属性邻接图;接着对属性邻接图进行分解,形成特征子图,并将特征子图与加工特征模板的属性邻接图进行匹配,从而识别出零件的加工特征;最后对加工特征进行必要的交互编辑,加入工艺设计所需要的尺寸公差、形位公差、表面粗糙度等工艺信息。
2 面向特征的轻量化数据模型的建立
轻量化模型删除了三维模型中的建模过程、工程约束、特征属性等非几何信息,仅保留了与模型快速显示有关的低层次几何信息,远不能满足CAPP系统对信息的需求。为了解决该问题,笔者在研究轻量化模型的基础上,根据U3D轻量化格式的可扩展性,建立了面向特征的轻量化数据模型,如图2所示,它包含零件层、特征层、B-rep层、轻量化数据层。
面向特征的轻量化数据模型的最底层———轻量化数据层即为U3D轻量化模型的数据结构,它包括三角网格、线、点3种几何实体以及位置(position)和法矢(normal)。其中,位置记录了轻量化数据层中三角网格的顶点、线的顶点以及点的坐标信息,是轻量化数据层的核心,三角网格的顶点、线的顶点以及点的坐标信息通过索引指向位置;法矢记录了三角网格的顶点、线的顶点以及点的法向量信息。为了简化算法,轻量化数据层中的每个对象都有唯一的索引,可以通过该索引实现对几何实体的快速查找与运算,例如,为了比较2个三角网格是否有相同的顶点,只要比较2个三角网格的顶点是否有相同的位置索引即可,而不需要对三角网格顶点的每个坐标值进行比较。
为了便于加工特征的提取,根据轻量化模型数据结构的特点,本文采用B-rep法对轻量化模型进行重新表示,如图2中的B-rep层,它包括面、环、边和顶点4种几何实体。边界表示分别记录了三维模型的几何信息和拓扑信息,几何信息作为轻量化模型的尺寸标注、尺寸测量、表面粗糙度标注的几何要素,拓扑信息描述了面、环、边和顶点之间的连接关系。同样,为了简化算法,我们参照轻量化模型的数据结构,为B-rep层的每个几何实体定义唯一的索引。
特征层定义了工艺过程设计所需要的加工特征信息,包括形状特征、精度特征和材料特征。其中,形状特征由组成该特征的几何信息(面、环、边、顶点)及其之间的约束关系组成;精度特征描述了尺寸和几何形状的允许变化范围,如形状精度、位置精度和表面粗糙度等;材料特征描述了材料的类型、性能及热处理等信息。
为了方便和简化边界表示模型的建立、加工特征的提取,针对轻量化模型的特点,对一些概念说明如下:
对于三角网格数据中的点,如果它是某一个三角网格的顶点,则称这个三角网格是这个点的邻接三角网格。对于三角网格数据中的边,如果它是某一个三角网格的一条边,则称这个三角网格是该边的邻接三角网格。若2个三角网格具有公共的顶点或边,则称这2个三角网格互为邻接三角网格。
三维模型中的边可以分为凸边、凹边和相切边,一条边唯一确定2个面的邻接关系,因此,可以将2个面之间的邻接关系分为凸邻接、凹邻接和相切邻接。
环可以分为内环和外环,要确定环的类型,首先确定组成环的边的方向(沿着边的某一方向,若面在边的左侧,则该方向为边相对于面的方向),若首尾连接的边的方向为逆时针,则该环为外环,否则为内环。
3 B-rep模型的建立
要建立轻量化模型的B-rep模型,需要从三角网格集合中提取出三维模型的边界信息,即面、环、边和顶点,建立三角网格和这些几何实体之间的映射关系。提取规则描述如下:
(1)面。1个三角网格仅属于1个面。若2个相互邻接的三角网格的法矢相同,则2个三角网格属于同一个平面;对于圆柱面、锥面和自由曲面,给定一个ξ>0(ξ为给定的夹角的最大值),若2个相互邻接的三角网格的法矢夹角小于ξ,则认为这2个三角网格属于同一个圆柱面、锥面或自由曲面。
(2)边。对于1个面内的所有三角网格集合,组成三角网格的边的邻接三角网格至多有2个。若一条边的邻接三角网格仅有1个,则该边为边界边,否则为内边;所有的边界边识别完之后,对边界边进行合并,若2个相互邻接的边界边法矢相同,则2个边界边属于同一条直线,若2个相互邻接的边界边的法矢夹角小于ξ,则认为这2个边界边属于同一条弧线或自由曲线。
(3)环。一个面内首尾连接的边可以形成一个或多个环。
(4)顶点。对于直线,取直线的2个顶点为顶点(vertex);对于弧线和自由曲线,将组成弧线和自由曲线的边界边的顶点作为顶点。
ξ与轻量化模型的转化精度有关,精度越高,表面三角剖分越细,ξ就越小;反之,精度越低,ξ就越大。对于中等精度的轻量化模型,取ξ=0.1rad。在模型的转化过程当中,可以指定模型的细节层次(level of detail,LOD)来保证轻量化模型的精度,细节层次越高,表面三角剖分越多,精度越高。反之,细节层次越低,表面三角剖分越少,精度越低。
4 属性邻接图的建立与存储
属性邻接图通过节点和弧来描述面之间的拓扑关系,属性邻接图中的节点表示面,弧表示2个邻接表面的邻接边。弧有属性,若2个面为凸邻接,则属性为1,若为凹邻接,则属性为-1,若为相切邻接,则属性为0。文献[6]给出一个判别面之间的凸邻接、凹邻接和相切邻接的方法。
设ni、nj分别为面fi、fj的法向量,fi和fj通过边lk邻接,判断面fi和面fj之间邻接关系的过程如下:
(1)确定边lk相对于面fi的方向。沿着边lk的某一方向,若面fi在边lk的左侧,则该方向为边lk相对于面fi的方向,并记该方向向量为lk(n)。
(2)计算两个面法向量ni和nj的矢量积,并记v=ni×nj。需要注意的是,若方向向量lk(n)是相对于面fi的,则计算矢量积的第一个操作数必须是ni,否则为nj。
(3)若方向向量lk(n)与向量v的方向相同,则面fi与面fj为凸邻接,若方向相反,则为凹邻接,若两个向量的矢量积v为0,则两个面为相切邻接。
根据上面的判别方法,可以确定图3中各个面之间的邻接关系,例如,面f1和f2为凸邻接,面f2和f3为凹邻接,面f2和f4为相切邻接。
在无向图的邻接表存储方法中,每条边用2个节点表示,在检测某条边是否被访问过或删除某条边时,需要找到表示同一条边的2个节点,这给图的操作带来不便。因此,为了便于后面对属性邻接图进行分解,本文采用邻接多重表对属性邻接图进行存储。
5 属性邻接图的分解与匹配
属性邻接图建立之后,便可以与预定义的加工特征属性邻接图进行子图匹配,然而,检索子图的过程是非线性难题,计算量很大,属性邻接图的分解方式对于特征识别的效率有着重要的影响。文献[2?3]采用启发式算法,通过删除属性邻接图中的凸边来对属性邻接图进行分解,这种分解方式能够处理相交特征,但只能分离出凹陷类特征(如孔特征、槽特征),对凸出类特征(如凸台)不能够进行有效的分离。为此,本文根据轻量化模型的特点,通过对属性邻接图进行二次分解,实现了对凸出类特征和凹陷类特征的识别,并能够处理相交特征,具体的分解与匹配过程如下:(1)建立零件的属性邻接图;(2)查找属性邻接图中的内环,并将组成内环的边从属性邻接图中删除;(3)将属性邻接图中的各连通分量与加工特征模板的属性邻接图进行子图匹配,并将匹配成功的连通分量从属性邻接图中删除;(4)删除属性邻接图中的凸边;(5)将属性邻接图中的各连通分量进行子图匹配,并将匹配成功的连通分量删除;(6)对属性邻接图中剩下的单个节点进行分析,找出平面、倒角、倒圆等由单个面组成的特征。
图4a所示为一简单的零件模型,为了表示方便,忽略掉了模型中的过渡圆角,该零件面之间的邻接关系只有凸邻接和凹邻接,将属性邻接图中属性为1的弧用实线表示,将属性为-1的弧用虚线表示,表示之后的属性邻接图如图4b所示。该零件中有3个内环li1、li2和li3,通过删除组成内环的边对属性邻接图进行分解,如图4c所示,分解之后的属性邻接图包含3个连通分量G1、G2和G3,将每个连通分量与预定义的加工特征模板属性邻接图(图4d为一方形孔特征模板及其属性邻接图)进行子图匹配,可以将凸台特征和方形孔特征识别出来,并将G2和G3从属性邻接图中删除。然后,删除属性邻接图中的凸边对属性邻接图进行二次分解,如图4e所示,并进行子图匹配,从而识别出矩形槽特征和角槽特征。最后,对属性邻接图中剩下的单个节点进行分析,找出由单个面组成的特征,如倒圆、倒角特征。
此外,这种分解方式能够确定部分特征之间的依赖关系,例如,内环li3位于平面f1上面,那么,凸台特征是平面特征的子特征。在加工特征提取过程中,难免会出现错误,若加工特征模板库当中不存在该特征,则可以进行交互式特征提取或定义新的加工特征模板。
6 应用实例
基于上述方法,结合对U3D标准的研究,笔者利用Visual Studio 2005开发了一个3D-CAPP原型系统。在酷睿双核2.33GHz,内存为2.0GB的PC机上运行,利用多个中等复杂的零件对上述提出的加工特征提取方法进行了验证。图5a所示为一轻量化模型的三角网格模型,该零件由235个三角网格组成,提取零件的边界信息所花费的时间为0.054s,从建立属性邻接图到识别出所有特征需要0.249s。图5b所示为轻量化模型的线框模型,着色之后如图5c所示,图5d所示为轻量化模型的加工特征信息。
7 结束语
本文提出了基于轻量化模型的加工特征识别方法,通过轻量化模型实现了三维模型在CAPP系统中的应用。首先根据轻量化格式的可扩展性,建立了面向特征的轻量化数据模型,满足了CAPP系统对信息的需求;然后建立了轻量化模型的B-rep模型,并通过基于属性邻接图的方法对加工特征识别进行了研究,该方法能够处理2.5D加工特征,并根据轻量化模型的特点,通过对属性邻接图进行二次分解,同时实现了对凸出类特征和凹陷类特征的识别;最后通过一个实例验证了加工特征提取方法的可行性和有效性。
参考文献
[1]Ecma International.Standard ECMA-3634th Ed[EB/OL].(2007-06-10)[2010-05-29].http://www.ecma-international.org/publication/files/ECMA-ST/ECMA-363%204th%20Edition.pdf.
[2]Rahmani K,Arezoo B.A Hybrid Hint-based and Graph-based Framework for Recognition of Inter-acting Milling Features[J].Computers in Industry,2007,58(4):304-312.
[3]刘雪梅,张树生,崔卫卫,等.逆向工程中基于属性邻接图的加工特征识别[J].计算机集成制造系统,2008,14(6):1162-1167.
[4]刘长毅.基于图的体积分解的加工特征识别方法[J].计算机集成制造系统,2006,12(7):1013-1017.
[5]刘金山,廖文和,刘长毅,等.基于双链遗传算法的复杂特征识别方法研究[J].机械科学与技术,2008,27(4):437-441.
模型特征识别 篇4
引言
把物理或者抽象对象的集合相应地分为由相似的对象构成多个具体类的实质过程定义为聚类。通过聚类所构成的簇属于一组数据对象的集合, 这种对象和处于同一个簇中的对象相类似, 和其它簇中的对象相区别。聚类分析可以称为群分析, 其作为研究具体分类问题的一类重要的统计分析方法。聚类分析的实际应用范围十分广泛, 一般可以应用在商业、生物、地理、保险行业、因特网与电子商务等各方面领域。比如在商业中, 聚类分析不但能够用于寻找不同的客户群, 而且通过购置模式刻画各种不同的客户群特点, 也能够用于研究消费者的具体行为;在生物技术领域, 聚类分析通常用于对动植物与基因进行相应地分类, 得到对种群特定结构的具体认识;在保险领域, 聚类分析可以通过一个高标准的平均消费来判断汽车保险单所有者的具体分组。
聚类算法的分类
聚类算法能够看作通过考虑包括在X中的全部可能划分成为集合的一小部分, 就能够得到可判断聚类的有效方案, 这个结果通常可以依赖于所使用的算法与准则。因而聚类算法是一个试图识别数据集合聚类的特殊性质的具体学习过程, 聚类算法一般有以下几种分类方式。
1.顺序算法。
这类算法可以相应产生出一个独立形式的聚类, 其是十分直接与迅速的算法, 大部分都至少把全部特征向量使用一次或者几次, 最终的结果一般是依赖于向量参与算法的对应顺序。
2.层次聚类算法。
这类算法被又可以分为以下几种类型。
(1) 合并算法。这类算法可以在每一步形成降低聚类数量m的聚类序列, 聚类所形成的结果一般都是来源于前一步骤两个聚类的有效合并。合并算法的特征代表通常是单一与完全形式的连接算法。
(2) 分裂算法。这类算法的执行原理和合并算法的原理是截然相反的, 在每一个具体步骤所产生增加聚类数量m的相关性聚类序列。在每一个步骤中聚类所得到的结果一般都是把前一步骤的一个聚类分裂成为两个所得到的。
3.代价函数最优的特征型聚类算法。
这类算法一般使用代价函数J来对可判断性进行量化, 通常形式的聚类数量m是相对固定的。这类算法使用微分学概念, 通过最优J产生出连续形式的聚类, 如果J的局部已经最优确定了, 相应算法才可以结束。这种具体类型的算法也可以称为迭代函数最优方法, 具体可以分为以下几种类型。
(1) 硬或脆聚类算法。通常情况下一个向量绝对属于特定形式的聚类。根据选择方式的最优化准则, 通过最优分类把各个向量分配到各个具体的聚类中。
(2) 概率聚类算法。其属于硬聚类算法的特殊情况, 使用贝叶斯的分类方法, 而且每一个向量x分配到P (Ci|x) 最大的聚类Ci当中, 通过相关的定义优化相应的任务从而完成概率估计。
(3) 模糊聚类算法。在这类算法过程中, 向量一般是属于大于特殊阈值的聚类。
(4) 可能聚类算法。在这种算法过程中, 测量向量x是否可能属于聚类Ci。
(5) 边界检测算法。区别于使用向量自身来确定具体的聚类, 这种算法迭代可以有效地调整聚类的相关边界。虽然这其中包含了代价函数的优化原理, 然而其和以上算法有着本质的差别。上述全部算法一般是使用聚类进行表达, 主要目的是使用最优方法来确定局部的空间, 相反边界检测算法应当是发现聚类间边界最优放置的具体方法。
基于特征模型的聚类算法
1.K均值算法
K均值算法可以使聚类域中全部样品相对于聚类中心距离的平方和为最小状态。其原理是首先取k个初始距离中心, 相应地计算出各个样品到这k个中心的相对距离, 查找最小距离将样品归入到最近形式的聚类中心;修改中心点的相应值作为本类全部样品的均值, 从而计算每个样品到k个中心的相对距离, 重新归类与修改新型的中心点。直至新的距离中心与上一次的中心点相等时才终止。这种算法的结果一般会受到聚类中心的数目与初始聚类中心的选择影响, 也会受到样品的几何性质与排列次序所限制。假如样品的几何性质表明其可以形成若干个距离较远的小块孤立区域, 则算法是可以收敛的。
K均值算法的执行步骤分为以下几部分:
⑴通过对话框读取需要进行分类的数目center Num与最大的迭代次数iter Num。
⑵随机选取center Num个样品作为相应的聚类中心。m_center (i) .feature=m_pattern (i) .feature, m_center (i) .index=i;m_pattern (i) .category=i;i= (1~center Num) , 剩余的样品中心号是-1, 样品到本类中心的距离是max。
⑶假定前三个样品各自属于一类, 应当分成三类A、B、C, 计算剩余样品到这三个类的距离, 把其归类为距离最近的类, 因此全部的样品已经归类完成。计算每一个类中心全部样品特征值相应的平均值作为这个聚类中心的具体特征值。
⑷对于每一个类之中的各个样品, 计算其相对于其它类中心的距离, 假如其到某一个类中心的距离小于其到自身类中心的距离, 应当对这个样品进行重新分类, 把其归类到距离中心的类, 循环重复全部的样品, 直到不再存在样品类号出现变化状况。
2.迭代自组织的数据分析算法
迭代自组织的数据分析算法又可以成为ISODATA算法。这种算法和K均值算法有着类似之处, 即为聚类中心是取决于样品均值的迭代运算过程。然而ISODATA引入了一部分试探性的具体步骤, 可以吸引中间结果所获得的经验, 在迭代过程中能够把一类进行一分为二的处理, 也能够把两类进行合并, 即为自组织。
迭代自组织的数据分析算法执行步骤如下:
⑴得到全部的样品特征。
⑵输入阈值T、方差equation、类中心数目center Num、最大迭代次数iter Num。
⑶任意选择precenter Num个样品作为聚类中心m_center (i) 。
⑷求取各个样品到全部聚类中心的距离, 把全部样品归入到最近形式的类中心m_center (i) 。
⑸纠正各聚类中心的数值。
⑹计算各个聚类域中各个样品到聚类中心间的平均距离。
⑺计算全部聚类域样品平均距离的总平均距离。
⑻判断分裂、合并与迭代等各个步骤:
如果迭代次数已经达到iter Num, 置equation=0, 跳跃到第 (11) 步, 运算过程终止。如果precenter Num>2*center Num, 或者进行了偶数次的迭代运算而且precenter Num>center Num/2, 则进入到第 (9) 步, 进行合并处理。否则, 转到第 (10) 步进行分裂处理。
⑼合并操作, 计算所有聚类中心的距离, 假设ti, tj (ti
⑽进行分裂操作, 求全部聚类中心的标准向量差…, precenter Num, Ni是ωi类中的样品数目。找到全部中心标准差中的最大值, 设定第ti类的第tj位标准差最大, 最大值是mequation。
⑾如果mequation>equation, 则precenter Num++, 新的中心特征值为m_center (ti) 的特征值, 只是在第tj位需要进行调整, m_center (ti) .feature (tj) =m_center (ti) .feature (tj) +a*mequation, m_center (precenter Num-1) .feature (ti) =m_center (ti) .feature (ti) -a*mequation;其中a= (0, 1) , 取a=0.5。
⑿假如是最后一次迭代运算则可以结束循环。否则循环继续跳转到第 (4) 步, 迭代次数加1。
结束语
模型特征识别 篇5
关键词:CAD模型,对称性识别,B-Rep模型,特征模型
现代化计算机集成制造研究领域中, 利用CAD模型全局对称性进行几何简化, 能大幅降低CAE分析的运算规模, 有助于已有设计组件的重用, 还能用于检测实体产品的设计意图[1]。
早期CAD造型系统构建的CAD模型以B-Rep模型为主, 故早期方法主要面向B-Rep模型。B-Rep模型以体、面、环、边、点为层次, 并利用拓扑元素的边界信息完整地描述实体CAD模型。B-Rep模型包含完整的拓扑信息与几何信息。利用几何信息, 可以精确判定拓扑元素的空间位置、方向以及几何形状。由于面在B-Rep模型中占有中心位置, 故现有面向B-Rep模型的对称性识别方法都以面为核心, 我们称之为基于面的对称性识别方法。
基于面的对称性识别方法, 都试图充分利用B-Rep模型的信息识别对称性, 主要用于识别B-Rep模型的局部对称性。Tate和Jared[2]的方法利用环的几何信息, 对B-Rep模型的面进行匹配, 然后从匹配的面对中提取B-Rep模型的局部对称信息。他们的方法识别范围十分有限, 因为仅利用环信息不足以完全确定B-Rep模型的对称性。Li K等[3]充分利用B-Rep模型的环信息, 计算B-Rep模型所有局部对称, 并将B-Rep模型的局部对称作为候选对称, 然后通过验证候选对称最终确定B-Rep模型的全局对称性。Li M等[1]为检测逆向工程中B-Rep模型的对称设计意图, 提出了一种近似对称性识别方法, 该方法先反求B-Rep模型的设计单元[4], 然后通过识别设计单元集的近似局部对称性, 最终确定B-Rep模型对称性。随后, 我们提出了一种带自由曲面B-Rep模型的局部对称性快速识别方法[4]。
目前参数化特征造型技术比较成熟, 并已被主流的商业化CAD软件广泛采用。充分利用特征模型中的特征信息, 能有效提高特征模型的对称性识别效率。因此, 我们提出了基于特征的CAD模型全局对称性识别方法[5]。该方法利用特征信息计算特征对称性的规则, 并提出特征布尔运算结果对称性的计算规则。利用这两种规则, 先计算特征的对称性, 然后通过合并与验证特征对称性, 最终确定CAD模型的全局对称性。
CAD模型对称性识别具有以下发展趋势:1) 装配模型CAD模型对称性识别;2) CAD模型偏对称性识别。
参考文献
[1]Li M., Langbein F., Martin R.Detecting design intent in approximate CAD models using symmetry[J].Computer-Aided Design, 2010, 42 (3) :183-201.
[2]Tate S.J., Jared G.Recognising symmetry in solid models[J].Computer-Aided Design, 2003, 35 (7) :673-692.
[3]Li K., Foucault G., Léon J.C.Symmetry plane detection for3D CAD volumes[C].In Proc of:ASME.International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, 2010:465-477.
[4]Jiang J., Chen Z., He K.Detecting approximate rotational symmetries of free-form surfaces in CAD models[C].Asian Conference on Design and Digital Engineering.2011, 166-172.
人脸识别特征提取算法研究 篇6
特征提取是人脸识别中一个非常重要的环节, 目的是为了降低人脸图像的维数。目前, 常用的基于统计的特征提取方法有主成分分析 (PCA) [1]和线性判别分析 (LDA) [2]等。独立元分析 (ICA) [3]是近年来发展起来的一种新的多维数字信号处理技术, 其基本思想是在最大程度保持信息量的前提下, 从高维数据空间中提取出低维数据的特征分量, 是一种基于人脸全局特征的识别方法。但ICA算法在获取独立分量的过程中需要获取人脸图像的先验知识, 这影响了识别的准确率。有效减少了后续工作的计算量, 取得了较高的识别率。
基于上述讨论, 本文将一个人脸图象矩阵视为一矢量, 通过引入模糊数学中的隶属度概念, 定义矢量隶属函数, 提出一种新的基于隶属度函数的独立成分分析特征抽取和识别方法。有效减少了后续工作的计算量, 取得了较高的识别率。本文称该方法为模糊ICA (Fuzzy ICA) 。
1、独立成分分析的基本理论
ICA最初是对盲信号的分离。利用独立成分分析 (ICA) 方法可以在不知道信号源和传输参数的情况下, 根据输入信号源的统计特性, 仅由观测信号恢复或提取源信号。独立成分分析已经成为盲信号处理中最主要的方法之一, 并在模式识别、数据压缩、图像分析等方面得到广泛的应用。
对于一组盲源信号S= (s1, s2, …sm) T, 有N路观测信号X= (x1, x2, …, xN) T, 每一路都是一维行向量的形式。存在系数 (混合) 矩阵A, 使得独立源信号S与观测信号X可以用线性关系来表示:
式中A∈RN×M, 称为混合矩阵。
存在分离矩阵W∈RM×N, 使其满足下式:
式中WA=I, I为单位阵, Y为统计独立的未知源信号S的最佳估计。
在独立成分分析中求解分离矩阵是关键。目前已提出很多求解分离矩阵的算法。本文采用FastICA方法来实现独立分量的提取【8】, 该方法是基于负熵的固定点算法, 是目前效率较高, 应用较广泛的一种ICA算法。该算法的具体描述为:
(1) 对数据进行中心化处理, 使其均值为零。
(2) 白化数据, 令白化后的数据为z。
(3) 初始化W (0) , 令其模为1, 置k=1;
(4) W (k) =E{zg (W (k-1) Tz) }-E{g′ (
W (k-1) Tz}W (k-1) ;
(5) W (k) =W (k) /||W (k) ||;
(6) 如果不收敛, 令k=k+1, 返回 (4) 继续, 否者输出W (k) 。
其中g (u) =uexp (-u2/2)
该算法最后得到的向量W, 其线性组合WTz给其中的一个独立分量。要计算n个独立分量就要重复上述算法n次, 但每提出一个分量后要从混合信号中减去这一分量。
2、基于Fuzzy ICA的特征提取和识别
2.1 算法设计的基本思想
自1965年Zadeh提出模糊概念以来, 模糊数学已被用于很多领域, 将其应用于模式识别, 形成了模糊模式识别。模糊模式识别方法是利用模糊数学中的概念、原理与方法解决分类识别问题。模糊模式识别将待识别类别、对象作为模糊集和其元素, 因此应根据实际问题需要进行特征提取或特征变换, 建立模糊集的隶属函数, 然后运用有关模糊数学的原理和方法进行分类识别。
2.2 特征提取和识别算法
ICA是PCA从二阶统计分析向高阶统计分析的拓展, 基于数据的高阶统计信息提取数据的独立特征, 能够更好的表示人脸的局部特征。具体算法为:
(1) 特征提取和变换
假设人脸图像训练集样本图像有n类人脸图像, α={α1, α2, …, αn}, 且第i类有Ni个人脸图像。
对人脸图像训练集样本图像α, 首先通过PCA算法对图像进行去二阶相关和降维处理, 然后通过ICA算法对图像进行处理, 获得由独立影像基构成的一个低维子空间:S={S1, S2, …, Sm} (m<n)
计算出此低维子空间的特征向量为:
假设Xj (j=1, 2, …, Ni) 为已知αi类人脸图像矩阵Aj (i) (j=1, 2, …, Ni) 的特征向量, Y为未知人脸图象矩阵C的特征向量, 计算Xj和Y在低维子空间中的投影向量, 即Zj=ST﹒Xj, φ=ST﹒Y。
(2) 建立矢量隶属函数。
模糊集合隶属函数的建立, 无论在理论上还是在应用上都是非常重要的。由于造成模糊不确定性的原因多种多样, 因而模糊集的种类是复杂的。实际应用中, 确定隶属函数的方法有不少, 如专家确定法、统计法、对比排序法等。
在本文中, 我们将模糊数学中建立隶属函数、隶属度的方法引入矢量空间中, 从而定义未知人脸图像矢量归属于αi类的模糊隶属度函数为:
其中, λj为任意实数, ‖﹒‖为向量范数, Zj和φ为 (1) 中得到的特征向量。
(3) 模糊结果处理及人脸分类识别。
使用模糊技术进行分类的结果不再是一个模式明确地属于某一类或不属于某一类, 而是以一定的隶属度属于各个类别。如果分类识别系统是多级的, 这样的结果有益于下一级的决策。如果这是最后一级决策, 而且要求一个明确的类别判决, 可以根据模式相对各类的隶属度或其他一些指标, 如贴近度等, 进行硬性分类。在本文中, 我们利用最大隶属度原则进行人脸分类识别, 即首先计算每个输入人脸图像 (测试样本) 对各类人脸图像的图像隶属度μai, 若, 则判别测试样本为αi类人脸图像。
3、试验结果及分析
试验中采用ORL标准人脸数据库验证该算法, 该数据库包括从1992年4月到1994年4月剑桥大学实验室拍摄的一系列人脸图像, 具体为40个人, 每个人有不同表情或不同视点的10幅图像, 共400幅图像所构成, 倾斜角度不超过20度, 这些人脸图像的分辨率为92×112, 人脸数据库中每个人的图像都是不同角度、不同时间且受一定光线和一些饰物 (如眼镜等) 影响。图1是ORL人脸数据库中部分图像:
本实验使用Matlab7.1在windows XP系统下, 为了更好地证明算法的有效性, 我们随机选取其中10个人, 每人前3幅 (共30幅) 图像作为训练样本, 其余的30幅图像作为测试样本的做法。如此重复10次试验, 最后结果取其平均值。分别采用传统的ICA方法、PCA方法和本文的Fuzzy ICA方法, 进行了人脸识别仿真实验
由图2可知, 识别率随着特征维数的增加而成上升的趋势, 本文的方法识别率高于传统PCA方法和ICA方法, 该方法识别率最高可达95.1%, 但当特征数接近100时, 识别率略有下降的趋势, 说明并不是所有的特征向量都是有效的投影空间, 有些刚好是与人脸本身无关的噪声因素干扰。
4、结束语
本文在研究采用ICA提取的具有局域特点的独立分量表示人脸基础上, 将基于模糊ICA的人脸图像特征提取和识别算法与传统的PCA和ICA人脸识别算法进行了比较, 对ORL标准人脸数据库的测试表明, 该算法的性能优越, 而且识别率较特征脸法更高。但是, 算法的计算量很大, 当样本数很多的时候, 训练时间是个问题。因此, 算法仍需进一步的改进和提高。
参考文献
[1]余晓梅, 徐丹。基于外观的子空间人脸识别方法研究[J], 计算机应用研究。2007, 24 (5) :10-12
[2]Belhumeur P N, Hespanha J P, Kriengman D J.FishedacesIRecognition using class specific linear projection[J].IEEETransaction on Pattern Analysis and MachineIntelligence.1997.19 (7) :771-720
[3]张贤达, 保铮。盲信号分离[J], 电子学报, 2001。29 (12) :1767-1771
[4]王展青, 刘小双等.基于PCA与ICA的人脸识别算法研究[J].华中师范大学学报, 2007, 41 (3) :373-376
[5]邢国。人脸识别中两种特征提取算法的性能比较[J].信息与电脑, 2011, 1 (6) :115-117
[6]龙际珍, 陈沅涛, 邓冬梅.基于模糊隶属度的人脸识别应用[J].计算机应用研究, 2011, 28 (7) :2789-2792
[7]Yuen PC, Lai JH.Face representation using independentcomponent analysis[J].Pattern Recognition, 2002, 35 (6) :1247-1257.
敏感图像信息识别模型研究 篇7
网络技术的普及与Internet用户持续、快速的增加,使网络信息安全成为影响到国家安全与社会稳定的一个重要问题。各种色情、暴力、反动以及涉及国家安全保密的信息(包括图像、视频),越来越多地借助于互连网这种通信方式进行传播。从目前的情况来看,仅仅采用封锁网址的方式进行扫黄是不够的,对网络信息特别是敏感图像信息进行必要的技术监测和过滤,才能够有效地打击网络犯罪。
网络敏感信息监控是依据文本模式匹配和图像处理技术来建立网络敏感信息宏观监控体系,综合运用文本、图像处理技术,以及智能代理技术实现网络敏感信息的监测。本文所述的网络敏感图像主要是指含有色情信息的图像,提出了一个敏感图像信息识别模型。该模型综合使用肤色模型匹配、纹理判别和SVM分类技术对敏感图片进行识别,能识别网络传输的图片,判断其中是否含有色情内容,以减少和杜绝色情图像在网络上传播的机会。
1敏感图像信息识别模型
敏感图像的识别是通过对图片的内容进行分析来实现的。图像识别与指纹识别有所不同,由于图片本身的背景条件比较复杂,人体的表现形式也具有多样性,很难与指纹模型一样用一个单一的模型把所有的特征表示出来。
敏感图像多种多样,其最明显的特征就是有裸露的肌肤。因而进行敏感图片识别就可以从皮肤区域的特点进行处理。我们先对图像进行皮肤颜色模型匹配,检测出一幅图像中的皮肤区域。接着对图像使用小波分解和灰度共生矩阵提取进行纹理判别,以区分大部分和皮肤相近的区域,然后对输出的二值图像进行处理判断。最后再用SVM进一步分类考察,最后确定图片是否含有色情信息。图片信息识别模型决策图如图1所示。
1.1肤色模型匹配
1996年Fleck[5]等就利用计算机视觉和图像理解技术对色情图片识别进行了研究,通过对图片肤色分割和人体姿态的几何特征检测来判别图片中是否含有色情信息。目前肤色模型已经广泛应用于人及其局部特征的识别。
RGB是最常用的颜色系统,也是十分可靠的表达肤色信息的色彩空间。人脸的肤色在RGB色彩空间上一般分布于R[1 51,255]、G[97,239]、B[84,233]的区间,但人的肤色在RGB空间中的分布非常广泛,直接在RGB空间中进行处理难以达到从图像中抽取人体肤色区域的目的。本文将肤色在HUV和KL颜色空间中作分割处理。
YUV表示法中Y分量表示颜色的亮度信息,U和V两个相互正交的分量表示彩色信息。色度信号是一个二维矢量,称为色度信号矢量。每个颜色对应1个色度信号矢量,它的饱和度由Ch表示,色调由相位角θ表示。
彩色图像的像素P由RGB空间变换到YUV空间用数学表示为:
θ=tan-1(|U|/|V|)
在YUV空间UV平面上,肤色的色调介于红与黄之间,根据对大量图像的彩色分析,可以确定人的肤色色调θ的变化范围,如果满足条件:θp∈[100,150],则P是肤色点。该肤色模型能够有效地提取肤色区域,但是该模型也会把一些与人的肤色比较接近的其它区域当作肤色区域。
KL变换是建立一个肤色坐标变换以进行肤色判断。彩色图像的像素P由RGB空间变换到KL空间的坐标表示为:
然后再根据下面的阈值进行判断:
110.2<K1<376.3
-61.3<K2<32.9
-18.8<K3<19.5
在该范围内的置1,否则置0,从而得到过滤肤色的二值图像。KL寻找了一个合适的色系坐标系,具有集中肤色信息的作用。KL变换和YUV空间相结合,可以弥补两种方法的不足,能更好地分割出图像中的肤色区域。变换到YUV空间能将亮度信息与色彩信息分离;KL变换能减小每个分量的均方差,从而压缩阈值范围;将两者相结合,可以进一步缩小单纯使用KL变换的阈值范围,使肤色分布范围更加集中,增加最后肤色分割的成功率。
仅用肤色模型匹配方法对图像识别的过程中,对含有色情信息的图像有较高的正检率(判定其为敏感图像),但是也覆盖了较多的具有特定颜色以及特殊光照的非色情图像。因为肤色和非肤色空间本身是相互覆盖的,肤色过滤阶段出来的区域有一部分并不是需要找的肤色区域,只是在颜色上与皮肤很接近,我们还需要对此进行纹理判别,因为非肤色区域从纹理上讲并没有肤色区域一般光滑。
1.2纹理判别
纹理通常定义为图像的某种局部性质,或者说是对局部区域中像素之间关系的一种度量,纹理特征可用来对图像中的空间信息进行一定程度的定量描述。皮肤的纹理作为一种特殊的纹理,没有明显的纹理基元,无明显的周期性和方向性。一种纹理特征提取的有效方法就是以灰度共生矩阵为基础的。
灰度共生矩阵是建立在估计二阶组合条件概率函数基础上的纹理分析方法,反映的是图像关于方向、相邻间隔以及变化幅度的综合信息,描述了某方向上间隔一定距离的一对图像点灰度出现的统计规律。分析灰度共生矩阵就可以分析图像的局部模式和排列规则,也可以从中提取出很多图像的纹理特征,比如二阶矩、相关、对比度、方差、逆方差和熵等信息。通过灰度值等相关信息作为判定规则可以判断某一区域是否为皮肤区域。
为了减少灰度共生矩阵生成的复杂度并提高图像信息的识别程度,在此之前先使用小波变换对图像进行预处理。小波变换具有多尺度特征表达能力,能将图像的大部分能量集中到最低分辨率子图像。同时,小波分析方法提取的图像的特征矢量具有维数少的优点。
小波变换是一个常用的图像分析手段,并且在纹理识别中有较多的应用[6]。与傅里叶变换相似,小波变换是一种同时具有时—频二维分辨率的变换,其优于傅氏变换之处在于它具有时域和频域“变焦距”特性,十分有利于信号的精细分析。小波变换的另外一个重要优点就是小波分解和重构算法是循环使用的,易于硬件实现。
一个二维小波变换可以看作两个连续的一维小波变换。小波变换的结果取决于所采用的小波基的类型,而小波基是由滤波器的类型决定的。本文采用Daubechies-4小波。对一幅图像进行小波分解,得到一系列的小波系数,把分解出来的子图像称为小波分解通道。当图像在某一频率和方向下具有较明显的纹理特征时,与之对应的小波通道的输出就具有高能量。
经过肤色模型匹配以及纹理判别这两步操作以后,输出的是一幅二值图像,这时可对该二值图像进行处理和判别,也就是说对连续区域位置和皮肤区域所占比例的设置和判别,以判断该图像是否该划分为敏感图像。
1.3SVM分类判别
SVM在解决小样本、非线性及高维模式识别问题中表现出很多特有的优点。模型最后用SVM来进一步对色情和非色情图片进行分类考察,最后确定图片是否含有敏感信息。
SVM是一种以统计学习理论为基础的机器学习方法,它通过核函数将输入的样本映射到高维特征空间,然后构造“有敏感信息”和“没有敏感信息”的最优分类超平面,从而达到最大的泛化能力。作者以灰度共生矩阵参数和一些像素信息作为SVM的输入进行训练和测试,以达到分类的目的。
2模型分析
本文提出的敏感图像信息识别模型实现了对网络敏感信息的监控,模型对含有色情信息的图片的取真率比较高。模型具有学习功能,在经过一些小样本的尝试学习后,能达到一定正检率。本文在该模型基础上建立了一个含有5000副图像的小样本图库,其中包括640幅色情图像和4360幅正常图像(风景、建筑、人物和动植物图像)。实验结果正检率(敏感图像正确识别的概率)、误检率(正常图像被判定为敏感图像的概率)如表1所示。
3结束语
网络敏感图像识别技术是一项具有应用价值和研究价值的技术,本文提出了一个基于肤色匹配和纹理识别的图像信息识别模型。针对网络上敏感信息泛滥的情况,该模型可在网络敏感信息监控系统基础上自动对敏感图像信息进行检测和监控,适合在网络环境下使用。进一步要做的工作是提高识别和分类精度,以及提高对大量图像的识别应用中的效率,可考虑采用多个SVM分类组合方法。
参考文献
[1]段立娟,包振山,毛国君.多特征特定类型图像过滤方法.北京工业大学学报,2005,31(4):352-356.
[2]Daubechies I.Ten lecture on Wavelets.Philadelphies:Capital city Press,1992.
[3]尹显东,唐丹,邓君,等.基于内容的特定图像过滤方法.计算机测量与控制,2004,12(3):283-286.
[4]何江平,文俊浩,邓恬洁,等.基于支持向量机的图像识别.重庆大学学报:自然科学版,2006,29(1):57-60.
[5]Fleck MM,Forsyth DA,Bregler C.Finding naked people[A].In:Pro-ceedings of the4th European Conference on Computer Vision,Cam-bridge,UK,1996,2:593-602.
基于中面的注塑产品特征识别 篇8
产品的设计决定了后续工艺的可行性, 在注塑产品设计前, 需要对产品进行可成形性分析, 以便及早发现产品设计对后续模具设计和成形工艺有何不良影响。由于注塑产品结构的复杂性, 设计者很难逐个检查结构的合理性, 而自动化的成形性分析系统无疑是比较有效的检测手段。编写这种自动化成形性分析系统的关键是此系统能够自动从产品几何模型中提取设计特征。
自动特征识别是CAD向CAPP、CAM传递信息的重要手段, 包括基于面表示和基于体积表示的自动特征识别方法, 这些方法大多面向机械加工特征, 面向注塑产品或包含自由曲面的自动特征识别方法并不多见[1]。
1 注塑产品特征识别现状
与机械加工零件不同, 注塑产品一般由壁厚均匀的几何实体构成, 几何拓扑关系复杂, 用识别加工特征的算法识别注塑产品特征十分困难[2]。
文献[3]提出了一种基于图的注塑产品侧凹特征识别方法, 建立并应用扩展面属性邻接图对凹特征、凸特征及通孔三种类型的侧凹特征进行描述, 采用子图匹配的方式将侧凹特征的子图从产品面属性邻接图中识别出来。
文献[4]提出了一种基于面的自由曲面加工特征识别方法, 该方法能够从一系列复杂的曲面中确定加工区域, 但由于应用领域的差异, 这种方法很难应用于注塑产品的特征识别。
文献[5]提出了一种基于体的特征识别方法, 用于识别注塑产品中的侧凹特征。其创新点在于利用凸分解方法对相交特征进行解释。该方法仍然沿用了加工特征识别的思路, 且仅用于识别侧凹特征。
此外, 文献[6]提出了一种基于CAD模型的STL表示的特征识别方法。该方法根据三角形面片之间的法向量信息, 确定特征区域, 识别相应的特征, 用于计算STL模型与原始CAD模型之间的误差。
2 基于图的中面模型表示
中面模型的概念广泛应用于有限元前处理中。从数学描述上看, 实体模型是流形结构, 即在拓扑结构中, N维拓扑形体只能由有限个 (N-1) 维形体组成;而中面模型是非流形结构, 即N维形体不但可以由有限个 (N-1) 维形体组成, 而且还可以包含 (N-2) 、 (N-3) 、…、0维形体的信息[7]。从几何上看, 中面模型是利用假想的位于三维实体中心位置的二维平面来表示零件的几何模型, 模型中的面不具有封闭性, 不能构成一个体, 并且存在悬面、悬边;而实体模型中的面的集合具有封闭性, 能构成一个体, 不存在悬面、悬边。
基于图的特征识别方法的搜索策略是, 解析CAD模型的面属性邻接图的结构, 并与特征的面属性邻接图进行子图匹配, 以识别特征。以图1所示的L形零件为例, 它包含8个面、18条边, 传统的方法是利用边的凹凸性、边的分裂情况与特征子图进行匹配的。图2是L形零件的面属性邻接图。
对于注塑产品的特征识别来说, 实体模型的面属性邻接图是基于B-rep表达的, 冗余的几何拓扑信息过多。而中面模型实际上是对实体模型进行了降维简化处理:注塑产品在几何外形上一般是壁厚均匀的, 因此可在壁厚方向上, 将三维的实体用二维的面表达, 二维的面用一维的边表达, 这样仅表达其几何外形的“骨架”, 保留必要的信息用于解析图结构或进行子图匹配。
中面模型是非二维流形结构, 边的连接面数量可以为任意值, 且存在悬面和悬边, 因此面与边的关系不满足二维流形拓扑结构, 无法采用面属性邻接图方法表达。本文对其改进后, 提出一种表示非二维流形拓扑结构的方法:面-边属性图。在这种图的结构中, 面和边都作为节点, 面与面之间通过边连接, 边要么作为共享边与多个面连接, 要么仅与一个面连接, 构成图的叶子节点。
以图1所示的L形零件为例, 其中面模型和面-边属性图表达如图3所示。由图3可以看出, 中面模型的拓扑结构比实体模型简洁得多:由10个面构成的实体模型, 在忽略其壁厚信息的中面模型中, 仅2个面就可表达;边的数量也由18条减少为7条。
(a) 拓扑结构 (b) 面-边属性图
3 相关定义
定义1 设中面模型由n条边和m个面构成, 则以面为行、以边为列构成m×n阶面-边属性矩阵, 矩阵元素的值表示相应的面和边的包含关系, 即某个面如果包含某条边, 则相应元素置为1。
以图3所示的L形零件为例, 面-边属性矩阵如下:
矩阵的行信息表明某个面的所有构成边, 包括内边界和外边界, 矩阵的列信息表明包含某条边的所有面。
定义2 为了有效地实现特征识别, 定义边的属性集AE (AE={A1, A2, A3, A4}) :
(1) A1表示边所属的边环号, 说明边是哪一个边环的组成边。边环分为外部边环和内部边环两类。
(2) A2表示边的阶次。说明在中面模型中, 该边被面使用的次数。如果为1, 则表明该边为悬边 (如图3中的E6) 。
当一条边仅有一个端点与面的边环连接时 (如图4中的E1) , 为保证边环的封闭性, 采用图4中的连接方式:在边环的边链表中, 同一条边被使用两次, 但两次使用时边的起点和终点相反。
(3) A3表示边的凹凸性[8]。
(4) A4表示边的封闭性, 0为不封闭, 1为封闭。如果边封闭, 表明该边单独构成了一个边环, 如封闭圆环构成的边环。
4 特征分类和识别
对于注塑产品, 特征的几何形状与功能有密切的关系。本文定义了最为常见的三类特征:面特征、连接特征、加强特征。
4.1面特征
面特征存在的必要条件是:一个面存在内环或内部边。根据内环或内部边的特征, 又可细分为孔特征、凹陷特征、凸起特征和翼面特征。
4.1.1 孔特征
这里指在注塑件侧壁或底面薄壁上的通孔, 其轮廓可以是完整的圆、线段或曲线段围成的封闭曲线构成的异形孔。
孔特征存在的判据是:某个面中包含一个内环 (如图5a中的E5) , 同时该内环的每条边都没有被其他面所共享。如图5b所示, 属于F1面的边有E1、E2、E3、E4、E5, 通过查询边的属性可知E5为内部边, 单独构成内部边界环, 且仅属于面F1, 因此面F1内存在一个孔特征, 其边界为E5。内环可以由多条边组成, 构成各种形状的孔, 通过这些边的几何特征可以判断孔的类型, 如三角形孔、四边形孔等。
(a) 拓扑结构 (b) 面-边属性图
4.1.2 凹陷特征
凹陷特征存在的判据是:某个面存在内环, 且环的每条边均为凸边;同时对于共享这些凸边的面的外边环, 除共享的凸边外, 其余每条边均为凹边。从内部边环开始, 查找所有与其邻接的面, 并查找这些邻接面所包含的外部边界边, 对它们构成的边界环进行判断:是否构成面的外边界环。如果存在边界环没有构成面的外边界环, 则说明凹陷特征存在孔洞, 定义为Ⅰ型凹陷特征;如果都构成了面的外边界环, 则说明该凹陷特征是封闭的, 定义为Ⅱ型凹陷特征。图6a中E5、E6、E7、E8是邻接面的边, 但它们构成的边环不是任何面的外边界, 因此这些邻接面构成了Ⅰ型凹陷特征;用同样的方法可以判断, 图6b中的邻接面构成了Ⅱ型凹陷特征。
(a) Ⅰ型 (b) Ⅱ型
4.1.3 凸起特征
与凹陷特征相反, 凸起特征存在的判据是:某个面存在内环, 且环的每条边均为凹边;同时对于共享凹边的面的外边环, 除共享的凹边外, 其余每条边均为凸边。与凹陷特征类似, 根据边界环是否都构成面的外边界判断是Ⅰ型还是Ⅱ型凸起特征, 如图7所示。
(a) Ⅰ型 (b) Ⅱ型
4.1.4 翼面特征
翼面特征存在的判据是:两个面的共享边是其中一个面的内部边 (如图8中的E1和E2) , 且该边本身不封闭。值得注意的是:一条拓扑边在几何上可能是由多条直线段或曲线段构成的非封闭边, 因此翼面特征可能由多个面构成。根据注塑产品成形的原理, 这些面仅应构成一个翼面特征。在图8a中, E1和E2应合并为一条边, F1和F2应合并为一个面。
(a) 拓扑结构 (b) 面-边属性图
面特征识别算法如下:
(1) 查询面-边属性矩阵, 判断面是否包含内部边或内部边环, 或边在同一个面中使用次数是否为2。
(2) 如果存在内部边环, 则查找该面的相邻面:①如果没有相邻面, 则该边环构成了孔特征, 通过检查边环的几何特征, 可以判断孔特征的类型, 如圆孔、方孔、多边形孔等;②如果有相邻面, 则判断内部边环的凹凸性, 若为凹边, 则存在凸起特征, 若为凸边, 则存在凹陷特征;③对相邻面继续步骤①和②, 直到从某个面出发找到所有的面特征为止;④对于凸起特征, 查找所有相邻面包含所有边的构成的外部边环, 如果存在外部边环没有构成某个面的边界, 则为Ⅰ型凸起特征;反之则为Ⅱ型凸起特征;⑤对凹陷特征执行④的算法, 确定凹陷特征的具体类型。
(3) 如果存在内部边, 则查找与该边相连的边, 将它们合成一条边, 包含这些边的面合并成一个面, 共同构成翼面特征。
由于对面特征进行了递归的识别算法, 因此算法完成后, 可以将面特征所包含的面和边从面-边属性矩阵中删除, 并重构矩阵, 简化后续特征识别算法。
4.2连接特征
连接特征包括T形和X形连接特征。连接特征存在的判据是:一条边连接面的数量大于3, 即在面-边属性矩阵中, 某条边对应的列非零元素之和大于3, 且每条边在每个面的使用次数均为1, 则存在连接特征。如果和为3, 且3个面的夹角为90°, 则为T形连接特征, 如图9所示;如果和为4, 且4个面的夹角为90°, 则为X形连接特征, 如图10所示。
面夹角的计算方法是:计算面的边界边环任意两个相邻边的叉积, 得到面的法向量;将其中一个面的法向量向另一个面的法向量投影, 得到的角度即为这两个面的夹角。
4.3加强特征
在注塑产品中, 加强特征的作用是对产品的壁面或面特征进行加固, 包括肋板特征和支撑板特征。支撑板特征的特点是:在一个面中, 有2条边的阶次为3且相连, 至少有一条边是悬边, 如图11所示;而肋板特征的特点是:至少有3条边的阶次为3且相连, 至少有一条边是悬边, 如图12所示。
在图11a和图12a所示的中面模型中, 括号内的数字表示对应的边的阶次, 计算方法是:在面-边属性图中, 将边与所有面连接的次数相加。如图11b所示的E1, 它与F1的连接次数为2, 与F2连接次数为1, 因此E1的阶次为3。
加强特征识别的算法是:对于模型中的每个面, 得到其边界边环以及每个边的阶次;如果边界边环在某个面上有两条以上边, 则将这些边合并成一条边;如果边环的阶次构成模式是3→3→1, 说明有两个面与加强特征面连接, 存在支撑板特征;如果边环的阶次构成的模式是3→3→3…→1, 说明有超过三个面与加强特征面连接, 存在肋板特征。
5 算法实现及实例
本文提出的算法基于UGNX4.0平台, 注塑产品的设计是利用其三维建模模块实现的。利用软件的中面提取功能, 生成产品的中面模型, 并将其输出为AP203格式的中性文件;由于中面是非二维流形拓扑结构, 利用STEPAP203扩展边界表示法中的类库对中性文件进行几何拓扑构造[9], 生成面-边属性图和面-边属性矩阵;最后利用本文的算法进行特征识别, 输出特征的几何表示。算法实现流程如图13所示。
STEP模型信息复杂而且全面, 在获取中面几何拓扑信息时, 只选择与特征识别有关的信息, 为此, 建立了面向对象的中面模型数据结构, 用于数据存储。其结构如图14所示。
图15所示为测试零件特征识别的实例, 图15a为零件的实体模型, 包括35个面和67条边;图15b为零件的中面模型, 包括17个面和34条边。通过本文提出的算法共识别7个特征, 如图15c所示, 包括:连接侧壁的肋板特征, 由1个平行四边形平面构成;支撑板特征, 由1个三角形平面构成;T形连接特征, 由2个互相垂直的平行四边形平面构成;零件底面上的Ⅰ型凸起特征, 由1个圆台面和1个边界为封闭圆弧的平面构成;Ⅱ型凹陷特征, 由1个圆台面构成;翼面特征, 由1个圆弧面构成;孔特征, 由1个封闭圆弧构成。
以翼面特征的识别过程为例, 通过检索中面模型 (即AP203格式的文件) 底面F2的几何信息可知:有3个圆环和一条不封闭的圆弧 (E1) 位于F2的内部。根据每个圆环的凹凸性和阶次可以进一步判断是否为凹陷特征、凸起特征或孔特征;对于E1, 通过检索所有共享它的面可知其阶次为2, 即除F2外还有F1共享E1, 且构成F1外边环的一部分, 即F1为翼面特征。通过检索F1的几何信息可知它是圆弧面。
特征的几何信息对于下游系统 (如CAM、CAPP系统) 具有重要的价值, 有必要将其从中性文件中提取并输出。以翼面特征为例, 输出格式如下:
Face ID=43 is a FIN with non-planar face;
其中, ID指的是该翼面特征的拓扑实体在中性文件中的标识号。通过解析中性文件, 查找该拓扑实体, 并查找其对应的几何实体, 将相关信息输出。
6 结束语
本文针对注塑产品几何形状复杂和壁厚均匀的特点, 提出了基于中面的特征识别方法。该方法对基于图的方法解析B-rep表达的三维实体模型进行了改进, 用中面模型简化注塑产品的几何形状, 提出了面-边属性图和面-边属性矩阵表达中面模型的拓扑结构, 在此基础上对特征进行了分类并研究了各自的特征识别算法。文中给出的实例表明本文提出的注塑产品特征识别算法的可行性。
进一步的研究工作包括:拓展和细分注塑产品的特征, 并给出相应的特征识别算法, 使其适应更加复杂的几何形状;研究基于中面模型的注塑产品侧凹特征识别方法;研究中面模型中相交特征的识别方法;实现本文提出的特征识别算法与CAD系统环境的集成。
参考文献
[1]花广如, 周雄辉.特征识别的现状与存在的问题及解决方案[J].机床与液压, 2008, 36 (4) :19-22.
[2]Chen Y M, Wen C C, Ho C T.Extraction of Geo-metric Characteristics for Manufacturability Assess-ment[J].Robotics and Computer Integrated Manu-facturing, 2003, 19 (4) :371-385.
[3]邵健, 吕震, 柯映林.基于图的注塑产品侧凹特征识别技术的研究[J].中国机械工程, 2006, 17 (1) :52-55.
[4]Zhang X, Wang J, Yamazaki K, et al.A SurfaceBased Approach to Recognition of Geometric Fea-tures for Quality Freeform Surface Machining[J].Computer-aided Design, 2004, 36 (8) :735-744.
[5]Yin Zhouping, Ding Han, Li Hanxiong.GeometricMould Ability Analysis by Geometric Reasoning andFuzzy Decision Making[J].Computer-aided De-sign, 2004, 36 (1) :37-50.
[6]Belludi N, Yip-Hoi D.High Level Feature Recog-nition Using Approximate and Partial Exact CADModels[C]//Proceedings of DETC’02.ASME2002 Design Engineering Technical Conferences.Montreal, 2002:113-127.
[7]Rezayat M.Midsurface Abstraction from 3D SolidModels:General Theory and Applications[J].Com-puter-aided Design, 1996, 26 (11) :905-915.
[8]李伟平, 谷正气, 邓彪.面向CAD/CAPP/CAM的特征识别技术[J].中国机械工程, 2006, 17 (10) :249-253.
【模型特征识别】推荐阅读:
特征提取模型06-22
网络模型特征分析07-07
岗位胜任特征模型08-10
安全胜任特征模型08-29
项目经理的胜任特征的模型07-26
一种保持地貌特征的数字高程模型生成方法08-14
数字识别特征提取05-28
特征自动识别09-05
模型参数识别06-23
事件特征07-16