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

?

基于視頻圖像識別的水位數(shù)據(jù)獲取方法

2013-07-16 05:55:28陳金水
水利信息化 2013年1期
關(guān)鍵詞:水尺二進(jìn)制刻度

陳金水

(河海大學(xué) 計算機(jī)與信息學(xué)院,江蘇 南京 210098)

0 引言

傳統(tǒng)的水位量測有 2 種方式,一種是安裝水尺,人工目測讀數(shù),這種方法耗時耗力,特別是在環(huán)境惡劣情況下,會對量測人員的安全構(gòu)成威脅;另一種方式是利用傳感器自動采集表征水位的模擬量,然后轉(zhuǎn)換成水位數(shù)據(jù)。水位傳感器主要有浮子機(jī)械(光電)編碼式、壓力式、雷達(dá)式、超聲波式等傳感器,這些傳感器各有優(yōu)點,但缺點也非常明顯,例如浮子機(jī)械(光電)編碼式可靠、便宜,適合各種情況使用,但是,需要建造測井房,造價高;壓力式傳感器受水質(zhì)變化的影響,要經(jīng)常檢查并調(diào)整率定系數(shù);超聲波水位傳感器置于明渠之上,外界干撓多,常帶來所測水位漂移的現(xiàn)象。

本文在試驗研究的基礎(chǔ)上,利用 CCD 攝像機(jī)獲取水尺視頻,然后從視頻流中實時提取水尺圖像,通過邊緣檢測、灰度拉伸、二值化等一系列處理后,獲得目標(biāo)特征圖像:刻度線,再運用 Hough變換,識別出刻度線條數(shù),從而計算出水位值。這個過程除了利用攝像機(jī)獲取視頻外,主要通過軟件實現(xiàn),因此精度高、環(huán)境要求低,具有應(yīng)用前景。

1 含有水尺的圖像信息獲取及預(yù)處理

從水尺圖像中獲取水位數(shù)據(jù),首先需要經(jīng)過視頻流截取、彩色圖像到灰度圖像的轉(zhuǎn)換、刻度區(qū)提取、刻度圖像二值化、去噪及刻度線細(xì)化等一系列預(yù)處理。

1.1 視頻流的截取

一般攝像機(jī)拍攝到的視頻流都是 AVI(Audio Video Interleaved)格式。利用微軟 MSDN(Microsoft Developer Network)提供的 AVI 處理函數(shù),可以從視頻流中截取圖像。為了避免非常態(tài)干擾,保證測量精度,1 次可以提取多幀圖像,處理后,取其平均值作為某一時刻的水位測量值。

1.2 圖像的灰度轉(zhuǎn)換

如果用彩色攝像機(jī)獲取視頻,應(yīng)先將彩色圖像轉(zhuǎn)換成灰度圖像以方便后續(xù)的處理。以 256 色的彩色圖像為例,灰度轉(zhuǎn)換可利用以下公式[1]:

式中:R,G,B 對應(yīng)的是紅,綠,藍(lán) 3 種顏色的亮度值。

灰度化的結(jié)果如圖1 所示。

2.3 水尺圖像的提取

對圖像的邏輯操作主要以像素為對象,對 2 幅或多幅圖像進(jìn)行“與”和“或”操作。例如,1 個任意的二進(jìn)制數(shù)與全 1 的二進(jìn)制數(shù)進(jìn)行“與”操作,結(jié)果保留原來的二進(jìn)制數(shù);如果與全 0 的二進(jìn)制數(shù)進(jìn)行“與”操作,結(jié)果為全 0。同樣,1 個任意的二進(jìn)制數(shù)與全 1 的二進(jìn)制數(shù)進(jìn)行“或”操作,結(jié)果為全 1;如果與全 0 的二進(jìn)制數(shù)進(jìn)行“或”操作,則結(jié)果保留原來的二進(jìn)制數(shù)?!芭c”和“或”操作通常作為模版,通過操作可以從 1 幅圖像中提取出子圖像。在“與”和“或”圖像模版中,二進(jìn)制碼 1 表示白色,0 表示黑色[2]。

圖1 含有水尺的灰度圖像

因拍攝水尺的攝像機(jī)固定不動,故水尺在每幀圖像中的位置不變。依據(jù)這個特定情況,就可以建立 1 個要提取區(qū)域的圖像模版,大小正好包含刻度區(qū)域,如圖2 a 所示。

