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