国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Hough變換的指針式鐘表自動識別算法

2022-08-01 05:56:50姚河花才旦多杰祝小蘭
青海大學(xué)學(xué)報 2022年4期
關(guān)鍵詞:指針式自動識別讀數(shù)

姚河花,田 玉,才旦多杰,祝小蘭

(青海大學(xué)計算機技術(shù)與應(yīng)用系,青海 西寧 810016)

直線檢測是圖像處理的一個關(guān)鍵步驟,被廣泛應(yīng)用于車道檢查、工業(yè)儀表識別、工業(yè)生產(chǎn)等領(lǐng)域[1-4]。隨著計算機技術(shù)的發(fā)展,利用計算機代替人工完成指針式儀表的讀數(shù)越來越重要。鐘表是計時裝置,同時也是測量和指示時間的精細儀器,在某些生產(chǎn)生活背景下,需要對指針式鐘表進行讀數(shù)。指針式儀表自動讀數(shù)識別常用的算法有差影法[5]、基于區(qū)域生長的方法[6]及基于Hough變換的算法等[7-11]。吳東潞等[7]利用Hough變換的原理提取出表盤上的圓弧特征,李娜等[8]對提取的像素點進行雙閾值Hough變換直線檢測。Hough變換的檢測方法被廣泛應(yīng)用于直線及圓的檢測,該算法具有抗噪聲干擾及對曲線間斷不敏感的特性。本文結(jié)合Hough變換的原理提出一種基于Hough變換的指針式鐘表示數(shù)自動識別方法,通過Hough變換確定表盤位置,繼而完成表盤圖像的切割,利用Hough變換檢測表盤中的直線,從而確定指針的位置,最后根據(jù)指針的傾斜角與圖像空間坐標(biāo)的關(guān)系,進一步確定鐘表的讀數(shù)。

1 Hough變換原理及應(yīng)用

1.1 Hough基本原理

Hough既可以用來檢測圓,也可以檢測直線。Hough變換的基本原理是將空間坐標(biāo)系上的點投影到參數(shù)空間中,通過觀察參數(shù)空間里曲線交點的情況來判斷要提取特征的方程。

1.2 Hough變換檢測直線

在極坐標(biāo)系ρ-θ中,對于平面上的一個點(x,y)來說,通過該點的直線集可表示為ρ=xcosθ+ysinθ,所有(r,θ)連在一起可連成一條正弦曲線。過不同點的正弦曲線若有交點,那么這些點就可連成一條直線。計算過每一個交點的直線數(shù),設(shè)置一個峰值,只要大于該峰值即可判斷這些點構(gòu)成了一條線段,從而得出線段方程(圖1)。

圖1 直角坐標(biāo)到極坐標(biāo)的轉(zhuǎn)換Fig.1 Conversion from rectangular coordinates to polar coordinates

1.3 Hough變換檢測圓

Hough變換檢測圓的基本原理是將圖像空間轉(zhuǎn)換到參數(shù)空間。在圖像空間中,假設(shè)圓心坐標(biāo)為(a,b),半徑為r,則圓的一般方程為:

(x-a)2+(y-b)2=r2

(1)

參數(shù)空間中圓心為(x,y),半徑為r的圓的方程為:

(a-x)2+(b-y)2=r2

(2)

公式(2)將圖像空間的圓轉(zhuǎn)換為參數(shù)空間中的一個圓錐面,即圖像空間中確定的半徑為r的圓,圓周上的所有像素點在參數(shù)空間中對應(yīng)為r相同,a、b不同的一系列圓錐的集合(圖2),則同一圓周上的像素點對應(yīng)于參數(shù)空間中的圓錐面必相交于一點[12]。

圖2 原圖像空間與Hough變換參數(shù)空間對應(yīng)圖Fig.2 Corresponding diagram between the original image space and Hough space

2 指針式鐘表示數(shù)自動識別算法設(shè)計

指針式鐘表基于Hough變換的指針式鐘表示數(shù)自動識別算法流程見圖3。

圖3 指針式鐘表示數(shù)自動讀取流程Fig.3 Automatic pointer clock reading process

2.1 圖像預(yù)處理

一般情況下,通過攝像機等采集到的圖像多為彩色圖像,將彩色圖像轉(zhuǎn)換為灰度圖像,可以加快圖像的計算速度,減少計算量。本文采用加權(quán)灰度平均化進行灰度轉(zhuǎn)換[13],計算方法如公式(3):

f(i,j)=0.299*R(i,j)+0.587*G(i,j)+0.114*B(i,j)

(3)

式中:R(i,j)、G(i,j)和B(i,j)分別表示圖像(i,j)處R(紅)、G(綠)和B(藍)3個通道顏色分量對應(yīng)的值。

