APP下载

小型仪表信息识别研究及VHDL实现

2011-06-05王晓利

电子设计工程 2011年20期
关键词:形态学特征提取运算

王晓利

(宝鸡文理学院 电子电气工程系,陕西 宝鸡 721007)

信息处理技术的应用域极为广泛,主要体现在计算机图像生成与识别、图像传输与图像通信、机器人视觉及图像测量、以图像识别技术和图像数据库技术为基础的办公室自动化、图像识别跟踪、医用图像处理、材料分析中的图像识别、图像变形技术等。数字仪器仪表技术既是工具,也是进行科学探索和认识世界的重要手段。利用信息处理对数字仪器仪表进行识别技术已不再是科研和工业生产的配角,早已成为我国科技发展和提升工业产品质量的核心组成部分,作用举足轻重。文中针对仪表数字信息细化分类提出有效的解决方法。

1 基本原理

1.1 仪器仪表数字信息识别常用算法

1.1.1 特征提取法

特征提取是计算机图像处理中的常用概念,表示使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。其结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。常用特征提取方法有:

1)边缘特征提取:边缘为图像中拥有大的梯度的点组成的子集。一般一个边缘的形状可以是任意的,还可能包括交叉点。在实践中一些常用的算法还会把梯度高的点联系起来来构成一个更完善的边缘的描写。

2)角特征提取:早期的算法首先进行边缘检测,然后分析边缘的走向来寻找边缘突然转向(角)。后来发展为不再需要边缘检测这个步骤,而是直接在图像梯度中寻找高度曲率。该方法的弊端为图像中本来没有角的地方发现具有同角一样的特征区域,容易造成混淆。

3)区域特征提取:与角不同的是区域描写一个图像中的一个区域性的结构,但是区域也可能仅由一个像素组成,因此许多区域检测也可以用来监测角。该方法常用在区域监测器检测图像中对于角监测器来说太平滑的区域。

4)脊特征提取:长条形的物体被称为脊。在实践中脊可以被看作是代表对称轴的一维曲线,此外局部针对于每个脊像素有一个脊宽度。从灰梯度图像中提取脊要比提取边缘、角和区域困难。在空中摄影中往往使用脊检测来分辨道路,在医学图像中常用来分辨血管[4]。

1.1.2 模块匹配法

模块匹配法是一种基本的信息识别算法,其工作原理为:将待识别信息配备一块标准的模板,再与待识别信息进行比对,结果和模板信息点阵图像距离最小时所对应的信息,就可判定为输入的待识别信息[1]。常用模块匹配法有物理模板匹配和逻辑模板匹配,其优点为计算方法简单,针对待识别的仪器仪表进行模板设计,设计精度越高则识别率就越高,缺点为当仪表信息量较大时,需要加大模板设计量,故适合文中小型数字仪器仪表的信息识别。

1.2 数学形态学用于信息识别的基本原理

常规设计中主要研究数学形态学基本算子,即:腐蚀、膨胀、开、闭等[6]。结合仪表信息识别的特点,往往背景色彩与前景色彩比较接近,将图像二值化后区域分割不理想,文中直接采用了灰度形态学方法,使图像在灰度模式下进行调整,便于二值化后再进行识别[2]。

1.2.1 灰值腐蚀运算

结构元素g对信号f的腐蚀定义为:

从几何角度看,求信号被结构元素在点x腐蚀的结果,就是在空间滑动结构元素,使结构元素的原点与点x重合,然后从负无穷大向上推结构元素,对结构元素仍处于信号下方所能达到的最大值时结构元素的原点位置作标记,该标记点为该点腐蚀结果。由于结构元素必须在信号的下方,所以要求空间平移结构元素时,其定义域必须为信号定义域的子集,否则,腐蚀在该点没有意义[5]。

如图1所示,图中表示了灰值腐蚀运算。将结构元素紧贴在信号下方“滑动”,其原点刻画出的轨迹即为腐蚀结果。可以看出,扁平结构元素从下方对信号消去了尖角,产生了平滑滤波效果。

1.2.2 灰值膨胀运算

信号f被结构元素g灰值膨胀定义为:

即利用结构元素的反射,将信号限制在结构元素的定义域内时,上推结构元素,取其超过信号时的最小值。灰值膨胀从信号上方消除尖角,起到单边滤波作用。灰值膨胀还可以定义为:

这一定义方法对灰值膨胀提供了一种重要的几何描述,即灰值膨胀可以通过将结构元素的原点平移到与信号重合,然后计算信号上的每一点与结构元素对应各点和的最大值得到,这种定义更方便计算。如图2所示,给出了膨胀运算示意图。

图1 灰值腐蚀示意图Fig.1 Diagram of grayscale erosion

图2 灰值膨胀运算示意图Fig.2 Diagram of grayscale dilatability

图3给出了灰值腐蚀、膨胀结果。采用3×3方形结构元素。可以看出图像细致特征变粗了,由于膨胀定义中采用了取最大运算,所以膨胀后图像均值增大了。

1.2.3 灰值开、闭运算

灰值形态学的二级运算是灰值开和闭运算,两者为对偶运算。灰值开运算定义为:

图3 灰值腐蚀与膨胀结果对比Fig.3 Comparison of grey value corrosion and expansion resultts

灰值开运算是先作灰值腐蚀然后作灰值膨胀的二次运算,从填充的角度描述开运算,有:

即灰值开运算可以通过在信号下方平移结构元素,并记录每次移动时结构元素的最大值得到。与腐蚀和膨胀不同的是,原点相对于结构元素的位置不会对开运算的结果产生影响。

腐蚀和膨胀运算具有平移不变性,开运算作为腐蚀和膨胀的二次运算,同样满足平移不变性,即:

同样,开运算具有递增性、非扩展性和幂等性,即:

在灰值情况下,利用对偶性,闭运算可以定义为:

即闭运算可以对水平轴翻转信号和结构元素并作开运算,然后再对水平轴翻转得到。灰值开、闭运算是形态学中重要的算子,由它们构成了各种各样的实用算法。如图4所示,为开、闭运算的简单应用例子。

由上述举例可以得出,开运算中的第一步求腐蚀运算就是腐蚀了比结构元素小的亮细节并同时减弱了图像整体灰度值,第二步膨胀运算增加了图像整体亮度而对已经腐蚀的细节不再引入;闭运算与开运算类似,闭运算中的第一步求膨胀运算就是消除了比结构元素小的暗细节,而保持了图像整体灰度值和较大的暗区域基本上不受影响,第二步腐蚀运算减弱了图像整体亮度而又不重复引入前面已被去除的暗细节。

数学形态学是建立在对结构元素的广义“减”运算基础上建立起的独立的理论体系,它只涉及平移、加、减等简单运算,因此形态学算子本质上具有运算简单快速,可并行计算,易于硬件实现的特点。

2 基本实现方法

2.1 膨胀、腐蚀基本算子的硬件结构组成

信息识别中特征提取算法设计以形态学中膨胀、腐蚀算子的设计为主要核心,采用VHDL语言描述以排序滤波器为例,实现膨胀、腐蚀算子,硬件结构可划分为3大模块[3]:

1)3×3窗口生成器模块,考虑到窗口中元素采用矢量形式输出,在硬件实现上可以考虑使用FPGA的FIFO存储单元作为数据缓冲区。根据被测对象的特点,模块大小可调。

图4 开、闭运算结果Fig.4 Operation result of open and shut

2)排序算法模块,其主要任务是设计硬件比较、排序单元,对窗口中的元素按从小到大排序。

3)行列计数模块主要针对二维图像,根据像素的行、列位置分别利用两个计数器记录。

2.2 3×3窗口生成器模块的VHDL实现

限于篇幅,文中重点实现3×3窗口生成器模块的硬件描述。

实体定义了3×3窗口逻辑电路,其中端口信号具体为:时钟信号Clk1,复位信号RSTn1,输入数据Din,输出窗口元素像素值 winxy(1≤x≤3, 1≤y≤3),数据有效信号 DV1。 设输入图像为8 bit灰度图像,可视输入图像数据及3×3窗口逻辑像素值为8 bit逻辑矢量。