2.4 圖像的對比度拉伸

灰度轉(zhuǎn)換后得到的圖像只有白或黑 2 種灰度,因此,水面與刻度的灰度是一樣的。為了提取刻度區(qū)域,去除水面區(qū)域,必須擴(kuò)大兩者的灰度級差。可利用公式來擴(kuò)大[3]:

式中:(x, x1) 為包含水面與刻度線灰度值的 1 個灰度區(qū)間,通過 x1和 x2值的設(shè)定,擴(kuò)大水面與刻度線的灰度級差,如圖2 b 所示。

2.5 圖像的二值化處理

二值化的目的是去除非目標(biāo)圖像,包括水面、背景等。對于 1 幀特定的圖像,可以通過多次閾值試驗分析后得出 1 個合適閾值。由于攝像機(jī)捕獲的水尺圖像受光照的影響,無法給定 1 個常量閾值對圖像進(jìn)行二值化,不過,可以利用全局門限處理得到 1 個較為合適的閾值。設(shè)門限 T 是最大與最小灰度的中間值,利用這個門限去除背景部分,留下對象本身,就可以通過對圖像的分割,實現(xiàn)去留。具體做法是:灰度級 ≤ T 的像素均標(biāo)記為黑色(0),灰度級> T 的像素均標(biāo)記為白色(255)。

門限 T 的計算步驟如下:

1)選擇 1 個 T 的初始值;

2)用 T 分割圖像,生成 2 組像素,由所有灰度值> T 的像素組成區(qū)域 G1,所有灰度值 ≤ T 的像素組成區(qū)域 G2;

3)對區(qū)域 G1和 G2中的所有像素計算平均灰度值 μ1和 μ2;

4)計算新的門限值

5)重復(fù)步驟 2 到 4,直到逐次迭代所得的 T 值之差小于事先定義的參數(shù)。

經(jīng)過二值化處理后就可以得到只有刻度線的圖像,如圖2 c 所示。

圖2 水尺區(qū)域圖像的灰度拉伸和二值化

2.6 圖像腐蝕

水面及背景去除后,還可能留有一些與刻度線灰度值相當(dāng)?shù)母蓴_點,因此,還要進(jìn)一步通過腐蝕去除這些干擾點,謂之去噪。因為水尺刻度線均為水平線,所以沿水平方向腐蝕即可。

腐蝕的過程如下:對二值圖像中所有的黑點進(jìn)行遍歷,如果當(dāng)前黑點的左右 2 個點都為黑色,那么保持不變;否則把當(dāng)前黑點變?yōu)榘c。

2 次腐蝕的結(jié)果如圖3 a 和 3 b 所示。

2.7 圖像的“細(xì)化”

圖像所表征的核心意義是去除了“雜質(zhì)”和次要因素后的圖像“骨架”?!肮羌堋钡墨@得過程通常稱為圖像“細(xì)化”。通過對“骨架”幾何及拓?fù)湫再|(zhì)的識別,可以獲取其表征對象的信息。

在“細(xì)化”圖像的過程中應(yīng)滿足以下 2 個條件:1)圖像要按比例縮放;2)圖像的連通性質(zhì)應(yīng)保持不變。

“細(xì)化”算法:設(shè) 1 幅圖像中的 1 個 3×3 區(qū)域,共 9 個像素點,用 P1,…,P9標(biāo)記,其中 P1位于中心,P2在 P1的正上方,P3,…,P9依次沿 P2的逆時針方向排列。

如果 P1= 1(即黑點),同時滿足以下 4 個條件,則刪除 P1(P1= 0):

1)2≤ NZ(P1)≤ 6;

2)Z0(P1)= 1;

3) P2· P4· P8= 0 或者 Z0(P1)≠ 1

4) P2· P4· P6= 0 或者 Z0(P4)≠ 1;

式中:NZ(P1)表示以 P1為中心的 8 個點的和;Z0(P1)表示以 P1為中心的 8 個點,從正上方的點開始,按逆時針方向順序進(jìn)行排列,相鄰 2 個點出現(xiàn) 0,1(白,黑)的總次數(shù)。

圖3 水尺刻度腐蝕和細(xì)化的結(jié)果

