本發(fā)明涉及計(jì)算機(jī)視覺(jué)領(lǐng)域圖像處理技術(shù),尤其涉及一種圖像處理方法和裝置。
背景技術(shù):
:隨著科學(xué)技術(shù)與計(jì)算機(jī)互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,數(shù)字圖像在各個(gè)行業(yè)中的使用越來(lái)越廣泛,因此,如何能夠快速識(shí)別出一幅圖像,一直是計(jì)算機(jī)視覺(jué)領(lǐng)域的熱門(mén)話題?,F(xiàn)有技術(shù)通常通過(guò)獲取圖像的骨架圖對(duì)圖像進(jìn)行識(shí)別。然而,現(xiàn)有技術(shù)獲取圖像的骨架圖的方法在準(zhǔn)確性和精度上存在局限性,而且,現(xiàn)有技術(shù)的距離變換方法難以解決圖像骨架的連通性問(wèn)題,如果骨架圖不能夠保證其連通性就會(huì)嚴(yán)重影響骨架特征的效果,尤其是在封閉圖像出現(xiàn)空洞的情況下,一個(gè)不能保證連通性的骨架方法會(huì)難以對(duì)骨架圖進(jìn)行有效地識(shí)別。技術(shù)實(shí)現(xiàn)要素:為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供一種圖像處理方法和裝置,實(shí)現(xiàn)了骨架圖的單像素性和快速變換,可以獲得具有良好的連通性骨架圖。本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:本發(fā)明實(shí)施例提供一種圖像處理方法,所述方法包括:對(duì)二值圖像進(jìn)行距離變換確定所述二值圖像中每一個(gè)像素的距離變換值;根據(jù)所述二值圖像中每一個(gè)像素的距離變換值確定所述二值圖像的第一骨架圖;對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。進(jìn)一步地,所述對(duì)二值圖像進(jìn)行距離變換確定所述二值圖像中每一個(gè)像素的距離變換值,包括:確定所述二值圖像中每一個(gè)像素的列距離;確定所述二值圖像的歐氏距離圖;根據(jù)所述列距離和所述歐氏距離圖確定所述二值圖像中每一個(gè)像素的距離變換值。進(jìn)一步地,所述根據(jù)所述二值圖像中每一個(gè)像素的距離變換值確定所述二值圖像的第一骨架圖,包括:確定與所述二值圖像中間位置距離變換值最大的像素為骨架起點(diǎn);對(duì)所述骨架起點(diǎn)和所述骨架起點(diǎn)的下降梯度采用迭代算法確定所述二值圖像除所述骨架起點(diǎn)以外其它的骨架點(diǎn),所述二值圖像所有骨架點(diǎn)的軌跡為所述第一骨架圖。進(jìn)一步地,所述對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖,包括:采用離散曲線演化對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。進(jìn)一步地,在所述對(duì)二值圖像進(jìn)行距離變換確定所述二值圖像中每一個(gè)像素的距離變換值之前,還包括:獲取圖像;將所述圖像的顏色空間從紅綠藍(lán)RGB轉(zhuǎn)換為色調(diào)飽和度亮度HSV;將所述轉(zhuǎn)換為HSV的圖像進(jìn)行閾值分割獲得所述圖像的二值圖像。本發(fā)明實(shí)施例還提供一種圖像處理裝置,所述裝置包括:確定單元、處理單元,其中,所述確定單元,用于對(duì)二值圖像進(jìn)行距離變換確定所述二值圖像中每一個(gè)像素的距離變換值;還用于根據(jù)所述二值圖像中每一個(gè)像素的距離變換值確定所述二值圖像的第一骨架圖;所述處理單元,用于對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。進(jìn)一步地,所述確定單元,用于確定所述二值圖像中每一個(gè)像素的列距離; 還用于確定所述二值圖像的歐氏距離圖;還用于根據(jù)所述列距離和所述歐氏距離圖確定所述二值圖像中每一個(gè)像素的距離變換值。進(jìn)一步地,所述確定單元,用于確定與所述二值圖像中間位置距離變換值最大的像素為骨架起點(diǎn);還用于對(duì)所述骨架起點(diǎn)和所述骨架起點(diǎn)的下降梯度采用迭代算法確定所述二值圖像除所述骨架起點(diǎn)以外其它的骨架點(diǎn),所述二值圖像所有骨架點(diǎn)的軌跡為所述第一骨架圖。進(jìn)一步地,所述處理單元,用于采用離散曲線演化對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。進(jìn)一步地,所述裝置還包括:獲取單元,所述獲取單元,用于獲取圖像;所述處理單元,用于將所述圖像的顏色空間從紅綠藍(lán)RGB轉(zhuǎn)換為色調(diào)飽和度亮度HSV;還用于將所述轉(zhuǎn)換為HSV的圖像進(jìn)行閾值分割獲得所述圖像的二值圖像。本發(fā)明實(shí)施例提供了一種圖像處理方法和裝置,圖像處理裝置對(duì)二值圖像進(jìn)行距離變換確定所述二值圖像中每一個(gè)像素的距離變換值;根據(jù)所述二值圖像中每一個(gè)像素的距離變換值確定所述二值圖像的第一骨架圖;對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。本發(fā)明實(shí)施例提供的圖像處理方法和裝置,實(shí)現(xiàn)了骨架圖的單像素性和快速變換,通過(guò)距離變換獲取的骨架圖具有良好的連通性,通過(guò)對(duì)骨架圖剪枝處理,可以得到更加優(yōu)良的骨架圖。附圖說(shuō)明圖1為本發(fā)明實(shí)施例提供的圖像處理方法流程示意圖一;圖2為本發(fā)明實(shí)施例提供的二值圖像示意圖;圖3為本發(fā)明實(shí)施例提供的骨架點(diǎn)確定示意圖;圖4為本發(fā)明實(shí)施例提供的骨架圖;圖5為本發(fā)明實(shí)施例提供的不同閾值進(jìn)行剪枝處理的骨架圖;圖6為本發(fā)明實(shí)施例提供的圖像處理方法流程示意圖二;圖7為本發(fā)明實(shí)施例提供的現(xiàn)有技術(shù)的Hu矩描述骨架的示意圖;圖8為本發(fā)明實(shí)施例提供的邊界矩描述骨架的示意圖;圖9為本發(fā)明實(shí)施例提供的圖像處理裝置結(jié)構(gòu)示意圖一;圖10為本發(fā)明實(shí)施例提供的圖像處理裝置結(jié)構(gòu)示意圖二。具體實(shí)施方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。實(shí)施例一本發(fā)明實(shí)施例提供一種圖像處理方法,如圖1所示,所述圖像處理方法可以包括:步驟101、圖像處理裝置對(duì)二值圖像進(jìn)行距離變換確定所述二值圖像中每一個(gè)像素的距離變換值。具體的,圖像處理裝置獲取圖像,將所述圖像的顏色空間從RGB轉(zhuǎn)換為HSV,然后,將所述轉(zhuǎn)換為HSV的圖像進(jìn)行閾值分割獲得所述圖像的二值圖像。圖像處理裝置獲得所述圖像的二值圖像后,確定所述二值圖像中每一個(gè)像素的列距離;然后,確定所述二值圖像的歐氏距離圖,并根據(jù)所述列距離和所述歐氏距離圖確定所述二值圖像中每一個(gè)像素的距離變換值。具體的,圖像處理裝置分別確定所述二值圖像中每一個(gè)像素的列距離。圖像處理裝置計(jì)算列距離的方法是:分別正向和反向掃描一個(gè)N*N的二值圖像W={v(x,y)}。其中,x為二值圖像的橫坐標(biāo),y為二值圖像的縱坐標(biāo)。正向掃描第0行至第N-1行,并且計(jì)算每一行中的像素點(diǎn)到同一列上方最近0元素的距離;然后反向掃描第N-1行至第0行,并且計(jì)算每一行中的像素點(diǎn)到同列下方最近0元素的距離。根據(jù)正反掃描的結(jié)果進(jìn)行比較,取各像素的最小值作為它的列距離:D={dx,y},具體如下公式所示:圖像處理裝置確定所述二值圖像歐氏距離圖(EuclideanDistanceMap,EDM)。在上述N*N的二值圖像中,用F表示圖像W的特征點(diǎn)集合,p(x,y)是坐標(biāo)(x,y)處的一個(gè)元素,那么二值圖像W的歐氏距離圖計(jì)算方法如下公式所示:圖像處理裝置對(duì)二值圖像W的各行進(jìn)行掃描,通過(guò)公式下述公式計(jì)算與特征點(diǎn)F最近的距離d'xy,該d'xy為距離變換值。需要說(shuō)明的是,二值圖像(BinaryImage)是指將圖像上的每一個(gè)像素只有兩種可能的取值或灰度等級(jí)狀態(tài),通常用黑白、B&W、單色圖像表示二值圖像,如圖2所示。二值圖像中的每個(gè)像素不是黑就是白,其灰度值沒(méi)有中間過(guò)渡的圖像。在儲(chǔ)存的時(shí)候只用一個(gè)二進(jìn)位就可以表示一個(gè)像素。二值圖像中所有的像素只能從0和1這兩個(gè)值中取,在MATLAB中,二值圖像用一個(gè)由0和1組成的二維矩陣表示。這兩個(gè)可取的值分別對(duì)應(yīng)于關(guān)閉和打開(kāi),關(guān)閉表征該像素處于背景,而打開(kāi)表征該像素處于前景。步驟102、圖像處理裝置根據(jù)所述二值圖像中每一個(gè)像素的距離變換值確定所述二值圖像的第一骨架圖。具體的,圖像處理裝置確定與所述二值圖像中間位置距離變換值最大的像素為骨架起點(diǎn),然后,對(duì)所述骨架起點(diǎn)和所述骨架起點(diǎn)的下降梯度采用迭代算法確定后續(xù)的骨架點(diǎn),所述后續(xù)的骨架點(diǎn)包括:所述二值圖像除所述骨架起點(diǎn)以外其它的骨架點(diǎn),所述二值圖像所有骨架點(diǎn)的軌跡為所述第一骨架圖。示例性的,如圖3所示,圖3中(a)圖表示的是一個(gè)矩形初始圖像,根據(jù)上述距離變換值的計(jì)算結(jié)果,如圖3中(b)圖所示,選取靠近中間距離變換值最大的像素點(diǎn)作為骨架起點(diǎn),圖3中(b)圖中心的黑點(diǎn)表示的就是骨架起點(diǎn), 以所述骨架起點(diǎn)為圓心,以骨架起點(diǎn)的距離變換值為半徑確定最大內(nèi)切圓,圖3中(b)圖中的白色部分為矩形圖像的最大內(nèi)切圓,所述最大內(nèi)切圓將所述圖像分為左右兩個(gè)互不連通的部分。然后,根據(jù)圖像的連通性判斷后繼骨架點(diǎn)的分支數(shù)。圖3中(b)被分為了左右兩個(gè)互不連通區(qū)域,因此需要產(chǎn)生兩個(gè)分支,骨架點(diǎn)變成了左右兩個(gè)分支,需要分別確定左右兩個(gè)分支的骨架點(diǎn),圖像處理裝置可以對(duì)所述骨架起點(diǎn)和所述骨架起點(diǎn)的下降梯度采用迭代算法分別確定所屬左右兩個(gè)分支的骨架點(diǎn),如圖3中(c)所示,分別確定左右兩個(gè)分支的骨架點(diǎn)。最后,確定了新的骨架點(diǎn)后,以每一個(gè)像素點(diǎn)為圓心,以其距離變換值為半徑畫(huà)圓,迭代計(jì)算確定所有的骨架點(diǎn),如圖3中(d)圖所示,直到整個(gè)圖像被覆蓋,那么剩余部分為該圖像的第一骨架圖,可以理解為,二值圖像的所有最大內(nèi)切圓圓心的軌跡為第一骨架圖,即所有骨架點(diǎn)的軌跡為第一骨架圖。步驟103、圖像處理裝置對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。具體的,通過(guò)上述方法可以得到連通的、單像素的粗骨架圖,即第一骨架圖,但是,還需要對(duì)所述粗骨架圖進(jìn)行骨架剪枝處理,通過(guò)剪枝處理可以減小骨架圖對(duì)邊界噪聲影響的不穩(wěn)定性。圖像處理裝置采用離散曲線演化對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。其中,離散曲線演化方法是一個(gè)遞歸的刪除物體邊界輪廓貢獻(xiàn)程度最小的多邊形頂點(diǎn)的過(guò)程。離散曲線演化方法的運(yùn)算結(jié)果能夠表示物體輪廓信息的曲線,通過(guò)離散曲線演化方法可以很好的刪除骨架的邊界噪聲。通過(guò)離散曲線演化的骨架剪枝方法實(shí)現(xiàn)了粗骨架的優(yōu)化,有效地去除了邊界噪聲,保留視覺(jué)的主要部分。基于離散曲線演化的剪枝方法還可以進(jìn)行閾值控制其骨架的詳略程度。示例性的,如圖5所示,該圖為選擇不同閾值的剪枝結(jié)果,圖5中(a)圖為粗骨架圖,即第一骨架圖;圖5中(b)圖是閾值為5的剪枝處理后的骨架圖,圖5中(c)圖是閾值為10的剪枝處理后的骨架圖,圖5中(d)圖是閾值為 20的剪枝處理后的骨架圖。本發(fā)明實(shí)施例提供一種圖像處理方法,實(shí)現(xiàn)了骨架圖的單像素性和快速變換,通過(guò)距離變換獲取的骨架圖具有良好的連通性,通過(guò)對(duì)骨架圖剪枝處理,可以得到更加優(yōu)良的骨架圖。實(shí)施例二本發(fā)明實(shí)施例提供一種圖像處理方法,如圖6所示,所述方法可以包括:步驟201、圖像處理裝置獲取圖像,將所述圖像的顏色空間從RGB轉(zhuǎn)換為HSV,將所述轉(zhuǎn)換為HSV的圖像進(jìn)行閾值分割獲得所述圖像的二值圖像。具體的,圖像處理裝置先獲取需要處理的圖像,然后將該圖像的顏色空間從RGB轉(zhuǎn)換到HSV,轉(zhuǎn)換公式如下所示:V=max其中,上述公式中的R、G、B分別代表一個(gè)顏色的紅、綠、藍(lán)坐標(biāo),取值為0~1之間,max代表R、G、B中的最大值,min代表R、G、B中的最小值。需要說(shuō)明的是,RGB色彩模式是通過(guò)對(duì)紅(R)、綠(G)、藍(lán)(B)三個(gè)顏色通道的變化以及它們相互之間的疊加來(lái)得到各式各樣的顏色的,RGB即是代表紅、綠、藍(lán)三個(gè)通道的顏色。需要說(shuō)明的是,HSV(Hue,Saturation,Value)是根據(jù)顏色的直觀特性創(chuàng)建的一種顏色空間,也稱六角錐體模型。這個(gè)模型中顏色的參數(shù)分別是:色調(diào)(H),飽和度(S),亮度(V)。其中,色調(diào)H通常用角度度量,其取值范圍為0°~360°,從紅色開(kāi)始按逆 時(shí)針?lè)较蛴?jì)算,紅色為0°,綠色為120°,藍(lán)色為240°。它們的補(bǔ)色是:黃色為60°,青色為180°,品紅為300°。飽和度S的取值范圍為0.0~1.0,取值越大,顏色越飽和。亮度V通常用百分比度量,取值范圍為:從0%(黑)到100%(白)。然后,對(duì)所述顏色轉(zhuǎn)換后的圖像進(jìn)行閾值分割。其中,閾值分割包括兩方面的處理:一方面,對(duì)所述圖像進(jìn)行去除噪聲處理,過(guò)濾像素值很小和很大的圖像點(diǎn);另一方面,對(duì)所述圖像進(jìn)行二值化處理。需要說(shuō)明的是,圖像的二值化處理是將圖像上的點(diǎn)的灰度置為0或255,也就是將整個(gè)圖像呈現(xiàn)出明顯的黑白效果。即將256個(gè)亮度等級(jí)的灰度圖像通過(guò)適當(dāng)?shù)拈撝颠x取而獲得仍然可以反映圖像整體和局部特征的二值化圖像,即二值圖像。在進(jìn)行二值圖像的處理與分析時(shí),通常需將灰度圖像進(jìn)行二值化,得到二值圖像,這樣子有利于在對(duì)圖像做進(jìn)一步處理時(shí),圖像的集合性質(zhì)只與像素值為0或255的點(diǎn)的位置有關(guān),不再涉及像素的多級(jí)值。示例性的,可以通過(guò)調(diào)用MATLAB提供的im2bw()來(lái)實(shí)現(xiàn)圖像的二值化。matlab中DIP工具箱函數(shù)im2bw使用閾值(threshold)變換法把灰度圖像(grayscaleimage)轉(zhuǎn)換成二值圖像。需要說(shuō)明的是,二值圖像(BinaryImage)是指將圖像上的每一個(gè)像素只有兩種可能的取值或灰度等級(jí)狀態(tài),通常用黑白、B&W、單色圖像表示二值圖像。二值圖像中的每個(gè)像素不是黑就是白,其灰度值沒(méi)有中間過(guò)渡的圖像。在儲(chǔ)存的時(shí)候只用一個(gè)二進(jìn)位就可以表示一個(gè)像素。二值圖像中所有的像素只能從0和1這兩個(gè)值中取,在MATLAB中,二值圖像用一個(gè)由0和1組成的二維矩陣表示。這兩個(gè)可取的值分別對(duì)應(yīng)于關(guān)閉和打開(kāi),關(guān)閉表征該像素處于背景,而打開(kāi)表征該像素處于前景。需要說(shuō)明的是,對(duì)圖像進(jìn)行閾值分割的處理可以采用現(xiàn)有的閾值分割方法來(lái)實(shí)現(xiàn),本發(fā)明實(shí)施例在此不再贅述。步驟202、圖像處理裝置確定所述二值圖像中每一個(gè)像素的列距離。具體的,圖像處理裝置分別確定所述二值圖像中每一個(gè)像素的列距離。圖像處理裝置計(jì)算列距離的方法是:分別正向和反向掃描一個(gè)N*N的二值圖像 W={v(x,y)}。其中,x為二值圖像的橫坐標(biāo),y為二值圖像的縱坐標(biāo)。正向掃描第0行至第N-1行,并且計(jì)算每一行中的像素點(diǎn)到同一列上方最近0元素的距離;然后反向掃描第N-1行至第0行,并且計(jì)算每一行中的像素點(diǎn)到同列下方最近0元素的距離。根據(jù)正反掃描的結(jié)果進(jìn)行比較,取各像素的最小值作為它的列距離:D={dx,y},具體如下公式所示:需要說(shuō)明的是,二值圖像通常用一個(gè)由0和1組成的二維矩陣表示,即可以用0元素和1元素分別表示黑和白。步驟203、圖像處理裝置確定所述二值圖像的歐氏距離圖。具體的,圖像處理裝置確定所述二值圖像歐氏距離圖(EuclideanDistanceMap,EDM)。在上述N*N的二值圖像中,用F表示圖像W的特征點(diǎn)集合,p(x,y)是坐標(biāo)(x,y)處的一個(gè)元素,那么二值圖像W的歐氏距離圖計(jì)算方法如下公式所示:步驟204、圖像處理裝置根據(jù)所述列距離和所述歐氏距離圖確定所述二值圖像中每一個(gè)像素的距離變換值。具體的,圖像處理裝置對(duì)二值圖像W的各行進(jìn)行掃描,通過(guò)公式下述公式計(jì)算與特征點(diǎn)F最近的距離d'xy,該d'xy為距離變換值。通過(guò)上述距離變換計(jì)算,在準(zhǔn)確性和精度上均有較為明顯的優(yōu)勢(shì)。但是,現(xiàn)有的距離變換方法難以解決骨架的連通性問(wèn)題,如果骨架圖不能夠保證其連通性就會(huì)嚴(yán)重影響骨架特征的效果,尤其是在封閉圖像出現(xiàn)空洞的情況下,一個(gè)不能保證連通性的骨架算法會(huì)難以對(duì)骨架圖進(jìn)行有效地識(shí)別。本發(fā)明實(shí)施例采用的距離變換方法獲得的骨架圖連通性良好,如圖4所示,圖4中(a)圖為原始圖像,圖4中(b)圖為(a)圖中圖像的骨架圖,從圖4中(b)圖可以看 出,圖像的骨架圖具有良好的連通性。步驟205、圖像處理裝置確定與所述二值圖像中間位置距離變換值最大的像素為骨架起點(diǎn)。具體的,為了能夠更有效的尋找到適合成為骨架點(diǎn)的像素點(diǎn),進(jìn)而提取出圖像的骨架圖,首先,需要確定所述圖像的骨架起點(diǎn)。骨架圖的閾值可以控制骨架的詳略程度,當(dāng)選擇閾值較大的時(shí)候,骨架的枝也就相對(duì)較少,因此,為了能夠更大程度的表現(xiàn)圖像的拓?fù)浣Y(jié)構(gòu)和全局特征,通常盡量選取圖像中間位置的像素點(diǎn)作為骨架的起點(diǎn)。示例性的,如圖3所示,圖3中(a)圖表示的是一個(gè)矩形初始圖像,根據(jù)上述距離變換值的計(jì)算結(jié)果,如圖3中(b)圖所示,選取靠近中間距離變換值最大的像素點(diǎn)作為骨架起點(diǎn),圖3中(b)圖中心的黑點(diǎn)表示的就是骨架起點(diǎn),以所述骨架起點(diǎn)為圓心,以骨架起點(diǎn)的距離變換值為半徑確定最大內(nèi)切圓,圖3中(b)圖中的白色部分為矩形圖像的最大內(nèi)切圓,所述最大內(nèi)切圓將所述圖像分為左右兩個(gè)互不連通的部分。步驟206、圖像處理裝置對(duì)所述骨架起點(diǎn)和所述骨架起點(diǎn)的下降梯度采用迭代算法確定所述二值圖像除所述骨架起點(diǎn)以外其它的骨架點(diǎn),所述二值圖像所有骨架點(diǎn)的軌跡為所述第一骨架圖。具體的,如圖3中(b)所示,根據(jù)距離變換值確定骨架起點(diǎn)后,需要確定所述圖像的其它骨架點(diǎn),進(jìn)而根據(jù)骨架點(diǎn)提取出圖像的骨架。以骨架起點(diǎn)為圓心,骨架起點(diǎn)的距離變換值為半徑畫(huà)圓,圖3中(b)中白色部分為第一個(gè)最大內(nèi)切圓,覆蓋了部分矩形圖像。矩形圖像中間的部分已經(jīng)被所述第一個(gè)最大內(nèi)切圓覆蓋,矩形圖像被所述第一個(gè)最大內(nèi)切圓分為左右兩個(gè)部分,被覆蓋的部分在下一輪的迭代中將不再考慮,繼續(xù)覆蓋保留的部分。然后,根據(jù)圖像的連通性判斷后繼骨架點(diǎn)的分支數(shù)。圖3中(b)被分為了左右兩個(gè)互不連通區(qū)域,因此需要產(chǎn)生兩個(gè)分支,骨架點(diǎn)變成了左右兩個(gè)分支,需要分別確定左右兩個(gè)分支的骨架點(diǎn),圖像處理裝置可以對(duì)所述骨架起點(diǎn)和所述骨架起點(diǎn)的下降梯度采用迭代算法分別確定所屬左右兩個(gè)分支的骨架點(diǎn),如 圖3中(c)所示,分別確定左右兩個(gè)分支的骨架點(diǎn)。具體的,圖像處理裝置根據(jù)已知骨架點(diǎn)采用迭代算法可以確定后續(xù)的骨架點(diǎn)可以包括:設(shè)定已知骨架點(diǎn)為前沿骨架點(diǎn),需要確定的后續(xù)的骨架點(diǎn)為新骨架點(diǎn)f'。在判斷了分支數(shù)后,需要計(jì)算如何確定所述分支新的骨架點(diǎn)fi(i=1~n),新骨架點(diǎn)f'要盡量離前沿骨架點(diǎn)近,通過(guò)計(jì)算前沿骨架點(diǎn)附近的距離變換下降梯度來(lái)確定新的骨架點(diǎn)。示例性的,假設(shè)在某次迭代后前沿點(diǎn)a的距離變換值是25,其鄰域最近的兩個(gè)點(diǎn)的距離變換值b、c分別是24和23,那么b、c兩點(diǎn)相對(duì)于a點(diǎn)的距離變換下降梯度分別是和顯然g(b)比g(c)小。最后,確定了新的骨架點(diǎn)后,以每一個(gè)像素點(diǎn)為圓心,以其距離變換值為半徑畫(huà)圓,迭代計(jì)算確定所有的骨架點(diǎn),如圖3中(d)圖所示,直到整個(gè)圖像被覆蓋,那么剩余部分為該圖像的第一骨架圖,可以理解為,二值圖像的所有最大內(nèi)切圓圓心的軌跡為第一骨架圖,即所有骨架點(diǎn)的軌跡為第一骨架圖。步驟207、圖像處理裝置采用離散曲線演化對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。具體的,通過(guò)上述方法可以得到連通的、單像素的粗骨架圖,即第一骨架圖,但是,還需要對(duì)所述粗骨架圖進(jìn)行骨架剪枝處理,通過(guò)剪枝處理可以減小骨架圖對(duì)邊界噪聲影響的不穩(wěn)定性。本發(fā)明實(shí)施例中采用了離散曲線演化的剪枝方法對(duì)所述第一骨架圖進(jìn)行處理。具體的,離散曲線演化(DCE,DiscreteCurveEvolution)方法實(shí)現(xiàn)了圖像邊緣輪廓的分段,最終將圖像的輪廓演化為不同程度的多邊形,DCE演化多邊形的基本原理如下所述:設(shè)有一對(duì)相鄰的線段s1和s2,其端點(diǎn)分別為s1{v1,v2}、s2{v2,v3},這一對(duì)相鄰的線段將會(huì)演化為一條線段,連接s1∪s2的兩個(gè)端點(diǎn)便可以得到該線段s3。那么由s1和s2演化后的新線段s3的端點(diǎn)為s3{v1,v3}。曲線演化過(guò)程中,最重要的因素是相鄰線段合并的順序,根據(jù)度量K來(lái)決定其先后順序,K的計(jì)算如下公式所示:上述公式中,β(s1,s2)是s1和s2在頂點(diǎn)處的偏轉(zhuǎn)角對(duì)應(yīng)的弧度,l表示線段的長(zhǎng)度函數(shù)。通過(guò)上述公式的計(jì)算,可以得到任意一對(duì)相鄰線段的度量值K(s1,s2),K的值越小表示相鄰線段s1和s2對(duì)輪廓的貢獻(xiàn)值越小,那么相鄰線段的頂點(diǎn)具有最小形狀貢獻(xiàn)值,可以首先將其演化刪除。其中,離散曲線演化方法是一個(gè)遞歸的刪除物體邊界輪廓貢獻(xiàn)程度最小的多邊形頂點(diǎn)的過(guò)程。離散曲線演化方法的運(yùn)算結(jié)果能夠表示物體輪廓信息的曲線,通過(guò)離散曲線演化方法可以很好的刪除骨架的邊界噪聲。通過(guò)離散曲線演化的骨架剪枝方法實(shí)現(xiàn)了粗骨架的優(yōu)化,有效地去除了邊界噪聲,保留視覺(jué)的主要部分。基于離散曲線演化的剪枝方法還可以進(jìn)行閾值控制其骨架的詳略程度。示例性的,如圖5所示,該圖為選擇不同閾值的剪枝結(jié)果,圖5中(a)圖為粗骨架圖,即第一骨架圖;圖5中(b)圖是閾值為5的剪枝處理后的骨架圖,圖5中(c)圖是閾值為10的剪枝處理后的骨架圖,圖5中(d)圖是閾值為20的剪枝處理后的骨架圖。示例性的,如下表1和表2所示,表1和表2分別是對(duì)于本發(fā)明提供的方法和現(xiàn)有技術(shù)的方法中不同閾值時(shí)提取骨架圖所需要的時(shí)間。從表中可以看出,本發(fā)明實(shí)施例提供的圖像處理方法的所需要的時(shí)間比現(xiàn)有技術(shù)的時(shí)間少,隨著閾值取值的不斷變大,本發(fā)明實(shí)施例提供的圖像處理方法的所需要的時(shí)間明顯比現(xiàn)有技術(shù)的時(shí)間少。表1本發(fā)明實(shí)施例提供的閾值控制時(shí)間分析閾值時(shí)間(單位s)1004.56205.72125.95106.0656.22表2現(xiàn)有技術(shù)的閾值控制時(shí)間分析形態(tài)學(xué)方法閾值時(shí)間(單位s)1005.12205.78125.90106.1256.28進(jìn)一步地,在DCE中,停止參數(shù)也十分重要,停止參數(shù)是當(dāng)?shù)竭_(dá)這個(gè)參數(shù)值時(shí)停止曲線演化算法,可以得到簡(jiǎn)化到不同程度的多邊形,從而得到不同層次的骨架剪枝結(jié)果。選取恰當(dāng)?shù)耐V箙?shù)決定了骨架圖的詳略程度,如果選取過(guò)小,則骨架信息難以表示物體圖像的拓?fù)浣Y(jié)構(gòu),如果選取過(guò)大,則會(huì)產(chǎn)生較多冗余的骨架枝。通常可以根據(jù)一個(gè)平均距離來(lái)設(shè)置閾值,當(dāng)滿足該條件時(shí),DCE運(yùn)行停止,這樣可以得到一個(gè)既簡(jiǎn)化又可以描述原來(lái)圖像輪廓信息的多邊形。進(jìn)一步地,在圖像識(shí)別領(lǐng)域,矩用于描述圖像的特征。常見(jiàn)的矩有Hu矩、Zernike矩、小波矩、傅里葉輪廓矩等,這些矩被廣泛的應(yīng)用在圖像特征提取中,每種方法都有自己的應(yīng)用情景和優(yōu)勢(shì)。在基于輪廓的圖像識(shí)別方法中,最簡(jiǎn)單的方式是通過(guò)圖像的邊界輪廓信息來(lái)對(duì)他們的輪廓矩進(jìn)行描述和比較,具體操作是對(duì)圖像輪廓上所有的點(diǎn)進(jìn)行積分運(yùn)算,得到一個(gè)具有某種物理意義的特征,然后進(jìn)行識(shí)別。但是,本發(fā)明實(shí)施例并不是基于輪廓的方法,而是基于距離變換的骨架特征提取方法,骨架信息與圖像的邊界輪廓有一定的區(qū)別。因此,無(wú)法使用傳統(tǒng)的Hu矩描述骨架特 征。本發(fā)明實(shí)施例還提供一組邊界矩描述子。所述邊界矩描述子是對(duì)矩的改進(jìn),是利用矩之間的比值去除比例因子,因?yàn)楸壤蜃邮桥c區(qū)域相關(guān)的面積比例因子,而骨架特征恰恰不需要這個(gè)比例因子,去除該比例因子后,Hu不變矩就僅僅與圖像的幾何形狀有關(guān),本發(fā)明實(shí)施例提供了11個(gè)具有全部不變矩信息的邊界矩描述子,如下所示,通過(guò)這些邊界矩可以很好的描述圖像的骨架特征。通過(guò)本發(fā)明實(shí)施例提供的邊界矩來(lái)描述圖像骨架特征,實(shí)現(xiàn)了具有完整Hu 矩信息的邊界矩描述子,可以有效的描述圖像的骨架圖。示例性的,如圖7所示,現(xiàn)有技術(shù)的Hu矩描述骨架的示意圖,如圖8所示,本發(fā)明實(shí)施例提供的邊界矩描述骨架的示意圖,從圖7中可以看出,當(dāng)圖像逆旋、縮小或放大后,獲得圖像的骨架會(huì)偏移原始圖像的骨架,即當(dāng)圖像逆旋、縮小或放大后,采用現(xiàn)有技術(shù)的Hu矩描述骨架會(huì)產(chǎn)生失真。從圖8中可以看出,當(dāng)圖像正旋、逆旋、縮小或放大后,獲得圖像的骨架會(huì)與原始圖像的骨架基本重合,當(dāng)圖像正旋、逆旋、縮小或放大后,采用本發(fā)明實(shí)施例提供的邊界矩描述骨架基本不會(huì)失真,從而,可以很好的描述圖像的骨架特征。本發(fā)明實(shí)施例提供一種圖像處理方法,實(shí)現(xiàn)了骨架圖的單像素性和快速變換,通過(guò)距離變換獲取的骨架圖具有良好的連通性,通過(guò)對(duì)骨架圖剪枝處理,可以得到更加優(yōu)良的骨架圖。實(shí)施例三本發(fā)明實(shí)施例提供一種圖像處理裝置1,如圖9所示,所述裝置包括:確定單元10、處理單元11,其中,所述確定單元10,用于對(duì)二值圖像進(jìn)行距離變換確定所述二值圖像中每一個(gè)像素的距離變換值;還用于根據(jù)所述二值圖像中每一個(gè)像素的距離變換值確定所述二值圖像的第一骨架圖;所述處理單元11,用于對(duì)所述第一骨架圖進(jìn)行剪枝處理獲得所述二值圖像的第二骨架圖。進(jìn)一步地,所述確定單元10,用于確定所述二值圖像中每一個(gè)像素的列距離;還用于確定所述二值圖像的歐氏距離圖;還用于根據(jù)所述列距離和所述歐氏距離圖確定所述二值圖像中每一個(gè)像素的距離變換值。進(jìn)一步地,所述確定單元10,用于確定與所述二值圖像中間位置距離變換值最大的像素為骨架起點(diǎn);還用于對(duì)所述骨架起點(diǎn)和所述骨架起點(diǎn)的下降梯度采用迭代算法確定所述二值圖像除所述骨架起點(diǎn)以外其它的骨架點(diǎn),所述二值圖像所有骨架點(diǎn)的軌跡為所述第一骨架圖。進(jìn)一步地,所述處理單元11,用于采用離散曲線演化對(duì)所述第一骨架圖進(jìn) 行剪枝處理獲得所述二值圖像的第二骨架圖。進(jìn)一步地,如圖10所示,所述裝置還包括:獲取單元12,所述獲取單元12,用于獲取圖像;所述處理單元11,用于將所述圖像的顏色空間從紅綠藍(lán)RGB轉(zhuǎn)換為色調(diào)飽和度亮度HSV;還用于將所述轉(zhuǎn)換為HSV的圖像進(jìn)行閾值分割獲得所述圖像的二值圖像。在實(shí)際應(yīng)用中,所述確定單元10、處理單元11和獲取單元12可由位于圖像處理裝置上的中央處理器(CPU)、微處理器(MPU)、數(shù)字信號(hào)處理器(DSP)、或現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)等實(shí)現(xiàn)。具體的,本發(fā)明實(shí)施例提供的圖像處理裝置的理解可以參考實(shí)施例一至實(shí)施例二的圖像處理方法的說(shuō)明,本實(shí)施例在此不再贅述。本發(fā)明實(shí)施例提供一種圖像處理裝置,實(shí)現(xiàn)了骨架圖的單像素性和快速變換,通過(guò)距離變換獲取的骨架圖具有良好的連通性,通過(guò)對(duì)骨架圖剪枝處理,可以得到更加優(yōu)良的骨架圖。本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用硬件實(shí)施例、軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備 以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。當(dāng)前第1頁(yè)1 2 3