專利名稱:一種快速骨骼化二值數(shù)字圖像中圖形的方法
技術領域:
本發(fā)明屬于一種對二值數(shù)字圖像中圖形進行細化從而得到其骨骼的圖像處理方法,特別涉及一種快速骨骼化二值數(shù)字圖像中圖形的方法。
背景技術:
國內(nèi)外類似的骨骼化方法常用于光學字符識別(OpticalCharacterRecognition, OCR)和一些基于圖像形狀的圖像處理算法,例如霍夫變換(HoughTransformation, HT)圖像算法,因此用于獲取圖形骨骼的細化算法具有重要的工業(yè)應用價值和學術理論意義。二值圖像中圖形骨骼的概念早在1967年由Blum首次提出,骨骼是指在由前景像素所組成的區(qū)域中,與區(qū)域局部邊界相切的,最大內(nèi)切圓的圓心的集合,參見H.Blum, “A transformation for extracting new descriptors of shape,,,Modelsforthe Perception of Speech and Visual Form, pp.362-380,1967。經(jīng)過多年發(fā)展,涌現(xiàn)出兩類細化算法,即基于距離函數(shù)和非距離函數(shù)的細化算法。基于距離函數(shù)的算法是一種傳統(tǒng)的細化算法,而非距離函數(shù)算法相對而言是較新的算法,例如基于神經(jīng)網(wǎng)絡(詳見R.Krishnapuram, F.Chen, “Implementation of parallelthinning algorithms usingrecurrent neural networks,,, IEEE Trans.Neural Netw., vol.4, n0.1, pp.142-147, Jan.1993.),小波(詳見 Y.Y.Tang, X.G.You, ^Skeletonizationof ribbon-like shapesbased on a new wavelet function,,,IEEE Trans.Pattern Anal.Mach.1ntell., vol.25, n0.9, pp.1118-1133, Sep.2003.)和曲率流(詳見 A.1miya, M.Saito, “Thinning bycurvature flow,,,Journal of Visual Communication and ImageRepresentation,vol.17, n0.1, pp.27-41, Feb.2006.)的細化算法。非距離函數(shù)算法主要應用于對三維二值圖像中三維圖形的骨骼化處理,對二維圖像而言,這些算法過于復雜且運算量較大,參 JAL W.Wong, F.Y.Shih, T.Su, “Thinning algorithmsbased on quadtree and octreerepresentations,,,Information Sciences, vol.176, n0.10, pp.1379 - 1394, May.2006。因此,在二維二值圖像中,傳統(tǒng)的基于距離函數(shù)的細化算法仍然是一種獲取圖形骨骼的高效方法?;诰嚯x函數(shù)的細化算法大致可分為基于光柵掃描和基于中軸的算法, 參見 S.Bag, G.Harit, “An improved contour-based thinning method forcharacter images,,,Pattern Recognition Letters, vol.32, n0.11, pp.1836-1842,Oct.2011。在1981年,Davies提出了一種基于光柵掃描的經(jīng)典細化算法,詳見E.R.Davies, Machine Vision:Theory, Algorithms, Practicalities, 3rd ed.CA:MorganKaufmann,2005。與現(xiàn)代細化算法不同,這種算法除了二維矩陣之外,并沒有使用額外的、復雜的數(shù)據(jù)結(jié)構來輔助算法,也沒有使用用于給出距離函數(shù)計算值的查詢表,所以該算法結(jié)構簡單,易于分析和實現(xiàn),但其細化效果隨圖形復雜度的增加而衰減。近年來,相繼有基于光柵掃描的細化算法問世, 其中Wong于2006年提出了一種能給出復雜圖形有效骨骼的細化算法,詳見 W.Wong, F.Y.Shih, T.Su, “Thinning algorithms based on quadtreeand octree representations,,,InformationSciences, vol.176, n0.10, pp.1379-1394,May.2006。這種算法采用了四叉樹和八叉樹的復雜數(shù)據(jù)結(jié)構,預計算了距離函數(shù)的值并存儲在查詢表中,這使得該算法以耗費較多計算資源的較大代價換取了給出復雜圖形骨骼的結(jié)果。
發(fā)明內(nèi)容
本發(fā)明所解決的技術問題主要有以下兩點:(I)由于非距離函數(shù)的細化算法普遍具有運算量大,結(jié)構復雜的特點,并不適用于二維圖像的骨骼計算,而基于距離函數(shù)的傳統(tǒng)細化算法近年來呈現(xiàn)出依賴復雜數(shù)據(jù)結(jié)構的趨勢,雖然這種算法的骨骼化效果較為理想,但卻耗費了較多的計算資源,而且算法結(jié)構異常復雜,難以分析和實際應用。本發(fā)明所突破的技術問題之一是不使用過于復雜的數(shù)據(jù)結(jié)構及相關數(shù)據(jù)算法,不使用預計算的、龐大的距離函數(shù)值查詢表,從而達到減少運算量和降低占用資源的目的。(2)雖然一些經(jīng)典算法確實沒有使用復雜數(shù)據(jù)結(jié)構和查詢表,但這些算法普遍具有骨骼化效果隨圖形復雜化而衰減的特點,因此雖然運行速度較快,但對復雜圖形的運行結(jié)果基本不具備實際應用價值。這也是本發(fā)明所面臨的主要技術問題:對二維二值圖像中的復雜圖形,如何讓一個設計簡單、易于實現(xiàn)的算法能生成與設計復雜、實現(xiàn)困難的算法相近,甚至相同的骨骼。本發(fā)明提供一種快速骨骼化二值數(shù)字圖像中圖形的方法,計算量較小、計算資源占用較少,生成的骨骼與國際主流細化算法的結(jié)果基本一致。本發(fā)明解決其技術問題所采用的技術方案是:本發(fā)明使用計算機程序語言實現(xiàn)相應算法來完成實施。為使陳述清楚明了,現(xiàn)定義下列二值數(shù)字圖像中的概念。圖像坐標空間:使用正整數(shù)坐標表示和記錄圖像像素間相對空間位置的矩陣。前景像素:二值圖像中二值中的一種像素值。背景像素:二值圖像中二值中的非前景像素的像素值。圖形:在圖像坐標空間中,由前景像素所組成的,內(nèi)部不存在背景像素的一塊封閉區(qū)域。圖形邊界:屬于圖形的,前景像素與背景像素之間不存在其他像素的前景像素的
口 O圖形局部:圖形內(nèi)部包含圖形邊界,且不包含背景像素的一塊連續(xù)區(qū)域。局部最大值:圖形局部上最大內(nèi)切圓半徑的近似正整數(shù)值。局部最大值空間:用于存儲局部最大值的,與原二值圖像具有相同圖像坐標空間的一個存儲空間。鄰域:圖像坐標空間中與特定像素坐標值差異小于或等于一個給定數(shù)值m的像素的集合。如果特定像素用Ptl表示,那么3 X 3鄰域包含8個像素P1至P8,它們的排列方式可以用下式表示:
權利要求
1.一種快速骨骼化二值數(shù)字圖像中圖形的方法,設二值圖像中二值中的一種像素值為前景像素,另一種為背景像素,其特征在于包括以下步驟: (1)掃描圖像并計算局部最大值; (2)基于距離函數(shù)的算法生成圖形骨骼:所述骨骼為圖形局部上,在圖像坐標空間中具有連續(xù)坐標的,最大內(nèi)切圓圓心的坐標集合;所述圖形骨骼具有若干分支; (3)刪除錯誤的骨骼分支,包括 (3a)找出骨骼端點:找出由步驟(2)產(chǎn)生的錯誤圖形骨骼分支的骨骼端點,與所述錯誤圖形骨骼分支的骨骼端點在圖像坐標空間中坐標值差異等于O或I的,非當前骨骼端點的8個像素中沒有或僅有一個局部最大值;所述骨骼端點為在二值圖像坐標空間中鄰域內(nèi)僅一側(cè)有前景像素的前景像素; (3b)刪除錯誤的骨骼分支:從步驟(3a)找出的骨骼端點出發(fā),沿該骨骼端點所在的骨骼分支找出交匯點,判斷所述交匯點是否是真實交匯點;如果是真實交匯點,則刪除骨骼端點與該交匯點之間的骨骼分支;所述真實交匯點鄰域內(nèi)具有多個前景像素,且該點是局部最大值; 其中,所述局部最大值是指圖形局部上最大內(nèi)切圓半徑的近似正整數(shù)值;所述圖形局部是指圖形內(nèi)部包含圖形邊界,且不包含背景像素的一塊連續(xù)區(qū)域;所述圖形是指在圖像坐標空間中,由前景像素所組成的,內(nèi)部不存在背景像素的一塊封閉區(qū)域;所述圖形邊界是指屬于圖形的,前景像素與背景像素之間不存在其他像素的前景像素的集合;所述圖像坐標空間是指使用正整數(shù)坐標表示和記錄圖像像素間相對空間位置的矩陣;鄰域是指圖像坐標空間中與特定像素坐標值差異小于或等于一個給定數(shù)值m的像素的集合;所述距離函數(shù)是指用于計算前景像素與其所在圖形的圖形邊界的歐式距離值的方法;局部最大值空間為用于存儲局部最大值的,與原二值圖像具有相同圖像坐標空間的一個存儲空間。
2.如權利要求1所述的一種快速骨骼化二值數(shù)字圖像中圖形的方法,其特征在于:設正向掃描的順序為從上至下逐行檢查每行,在每一行中從左向右檢查每個像素;反向掃描的順序為從下至上逐行檢查每行,在每一行中從右向左檢查每個像素; 所述的步驟(I)包括: (Ia)正向掃描計算:在二值圖像坐標空間中按正向掃描的順序檢查每一個像素,如果被檢查的像素是前景像素,則檢查該前景像素鄰域左上角,將所述鄰域左上角像素中的歐式距離近似正整數(shù)值賦予該前景像素; (Ib)反向掃描計算:在二值圖像坐標空間中按反向掃描的順序檢查每一個像素,如果被檢查的像素是前景像素,則檢查該前景像素鄰域右下角,將所述鄰域右下角像素中的歐式距離近似正整數(shù)值賦予該前景像素; (Ic)找出局部最大值:建立局部最大值空間中的與所述圖像的維數(shù)相同的圖像,設為對應圖像;按正向或反向掃描的順序檢查原圖像坐標空間的每個像素,如果該像素為前景像素,則檢查其整個鄰域,如果其值不小于鄰域中像素的最大值,則將該像素值賦予對應圖像上具有與該像素相同坐標值的對應像素,否則將O賦予其對應像素; (Id)刪除孤立的最大值:在局部最大值空間中找到前景像素,并刪除鄰域內(nèi)僅存在背景像素的前景像素; 其中,步驟(Ia)和步驟(Ib)沒有先后順序;歐式距離近似正整數(shù)值計算公式為 VpeX, distx(p) = min{ e N,/> not in (X nB) }(I) 式(I)中,X表示一幅二值數(shù)字圖像;B表示一個球心位于圖形邊界的可移動球體; 表示細化運算,即將所選定的前景像素的值設為背景像素;n表示細化次數(shù);N表示正整數(shù)集合;P表示二值圖像中圖形包含的一個前景像素;distx(p)表示p的歐式距離的近似正整數(shù)值。
3.如權利要求2所述的一種快速骨骼化二值數(shù)字圖像中圖形的方法,其特征在于:所述的步驟(2)包括: (2a)細化圖形:在局部最大值的基礎上,重復剝離像素以重復刪除圖形邊界,得到包含骨骼和產(chǎn)生該骨骼的原圖形中部分像素的近似骨骼;所述剝離像素依次包括剝離北側(cè)像素、剝離南側(cè)像素、剝離東側(cè)像素和剝離西側(cè)像素; (2b)細化骨骼為單位像素寬:在步驟(2a)的基礎上,在二值圖像坐標空間中細化由局部最大值空間中所聚集的局部最大值導致的超過單位像素寬的骨骼分支,最終得到單位像素寬的近似骨骼。
4.如權利要求3所述的一種快速骨骼化二值數(shù)字圖像中圖形的方法,其特征在于:設相交數(shù)為:在二值圖像中,選擇任意一個前景像素,從其鄰域內(nèi)任意像素出發(fā),依次經(jīng)過每個鄰域像素,至回到出發(fā)像素為止,像素值發(fā)生變化的總次數(shù),記做X ;當前景像素的鄰域大小為3X3,且X =2時,所述步驟(2a)中的重復剝離像素的剝離判斷條件還包括前景像素的鄰域內(nèi)至少有2個前景像素。
5.如權利要求1-4中任一項所述的一種快速骨骼化二值數(shù)字圖像中圖形的方法,其特征在于:當前景像素的鄰域大小為3X3時,所述的步驟(3b)為:以步驟(3a)中得到的骨骼端點為起點,沿該骨骼端點所在的骨骼分支移動,直到骨骼分支交匯點停止;移動的條件為在二值圖像坐標空間中鄰域內(nèi)僅一側(cè)有前景像素和在局部最大值空間中鄰域內(nèi)存在0個或I個局部最大值;當不滿足移動條件時,判斷移動結(jié)束點是否是真實交匯點,所述真實交匯點在圖像坐標空間中鄰域內(nèi)具有多個前景像素,并在局部最大值空間中鄰域內(nèi)存在至少2個局部最大值;如果是真實交匯點,將骨骼端點和交匯點之間的骨骼分支刪除;如果不是真實交匯點,則在移動結(jié)束后,則繼續(xù)移動并在每次移動中都檢查當前點是否是真實交匯點,抵達真實交匯點后,刪除骨骼端點和交匯點之間的骨骼分支。
6.如權利要求5所述的一種快速骨骼化二值數(shù)字圖像中圖形的方法,其特征在于:設相交數(shù)為:在二值圖像中,選擇任意一個前景像素,從其鄰域內(nèi)任意像素出發(fā),依次經(jīng)過每個鄰域像素,至回到出發(fā)像素為止,像素值發(fā)生變化的總次數(shù),記做X ;所述真實交匯點的判斷條件為X >4并且鄰域中的局部最大值數(shù)量大于或等于3。
全文摘要
本發(fā)明涉及一種快速骨骼化二值數(shù)字圖像中圖形的方法,包括以下步驟1、掃描圖像并計算局部最大值;2、基于距離函數(shù)的算法生成圖形骨骼;3、刪除錯誤的骨骼分支,包括找出由步驟2產(chǎn)生的錯誤圖形骨骼分支的骨骼端點和刪除錯誤的骨骼分支,與錯誤圖形骨骼分支的骨骼端點在圖像坐標空間中坐標值差異等于0或1的,非當前骨骼端點的8個像素中沒有或僅有一個局部最大值;骨骼端點為在二值圖像坐標空間中鄰域內(nèi)僅一側(cè)有前景像素的前景像素。本發(fā)明算法所產(chǎn)生的骨骼基本與目前國際主流細化算法所產(chǎn)生的骨骼一致;且結(jié)構簡單,實施方便,運行高效,本發(fā)明算法的計算復雜度為O(n2)+O(m2)=O(n2),與Davies算法一致,但運行結(jié)果明顯優(yōu)于Davies算法。
文檔編號G06T7/60GK103150741SQ20121050453
公開日2013年6月12日 申請日期2012年11月30日 優(yōu)先權日2012年11月30日
發(fā)明者賈靚, 閔革勇 申請人:常州大學