基于Windows Mobile嵌入式系统的类圆管材识别与计数系统研究
图像为G(i,j),以(i,j)代表任一点像素,f(i,j)代表输入图像该点的灰度值,g(i,j)代表输出图像该点的灰度值,那么,阈值分割可用公式表示。
若图像分为目标与背景,所选阈值为T,则有:
这样,采用T就可将图像分为背景和目标,所得的图像称为二值图像。
在图像的灰度直方图上,背景和目标物的灰度值有明显差别,它们各自形成波峰,在双峰之间的最低谷就是图像的分割阈值。图4所示就是图像的灰度直方图。但是,对于灰度直方图中波峰不明显或波谷比较平坦的图像,该方法的阈值分割效果并不是很好。图5所示为阈值分割处理之后的图像。
4 Hough变换与椭圆的计数
4.1 Hough变换
Hough变换在图像处理中经常被用于图像增强和分割后提取目标的边缘信息。其基本思想是将图像从空间域变换到参数空间,再用大多数边界点满足的某种参数形式来描述图像中的曲线。假设在x-y平面检测并确定了一个圆的参数,图像中待检测圆点的集合为{(xi,yi),i=1,2,3,…,n),其中(x,y)为该集合中的一点,那么,它在参数坐标系(a,b,r)中的解析式为:
该解析式对应的曲面为三维锥面。图像中任意确定的一点均有参数空间的一个三维锥面与之对应。对于圆周上的任一点{(xi,yi)1,2,3,…,n},这些三维锥面将构成圆锥面簇,具体如图6所示。
若集合中的点均在同一个圆周上,则这些圆锥面簇相交于参数空间上的某一点,该点恰好对应于图像平面的圆心坐标及圆的半径。Hough变换在计算上可将参数空间进一步分割为累加器单元A(i,j,k),并先使累加器单元置零,然后根据式(4)对参数作相应循环。如果一个α(i)值得到相应的b(j),r(k),则令A(i,j,k)=A(i,j,k)+1。最后对每个累加器进行比较,找到最大值累加器,那么,该累加器所对应的参数值(a,b,r),就是在平面上所要检测的圆的圆心及半径。
4.2 椭圆计数
一般的,若二次曲线:
且b2-ac0。则此二次曲线为椭圆。在处理复杂图像时,由于椭圆需要5个参数才能被检测出来,而这会引入大量的无效采样,导致无效参数计算,并对无效参数分配单元进行累积,从而导致系统资源的浪费。故此选用RHT(随机Hough变换)并采用多到一的映射,这样可避免传统Hough变换一到多映射的巨大计算量。
源图像有N个大小为q点的圆,还有n个由于噪声或高频细节产生的非圆上点,因此,随机采样所得的三点落在同一个圆上的概率为:
如果没有噪声等噪点存在(即n=0),则式(7)可以简化为:
根据三点确定椭圆法,可由采样所得的三个参数确定出椭圆,设点P1的坐标为(x1,y1),点P2的坐标为(x2,y2)切线l1和l2的法线方向分别为N1=(p1,q1)和N2=(p2,q2),一般情况下,假设:
故此可以推导出以l1、l2为切线,P1和P2为切点的二次曲线簇方程为:
检测出椭圆后,再将椭圆的参数信息保存到结构体程序中:
最后,再按照椭圆参数重新绘制出椭圆图像。经过Hough变换进行边缘检测后的图像如图7所示。
5 系统实现
结合应用需求,以Visual Studio 2005为开发平台,并用其中的智能手机开发模块进行系统的模拟开发与仿真,可使得图像识别计数系统的开发效率大大提高,从而在Window Mobile嵌入式操作系统基础上,用MFC实现一个管材识别技术系统的原型。图8所示是该系统的实现界面。
6结束语
本文介绍了数字图像处理技术在类圆管材识别计数系统中的应用方法,同时介绍了该系统的关键技术与相关算法,并利用VS 2005编写了类圆管材识别计数软件系统。该系统在相关行业具有较强的应用前景。
本文使用的关键技术和算法相对比较成熟,图像处理速度较快。但是,对有干扰的源图像,则可能会引起系统识别计数错误,影响计数结果精度。后续可以围绕该问题做进一步的深入研究,并提高系统的处理速度,改进系统的适应性与实用性。
系统 识别 计数 研究 管材 基于 Mobile 嵌入式 Windows 相关文章:
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)