對圖像中的每個點重復(fù)上述步驟,直到所有的點都不可刪除為止。水尺刻度細(xì)化的結(jié)果如圖3 c 所示。

3 基于 Hough變換的水位量測

3.1 Hough變換

Hough變換[4]的基本思想是利用點、線的對偶性,將笛卡兒坐標(biāo)空間的直線變換為極坐標(biāo)空間中的點。圖4 a 中的直線是笛卡兒坐標(biāo)系中的 1 條直線,如果用 ρ 代表直線距原點的法線距離,用 θ 表示法線與 x 軸的夾角,則經(jīng)過 Hough變換后可用如下參數(shù)方程表示該直線:ρ = xcos θ + ysin θ。

該直線在極坐標(biāo)系中就是圖4 b 所示的點(ρ,θ)。笛卡兒坐標(biāo)系中通過公共點的 1 簇直線(圖4 c),映射到極坐標(biāo)系中則是 1 個點集,這些點集構(gòu)成 1 條曲線,正好是正弦曲線(圖4 d)。

在笛卡兒坐標(biāo)系中共直線的點(如圖4 e 中的(x1, y1),(x2, y2),(x3, y3),3 點共線)映射到極坐標(biāo)系中就是共點的 1 簇曲線(圖4 f )。在圖4 f 中還可以看到這 3 條曲線有 2 個交點,這 2 個交點所對應(yīng)的橫坐標(biāo)值即法向角的度數(shù)相差 180°,對應(yīng)到笛卡兒坐標(biāo)系中就是同一條直線。如果令直線的法向角的取值范圍為:0≤ θ < π ,其交點就只有 1 個。顯然,Hough變換在不同的線和點之間建立了對應(yīng)關(guān)系。

圖4 Hough變換

3.2 水位量測算法

由分析可知,Hough變換就是將(x, y)平面中的所有直線變換成(ρ, θ)平面的 1 簇曲線。統(tǒng)計變換域(ρ, θ)中這 1 簇曲線經(jīng)過最多次的點,該點對應(yīng)的就是 1 條直線。圖5 為 2 條直線 y = 3,y = 5,θ細(xì)分為 1°時的變換域(ρ,θ)的曲線圖。

圖5 變換域(ρ, θ)的曲線圖

圖5 中,θ = π /2 附近有 2 個點對應(yīng)的直線累加值最高(該值就是其在(x, y)平面中所對應(yīng)直線上的像素點的個數(shù))。因此,可以認(rèn)定,這 2 個點對應(yīng)(x, y)平面中的的 2 條直線。在實際應(yīng)用中,根據(jù)水尺中刻度線的長度,定義其像素點個數(shù)作為判定條件,以簡化算法。例如,定義(ρ, θ)域中的點對應(yīng)的直線累加值大于 50 時,認(rèn)為該點對應(yīng) 2 條刻度線。但是,試驗發(fā)現(xiàn)由于曲線間的互相干擾及參數(shù)ρ,θ 值對直線檢測性能的影響,變換域(ρ, θ)中的一些點,尤其是累加值最高處的其他點對應(yīng)的累加值也很高,也會被誤認(rèn)為對應(yīng) 1 條直線,這樣很容易造成同一條直線被重復(fù)計算。

因此,必須對 Hough變換做實用性改進(jìn)。具體做法是先找到變換域(ρ, θ)中 1 個滿足條件的點(例如,其對應(yīng)的直線累加值大于50),然后將該點及其附近點對應(yīng)的累加值清零,以避免重復(fù)計算。

算法思想:首先找出變換域(ρ, θ)中對應(yīng)直線累加值最大的點,該點就對應(yīng)于(x, y)域中最長的1 條直線,在原圖像中將該直線刪除。對剩下的直線再進(jìn)行 Hough 變化,繼續(xù)尋找變換域(ρ, θ)中對應(yīng)直線累加值最大的點,再將該點對應(yīng)于(x, y)域中的直線刪除。依此過程,直至變換域(ρ, θ)中的點對應(yīng)的直線累加值都小于設(shè)定值(如 50)時,就認(rèn)為已經(jīng)沒有要識別的刻度線了,這時統(tǒng)計出被刪除的直線條數(shù),即可獲取水位值。

算法描述如下:

1) 從原圖像的(x, y)平面中找出 1 個黑點;

