祝毅鳴
(鄭州大學(xué)西亞斯國際學(xué)院,河南 新鄭 451150)
角點特征用來反映圖像穩(wěn)定稀疏的分布情況,如像素、結(jié)構(gòu)與尺寸等,其在醫(yī)療影像、建筑物裂縫、數(shù)控雕刻以及計算機視覺等領(lǐng)域中起著至關(guān)重要的作用。圖像角點常用二維空間圖像亮度變化程度的點來表示,也可以用圖像邊緣線的曲率最大值點與最小值點來表示[1]。傳統(tǒng)圖像角點檢測方法均效果不佳,不能精準(zhǔn)獲取到圖像真實信息特征,也不能滿足日常生活的需求,為此將引入人工智能技術(shù)對圖像角點特征取證進(jìn)行檢測。
圖像角點檢測是圖像特征取證與模式識別方面關(guān)鍵性研究課題。當(dāng)前,對面向圖像角點特征取證的檢測方法研究諸多,例如張見雙,張紅民等人[2]發(fā)現(xiàn)Harris圖像角點特征取證與檢測時,由于是人工輸入閾值,會出現(xiàn)假角點與角點聚簇等問題,為此對Harris圖像角點方法進(jìn)行改進(jìn)。先使用分割技術(shù)將圖像分割成若干個部分,并對該部分圖像特征進(jìn)行取證,再根據(jù)取證結(jié)果設(shè)定閾值,隨后使用NCC方法對各部分圖像進(jìn)行特征取證,并將得出結(jié)果做匹配,最后通過參數(shù)化模型將該過程中出現(xiàn)錯誤匹配點刪除,剩余部分則為正確角點。閆小盼,敖磊等人[3]認(rèn)為傳統(tǒng)檢測方法運算復(fù)雜,浪費大量時間,提出使用編程方法對圖像角點特征取證進(jìn)行檢測。首先根據(jù)編程的特征把整個圖像分割成兩部分,并分別對各部分圖像角點進(jìn)行特征取證,然后使用流水線算法將這兩部分圖像角點特征做處理,其中流水線算法主要包括導(dǎo)數(shù)、加權(quán)平均、圖像角點響應(yīng)、最大值與和最小值五部分算法構(gòu)成,同時需要把該過程中繁瑣計算變換成簡單的位移與加減法進(jìn)行計算,最終快速完成圖像角點檢測。
但以上兩種方法存在檢測結(jié)果與真實圖像結(jié)果精度低的問題。針對以上存在不足之處,將采用人工智能技術(shù)對面向圖像角點特征取證進(jìn)行檢測。該方法能夠有效縮短取證時間,并能提升檢測精度,實現(xiàn)了人工智能檢測圖像角點特征取證應(yīng)用價值。
在圖像角點特征取證過程中一定會有干擾向量影響取證結(jié)果的[4],所以取證圖像可能包含多種色彩的特征,有可能就被保存成了RGB色彩模式。根據(jù)該模式對圖像角點中各像素顏色設(shè)定了不同的分量值,同時也將其保存成空間函數(shù)的模式。若該圖像角點模式進(jìn)行直接處理,不僅會增加計算難度,還會降低效果。為此,通過在不同干擾情況下對圖像做簡化處理,而干擾程度最小的簡化方式就是把RGB色彩模式圖像角點變換成灰度圖像,變換公式如式(1)所示。
In=0.3R+0.59G+0.11B
(1)
其中,In表示圖像中各顏色灰度值;R和G、B分別表示RGB色彩模式圖像色彩中的紅和綠、藍(lán)三個不同顏色的分量值。
在圖像角點取證時會受到諸多原因的影響,產(chǎn)生噪聲干擾,嚴(yán)重影響圖像角點特征取證結(jié)果[5]?;诖?,使用中值過濾算法對圖像角點做去噪處理。
中值過濾算法是將圖像某個部分D中的所有像素灰度值進(jìn)行排序,去除該排序最大值與最小值,并提取該剩余部分中間值作為整個部分的中心點像素灰度值,具體計算過程如式(2)所示
g(c,r)=In·med(p(c,r),(c,r)∈D)
(2)
其中,p代表排序序列;(c,r)代表圖像D部分中心點數(shù)值;med(·)代表符號函數(shù)。再采用人工智能檢測方法對D部分圖像做角點計算,得到式(3)
(3)
其中,(XA,YA)表示角點A在圖像空間中的坐標(biāo);(xA,yA)表示角點A在檢測部分空間中的坐標(biāo);(XZS,YZS)表示檢測部分右上角全部圖像空間中的坐標(biāo)。
設(shè)定δ表示該圖像的像素邊長,通過對圖像像素標(biāo)記,并將經(jīng)過相鄰部分圖像角點長度與像素值做對比,得到式(4)
(4)
其中,LAB代表相鄰部分圖像角點A與B間距;(xB,yB)代表角點B在檢測部分空間中的坐標(biāo),完成特征取證。
根據(jù)圖像角點特征取證結(jié)果發(fā)現(xiàn),有很多原因影響去燥過程,如分解尺寸與臨界值等,為此就要對角點特征圖像做增強處理[6]。
采用掩模平滑方法對圖像角點做增強處理,得到式(5)
(5)
其中,sgn()表示符號函數(shù);wj,k表示小波變換系數(shù);λ表示該部分圖像閾值。如果|wj,k|≥λ時,則wj,k=λ+1;如果wj,k<λ-1時,則wj,k=0;如果-λ 由于閾值函數(shù)具有良好連續(xù)性、平滑和無間隔點特性,為此在圖像信號處理時會發(fā)生多余斷點,此時就需要使用掩模平滑將新圖像角點做增強處理。 (6) (7) 其中,Q表示該部分圖像掩模像素點個數(shù);rj′表示第j′個部分圖像角點。 根據(jù)式(6)與式(7)可知,假設(shè)(x,y)表示邊緣線的相鄰部分,則方差值較大;反之,則方差值較小,邊緣灰度平均分布,其掩模灰度就越平均。假設(shè)圖像角點是邊緣點,就需要將第一個方差灰度值轉(zhuǎn)換成圖像角點灰度值,就不會影響圖像清晰程度。假設(shè)(x,y)表示噪聲點,采用其方法可以起到很好的光滑的作用,最終完成對圖像角點增強處理。 人工智能技術(shù)主要使用鏈碼算法對增強后的圖像角點進(jìn)行檢測。鏈碼介紹如圖1所示。圖1中P代表圖像中某個角點的像素,數(shù)字0-14表示該角點不同方位的鏈碼數(shù)值。再使用跟蹤方法把角點形狀鏈碼描述,得到圖2(白色表示角點像素)。從A點按照順時針方向運動,形狀的邊緣用鏈碼描述為L=2140217121010108644。 圖1 八鄰域鏈碼 圖2 圖像邊緣形狀 相對鏈碼是指鏈碼和后一個鏈碼的數(shù)值差,如果這兩個鏈碼數(shù)值差大于4時,則相對鏈碼數(shù)值需要在原來基礎(chǔ)上減8。而絕對鏈碼是指相對鏈碼從一開始就累加數(shù)值。當(dāng)絕對鏈碼完成一周運動時,得到式(8) A(N)-A(1)=8 (8) 其中,A(N)表示角點最后一個點的絕對鏈碼數(shù)值;A(1)表示角點第一個點的絕對鏈碼數(shù)值。 設(shè)定C(i)與C(i-1)表示角點像素(i)與(i-1)鏈碼,R(i)表示相對鏈碼,A(i)與A(i-1)表示絕對鏈碼值,得到式(9)。 (9) 根據(jù)式(9)可知,鏈碼和是指電A(i)、A(i+1)與A(i+2)之和,可以將角點邊緣看做成直線,那么該點斜率為sum(i)=A(i)+A(i+1)+A(i+2)。 對于封閉形狀,計算前兩個點鏈碼和,絕對鏈碼數(shù)值是從最后一個點取值的,該點都比初始點大8,詳細(xì)計算過程如式(10)所示。 sum(1)=A(1)+A(N)+A(N-1)-16 sum(2)=A(2)+A(1)+A(N)-8 (10) 通過式(10)可知,第一個鏈碼和是可能為0或者不是0的數(shù),為了方便計算每個邊緣點鏈碼和,把全部鏈碼和除去第一個點鏈碼和,最終獲得從0開始的鏈碼和的集合。 鏈碼差表示相鄰部分的鏈碼之間差值,如式(11)所示 Diff(i+1)=sum(i+3)-sum(i) (11) 同上,對于封閉圖形,計算前兩個點鏈碼差過程中,部分?jǐn)?shù)值在第一個與最后一個點取值,即 Diff(1)=sum(3)-sum(N) Diff(N)=sum(N+3)-sum(N-1) =sum(3)-sum(N-1)+24 Diff(N-1)=sum(N+1)-sum(N-2) =sum(1)-sum(N-2)+24 (12) 根據(jù)圖3可知,圖像角點為六角星形狀,圖4表示該圖像角點的鏈碼和、差數(shù)值情況。 圖3 六角星形狀 圖4 鏈碼的和、差曲線分布情況 將被檢測圖像角點平均分割成20部分,同時把鏈碼平均分成10份[7]。為此,使用鏈碼能精準(zhǔn)體現(xiàn)出邊緣形狀特點。圖形角點在鏈碼和直線上,直線部分表示圖像角點邊緣線,弧度線表示邊緣的曲線與圓弧。如果鏈碼和線段表示圓弧時,則線段曲度數(shù)愈大,則圓弧半徑就愈大,反之亦然。 鏈碼差代表2個切割線數(shù)值差,并且和曲線偏離直線成正比例關(guān)系。如果鏈碼差等于2,代表2個切線夾角呈30°。若邊緣形狀按順著逆時針運行,則數(shù)值為復(fù)數(shù)的點稱為凹角點;反之,則數(shù)值為正數(shù)的點稱為凸角點。 通過上面圖像角點檢測分析可知,圖像中存在許多點可能會被當(dāng)成圖像真實角點,這些點將它命名為假角點。為此,通過分析假角點產(chǎn)生因素,并依據(jù)這些因素提出如下解決方案: 情況一,假角點存在于真實圖像角點的相鄰部分中。當(dāng)檢測到圖像某角點過程中,同時檢測與其相鄰部分內(nèi)若干個像素點存在其它角點,再采用鏈碼差方法將檢測出角點進(jìn)行絕對值計算,得出真實角點(絕對值最大),最后將剩余角點刪除[8-9]。 情況二,假角點存在于圖像邊緣線中[10]。先算出鄰近兩個角點和該角點的斜率絕對值差,再依據(jù)得出結(jié)果分析其是否為真角點,如果得到的值較大,則為真角點并保留,反之則為假角點并刪除。具體計算過程如下: 設(shè)置(xi-1,yi-1)代表像素點為i-1空間坐標(biāo)值,(xi,yi)代表像素點為i空間坐標(biāo)值;(xi+1,yi+1)代表像素點為i空間坐標(biāo)值;ki表示像素點i-1到i的斜率值;kk+1表示像素點i+1到i的斜率值;ki與kk+1計算過程如下 (13) 對這種假角點,判斷根據(jù)為 |ki+1-ki|≤ζ (14) 其中,ζ代表0~0.2的常數(shù)。如果式(14)的像素點i-1和i、i+1在相同邊緣線上,則i為假角點,將其刪除,保留剩余兩個角點;反之,i為真角點,將其保留,剩余兩個角點刪除。 如果在封閉圖形中,就需要對第一個與最后一個角點做假檢測。設(shè)定(x1,y1)表示該圖像第一個角點空間坐標(biāo);(xm,ym)表示該圖像最后一個角點空間坐標(biāo),第一個角點斜率計算過程如下 (15) 最后一個角點計算過程如下 (16) 通過分析鏈碼數(shù)值大小,可知圖像角點人工智能檢測結(jié)果的精準(zhǔn)度,即Diff(i)≤u或者Diff(i)≥v。 其中u與v表示鏈碼上下閾值,u值為復(fù)數(shù),v值為正數(shù)。u與v的數(shù)值大小直接反應(yīng)檢測結(jié)果。u和v數(shù)值越大,代表角點檢測結(jié)果越精準(zhǔn);u和v數(shù)值越小,代表角點檢測結(jié)果不精確。為此,通過以上計算得出u和v結(jié)果是偏大的,證明人工智能方法可以有效檢測出圖像角點。 為了證實圖像角點人工智能檢測方法比文獻(xiàn)[2][3]方法正確率高。在網(wǎng)絡(luò)中隨機抽取一張圖像,設(shè)定角點檢測的閾值-u=-1,v=2,N=5,ζ=0.1,實驗對比結(jié)果如圖5所示。 圖5 檢測方法對比 表1 不同檢測方法對比結(jié)果 根據(jù)表1可以得出,文獻(xiàn)[2]方法檢測圖像角點數(shù)為300個,真角點數(shù)為160,假角點數(shù)為140個;文獻(xiàn)[3]方法檢測圖像角點數(shù)為150個,真角點數(shù)為98,假角點數(shù)為52個;人工智能方法檢測圖像角點數(shù)為600個,真角點數(shù)為580,假角點數(shù)為20個,該方法準(zhǔn)確率為96.67%顯著高于文獻(xiàn)[2]和文獻(xiàn)[3]兩種方法。為此,面向圖像角點特征取證的人工智能檢測方法具有較高準(zhǔn)確性、實用性。 通過對圖像角點特征取證檢測方法存在精度不高,導(dǎo)致丟失、模糊不清等問題的角點特征取證圖像無法被檢測出,為此,通過提取出圖像角點特征,得到取證的圖像角點;再使用掩模平滑方法對得出圖像做加強處理,得到新的圖像角點;最后采用鏈碼差與和、斜率相結(jié)的方法對新圖像進(jìn)行檢測。仿真結(jié)果表明,該方法能有效檢測圖像角點特征取證效果,并保證檢測結(jié)果精度。2.3 新圖像角點檢測
3 仿真結(jié)果分析
4 結(jié)論