專利名稱::弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及圖像處理和圖像識(shí)別,特別是涉及一種弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法。
背景技術(shù):
:圖像有很多表示方法,如四叉樹表示方法、二分樹表示方法、鏈編碼和游程碼表示等,圖像表示之間的轉(zhuǎn)換一直是一個(gè)重要的研究課題,如由圖形邊界的鏈編碼獲得四叉樹表示的轉(zhuǎn)換方法,由四叉樹表示到邊界鏈碼的自適應(yīng)轉(zhuǎn)換方法等。FREEMAN鏈碼在圖像處理與分析中已得到廣泛應(yīng)用,如利用FREEMAN鏈碼建立了離散格林函數(shù),基于FREEMAN鏈碼高效的填充方法等。頂點(diǎn)鏈碼由于其旋轉(zhuǎn)及平移不變性等已被人們重視,并研究獲得了一些有用的成果,如利用頂點(diǎn)鏈碼探測(cè)表格斜率等。所以鏈編碼之間的變換同樣很重要,可以從已知的一種鏈碼表示方便獲得另一種鏈碼表示,各種鏈碼信息可共享。
發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法。本發(fā)明的目的可以通過以下技術(shù)方案來實(shí)現(xiàn)弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,包括八方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換;四方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換。所述的八方向FREEMAN鏈碼、四方向FREEMAN鏈碼均表示為{OWJ^^A^—,},"。,h)為圖像邊界上的起始像素坐標(biāo),當(dāng)。,"0,1,2,3,4,5,6,7}時(shí),該鏈碼為八方向FREEMAN鏈碼,當(dāng)"'e^,2,4,6}時(shí),該鏈碼為四方向FREEMAN鏈碼,Z為鏈的長(zhǎng);所述的頂點(diǎn)鏈碼表示為^。,v。)/^c。c,八cvJ,其中("^。)是頂點(diǎn)鏈碼的起始點(diǎn),^為初始行走方向,"^,2,4,6、A"1,2,31所述的八方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換包括:(31)八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼;(32)頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼。所述的八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼包括(310)建立頂點(diǎn)鏈碼初始行走方向關(guān)系表<table>tableseeoriginaldocumentpage6</column></row><table>建立FREEMAN鏈碼到頂點(diǎn)鏈碼轉(zhuǎn)換關(guān)系表:<table>tableseeoriginaldocumentpage6</column></row><table>(311灘據(jù)以下關(guān)系確定頂點(diǎn)鏈碼的起始點(diǎn)坐標(biāo)("。,化當(dāng)?!?=Owl日寸m。=x。+0.5,v。=y0+0.5,當(dāng)。"?2or3時(shí)w0.5,Vo"Q-0.5;當(dāng)a—,=4oa"5時(shí)=x0-0.5,v0=少o-0.5.當(dāng)a_,=6or7時(shí)《0=;c0-0.5,v0=少0+0.5.(312)根據(jù)頂點(diǎn)鏈碼初始行走方向關(guān)系表,確定頂點(diǎn)鏈碼的初始行走方向^。e=VCCET[a"-']["0].(313)遍歷FREEMAN鏈碼序列,根據(jù)FREEMAN鏈碼到頂點(diǎn)鏈碼轉(zhuǎn)換關(guān)系表,把FREEMAN鏈碼序列轉(zhuǎn)化為頂點(diǎn)鏈碼序列。=FREEMANTOVCC_T[fl'-i][a'];其中"'為當(dāng)前FREEMAN鏈碼,""為前一個(gè)FREEMAN鏈碼。所述的頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼包括(320)檢測(cè)頂點(diǎn)鏈碼表示的邊界是圖像外邊界還是內(nèi)邊界;(321)旋轉(zhuǎn)頂點(diǎn)鏈碼,使得圖像外邊界頂點(diǎn)鏈碼的初始碼值為1,末尾碼值為非1,圖像內(nèi)邊界的頂點(diǎn)鏈碼的初始碼值為3,末尾碼值為非l,對(duì)旋轉(zhuǎn)后的頂點(diǎn)鏈碼進(jìn)行下面的變換3->0,2->1,13->2,12->3,113->4,112->5,1113->6,變換后的新鏈碼可以表示為{("。,v。)^/A《—J,其中m為新鏈碼的長(zhǎng)度;(322)計(jì)算FREEMAN鏈碼的初始鏈碼和初始像素坐標(biāo);(323)將頂點(diǎn)鏈碼序列轉(zhuǎn)換為八方向FREEMAN鏈碼序列。所述的四方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換包括(61)四方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼;(62)頂點(diǎn)鏈碼轉(zhuǎn)換為四方向FREEMAN鏈碼。所述的四方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼包括(610)將四方向FREEMAN鏈碼轉(zhuǎn)化為八方向FREEMAN鏈碼;(61l)將八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼。所述的頂點(diǎn)鏈碼轉(zhuǎn)換為四方向FREEMAN鏈碼包括(621)將頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼;(622)對(duì)獲得的八方向FREEMAN鏈碼作以下的替換處理7->06,l->20,3->42,5->64,替換后的FREEMAN鏈碼即為四近鄰圖像邊界的四方向FREEMAN鏈碼。與現(xiàn)有技術(shù)相比,本發(fā)明的方法時(shí)間復(fù)雜度低,易于實(shí)現(xiàn),對(duì)多連通區(qū)域內(nèi)外邊界都適用,使得兩種鏈碼信息可共享,能夠更好地發(fā)揮鏈碼的優(yōu)點(diǎn),為用戶提供更多的方便。圖1為四方向示意圖2為八方向示意圖3為八方向FREEMAN鏈碼示意圖;圖4為四方向FREEMAN鏈碼示意圖;圖5為頂點(diǎn)鏈碼示意圖6為相鄰八方向FREEMAN鏈碼構(gòu)型示意圖7為外邊界初始頂點(diǎn)鏈碼與初始FREEMAN鏈碼的關(guān)系圖;圖8為內(nèi)邊界的初始頂點(diǎn)鏈碼與初始FREEMAN鏈碼的關(guān)系圖;圖9為四方向FREEMAN鏈碼與八方向FREEMAN鏈碼關(guān)系具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步說明。一、正方形點(diǎn)陣上的FREEMAN鏈碼和頂點(diǎn)鏈碼如圖l、2所示,用0,2,4,6四個(gè)代碼表示四個(gè)方向,用O,1,2,3,4,5,6,7八個(gè)代碼表示八個(gè)方向。圖像邊界的FREEMAN鏈碼可以表示為((x。,少。K^。2A^J,K,A)為圖像邊界上的起始像素坐標(biāo),當(dāng)"^{0,1,2,3,4,5,6,7}時(shí),該鏈碼為八方向FREEMAN鏈碼,當(dāng)Ae{0,2,4,6}時(shí),該鏈碼為四方向FREEMAN鏈碼,Z為鏈的長(zhǎng)。如圖3,從像素P出發(fā)的八方向FREEMAN鏈碼表示為{(x。,y。)01G1235432555707}。如圖4,從像素p出發(fā)的四方向FREEMAN鏈碼表示為,y0)0200202426U4226464柳600Q。Bribiesca提出了用邊界像素的頂點(diǎn)來標(biāo)記圖像的方法。圖像邊界的頂點(diǎn)鏈碼的表示為K"。,v。)^/c^Ac^、其中("。,V。)是頂點(diǎn)鏈碼的起始點(diǎn),^為初始行走方向,"{G,2,4,6},A"1,2,3}。如圖5所示,圖像邊界的頂點(diǎn)鏈碼可以用下列形式來表示{OvO/o/mn^Bimmmmm2。其中K,W是圖像邊界像素的頂點(diǎn)p的坐標(biāo),初始行走方向?yàn)镺。二、八方向FREEMAN鏈碼與頂點(diǎn)鏈碼間的相互轉(zhuǎn)換令^為當(dāng)前FREEMAN鏈碼,""為前一FREEMAN鏈碼,且^=""-"圖6給出了所有相鄰兩個(gè)八方向FREEMAN鏈碼像素位置關(guān)系。其中,一代表鏈碼^,—代表鏈碼"",黑點(diǎn)表示當(dāng)"'為初始鏈碼時(shí),頂點(diǎn)鏈碼的起始點(diǎn)位置,數(shù)字1,2,3為"'到達(dá)下一像素所經(jīng)過的像素頂點(diǎn)的頂點(diǎn)鏈碼。八方向FREEMAN鏈碼到頂點(diǎn)鏈碼的轉(zhuǎn)換如圖6所示的FREEMAN鏈碼與頂點(diǎn)鏈碼間的關(guān)系,F(xiàn)REEMAN鏈碼到頂點(diǎn)鏈碼轉(zhuǎn)換關(guān)系與頂點(diǎn)鏈碼初始行走方向可有表1和表2給出。<table>tableseeoriginaldocumentpage9</column></row><table>第二步,引進(jìn)新鏈碼。如圖6所示,頂點(diǎn)鏈碼有8種子鏈類型,分別為3,2,13,12,113,112,1113和1111。獨(dú)立像素點(diǎn)的頂點(diǎn)鏈碼為1111。對(duì)于非獨(dú)立像素點(diǎn)圖像,圖像外邊界的頂點(diǎn)鏈碼中一定存在碼值2或3,圖像內(nèi)邊界頂點(diǎn)鏈碼中一定存在碼值1或2。這樣,可以旋轉(zhuǎn)頂點(diǎn)鏈碼,使得圖像外邊界頂點(diǎn)鏈碼的初始碼值為1,末尾碼值為非1,圖像內(nèi)邊界的頂點(diǎn)鏈碼的初始碼值為3,末尾碼值為非1。對(duì)旋轉(zhuǎn)后的頂點(diǎn)鏈碼進(jìn)行下面的變換-3->0,2曙>1,13->2,12->3,113->4,112->5,1113->6變換后的新鏈碼可以表示為{("。,v。)^/A(J其中m為新鏈碼的長(zhǎng)度。第三步,計(jì)算FREEMAN鏈碼的初始鏈碼和初始像素坐標(biāo)。頂點(diǎn)鏈碼經(jīng)過第二步旋轉(zhuǎn)處理后,對(duì)于圖像的外邊界,初始頂點(diǎn)鏈碼的可能構(gòu)型如圖7所示。FREEMAN鏈碼的初始鏈碼"??捎蒄REEMAN鏈碼的初始鏈碼關(guān)系表給出,見表3:乂02346070132124434567656701表3FREEMAN鏈碼的起始像素坐標(biāo)"。,^)可由下面的關(guān)系給出當(dāng)"0時(shí),兀0="0+0.5,>>0=v0+0.5;當(dāng);1日寸,&="0+0.5,y0=v0_0,5;當(dāng)"2時(shí),W0.5,_v0=v0_0.5;當(dāng);3日寸,w0.5,y0=v0+0.5。對(duì)圖像內(nèi)邊界,頂點(diǎn)鏈碼的起始鏈碼為3,對(duì)應(yīng)新鏈碼的起始鏈碼值0,其可能構(gòu)型如圖8所示,這時(shí),F(xiàn)REEMAN鏈碼的初始鏈碼為fl。=e+1。FREEMAN鏈碼的初始像素坐標(biāo)",^)可由下面的關(guān)系得出當(dāng)"0時(shí),="0_0.5,^=v0+0.5;當(dāng)^=1時(shí),x0=m0+0.5,y0=v0+0.5;當(dāng);2時(shí),、=w0+0.5,y0=v0-0.5;當(dāng)"3時(shí),w0.5,_y0=v0_0.5。第四步,把頂點(diǎn)鏈碼序列轉(zhuǎn)換為八方向FREEMAN鏈碼序列。根據(jù)圖6,定義頂點(diǎn)鏈碼到八方向FREEMAN鏈碼轉(zhuǎn)化關(guān)系表4如下:<table>tableseeoriginaldocumentpage11</column></row><table>表4由上面4步,根據(jù)圖像的頂點(diǎn)鏈碼,很容易獲得圖像的FREEMAN鏈碼表示。三、四方向FREEMAN鏈碼與頂點(diǎn)鏈碼間的相互轉(zhuǎn)換四近鄰圖像區(qū)域邊界可以用四方向FREEMAN鏈碼表示,本節(jié)給出四方向FREEMAN鏈碼與頂點(diǎn)鏈碼之間的相互轉(zhuǎn)換方法。由于八方向FREEMAN鏈碼可以表示四近鄰圖像區(qū)域邊界,因此可以借助于八方向FREEMAN鏈碼來實(shí)現(xiàn)四方向FREEMAN鏈碼與頂點(diǎn)鏈碼之間的相互轉(zhuǎn)換方法。四方向FREEMAN鏈碼到頂點(diǎn)鏈碼的轉(zhuǎn)換第一步四方向FREEMAN鏈碼轉(zhuǎn)化為八方向四方向FREEMAN鏈碼。根據(jù)圖9,對(duì)四方向FREEMAN鏈碼的子鏈作以下的替換處理06->7,20->l,42->3,64->5,替換后的四方向FREEMAN鏈碼即為四近鄰圖像邊界的八方向FREEMAN鏈碼。第二步運(yùn)用上述八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼的方法,將四近鄰圖像邊界的八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼。頂點(diǎn)鏈碼到四方向FREEMAN鏈碼轉(zhuǎn)換第一步運(yùn)用上述給出的頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼的方法,將四近鄰圖像邊界的頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼。第二步對(duì)獲得的八方向FREEMAN鏈碼作以下的替換處理7->06,l->20,3-〉42,5->64,替換后的FREEMAN鏈碼即為四近鄰圖像邊界的四方向FREEMAN鏈碼。權(quán)利要求1.弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,包括八方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換;四方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換。2.根據(jù)權(quán)利要求1所述的弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,所述的八方向FREEMAN鏈碼、四方向FREEMAN鏈碼均表示為化。j。)a。a,^AJ,",A)為圖像邊界上的起始像素坐標(biāo),當(dāng)"'"0,1,2,3,4,5,6,"時(shí),該鏈碼為八方向FREEMAN鏈碼,當(dāng)"'e{0,2,4,6}時(shí),該鏈碼為四方向FREEMAN鏈碼,^為鏈的長(zhǎng);所述的頂點(diǎn)鏈碼表示為{(M。,v。)〃/c。c,Ac_,},其中("。,v。)是頂點(diǎn)鏈碼的起始點(diǎn),^為初始行走方向,"^,2,4,6},^e{l,2,3}。3.根據(jù)權(quán)利要求1所述的弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,所述的八方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換包括(31)八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼;(32)頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼。4.根據(jù)權(quán)利要求3所述的弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,所述的八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼包括-(310)建立頂點(diǎn)鏈碼初始行走方向關(guān)系表<table>tableseeoriginaldocumentpage2</column></row><table><table>tableseeoriginaldocumentpage3</column></row><table>(311)根據(jù)以下關(guān)系確定頂點(diǎn)鏈碼的起始點(diǎn)坐標(biāo)",^:當(dāng)d=0^1時(shí)w0=x0+0.5,v0=jv0+0.5當(dāng)=4^5時(shí)w0=x0-0.5,v0-y0-0.5當(dāng),=6or7時(shí)=-0,5,v0=y0+0.5(312)根據(jù)頂點(diǎn)鏈碼初始行走方向關(guān)系表,確定頂點(diǎn)鏈碼的初始行走方向Le=VCCET[""-']["0].C313)遍歷FREEMAN鏈碼序列,根據(jù)FREEMAN鏈碼到頂點(diǎn)鏈碼轉(zhuǎn)換關(guān)系表,把FREEMAN鏈碼序列轉(zhuǎn)化為頂點(diǎn)鏈碼序列c,=FREEMANTOVCC—T[A-;其中"'為當(dāng)前FREEMAN鏈碼,為前一個(gè)FREEMAN鏈碼。5.根據(jù)權(quán)利要求3所述的FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,所述的頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼包括(320)檢測(cè)頂點(diǎn)鏈碼表示的邊界是圖像外邊界還是內(nèi)邊界;(321)旋轉(zhuǎn)頂點(diǎn)鏈碼,使得圖像外邊界頂點(diǎn)鏈碼的初始碼值為1,末尾碼值為非1,圖像內(nèi)邊界的頂點(diǎn)鏈碼的初始碼值為3,末尾碼值為非l,對(duì)旋轉(zhuǎn)后的頂點(diǎn)鏈碼進(jìn)行下面的變換3->0,2->l,13->2,12曙〉3,113國(guó)>4,112->5,1113->6,變換后的新鏈碼可以表示為K"。,v。)/^"。《A《J,其中m為新鏈碼的長(zhǎng)度;(322)計(jì)算FREEMAN鏈碼的初始鏈碼和初始像素坐標(biāo);(323)將頂點(diǎn)鏈碼序列轉(zhuǎn)換為八方向FREEMAN鏈碼序列。6.根據(jù)權(quán)利要求l所述的FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,所述的四方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換包括(61)四方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼;(62)頂點(diǎn)鏈碼轉(zhuǎn)換為四方向FREEMAN鏈碼。7.根據(jù)權(quán)利要求6所述的FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,所述的四方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼包括(610)將四方向FREEMAN鏈碼轉(zhuǎn)化為八方向FREEMAN鏈碼;(611)將八方向FREEMAN鏈碼轉(zhuǎn)換為頂點(diǎn)鏈碼。8.根據(jù)權(quán)利要求6所述的FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,其特征在于,所述的頂點(diǎn)鏈碼轉(zhuǎn)換為四方向FREEMAN鏈碼包括(621)將頂點(diǎn)鏈碼轉(zhuǎn)換為八方向FREEMAN鏈碼;(622)對(duì)獲得的八方向FREEMAN鏈碼作以下的替換處理7->06,1->20,3->42,5->64,替換后的FREEMAN鏈碼即為四近鄰圖像邊界的四方向FREEMAN鏈碼。全文摘要本發(fā)明涉及弗里曼鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換方法,包括八方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換;四方向FREEMAN鏈碼與頂點(diǎn)鏈碼的相互轉(zhuǎn)換。與現(xiàn)有技術(shù)相比,本發(fā)明的方法時(shí)間復(fù)雜度低,易于實(shí)現(xiàn),對(duì)多連通區(qū)域內(nèi)外邊界都適用,使得兩種鏈碼信息可共享,能夠更好地發(fā)揮鏈碼的優(yōu)點(diǎn),為用戶提供更多的方便。文檔編號(hào)G06T9/20GK101493946SQ20081020122公開日2009年7月29日申請(qǐng)日期2008年10月15日優(yōu)先權(quán)日2008年10月15日發(fā)明者敏朱,陳優(yōu)廣申請(qǐng)人:華東師范大學(xué)