2)對通過(1)找到的黑點的直線利用 Hough變換在(ρ, θ)平面繪制正弦曲線,每繪制 1 條正弦曲線,累加器加 1;

3)在(ρ, θ)平面中尋找累加器最大值(如50)對應(yīng)的點,如果找到,則該點就對應(yīng)(x, y)平面的 1 條直線(刻度線),假設(shè)用 n 表示刻度線的條數(shù),這時 n + 1,否則執(zhí)行(5);

4) 將找出的直線從原圖像中刪除,然后回到(1);

5)計算 n 的值,將該值乘以刻度單位即得出水面以上水尺的長度,水尺總長度(已知)與水面以上水尺長度的差即要量測的水位數(shù)據(jù)。

4 結(jié)語

本文研究的從水尺圖像中獲取水位數(shù)據(jù)的方法,也可以用來獲取閘位數(shù)據(jù),并且精度高(只受攝像機(jī)分辨率的影響),費用低,不需要太多的輔助設(shè)施。當(dāng)然,這種水位獲取方式在實用化過程中還有一些問題需要妥善處理。例如,現(xiàn)場可能會因雨、霧、陰天、夜晚等情況,導(dǎo)致光照不足,獲取的水尺圖像清晰度低,難以識別,這時,必須在現(xiàn)場安裝照明設(shè)施以提高圖像的清晰度。本文對刻度線的識別算法只適合水尺表面有輕度污染的情況,對嚴(yán)重污染還需要研究專門的識別方法或輔以人工清理。另外,針對實際應(yīng)用中對水位數(shù)據(jù)采集實時性的不同要求,還存在個現(xiàn)場數(shù)字轉(zhuǎn)換還是遠(yuǎn)程數(shù)字轉(zhuǎn)換的問題?,F(xiàn)場數(shù)字轉(zhuǎn)換因現(xiàn)場不可能配置高性能的計算機(jī),所以需要研究更高效的算法;遠(yuǎn)程數(shù)字轉(zhuǎn)換對算法效率要求較低,但要遠(yuǎn)程傳輸視頻或圖像,因此需要配置高速、寬帶的通信鏈路。

[1]何斌,馬文予,王運堅,等. Visual C++ 數(shù)字圖像處理[M]. 北京:人民郵電出版社,2004: 4-7.

[2]岡薩雷斯. 數(shù)字圖像處理[M]. 2 版. 北京:電子工業(yè)出版社,2005: 18-20.

[3]馬濤,余春暄. 數(shù)字圖像處理在指針式指示表讀數(shù)識別中的應(yīng)用[J]. 微計算機(jī)信息,2004, 20 (7): 50-51.

[4]胡方明,彭國華. Hough變換空間中基于直線的模板匹配[J]. 計算機(jī)工程,2011, 37 (10): 140-142.

猜你喜歡
水尺二進(jìn)制刻度
淺析國內(nèi)海洋漁船與海船載重線、水尺標(biāo)志勘劃的區(qū)別
珠江水運(2021年24期)2022-01-23 08:25:10
用二進(jìn)制解一道高中數(shù)學(xué)聯(lián)賽數(shù)論題
海運電廠船舶靠岸側(cè)水尺圖像采集實驗研究*
有趣的進(jìn)度
水尺標(biāo)志放樣及數(shù)控切割解決問題方案
廣船科技(2019年2期)2019-10-16 10:43:02
二進(jìn)制在競賽題中的應(yīng)用
歐姆表的刻度真的不均勻嗎?
——一個解釋歐姆表刻度不均勻的好方法
被吃掉刻度的尺子
誰大誰小
測量三字歌
资兴市| 新巴尔虎右旗| 南昌县| 西林县| 乐安县| 三都| 邹城市| 汪清县| 五寨县| 汝阳县| 美姑县| 锦州市| 太和县| 阿拉尔市| 济阳县| 博湖县| 红桥区| 砀山县| 南宁市| 阜康市| 翁源县| 化德县| 富源县| 安陆市| 绥化市| 大城县| 雷波县| 诏安县| 铁力市| 高陵县| 朝阳县| 酒泉市| 海门市| 错那县| 甘南县| 牟定县| 卢湾区| 宁阳县| 闽侯县| 抚顺市| 贵南县|