基于图像处理的指针式仪表示数自动判读算法研究
根据pi点的坐标,设置感兴趣区域大小为hr×wr,可以在原图中得到两块备选子区域。以某图像为例,备选子区域如图4所示,针尖一定位于两个子区域中的一个。
本文引用地址:http://www.amcfsurvey.com/article/274754.htm2.2 基于LoG算子边缘检测的二值化
由于针尖区域内刻度线的边缘特征明显,因此采用基于Laplacian of Guassian(LoG)算子边缘检测的二值化处理方法。设原图像为I(x, y),边缘检测后输出图像为O(x, y),则:
(4)
其中,;*是卷积符号。将式(4)变换为:
(5)
由于,则LoG模板为:
(6)
式(6)中参数δ的计算公式为:
(7)
其中,Int是取整运算;m是模板宽度,取m=min(hr , wr)/7。通过求取O(x, y)中过零点的轨迹即可得到原图像的边缘点,最后的阙值为:
(8)
其中,c的取值范围是0~1,是所有边缘点灰度值之和,N是边缘点的总数。
2.3 备选子区域筛选
对于二值化处理结果,针尖区域包含了针尖和刻度线。本文的针尖区域远离图像中心,对于第i个备选区域,定义判断值Ji如下:
(9)
其中,Ni是二值图中连通域的数目,是所有连通域面积之和,c0、c1、c2是常数。通过计算两块备选区域的判断值,选择判断值较大的区域即可得到针尖所在区域。
2.4 针尖定位
在第2.3节的基础上,对针尖定位的步骤是:
(1)将仅含指针连通域的ROIBW逆时针旋转角度i*得到ROI'BW,从指针连通域所连接边界对侧的边界开始搜索,判断是否出现分叉点。判断方法是:统计该行所有宽度大于2的非零区间的数目,如果有两个这样的区间且距离不小于2,说明存在交叉点。设这一对区间的端点坐标分别是(x1, x2)和(x3, x4),则交叉点横坐标为。若逐行搜索至ROI'BW高度的一半仍未发现分叉,跳至第(4)步。
(2)根据将ROI'BW分为左右两部分,记为l和r,计算两部分连通域的面积sl和sr。如果,则在ROI'BW中将面积较小的一侧置零,跳转至第(4)步。
(3)若(2)中条件不满足,分别计算l和r中连通域面积占该连通域外接矩形框面积的比例Rl和Rr,在ROI'BW中将比例较小的一侧置零。
(4)从指针连通域所连接边界对侧的边界开始逐行搜索,找到的第一个非零行的行坐标即针尖位置的纵坐标,将该行竖直投影,投影曲线左右两端非零点的横坐标均值视为针尖位置的横坐标。
(5)将ROI'BW中的针尖坐标变换到ROIBW,进而得到针尖在原图像I中的针尖坐标。
3 刻度线标记及读数
3.1 基于逐步搜索的刻度线标记
定位针尖后,搜索刻度线的步骤为:
评论