基于圖像處理的指針式儀表示數自動判讀算法研究
(1)以ROIBW任一刻度線為起始,其中心點為Ps,刻畫待搜索區(qū)域,該區(qū)域為傾斜矩形,長和寬分別是ws和hs。
本文引用地址:http://cafeforensic.com/article/274754.htm(2)使用基于LoG算子邊緣檢測的二值化方法對搜索區(qū)域進行二值化,再由Ps出發(fā),沿過該點且與刻度線垂直的直線方向搜索相鄰的刻度線。
(3)標記搜索到的相鄰刻度線,記錄中心坐標、刻度線長度、與水平軸夾角,更新起始點Ps,刻畫新的待搜索區(qū)域繼續(xù)搜索。
(4)若沿某方向搜索不到新的刻度線,說明該方向搜索完畢,返回起始刻度線,轉換搜索方向繼續(xù)搜索標記至結束。
逐步搜索標記刻度線的實例如圖5所示,矩形框為搜索區(qū)域,兩個箭頭表示搜索方向。
3.2 刻度線排序
標記完所有刻度線后設置參考點,并結合已知儀表指針的旋轉方向將刻度線排序。參考點設置方法為:設兩個方向搜索到的末端兩條刻度線中心點分別是p1(x1, y1)和p2(x2, y2),參考點坐標可設為,h是原圖像的高度。
3.3 讀數
通過計算針尖位置和參考點連線的斜率,可以確定針尖位于哪兩條刻度線之間,記這兩條刻度線的序號為n1和n2(n2>n1),同時計算針尖到這兩條刻度線所在直線的距離為d1和d2,則讀數V的計算方法為:
(10)
其中,S是儀表的量程,u是儀表的最小分度值,n'是搜索到的刻度線數目。
4 實驗及評價
為了驗證本文方法的準確性,測量了該公司214幅指針式儀表的圖像。定義誤差,其中V是本文算法的讀數,V'是肉眼讀數,將判讀結果列于表1。有5幅圖像由于光線太暗,導致無法正確標記刻度線;有85.05%的讀數誤差小于儀表最小分度值的5%,讀數誤差大于儀表最小分度值10%的僅4.20%,證明本文算法的準確率較高。
5 結論
(1)首先對圖像進行預處理增強,然后對圖像進行降采樣和二值化,之后進行旋轉投影提取出指針所在的區(qū)域。
(2)在指針兩端分割出兩塊區(qū)域,基于LoG算子邊緣檢測的二值化方法在子區(qū)域中篩選出針尖的區(qū)域,并對針尖定位。
(3)采用逐步搜索的方法標記刻度線,并對刻度線排序,從而實現示數讀數。
(4)判讀了214幅圖像的讀數,85.05%的讀數誤差小于儀表最小分度值的5%,讀數誤差大于儀表最小分度值10%的僅4.20%,證明本文算法的準確率很高。
參考文獻:
[1] Matas J, Galambos C, Kittler J. Robust detection of lines using progressive probabilistic hough transform[J]. Computer vision and image understanding, 2000,78(1):119-137
[2] 孫世杰,張凱,孫力,等.基于圖像處理的航空儀表自動判讀系統(tǒng)設計[J].科學技術與工程,2011,11(6):1260-1263+1284
[3] Alegria F C, Serra A C. Computer vision applied to the automatic calibration of measuring instruments[J]. Measurement, 2000,28(3):185-195
[4] Lee C C, Shih C Y, Lee S K, et al. Enhancement of blood vessels in retinal imaging using the nonsubsampled contourlet transform[J]. Multidimensional Systems and Signal Processing, 2012,23(4):423-436
[5] 羅松,王俊峰,唐鵬,等.面向條碼識讀的自適應二值化改進算法[J].計算機工程與設計,2013,34(4):1324-1330
評論