2.3 算法顶层设计的VHDL实现

各个模块定义结束后,将其实例化,实现顶层排序滤波器的设计。假设排序滤波器实体名称为sort_filt3,则实体端口定义如下:

3 仿真结果

设计采用Altera公司的quartus6.0软件进行仿真。在结果实现上采用了浙江天煌科技实业有限公司与实验箱配套的KHF-5型上位机软件系统,该软件提供给用户CPLD程序下载平台以及工作环境,可以满足用户对KHF-5型实验开发系统的使用要求。

如图5所示,滤波器sort_filt3模块包含win_3×3窗口模块、sort_3×3 排序模块以及 counter_3×3 计数模块[7];其中 win_3×3窗口模块又包含fifo_256×8对二维图像信息行、列像素存储模块。

图5 自顶向下的滤波器设计关系图Fig.5 Top to down of relational graph for filter design

如图6所示,为滤波器顶层设计模块。其中Clk1为模块的时钟信号,RSTn1为复位信号,Din为输入的数据,Dout为输出的数据,DV1为数据输出有效信号。

图6 滤波器顶层设计模块Fig.6 Top design module of filter

通过quartus中的start simulation命令进行时序仿真,以及在时序仿真无误的基础上再进行功能仿真和综合仿真。即通过时序仿真和功能仿真的结果比较,充分考虑器件的延迟及信号的建立时间和保持时间后,对设计中出现的问题反复修正,可得到较精确的仿真结果。

4 结束语

基于数学形态学的信息识别技术应用非常广泛,文中主要以静态灰度图像为研究对象,对于全彩图像、序列图像、视频图像也可参照上述方法实现信息识别。形态学方法以算法简捷,易于实现等优点越来越成为信息处理领域中不可缺少的信息处理工具,在网络传输、模式识别、图像编码及解码等应用领域可产生巨大的经济效益和实用价值。

[1]盛业华,唐宏,杜培军.一种保形的快速图像形态细化算法[J].中国图象图形学报,2000,5(2):89-93.SHENG Ye-hua, TANG Hong, DU Pei-jun.One fast shape preserving morphological thinning algorithm[J].Journal of Image and Graphics,2000,5(2):89-93.

[2]向友君,郭宝龙.运动估计快速块匹配法[J].计算机工程,2003,29(13):62-64.XIANG You-jun, GUO Bao-long.Fastblock matching algorithmsformotionestimation[J].ComputerEngineering,2003,29(13):62-64.

[3]王树文,闫成新,张天序,等.数学形态学在图像处理中的应用[J].计算机工程与应用,2004,40(32):89-92.WANG Shu-wen, YAN Cheng-xin, ZHANG Tian-xu,et al.Application of mathematical morphology in image processing[J].Computer Engineering and Applications, 2004,40(32):89-92.

[4]崔屹.图象处理与分析—数学形态学方法及应用[M].北京:科学出版社,2000.

[5]岑曙炜,刘政凯.一种改进的基于形态骨架的二值图象编码[J].中国图象图形学报,2001,6(8):784-790.CEN Shu-wei,LIU Zheng-kai.An improve coding for binary image based on skeleton[J].Journal of Image and Graphics,2001,6(8):784-790.

[6]张伟.基于DSP和FPGA的形态学骨架提取硬件实现[D].南京:南京航空航天大学,2004.

[7]程琼,王春枝,鲍鸿.单片机产品计数器系统设计[J]湖北工学院学报,1997,12(2):19-23.CHENG Qiong, WANG Chun-zhi, BAO Hong.The design of single chip microcomputer production counter system[J].Journal of Hubei Polytechnic University,1997,12(2):19-23.

猜你喜欢

形态学特征提取运算
重视运算与推理,解决数列求和题
有趣的运算
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于Daubechies(dbN)的飞行器音频特征提取
Bagging RCSP脑电特征提取算法
“整式的乘法与因式分解”知识归纳
医学微观形态学在教学改革中的应用分析
基于MED和循环域解调的多故障特征提取
数学形态学滤波器在转子失衡识别中的应用
巨核细胞数量及形态学改变在四种类型MPN中的诊断价值