宋世坤,王書海
(河北科技大學(xué) 信息科學(xué)與工程學(xué)院,河北 石家莊 050018)
隨著2022年北京冬奧會(huì)的臨近以及滑雪旅游產(chǎn)業(yè)的不斷發(fā)展,滑雪運(yùn)動(dòng)越來越受到人們的關(guān)注和喜愛[1],雪質(zhì)在滑雪運(yùn)動(dòng)中起著至關(guān)重要的作用,而雪花的形狀很大程度上關(guān)系著雪質(zhì)的好壞。雪花形狀分類的研究對(duì)于雪質(zhì)好壞、人造雪甚至是人工降雪都存在影響。研究雪花形狀分類具有重大意義。雪花形狀分類以具體的雪花形態(tài)為研究對(duì)象,采用圖像預(yù)處理技術(shù)對(duì)雪花圖像提取特征參數(shù),分析參數(shù)特征值,利用合理分類器實(shí)現(xiàn)雪花圖像形狀的自動(dòng)分類[2-4]。
首先對(duì)圖像進(jìn)行二值化處理,在13種基于直方圖的圖像全局二值化算法中,本文應(yīng)用最大類間方差法(Otsu)進(jìn)行圖像二值化處理,獲得最優(yōu)的圖像分割閾值。并對(duì)分割后的圖像形態(tài)學(xué)操作,完成邊緣檢測(cè)和提取輪廓線。
雪花圖像包含了豐富的特征信息,比如形狀特征和紋理特征,根據(jù)形狀分類的相關(guān)理論,本文利用雪花的輪廓、凸包和最小包圍盒得到形狀描述,利用這些形狀描述計(jì)算出縱橫軸比、矩形度、周長(zhǎng)凹凸比、面積凹凸比、形狀參數(shù)和致密度6種相對(duì)形態(tài)參數(shù)。
本文先提取雪花的外部輪廓,通過采用輪廓跟蹤法對(duì)雪花圖像進(jìn)行輪廓提取,具體算法步驟為:
(1)對(duì)圖像預(yù)處理后的雪花二值化圖像采用自頂向下、從左到右的順序進(jìn)行掃描,得到第一個(gè)像素點(diǎn)為1的點(diǎn),此時(shí)將其作為起始點(diǎn),進(jìn)行步驟2。
(2)得到起始點(diǎn)后,按照逆時(shí)針方向?qū)ふ耶?dāng)前像素點(diǎn)周圍8個(gè)方向上的領(lǐng)域點(diǎn),如果發(fā)現(xiàn)像素值為1的點(diǎn)且領(lǐng)域上包含0像素點(diǎn),若此像素點(diǎn)先前沒有被掃描過,將這個(gè)像素點(diǎn)作為當(dāng)前點(diǎn),記錄下相應(yīng)的鏈碼值。
(3)重復(fù)步驟2,直到回到起始點(diǎn)。
(4)根據(jù)步驟2和3所記錄的鏈碼值,得到雪花的形狀輪廓。
本文采取Graham掃描法求取最小凸包,如圖1所示。凸包是指在雪花圖像中,找出某些點(diǎn)作一個(gè)多邊形,使這個(gè)多邊形能把所有點(diǎn)都包括在內(nèi),這個(gè)凸多邊形稱之為凸包。
圖1 雪花形狀凸包圖
最小包圍盒是指包含某個(gè)區(qū)域內(nèi)所有像素點(diǎn)的一個(gè)最小矩形,如圖2所示。算法過程描述如下。
(1)使用一條平行線對(duì)凸包兩邊的頂點(diǎn)進(jìn)行檢測(cè),發(fā)現(xiàn)有一條凸包頂點(diǎn)之間的連線與這條平行線重合,記下這兩條平行線的位置,然后作兩條垂直于這條平行線的線段,從這個(gè)方向的兩側(cè)凸包頂點(diǎn)開始尋找。最后4條線段可以形成一個(gè)矩形,并且計(jì)算該矩形的面積。
(2)重復(fù)上面的過程,直到遍歷完所有的雪花凸包頂點(diǎn),面積最小的矩形就是最小包圍盒。
(1)縱橫軸比(Axis Ratio):雪花圖像最小包圍盒的寬度與長(zhǎng)度的比值。
(2)矩形度(Rectangularity):雪花面積與最小包圍盒面積的比值。
(3)面積凹凸比(Convexity Area):雪花面積與雪花凸包面積的比值。
(4)周長(zhǎng)凹凸比(Convexity Perimeter):雪花周長(zhǎng)與凸包周長(zhǎng)的比值。
(5)形狀參數(shù)(Form parameter):是由雪花的面積與周長(zhǎng)之間的計(jì)算出來的值,反映了雪花面積的緊密性。
(6)致密度(Density):用來描述圖像邊界復(fù)雜程度的指標(biāo),反映了圖像趨于圓的程度。
圖2 雪花形狀最小包圍盒圖
示例圖片特征值如表1所示。
表1 示例圖片特征值
BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),主要特點(diǎn)是輸入信號(hào)前向傳遞,誤差反向傳播,如果輸出層無法得到期望輸出,就會(huì)轉(zhuǎn)向反向傳播,根據(jù)預(yù)測(cè)誤差調(diào)整網(wǎng)絡(luò)權(quán)值和閾值,即可使預(yù)測(cè)輸出向期望輸出不斷逼近。本文采用的BP神經(jīng)網(wǎng)絡(luò)為3層,激活函數(shù)為sigmod函數(shù)。
(1)確定網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)。本文采用六項(xiàng)形狀特征作為輸入層節(jié)點(diǎn)數(shù),即m=6,輸出層節(jié)點(diǎn)數(shù)對(duì)應(yīng)雪花形狀分類種數(shù),即n=3,隱含層節(jié)點(diǎn)數(shù)l的確定參考如下公式:
其中a取0~10的常數(shù),l確定了大概范圍,通過使用試湊法確定出最佳的節(jié)點(diǎn)數(shù)l,本文l取10。
(2)網(wǎng)絡(luò)初始化。在初始化階段,給予權(quán)重系數(shù)Wij一個(gè)隨機(jī)數(shù)(﹣1.0~1.0),學(xué)習(xí)速率為0.01,目標(biāo)誤差0.001。
(3)訓(xùn)練算法選擇。本文采用梯度修正法和反向錯(cuò)誤傳播算法。
對(duì)雪花庫雪花選取3種類型:六角盤狀、六枝星狀和星形樹枝狀的雪花圖像500張進(jìn)行處理,3種類型中各隨機(jī)選取100個(gè)作為訓(xùn)練樣本,剩下200個(gè)作為分類測(cè)試樣本,識(shí)別率達(dá)到91.67%。
雪花形狀分類在氣象領(lǐng)域的基礎(chǔ)研究工作中發(fā)揮著重要作用,本文利用數(shù)字圖像處理技術(shù)對(duì)雪花圖像提取了縱橫軸比、矩形度、面積凹凸比、周長(zhǎng)凹凸比、形狀參數(shù)以及致密度等6項(xiàng)形態(tài)特征參數(shù),設(shè)計(jì)了一種基于BP神經(jīng)網(wǎng)絡(luò)的雪花形狀分類方法。實(shí)驗(yàn)表明本方法對(duì)于3種雪花形態(tài)的正確識(shí)別率達(dá)到了91.67%,驗(yàn)證了利用BP神經(jīng)網(wǎng)絡(luò)對(duì)于雪花形狀進(jìn)行分類的可行性與較好的魯棒性。今后進(jìn)一步的研究方向是繼續(xù)改進(jìn)智能分類算法,解決存在雪花殘缺或者雪花圖像模糊干擾情況下的分類問題。