本發(fā)明涉及一種雨量記錄圖紙的數(shù)字化方法、裝置,利用計(jì)算機(jī)自動(dòng)識(shí)別雨量記錄圖紙所記錄的雨量數(shù)據(jù),屬于水文氣象、數(shù)字化圖像處理、圖像識(shí)別以及數(shù)據(jù)庫相交叉的技術(shù)領(lǐng)域。
背景技術(shù):
在計(jì)算機(jī)沒有普及之前,在水利、氣象、生物醫(yī)學(xué)、石油地質(zhì)等領(lǐng)域,都是通過特定儀器或者人工將觀測的有效數(shù)據(jù)信息繪制在紙質(zhì)工程圖紙上。這些紙質(zhì)水文資料上的數(shù)據(jù)均是比較珍貴的歷史資料,記錄流量、水位、降水量、蒸發(fā)量等,其中很多的數(shù)據(jù)會(huì)被經(jīng)常用來進(jìn)一步分析與處理,對(duì)這些有效信息的利用與共享將為我國水利工程建設(shè)提供科學(xué)的理論與依據(jù),將會(huì)大大促進(jìn)我國水利事業(yè)的發(fā)展。
然而這類水文紙質(zhì)資料并不是完全保存完整,隨著時(shí)間,會(huì)受到存放條件、溫度、環(huán)境等影響,導(dǎo)致如紙質(zhì)磨壞破損、時(shí)間過久老化、字跡變淡模糊、紙質(zhì)資料字跡滲透等污染,這些都會(huì)對(duì)歷史數(shù)據(jù)的安全以及價(jià)值帶來影響。因此對(duì)這類紙質(zhì)資料進(jìn)行數(shù)字化,將紙質(zhì)水文資料中的重要的數(shù)據(jù)轉(zhuǎn)移到計(jì)算機(jī)中進(jìn)行分類存儲(chǔ)和處理是很有必要的。
由于水文紙質(zhì)資料種類繁多以及數(shù)據(jù)多樣化,對(duì)這些資料進(jìn)行保存到計(jì)算機(jī)的過程中,一般是以人工為主,選擇代表性的節(jié)點(diǎn)及數(shù)據(jù),指定插值或曲線擬合的方法,計(jì)算出某一時(shí)間的水位信息等數(shù)據(jù)。但是曲線形態(tài)各異,擬合或插值并不能通用。另一種方式是通過人工錄入數(shù)據(jù)并建立大型數(shù)據(jù)庫,由于資料種類繁多數(shù)據(jù)量大,工作量巨大且易出錯(cuò),數(shù)據(jù)需要經(jīng)過嚴(yán)格的審查與校核才能入庫,并需要提供各種不同的檢索方式,而且并不保證能夠在最短時(shí)間準(zhǔn)確找到需要的數(shù)據(jù)。
在種類繁多的水文紙質(zhì)資料中,雨量記錄圖紙又具有其特殊性。每張雨量圖都會(huì)記錄1天以上的降雨量,其中沒有降雨的天對(duì)應(yīng)的記錄曲線是一條水平直線。而對(duì)應(yīng)有降雨的曲線記錄當(dāng)天8時(shí)到第二天8時(shí)的降雨過程線,它從某一較低的 刻度開始,如果此24小時(shí)內(nèi)降雨超過了量杯(滿量杯為10mm),就將量杯的雨水倒出繼續(xù)計(jì)量,因此曲線會(huì)形成若干個(gè)峰,峰值在9-10mm之間。最后一次量杯里的降雨一直上漲,但只要量杯未滿,則對(duì)應(yīng)曲線上的量杯未滿記錄線。計(jì)算該日的降雨量,需要求得各峰值以及量杯未滿記錄值的和,最終得到降雨量。對(duì)于雨量記錄紙,有以下幾個(gè)特點(diǎn):由于需要記錄24小時(shí)的降雨過程,因此記錄紙幅寬較大,相機(jī)拍攝得到的圖像像素多,容易產(chǎn)生光照不均勻現(xiàn)象,表現(xiàn)在同一根曲線不同部分顏色不一致;由于降雨過程復(fù)雜,在連續(xù)下暴雨時(shí),峰比較密集,表現(xiàn)在雨量線陡降陡升;并且由于一張紙上記錄了多天降雨信息,記錄線之間既可能互相平行,也可能互相交錯(cuò),傳統(tǒng)圖像處理方法不易跟蹤分析每根線的過程變化。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題在于克服現(xiàn)有技術(shù)不足,提供一種雨量記錄圖紙的數(shù)字化方法,能夠從雨量記錄圖紙圖像中快速而準(zhǔn)確地自動(dòng)提取出所記錄的降雨量數(shù)據(jù),便于后續(xù)的數(shù)據(jù)查詢分析。
本發(fā)明具體采用以下技術(shù)方案解決上述技術(shù)問題:
雨量記錄圖紙的數(shù)字化方法,利用計(jì)算機(jī)自動(dòng)識(shí)別雨量記錄圖紙所記錄的雨量數(shù)據(jù),包括以下步驟:
步驟A、從雨量記錄圖紙的數(shù)字圖像中分別提取出二值化的網(wǎng)格圖像、雨量線圖像;
步驟B、對(duì)網(wǎng)格圖像、雨量線圖像進(jìn)行傾斜校正;
步驟C、利用行列投影的方法從傾斜校正后的網(wǎng)格圖像中確定網(wǎng)格區(qū)域的邊界,并將傾斜校正后的網(wǎng)格圖像、雨量線圖像中的邊界外區(qū)域設(shè)置為二值化背景;
步驟D、將雨量線圖像中的直線設(shè)置為二值化背景;
步驟E、將雨量線圖像對(duì)應(yīng)到網(wǎng)格圖像,求出雨量線上各個(gè)峰值點(diǎn)以及最右側(cè)峰值點(diǎn)右側(cè)延長線的最大值點(diǎn),最后對(duì)以上各點(diǎn)所對(duì)應(yīng)的雨量值求和,得到降雨量。
優(yōu)選地,使用以下方法從雨量記錄圖紙的數(shù)字圖像中提取出二值化的雨量線圖像:
步驟1、對(duì)雨量記錄圖紙的數(shù)字圖像進(jìn)行高斯金字塔重采樣處理,得到所述數(shù)字 圖像的低分辨率圖像;
步驟2、對(duì)所述低分辨率圖像進(jìn)行初步二值化處理,得到初步二值化的雨量線圖像;
步驟3、將雨量記錄圖紙的數(shù)字圖像、低分辨率圖像、初步二值化的雨量線圖像分別按照同樣的劃分方式劃分為從左到右的N個(gè)子圖像,N為大于1的整數(shù);
步驟4、找出初步二值化的雨量線圖像的第i個(gè)子圖像中每個(gè)目標(biāo)像素點(diǎn)在低分辨率圖像的第i個(gè)子圖像中的對(duì)應(yīng)像素點(diǎn),i=1,2,…,N,并在CIE Lab顏色空間中計(jì)算出這些像素點(diǎn)與其均值點(diǎn)(L_avg,a_avg,b_avg)之間的最大空間距離dTh;
步驟5、遍歷雨量記錄圖紙的數(shù)字圖像的第i個(gè)子圖像中的所有像素點(diǎn),將滿足以下條件的像素點(diǎn)設(shè)置為二值化目標(biāo),其余像素點(diǎn)設(shè)置為二值化背景:在CIE Lab顏色空間中與均值點(diǎn)(L_avg,a_avg,b_avg)之間的距離小于dTh,且在HSI顏色空間中的H分量大于hTh,hTh為大于或等于180的預(yù)設(shè)H分量閾值;從而得到最終的二值化的雨量線圖像。
進(jìn)一步地,所述對(duì)網(wǎng)格圖像、雨量線圖像進(jìn)行傾斜校正,具體如下:從初步二值化的雨量線圖像中找出最長的直線,然后利用霍夫變換方法檢測出該直線的傾斜角度,最后按照檢測出的傾斜角度對(duì)網(wǎng)格圖像、雨量線圖像進(jìn)行旋轉(zhuǎn)校正。
優(yōu)選地,使用改進(jìn)的Niblack算法對(duì)低分辨率圖像進(jìn)行初步二值化處理,具體如下:首先將所述低分辨率圖像灰度化;然后利用以下公式確定各像素點(diǎn)的二值化閾值:
其中T(x,y)為點(diǎn)(x,y)的二值化閾值,m(x,y)是點(diǎn)(x,y)周圍預(yù)設(shè)大小模板內(nèi)點(diǎn)的灰度均值;s(x,y)表示模板內(nèi)像素點(diǎn)灰度值的標(biāo)準(zhǔn)差;參數(shù)k的取值范圍為[0.4,0.6],R為128;
如點(diǎn)(x,y)處的灰度值小于T(x,y),則設(shè)置其為背景,否則,設(shè)置為目標(biāo)。
根據(jù)相同的發(fā)明思路還可以得到以下技術(shù)方案:
雨量記錄圖紙的數(shù)字化裝置,包括:
網(wǎng)格圖像提取單元,用于從雨量記錄圖紙的數(shù)字圖像中提取出二值化的網(wǎng)格圖像;雨量線圖像提取單元,用于從雨量記錄圖紙的數(shù)字圖像中提取出二值化的雨量線圖像;
傾斜校正單元,用于對(duì)網(wǎng)格圖像提取單元和雨量線圖像提取單元所輸出的網(wǎng)格圖像、雨量線圖像進(jìn)行傾斜校正;
網(wǎng)格裁剪單元,用于利用行列投影的方法從傾斜校正后的網(wǎng)格圖像中確定網(wǎng)格區(qū)域的邊界,并將傾斜校正后的網(wǎng)格圖像、雨量線圖像中的邊界外區(qū)域設(shè)置為二值化背景;
直線去除單元,用于將雨量線圖像中的直線設(shè)置為二值化背景;
降雨量計(jì)算單元,用于將雨量線圖像對(duì)應(yīng)到網(wǎng)格圖像,求出雨量線上各個(gè)峰值點(diǎn)以及最右側(cè)峰值點(diǎn)右側(cè)延長線的最大值點(diǎn),最后對(duì)以上各點(diǎn)所對(duì)應(yīng)的雨量值求和,得到降雨量。
優(yōu)選地,所述雨量線圖像提取單元具體包括:
高斯金字塔重采樣模塊,用于對(duì)雨量記錄圖紙的數(shù)字圖像進(jìn)行高斯金字塔重采樣處理,得到所述數(shù)字圖像的低分辨率圖像;
初步二值化處理模塊,用于對(duì)所述低分辨率圖像進(jìn)行初步二值化處理,得到初步二值化的雨量線圖像;
圖像劃分模塊,用于將雨量記錄圖紙的數(shù)字圖像、低分辨率圖像、初步二值化的雨量線圖像分別按照同樣的劃分方式劃分為從左到右的N個(gè)子圖像,N為大于1的整數(shù);
閾值獲取模塊,用于找出初步二值化的雨量線圖像的第i個(gè)子圖像中每個(gè)目標(biāo)像素點(diǎn)在低分辨率圖像的第i個(gè)子圖像中的對(duì)應(yīng)像素點(diǎn),i=1,2,…,N,并在CIE Lab顏色空間中計(jì)算出這些像素點(diǎn)與其均值點(diǎn)(L_avg,a_avg,b_avg)之間的最大空間距離dTh;
雨量線圖像輸出模塊,用于遍歷雨量記錄圖紙的數(shù)字圖像的第i個(gè)子圖像中的所有像素點(diǎn),將滿足以下條件的像素點(diǎn)設(shè)置為二值化目標(biāo),其余像素點(diǎn)設(shè)置為二值化背景:在CIE Lab顏色空間中與均值點(diǎn)(L_avg,a_avg,b_avg)之間的距離小于dTh,且在HSI顏色空間中的H分量大于hTh,hTh為大于或等于180的預(yù)設(shè)H分量閾值;從而得到最終的二值化的雨量線圖像。
進(jìn)一步地,所述傾斜校正單元使用以下方法對(duì)網(wǎng)格圖像提取單元和雨量線圖像提取單元所輸出的網(wǎng)格圖像、雨量線圖像進(jìn)行傾斜校正:從初步二值化的雨量線圖像中利用霍夫變換方法檢測出最長直線的傾斜角度,最后按照檢測出的傾斜角度對(duì)網(wǎng)格圖像、雨量線圖像進(jìn)行旋轉(zhuǎn)校正。
優(yōu)選地,所述初步二值化處理模塊使用改進(jìn)的Niblack算法對(duì)低分辨率圖像進(jìn)行初步二值化處理,具體如下:首先將所述低分辨率圖像灰度化;然后利用以下公式確定各像素點(diǎn)的二值化閾值:
其中T(x,y)為點(diǎn)(x,y)的二值化閾值,m(x,y)是點(diǎn)(x,y)周圍預(yù)設(shè)大小模板內(nèi)點(diǎn)的灰度均值;s(x,y)表示模板內(nèi)像素點(diǎn)灰度值的標(biāo)準(zhǔn)差;參數(shù)k的取值范圍為[0.4,0.6],R為128;
如點(diǎn)(x,y)處的灰度值小于T(x,y),則設(shè)置其為背景,否則,設(shè)置為目標(biāo)。
進(jìn)一步地,該裝置還包括用于獲取雨量記錄圖紙的數(shù)字圖像的圖像獲取單元,以及用于存儲(chǔ)降雨量計(jì)算單元所輸出降雨量數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)單元。
相比現(xiàn)有技術(shù),本發(fā)明具有以下有益效果:
本發(fā)明能夠從雨量記錄圖紙圖像中快速而準(zhǔn)確地自動(dòng)提取出所記錄的降雨量數(shù)據(jù),便于后續(xù)的數(shù)據(jù)查詢分析,大幅提高了雨量數(shù)據(jù)數(shù)字化的效率,降低了人力和時(shí)間成本;
本發(fā)明在進(jìn)行雨量線圖像提取時(shí),先利用高斯金字塔模型獲取低分辨率圖像,然后對(duì)低分辨率圖像進(jìn)行初步的二值化處理,最后結(jié)合雨量記錄圖紙圖像CIE Lab顏色空間和HSI顏色空間特點(diǎn),對(duì)初步的二值化處理結(jié)果進(jìn)行進(jìn)一步優(yōu)化,有效降低了計(jì)算量,提高了提取速度,且獲得的結(jié)果更加準(zhǔn)確;
本發(fā)明以初步二值化的雨量線圖像中的最長直線作為參考來進(jìn)行霍夫變換傾斜校正,算法更簡單,準(zhǔn)確度更好。
附圖說明
圖1為實(shí)際雨量記錄圖紙;
圖2為具體實(shí)施方式中本發(fā)明數(shù)字化方法的流程示意圖;
圖3為初步二值化的雨量線圖像;
圖4為二次優(yōu)化后的雨量線圖像;
圖5為提取出的二值化的網(wǎng)格圖像;
圖6為傾斜校正后的雨量線圖像;
圖7為傾斜校正后的網(wǎng)格圖像;
圖8為裁剪后的雨量線圖像;
圖9為裁剪后的網(wǎng)格圖像;
圖10為去除直線后的雨量線圖像。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說明:
圖1顯示了一份實(shí)際雨量記錄圖紙,如圖所示,每張雨量圖都會(huì)記錄1天以上的降雨量,其中沒有降雨的天對(duì)應(yīng)的記錄曲線是一條水平直線。而對(duì)應(yīng)有降雨的曲線記錄當(dāng)天8時(shí)到第二天8時(shí)的降雨過程線,它從某一較低的刻度開始,如果此24小時(shí)內(nèi)降雨超過了量杯,就將量杯的水倒出繼續(xù)計(jì)量,因此曲線會(huì)形成若干個(gè)峰,峰值在9-10mm之間。最后一次量杯里的降雨一直上漲,但只要量杯未滿,則對(duì)應(yīng)曲線上的量杯未滿記錄線。計(jì)算該日的降雨量,需要求得各峰值以及量杯未滿記錄值的和,最終得到降雨量。
本發(fā)明首先利用數(shù)字圖像處理技術(shù)從雨量記錄圖紙的數(shù)字圖像中提取網(wǎng)格圖像和雨量線圖像,然后對(duì)所提取出的圖像進(jìn)行校正、去噪等處理,然后根據(jù)雨量線峰值及延伸線極值計(jì)算出雨量值。圖2顯示了本發(fā)明方法的基本流程,具體包括以下步驟:
步驟A、從雨量記錄圖紙的數(shù)字圖像中分別提取出二值化的網(wǎng)格圖像、雨量線圖像。
1、雨量線提?。?/p>
由于雨量記錄圖紙比較大,用數(shù)碼相機(jī)拍攝的雨量圖分辨率都很高,通常達(dá)到4000*3000的像素級(jí)別。如直接對(duì)原圖(通常為標(biāo)準(zhǔn)的RGB位圖)進(jìn)行處理,顯然計(jì)算量大,提取速度慢,嚴(yán)重影響雨量記錄圖紙數(shù)字化效率。為解決這一問 題,本發(fā)明在提取雨量線時(shí)并不直接利用雨量記錄原圖I0進(jìn)行處理,而是通過構(gòu)造圖像高斯金字塔模型來獲取較低分辨率圖像,即對(duì)雨量記錄圖紙的數(shù)字圖像進(jìn)行高斯金字塔重采樣處理,然后對(duì)低分辨率圖像進(jìn)行處理。具體所采用的金字塔級(jí)數(shù)可根據(jù)原圖分辨率確定,例如,對(duì)于4000*3000尺度的原圖,可采用三級(jí)高斯金字塔模型,從而得到低分辨率圖像I2。圖像高斯金字塔為現(xiàn)有成熟技術(shù),為節(jié)省篇幅,此處不再贅述,具體細(xì)節(jié)可參考文獻(xiàn)(Rafale C Gonzalez,Richard E Woods著.數(shù)字圖像處理[M].阮秋琦,阮宇智等譯.北京:電子工業(yè)出版社,2004.)。
對(duì)低分辨率圖像I2進(jìn)行初步的二值化處理,得到初步二值化的雨量線圖像??刹捎矛F(xiàn)有的Niblack算法、灰度期望值法、Otsu方法等進(jìn)行初步二值化分割,本發(fā)明優(yōu)選采用改進(jìn)的Niblack算法(J.Sauvola,M.Pietikainen.Adaptive document image binarization.Pattern Recognition,33(2000),pp.225–236),具體如下:
先將低分辨率圖像I2進(jìn)行灰度化,然后利用以下改進(jìn)的Niblack公式進(jìn)行二值化處理:
其中T(x,y)為點(diǎn)(x,y)的閾值,m(x,y)是點(diǎn)(x,y)周圍預(yù)設(shè)大小模板(通常在9*9~15*15之間選取,優(yōu)選11*11)內(nèi)點(diǎn)的灰度均值;s(x,y)表示模板內(nèi)像素點(diǎn)灰度值的標(biāo)準(zhǔn)差;參數(shù)k的取值范圍為[0.4,0.6],優(yōu)選為0.5;由于我們將彩色圖像轉(zhuǎn)換成8位灰度圖像,所以R可設(shè)為128。當(dāng)點(diǎn)(x,y)處的灰度值小于T(x,y),則其二值圖像的值設(shè)為0,否則設(shè)為255,從而得到二值圖像I2B,由此可提取出雨量曲線的大部分。圖3顯示了采用改進(jìn)Niblack算法所得到初步二值化雨量線圖像的一個(gè)實(shí)例。
初步提取的雨量曲線由于受到背景干擾很大,所以得到的二值圖像含有很多噪點(diǎn)和多余信息,同時(shí)如果雨量曲線較細(xì),那么在模板中的白色像素點(diǎn)比例較大,使得閾值偏大,由此得到的曲線斷點(diǎn)較多,因此本發(fā)明對(duì)初步二值圖像進(jìn)行進(jìn)一步優(yōu)化,以此來提取更完整的雨量線圖像。本發(fā)明所采用的優(yōu)化方法具體如下:
①由于雨量記錄圖紙長度較大,在拍攝時(shí)容易產(chǎn)生光照不均,為了減少光照對(duì)雨量曲線的影響,首先將圖像I0、I2、I2B按照同樣的劃分方式劃分為從左到右 的多個(gè)子圖像,本實(shí)施例中將圖像均分為左、中、右三個(gè)部分;
②以左三分之一為例,將圖像I2在CIE Lab顏色空間中的三個(gè)分量歸一化;
③將二值圖像映射到CIE Lab彩色圖像I2中,統(tǒng)計(jì)求得與二值圖像中的黑色點(diǎn)(即初步獲取的雨量線上的點(diǎn))所對(duì)應(yīng)的點(diǎn)的L,a,b分量的均值L_avg,a_avg,b_avg;
④計(jì)算CIE Lab彩色圖像I2中各點(diǎn)到(L_avg,a_avg,b_avg)的歐幾里得距離dis,確定能提取出曲線的閾值dTh,本發(fā)明采用初步獲取的雨量線上的點(diǎn)到(L_avg,a_avg,b_avg)的最大距離作為dTh;
⑤經(jīng)大量分析觀察發(fā)現(xiàn),原始圖像HSI顏色模型中的雨量曲線H分量值通常都大于180,因此本發(fā)明進(jìn)一步以該值或稍大一些的值作為HSI顏色空間的H分量閾值hTh,本發(fā)明優(yōu)選hTh的值為200;
⑥遍歷原始圖像I0中的所有點(diǎn),將滿足以下條件的像素點(diǎn)設(shè)置為二值化目標(biāo),其余像素點(diǎn)設(shè)置為二值化背景:在CIE Lab顏色空間中與均值點(diǎn)(L_avg,a_avg,b_avg)之間的歐幾里得距離小于dTh,且在HSI顏色空間中的H分量大于hTh;亦即如果距離dis<dTh并且H>hTh,則將該像素點(diǎn)的值設(shè)為0,否則設(shè)為255;
⑦按照上述方法重復(fù)實(shí)現(xiàn)中三分之一,右三分之一部分,得到二次優(yōu)化的雨量曲線。圖3的初步雨量線圖像采用上述方法優(yōu)化后如圖4所示。
2、網(wǎng)格圖像提取
由于網(wǎng)格線的提取需要提取所有的橫向刻度線以及縱向刻度線,因此都是在原圖I0上進(jìn)行處理,本發(fā)明優(yōu)選采用中國發(fā)明專利申請(qǐng)(公開號(hào)為103971367A,申請(qǐng)日為2014/4/28)中所公開的網(wǎng)格圖像提取方法,具體步驟如下:
(1)利用Sobel梯度算子對(duì)灰度化的圖像進(jìn)行水平、垂直方向的梯度化,獲得兩個(gè)方向上的梯度圖以便獲得目標(biāo)線條的邊緣信息;
(2)在水平和垂直方向的梯度圖中,分別進(jìn)行處理(此處以水平方向?yàn)槔?,垂直方向的處理方式相?:
①為了減少光照不均的影響,對(duì)水平梯度圖分成左中右三塊,在對(duì)應(yīng)小塊 內(nèi),結(jié)合曲線提取的曲線所在位置,剔除掉對(duì)應(yīng)曲線的梯度值的影響,計(jì)算塊內(nèi)屬于網(wǎng)格線條的梯度均值Th;
②利用梯度均值Th對(duì)水平梯度化圖像進(jìn)行二值化,在水平梯度梯度化方向上,另加入像素點(diǎn)的水平梯度比垂直梯度大的條件,使得水平梯度化更加精確,根據(jù)此二值化結(jié)果初步獲得屬于橙黃色線條的位置信息;
③根據(jù)②中的獲得黃色線條位置信息,獲得水平方向上對(duì)應(yīng)位置上的像素點(diǎn)在CIE Lab空間的a和b分量大小,并統(tǒng)計(jì)這些位置點(diǎn)的a、b均值
④利用③中得到的如果像素點(diǎn)的a、b分量滿足則為目標(biāo),否則為背景,對(duì)原圖像進(jìn)行分割。
⑤獲得水平方向二值化圖;同樣方法獲得垂直方向的二值化圖。
(3)對(duì)水平和垂直方向的二值化圖進(jìn)行或運(yùn)算合并,得到整個(gè)圖像二值化圖;
(4)對(duì)于(4)中獲得的二值化圖分別進(jìn)行水平方向1×5的腐蝕并保存結(jié)果,和垂直方向上5×1的腐蝕保存結(jié)果,去除掉更多的離散點(diǎn);
(5)對(duì)得到水平和垂直兩個(gè)方向上的二值化圖進(jìn)行合并,得到最終的網(wǎng)格圖像。圖5顯示了提取出的網(wǎng)格圖像。
步驟B、對(duì)網(wǎng)格圖像、雨量線圖像進(jìn)行傾斜校正。
在獲取雨量記錄圖紙的圖像過程中,由于其幅面較大,往往會(huì)導(dǎo)致圖像出現(xiàn)不同程度的傾斜,因此有必要對(duì)圖像進(jìn)行傾斜校正?,F(xiàn)有的傾斜校正通常是采用霍夫變換的方法,求得圖像偏轉(zhuǎn)的角度,然后旋轉(zhuǎn)校正??紤]到雨量線圖像中會(huì)存在粗長的直線(無降雨的雨量曲線),便于識(shí)別處理,因此本發(fā)明從初步二值化的雨量線圖像中找出最長的直線,然后利用霍夫(Hough)變換方法檢測出該直線的傾斜角度,最后按照檢測出的傾斜角度對(duì)網(wǎng)格圖像、雨量線圖像進(jìn)行旋轉(zhuǎn)校正;其具體過程如下:
(1)在較小尺度的二值圖像I2B上遍歷黑色像素點(diǎn)(i,j),利用|i*cosα+j*sinα|求得(i,j)到原點(diǎn)的距離,并將其保存到累加器數(shù)組中;
(2)找到累加器數(shù)組的最大值,即二值圖像I2B中最長的直線,求得對(duì)應(yīng)偏轉(zhuǎn)角度α;
(3)根據(jù)角度α對(duì)原圖順時(shí)針旋轉(zhuǎn),轉(zhuǎn)換公式:i1=i*cosα+j*sinα,j1=i*cosα-j*sinα,其中(i,j)和(i1,j1)分別為原圖和旋轉(zhuǎn)后圖像的像素坐標(biāo),得到角度傾斜校正 后的雨量線圖像和網(wǎng)格圖像,分別如圖6、圖7所示。
步驟C、利用行列投影的方法從傾斜校正后的網(wǎng)格圖像中確定網(wǎng)格區(qū)域的邊界,并將傾斜校正后的網(wǎng)格圖像、雨量線圖像中的邊界外區(qū)域設(shè)置為二值化背景。
旋轉(zhuǎn)后的雨量線圖像和網(wǎng)格圖像包含了很多記錄圖紙以外部分的信息,因此需要將網(wǎng)格部分裁剪出來,避免其他信息的干擾。其具體方法如下:
(1)對(duì)網(wǎng)格圖像行、列投影,統(tǒng)計(jì)各行(列)的黑色像素點(diǎn)個(gè)數(shù);
(2)根據(jù)行(列)投影的統(tǒng)計(jì)設(shè)定閾值,此處行閾值取200,列閾值取400;
(3)根據(jù)設(shè)定的行列閾值找到網(wǎng)格線上下左右邊界;
(4)將網(wǎng)格邊界外的部分全部置為白色,得到裁剪后的圖像;裁剪后的雨量線圖像、網(wǎng)格圖像分別如圖8、圖9所示。
步驟D、將雨量線圖像中的直線設(shè)置為二值化背景。
通常雨量記錄圖中都包含若干天的降雨信息,而且其中前幾天是沒有降雨的,其雨量記錄就是一根直線,因此可以將雨量線圖像中的直線抹去,從而避免對(duì)后續(xù)有降雨的雨量記錄識(shí)別產(chǎn)生干擾。具體可采用如下方法:
(1)對(duì)雨量線圖像在網(wǎng)格的范圍內(nèi)從網(wǎng)格左端開始的450列做水平投影,統(tǒng)計(jì)黑色像素點(diǎn)的個(gè)數(shù);
(2)設(shè)定閾值Th,當(dāng)某行的水平投影統(tǒng)計(jì)值大于Th則認(rèn)定直線在此行上,并且第一次出現(xiàn)大于Th的行號(hào)保留為有雨天的記錄;
(3)在統(tǒng)計(jì)值大于Th的行號(hào)上下20行內(nèi)將所有像素點(diǎn)的灰度值設(shè)為255,得到抹去直線后的雨量線圖像,如圖10所示。
步驟E、將雨量線圖像對(duì)應(yīng)到網(wǎng)格圖像,求出雨量線上各個(gè)峰值點(diǎn)以及最右側(cè)峰值點(diǎn)右側(cè)延長線的最大值點(diǎn),最后對(duì)以上各點(diǎn)所對(duì)應(yīng)的雨量值求和,得到降雨量。
利用以上各步驟所得到的二值化雨量線圖像、網(wǎng)格圖像,即可求取出雨量值。雨量值包括兩個(gè)部分:一是雨量曲線各峰值點(diǎn)所對(duì)應(yīng)的記錄值,二是量杯未滿記錄線(即最右側(cè)峰值點(diǎn)右側(cè)延長線的最大值點(diǎn))的值。求取雨量值的方法具體如下:
(1)計(jì)算網(wǎng)格線每個(gè)刻度的寬高
①對(duì)網(wǎng)格線左上角300*300區(qū)域做行列投影,統(tǒng)計(jì)各行(列)黑色像素點(diǎn)個(gè)數(shù);
②設(shè)定閾值Th,找到網(wǎng)格的橫向和豎向刻度線;
③計(jì)算橫(豎)向刻度線間像素的平均值,記作網(wǎng)格的高(寬)度。
(2)尋找曲線峰
①把刻度9-10的區(qū)間按網(wǎng)格寬度分成若干小塊,分別統(tǒng)計(jì)每個(gè)小塊內(nèi)曲線點(diǎn)的個(gè)數(shù);
②設(shè)定閾值Th,當(dāng)步驟①統(tǒng)計(jì)值大于Th時(shí)認(rèn)定該區(qū)域內(nèi)存在曲線的峰;
③在步驟②得到的包含曲線峰的網(wǎng)格塊中找到最高點(diǎn),并判斷該點(diǎn)右邊25個(gè)像素內(nèi)是否有比它還高的點(diǎn),如果沒有,則認(rèn)定該點(diǎn)是一個(gè)峰值點(diǎn),將它坐標(biāo)保存;
(3)尋找量杯未滿記錄線的最高點(diǎn)
對(duì)最后一個(gè)峰值點(diǎn)往右的區(qū)域作處理,尋找這片區(qū)域中量杯未滿記錄線的最高點(diǎn),通過統(tǒng)計(jì)該點(diǎn)左右一個(gè)網(wǎng)格寬度內(nèi)黑色像素點(diǎn)的個(gè)數(shù)判斷此點(diǎn)是曲線上的點(diǎn)還是孤立的噪點(diǎn)。如果是曲線上的點(diǎn),則將該點(diǎn)保存。
(4)計(jì)算雨量值
①在網(wǎng)格圖像中,極值點(diǎn)(x,y)向下一個(gè)網(wǎng)格高度范圍內(nèi),對(duì)y左右各100個(gè)像素的區(qū)域做水平投影,統(tǒng)計(jì)每行黑色像素點(diǎn)的個(gè)數(shù),超過140的最小的橫坐標(biāo)認(rèn)定為(x,y)的下刻度線;
②與步驟①類似,從(x,y)往上一直到網(wǎng)格的頂端的范圍內(nèi),對(duì)y左右各100個(gè)像素的區(qū)域做水平投影,得到(x,y)上端的各條刻度線;
③取最靠近(x,y)的上下刻度線,計(jì)算(x,y)到下刻度線的高度h和上下刻度線間的高度H,計(jì)算h/H。
④統(tǒng)計(jì)(x,y)上端刻度線的條數(shù)i,計(jì)算(x,y)所對(duì)應(yīng)的值(10-i)+h/H;
⑤利用上述步驟計(jì)算出每個(gè)極值點(diǎn)的值,并將量杯未滿紀(jì)錄線上的最高值找出,加上前面的若干峰值,最終得到降雨量。
根據(jù)本發(fā)明方法可得到本發(fā)明雨量記錄圖紙的數(shù)字化裝置,包括:
網(wǎng)格圖像提取單元,用于從雨量記錄圖紙的數(shù)字圖像中提取出二值化的網(wǎng)格圖像; 雨量線圖像提取單元,用于從雨量記錄圖紙的數(shù)字圖像中提取出二值化的雨量線圖像;
傾斜校正單元,用于對(duì)網(wǎng)格圖像提取單元和雨量線圖像提取單元所輸出的網(wǎng)格圖像、雨量線圖像進(jìn)行傾斜校正;
網(wǎng)格裁剪單元,用于利用行列投影的方法從傾斜校正后的網(wǎng)格圖像中確定網(wǎng)格區(qū)域的邊界,并將傾斜校正后的網(wǎng)格圖像、雨量線圖像中的邊界外區(qū)域設(shè)置為二值化背景;
直線去除單元,用于將雨量線圖像中的直線設(shè)置為二值化背景;
降雨量計(jì)算單元,用于將雨量線圖像對(duì)應(yīng)到網(wǎng)格圖像,求出雨量線上各個(gè)峰值點(diǎn)以及最右側(cè)峰值點(diǎn)右側(cè)延長線的最大值點(diǎn),最后對(duì)以上各點(diǎn)所對(duì)應(yīng)的雨量值求和,得到降雨量。
本發(fā)明的數(shù)字化裝置可使用預(yù)先通過掃描儀、數(shù)碼相機(jī)等設(shè)備獲取的雨量記錄圖紙的圖像作為輸入,并將降雨量計(jì)算單元得到的雨量數(shù)據(jù)存入外部數(shù)據(jù)庫,以便后續(xù)的分析查詢;本發(fā)明也可以進(jìn)一步將圖像獲取設(shè)備和/或數(shù)據(jù)存儲(chǔ)設(shè)備整合進(jìn)來,實(shí)現(xiàn)全自動(dòng)化的雨量數(shù)據(jù)提取。
實(shí)驗(yàn)結(jié)果表明,本發(fā)明能夠?qū)Σ捎脭?shù)碼相機(jī)拍攝的雨量記錄圖紙自動(dòng)地進(jìn)行數(shù)字化分析,對(duì)普通的雨量記錄圖具有優(yōu)秀的識(shí)別能力,獲得的降雨量的值準(zhǔn)確度也很高。