對灰度化后的圖像進行二值化,二值化的閾值通過最大類間方差(也稱為Otsu法或大律法)算法[14]計算得到,該算法是利用圖像的像素灰度分布直方圖,并在最小二乘法的理論基礎(chǔ)上推導(dǎo)出來的一種自適應(yīng)的閾值,處理效果見圖4。

圖4 原圖與處理圖對比Fig.4 Comparison of original and processing images

2.2 邊緣檢測

邊緣是圖像局部亮度變化最明顯的部分,是圖像分割、特征提取、目標(biāo)識別等領(lǐng)域的重要依據(jù),常用的邊緣檢測算子為Roberts算子、Prewitt算子、Sobel算子和Canny算子等。為了比較上述4種算子的邊緣檢測效果,利用MATLAB工具箱對其進行仿真,仿真實驗結(jié)果見圖5。

圖5 各類表盤邊緣檢測效果對比圖Fig.5 Comparison of edge detection effects of various dials

從仿真結(jié)果可以看出,Canny算子能夠檢測到更多的邊緣信息,對細節(jié)信息保留得更好,但存在較多的冗余邊緣信息。而Prewitt算子和Roberts算子、Sobel算子相比較Roberts算子能夠?qū)υ肼暺鸬狡交饔?,因Sobel算子存在權(quán)重,所以比Prewitt算子的定位精度更高[13]。因此,本文選用Sobel算子進行邊緣檢測。

2.3 Hough變換表盤特征提取

對使用Sobel算子邊緣檢測后獲得的圖像應(yīng)用Hough變換進行表盤特征提取。用Hough變換檢測出圓的圓心,圓心坐標(biāo)為(c1,c2),半徑為r,I(i,j)為圖像中像素點的灰度值。根據(jù)公式(4)將圖像中大于半徑的部分設(shè)置為白色,只保留Hough變換檢測的圓以內(nèi)的部分,結(jié)果見圖6。

圖6 Hough變換濾除圓盤外效果圖Fig.6 Effects of Hough transform after removing the disc

(4)

2.4 鐘表指針位置獲取

提取指針特征是鐘表時刻識別最關(guān)鍵的一步。對于鐘表圖片而言,秒針最長,分針次之,時針最短。利用Hough變換檢測直線的原理,檢測圖片中的直線,檢測到線的同時得到線段的兩個端點,通過端點坐標(biāo)值計算線段的長度,對線段按長度進行排序,最長的直線對應(yīng)秒針,次長的直線為分針,分別計算圓心到第3長、第4長兩條直線的距離(檢測到的直線端點不一定落在圓心處),距離較短的直線對應(yīng)時針,圖7為通過Hough變換檢測指針示意圖。

圖7 指針位置定位圖Fig.7 Pointer position

2.5 指針識別示值與讀數(shù)計算

指針式鐘表讀數(shù)自動識別的核心是確定一個精確度較高且適用性較強的儀表讀數(shù)自動識別的計算方法,本文采用角度法[11-12]實現(xiàn)示數(shù)的自動計算。以Hough變換檢測出的圓心O作為直角坐標(biāo)系的原點建立直角坐標(biāo)系和圖像的空間坐標(biāo)系。MATLAB中默認的圖像空間坐標(biāo)系原點在左上角,x軸水平向下為正方向,y軸水平向右為正方向。在傳統(tǒng)坐標(biāo)系中,x軸水平向右為正方向,y軸水平向上為正方向。而在鐘表圖片中,通常以指針與12點刻度線的夾角作為讀數(shù)依據(jù),為了方便計算,本文以3點方向作為讀數(shù)的基準(zhǔn)方向,所建坐標(biāo)系如圖8所示。

圖8 鐘表指針坐標(biāo)系Fig.8 Coordinate system of clock pointer

從圖8可以看出,坐標(biāo)系將整個表盤分成4個象限。根據(jù)Hough變換檢測直線時得到的端點坐標(biāo)可以計算直線的斜率及傾斜角,假設(shè)直線的端點坐標(biāo)為A(p1x,p1y)、B(p2x,p2y),其中B(p2x,p2y)為兩端點中距離圓心較遠的點,直線斜率及傾斜角的計算公式如下:

(5)

α=arctan (k)

(6)

式中:k為直線在x-y直角坐標(biāo)系的斜率,α為直線與x軸正方向的夾角(α∈[-90°,90°]),則指針與3點刻度線的夾角θ(θ∈[0°,180°])可由公式(7)計算得出。

(7)

當(dāng)B(p2x,p2y)落在X-Y坐標(biāo)系的坐標(biāo)軸上時,θ的取值如公式(8)所示:

(8)

根據(jù)公式(7)得到指針與3點刻度線的夾角θ后,進行讀數(shù)。時針每30°為一個區(qū)間范圍,分針和秒針每6°為一個區(qū)間范圍,讀數(shù)公式如下:

(9)

(10)

(11)

式中:T1、T2、T3分別為秒針、分針、時針的讀數(shù)。

由于標(biāo)準(zhǔn)時間的格式為XX:XX:XX,當(dāng)計算得到T1、T2中的某個值為個位數(shù)時,在前面空位補0。

3 實驗結(jié)果與分析

常見的鐘表主要包括羅馬數(shù)字刻度鐘表、阿拉伯?dāng)?shù)字刻度鐘表及無數(shù)字刻度鐘表。為了驗證各類鐘表的識別準(zhǔn)確性,分別采集以上3類鐘表的圖片構(gòu)成樣本數(shù)據(jù)集。樣本數(shù)據(jù)集共包括3類鐘表圖片200張,其中羅馬數(shù)字刻度鐘表和阿拉伯?dāng)?shù)字刻度鐘表圖片各70張,無數(shù)字刻度鐘表圖片60張。為了方便處理,將采集到的圖片統(tǒng)一歸一化為230×230,選取的鐘表圖片無傾斜、不均勻縮放等情況。

圖9 樣本數(shù)據(jù)集圖片F(xiàn)ig.9 Images of samples

在Window 10[處理器為Intel(R)]Core(TM)i7-8586U CPU 1.8 GHZ,內(nèi)存8 GB系統(tǒng)下使用MATLAB 2016 a對鐘表圖像進行處理。實驗證明,通過Hough變換能夠進行簡單鐘表圖片的基本讀數(shù),選取其中10張圖片進行測試,測試結(jié)果見表1。

表1 指針示數(shù)識別結(jié)果分析Tab.1 Analysis of recognition results of pointer indication

從表1可以看出,指針示數(shù)對阿拉伯?dāng)?shù)字刻度鐘表和無數(shù)字刻度鐘表均能夠較正確地識別,由于只考慮了指針的長度特征,導(dǎo)致部分圖片的秒針和分針容易混淆;羅馬數(shù)字刻度鐘表由于受羅馬數(shù)字刻度的影響,識別率較低。

4 討論與結(jié)論

Hough變換多用于指針式儀表的自動識別[2,7-11],許麗等[15]經(jīng)過分析指針轉(zhuǎn)動和圖像特性,提出了基于Hough變換的指針角度識別;姚洋等[16]對Canny檢測算子進行改進,結(jié)合Hough變換進行儀表圖像的識別。本文首次提出基于Hough變換的指針式鐘表示數(shù)的自動識別算法,借助二值化、邊緣檢測等數(shù)字圖像處理的知識完成指針式鐘表的預(yù)處理,之后應(yīng)用Hough變換檢測圓和直線的原理提取表盤特征和指針,根據(jù)指針的長度和斜率確定指針?biāo)诘奈恢煤拖笙蓿?點方向為基準(zhǔn),確定指針的示數(shù)。實驗證明本文的算法能較準(zhǔn)確地識別鐘表圖片示數(shù),但對于羅馬數(shù)字刻度鐘表、二值針鐘表、表盤光照不均勻及表盤傾斜等情況下的識別效果有待進一步研究。

猜你喜歡
指針式自動識別讀數(shù)
不同摟草方式對苜蓿草品質(zhì)的影響
自動識別系統(tǒng)
特別健康(2018年3期)2018-07-04 00:40:18
讀數(shù)
中國公路(2017年19期)2018-01-23 03:06:36
讀數(shù)
中國公路(2017年15期)2017-10-16 01:32:04
讀數(shù)
中國公路(2017年9期)2017-07-25 13:26:38
讀數(shù)
中國公路(2017年7期)2017-07-24 13:56:40
金屬垃圾自動識別回收箱
基于IEC61850的配網(wǎng)終端自動識別技術(shù)
電測與儀表(2016年6期)2016-04-11 12:06:38
淺談指針式萬用表的測量方法與使用要點
基于提升小波變換的指針式儀表圖像邊緣檢測
泊头市| 镇康县| 津南区| 本溪市| 明水县| 怀仁县| 新竹县| 镇坪县| 玉山县| 遂溪县| 昌黎县| 荣成市| 洛扎县| 长汀县| 滨州市| 黎平县| 新宾| 禄劝| 报价| 丰镇市| 潍坊市| 益阳市| 错那县| 内乡县| 龙海市| 长春市| 军事| 永兴县| 金华市| 怀仁县| 年辖:市辖区| 阿坝县| 云霄县| 萨迦县| 贵溪市| 县级市| 达尔| 临洮县| 敦煌市| 延安市| 瑞丽市|