專利名稱:一種在排版過程中進行圖像勾邊的方法
技術領域:
本發(fā)明屬于圖像處理技術領域,具體涉及一種在排版過程中進行圖像勾邊的方法。
背景技術:
隨著圖像處理技術的成熟,許多圖像處理軟件在進行圖像處理時,都需要對圖像進行勾邊處理以得到用戶想要的內容。所謂圖像勾邊,是指將圖像中的背景和目標進行分割并保留圖像中的目標(又稱為圖像分割),在此基礎上得到目標輪廓封閉的Bezier曲線表示。圖像分割技術是圖像處理領域中的一個重要內容,經(jīng)過多年的發(fā)展,目前已經(jīng)出現(xiàn)了多種方法并在各種領域中得到了良好的應用。
目前的圖像分割方法主要有如下幾種方法基于梯度、基于區(qū)域、基于特定理論工具的分割方法。
(1)基于梯度的分割方法比較常用的梯度算子有Sobel、Roberts、Canny算子等,灰度邊緣是灰度值不連續(xù)的結果,而這種不連續(xù)性??衫们髮?shù)方便的檢測到。這些算子反映了灰度值的一階或二階導數(shù),從而直接可以得到圖像的邊緣。但是這種方法只是一個像素一個像素的進行處理,沒有考慮到像素間的關系,得到的邊緣往往是不連續(xù)的,為了得到連續(xù)的邊緣還需要作一些更復雜的工作。
(2)基于區(qū)域的分割方法該類方法包括基于像素值、坐標位置的閾值變換方法,基于直方圖方法及基于空間聚類的方法以及區(qū)域生長、分裂合并等分割方法。這類方法比較簡單,能夠將目標和背景分割成不同的區(qū)域,然后利用各種路徑跟蹤算法得到目標的輪廓。但是,為了更準確的分割目標,需要考慮像素間的關系,這就導致了算法的復雜性,導致效率的降低。
(3)基于特定理論工具的分割方法由于圖像來源非常廣泛,圖像中包含的內容十分豐富,簡單的分割方法滿足不了各方面的要求。為此,學者們融合了各領域的知識,提出了如基于數(shù)學形態(tài)學、模式識別、神經(jīng)網(wǎng)絡、信息論等分割方法。這些方法能夠得到較好的效果,但是由于算法十分復雜,在效率上講也是最低的,而且每種方法只對于某一類或幾類圖像有良好效果,對于其它類型圖像效果并不理想。
在將圖像目標和背景區(qū)分開后,為了得到目標輪廓的封閉Bezier曲線表示,需要對目標區(qū)域進行輪廓跟蹤。目前常用的輪廓跟蹤算法有可變形模板跟蹤算法、Snake算法和Freeman鏈碼跟蹤算法??勺冃文0甯櫵惴ㄒ蕾囉趫D像目標的形狀的先驗知識且對圖像噪聲很敏感;Snake算法基于能量最小化原理進行跟蹤,計算量大、效率較低;Freeman鏈碼跟蹤算法采用3×3模板,跟蹤算法簡單,但是對于復雜形狀很容易得到錯誤的輪廓信息。
Freeman鏈碼跟蹤算法具體過程如下(a)確定起始跟蹤方向按照F鏈碼的定義,對起始點從0->7方向依次尋找這樣的點,該點相對于起始點的F鏈碼方向為dir,該點為目標點,而起始點的(dir+1)%8方向上的點為背景點,則該點為起始點的下一個輪廓搜索點;(b)將該點的坐標值及dir存入Freeman結構體,插入鏈表中;(c)根據(jù)當前點(xcur,ycur)及方向dir找到下一個點(xnext,ynext)并令其為當前點;(d)若當前點(xcur,ycur)=(xstart,ystart),則完成路徑搜索,轉到步驟(e),否則從dir方向開始i若dir指向的點為背景點,則dir=(dir+7)%8,再次執(zhí)行i,直到dir指向的點為目標點,則dir為當前點的鏈碼,轉步驟(b);ii若dir指向的點為目標點,則令dir=(dir+1)%8,再執(zhí)行ii,直到dir指向的點為背景點,則當前點的鏈碼為dir=(dir+7)%8,轉步驟(b);(e)在得到一個目標區(qū)域的輪廓后,重新搜索下一個區(qū)域的跟蹤起始點,繼續(xù)進行Freeman鏈碼跟蹤,直到對所有的目標區(qū)域跟蹤完畢;最后根據(jù)每個區(qū)域的Freeman鏈碼中的值擬合為Bezier曲線。
盡管在圖像處理軟件中,對圖像進行勾邊處理已經(jīng)非常成熟,但是在排版過程中該技術應用很少。隨著排版行業(yè)的飛速發(fā)展,需要進行排版的對象越來越復雜,特別是對很多圖像也同樣需要進行勾邊處理。但是,目前的排版軟件中還沒有針對圖像勾邊處理的技術。并且,在圖像處理軟件中已成熟的勾邊技術也不能簡單的應用到排版過程中,因為直接將現(xiàn)有的勾邊技術應用于排版過程中時,常會發(fā)生變化而發(fā)生錯誤,如Freeman鏈碼跟蹤算法直接在排版過程中應用時可能會發(fā)生如下變化,引起勾邊的錯誤(1)對于單像素寬的目標,例如一條直線,F(xiàn)reeman鏈碼跟蹤算法雖然能夠跟蹤到所有的像素點,但是無法返回到跟蹤起始點,而排版系統(tǒng)要求每個目標區(qū)域輪廓都是封閉的;(2)由于得到的目標區(qū)域形狀會十分復雜,可能會出現(xiàn)一個區(qū)域的兩部分只有單像素連接的情況,此時在Freeman鏈碼跟蹤算法中雖然可以增加某些判斷條件(如增加標志位)繼續(xù)進行跟蹤,但是仍有可能出現(xiàn)跟蹤回不到起始點的情況,而且增加了算法的復雜性,降低了效率;(3)如果得到的目標輪廓不是封閉的,在進行下一次目標輪廓跟蹤時就可能將已跟蹤過的目標認為仍未處理,這樣一個目標會得到二條或多條輪廓,顯然,這樣的結果用戶是不可接受的。
發(fā)明內容
針對現(xiàn)有技術中存在的缺陷,本發(fā)明的目的是提供一種在排版過程中進行圖像勾邊的方法,該方法能夠在排版過程中方便地、高效完成圖像的勾邊處理,方便圖像的進一步處理,即使是非專業(yè)的圖像處理人員,也可以很容易地利用本方法實現(xiàn)圖像的勾邊處理。
為達到以上目的,本發(fā)明采用的技術方案是一種在排版過程中進行圖像勾邊的方法,包括以下步驟(1)將排版過程中需要處理的圖像轉換成灰度圖像;(2)將步驟(1)中的灰度圖像轉換為二值圖,即將圖像中的背景和目標進行圖像分割;(3)將步驟(2)中的二值圖進行勾邊處理,采用改進的Freeman鏈碼跟蹤算法得到圖像目標的輪廓封閉Bezier曲線,完成圖像的勾邊處理,具體方法如下1)將圖像的像素矩陣等比例放大整數(shù)倍,使單像素區(qū)域變成多像素區(qū)域;2)采用Freeman鏈碼跟蹤算法得到目標的輪廓;3)跟蹤圖像中的所有目標后,將步驟2)中Freeman鏈碼跟蹤算法得到的像素值等比例相應倍數(shù)后得到原始的輪廓信息。
進一步,步驟(1)中,將圖像轉成灰度圖像時,根據(jù)用戶設定的容忍度值,采用高斯濾波方法對圖像進行高斯濾波。
進一步,步驟(2)中將灰度圖像轉換為二值圖時,根據(jù)用戶設定的閾值進行圖像轉換。
更進一步,步驟(2)中將灰度圖像轉換為二值圖時,迭代閾值算法能夠提供給用戶一個近似的閾值,一般用戶采用此閾值進行圖像轉換可以得到好的結果。
再進一步,所述的迭代閾值算法包括以下步驟1)取圖像灰度范圍的中值為初始閾值;2)根據(jù)初始開關函數(shù)將輸入圖像的每一個像素分成目標和背景并得到兩個積分器目標積分器和背景積分器;3)第一次對圖像掃描結束后,平均兩個積分器的值以確定一個新的閾值,利用這個閾值控制開關再次將輸入圖像分成目標和背景,并用作新的開關函數(shù),如此反復迭代直到開關函數(shù)不再發(fā)生變化;此時得到的閾值即為最終閾值,灰度圖像根據(jù)這個閾值就可以分割為二值圖。
進一步,步驟(3)中的步驟1)中,將圖像的像素矩陣等比例放大整數(shù)倍時,放大倍數(shù)為原像素矩陣的2倍。
進一步,上述步驟(3)中的步驟2)中,對圖像進行內部勾邊的方法還包括以下步驟首先將圖像中所有點都標記為“未跟蹤”狀態(tài),在對一個目標跟蹤時,對每一個置入Freeman鏈碼中的目標點,將其標記為“已跟蹤”狀態(tài),在下一次目標跟蹤時,只搜索標記為“未跟蹤”狀態(tài)的點,從而避免對一個輪廓的多次跟蹤且能夠進入到目標內部得到內部邊界的輪廓信息。
進一步,上述步驟(3)中的步驟2)中,對圖像進行非內部勾邊的方法還包括以下步驟在采用Freeman鏈碼跟蹤算法得到一個封閉區(qū)域的鏈碼后,采用Flooding算法將圖像中該區(qū)域內的所有像素都填充為背景色,然后尋找下一個目標區(qū)域的起始點,再進行輪廓跟蹤。
進一步,步驟(3)中的步驟2)中,對圖像進行框內勾邊的方法如下首先將圖像上所有點在版面上的坐標轉換為圖像坐標系的像素坐標,將其與圖像本身矩形區(qū)域的像素坐標求交,將圖像中位于交集之外的像素置為背景,保留交集內的像素值,最后在此基礎上對圖像采用Freeman鏈碼跟蹤算法進行路徑跟蹤達到框內勾邊的效果。
進一步,步驟(3)中的步驟2)中,對圖像進行反轉的方法如下將得到的二值圖取反色后再進行勾邊,從而得到反轉的效果。
本發(fā)明的效果在于采用本發(fā)明所述的方法,在排版過程中能夠方便的、高效的完成圖像的勾邊處理,并且適合各類圖像,方便圖像的后續(xù)處理,非專業(yè)的圖像處理人員,也可以很容易地利用本方法實現(xiàn)圖像的勾邊處理;同時,用戶可以根據(jù)不同的需求調節(jié)閾值和容忍度從而得到不同的勾邊結果。
之所以采用上述改進的Freeman鏈碼跟蹤算法,是因為該方法具有如下特點將圖像像素矩陣等比例放大整數(shù)倍,使單像素區(qū)域變成多像素區(qū)域,這樣可以對單像素寬的目標進行處理,從而可以直接利用Freeman鏈碼進行跟蹤;這種處理方法避免了目標中存在單像素寬度區(qū)域時如何處理的問題,同時也可以保證得到的每一個目標的輪廓都是封閉的;在跟蹤完圖像中的所有目標后,將Freeman鏈碼中的像素值等比例縮小相應倍數(shù)后即可得到原始的輪廓信息,不會改變、影響和丟失原輪廓信息。
圖1為本發(fā)明所述方法具體實施方式
的流程圖;圖2是在排版過程中對圖像勾邊處理時容忍度值和閾值選擇圖;圖3是在排版過程中對圖像進行框內勾邊處理的效果圖;圖4是在排版過程中對圖像進行非框內勾邊處理的效果圖;圖5是在排版過程中對圖像進行內部勾邊處理的效果圖;圖6是在排版過程中對圖像進行反轉勾邊處理的效果圖;圖7是在排版過程中對圖像同時進行框內勾邊和內部勾邊處理的效果圖;圖8是在排版過程中對圖像同時進行同時選中內部勾邊和反轉處理的效果圖。
具體實施例方式
下面結合附圖及具體實施例對本發(fā)明作進一步詳細說明如圖1所示,一種在排版過程中進行圖像勾邊的方法,包括如下步驟(1)將在排版過程中需要處理的圖像轉換成灰度圖像;
本實施例中將圖像轉成灰度圖像時,根據(jù)用戶設定的容忍度值,采用高斯濾波方法對圖像進行高斯濾波。
(2)將步驟(1)中的灰度圖像轉換為二值圖,即將圖像中的背景和目標進行圖像分割;將灰度圖像轉換為二值圖時,根據(jù)指用戶設定的閾值或采用迭代閾值算法得到的閾值進行圖像轉換,如采用迭代閾值算法得到的閾值將會使本發(fā)明的效果更好,本實施例中采用迭代閾值算法,具體方法如下1)取圖像灰度范圍的中值為初始閾值;2)根據(jù)初始開關函數(shù)將輸入圖像的每一個像素分成目標和背景并得到兩個積分器目標積分器和背景積分器;3)第一次對圖像掃描結束后,平均兩個積分器的值以確定一個新的閾值,利用這個閾值控制開關再次將輸入圖像分成目標和背景,并用作新的開關函數(shù),如此反復迭代直到開關函數(shù)不再發(fā)生變化;此時得到的閾值即為最終閾值,灰度圖像根據(jù)這個閾值就可以分割為二值圖。
(3)將步驟(2)中的二值圖進行勾邊處理,采用改進的Freeman鏈碼跟蹤算法得到圖像目標的輪廓封閉Bezier曲線,完成圖像的勾邊處理,具體方法如下1)將圖像的像素矩陣等比例放大整數(shù)倍,本實施例中放大2倍,使單像素區(qū)域變成多像素區(qū)域;2)采用Freeman鏈碼跟蹤算法得到目標的輪廓;3)跟蹤圖像中的所有目標后,將步驟2)中Freeman鏈碼跟蹤算法得到的像素值等比例縮小一倍后得到原始的輪廓信息。
另外,針對排版軟件的特點,本實施例同時提供給用戶內部勾邊、框內勾邊和反轉三個選項并能得到特殊的勾邊效果,具體方法如下。
1、內部勾邊如果沒選擇內部勾邊,則只得到目標區(qū)域最外層的輪廓信息。如果用戶選擇了內部勾邊,則表示需要得到二值圖中所有目標和背景交界處的信息。為此,首先將圖像中所有點都標記為“未跟蹤”狀態(tài)。在對一個目標跟蹤時,對每一個置入Freeman鏈碼中的目標點,將其標記為“已跟蹤”狀態(tài)。這樣,在下一次目標跟蹤時,只搜索標記為“未跟蹤”狀態(tài)的點,從而避免對一個輪廓的多次跟蹤且可以進入到目標內部得到內部邊界的輪廓信息。
2、框內勾邊
普通的圖像是一個矩形區(qū)域,但是在排版軟件中,為了有更好的藝術效果,圖像可能排入一個復雜的圖元中,且只顯示在圖元內部的圖像信息,可以認為拋棄了圖元外部的圖像信息。所以,如果用戶選擇了框內勾邊,則圖像勾邊只對圖元內的圖像進行勾邊。為了得到這個效果,首先將圖元上所有點在版面上的坐標轉換為圖像坐標系的像素坐標,將其與圖像本身矩形區(qū)域的像素坐標求交,將圖像中位于交集之外的像素置為背景,保留交集內的像素值。在此基礎上對圖像采用Freeman鏈碼跟蹤算法進行路徑跟蹤達到框內勾邊的效果。
3、反轉由于目標的二義性,圖像中的一個區(qū)域即可以被認為是目標也可以被認為是背景。針對這種情況,本實施例提供了反轉的功能,將得到的二值圖反色進行勾邊得到反轉的效果。
將上述的具體實施方式
應用于實際的排版過程,在排版過程中對圖像進行勾邊處理的效果如下首先,如圖2所示,用戶在版面上的一個圖元中排入一幅圖像,通過菜單選擇或快捷鍵彈出圖像勾邊對話框。對話框中包含閾值和容忍度的調節(jié),以及框內勾邊、內部勾邊和反轉選項按鈕。其中閾值是根據(jù)圖像本身信息采用迭代閾值算法得到的值,一般可以認為是該圖像的最優(yōu)閾值,用戶可以直接采用該閾值進行圖像勾邊。容忍度的值初始為2.5,根據(jù)這個值對圖像進行高斯濾波。
默認的情況是進行框內勾邊,用戶點擊預覽或確定后,即得到勾邊結果,如圖3所示。如果用戶取消框內勾邊,得到的結果如圖4所示??梢钥闯觯騼裙催呉詧D元輪廓為邊界,得到的結果是圖元輪廓與圖像本身輪廓的交集;而非框內勾邊則是對整個圖像進行勾邊操作。
圖5顯示了用戶選擇內部勾邊后的結果;圖6顯示了反轉后勾邊結果。用戶可以通過這三個功能的組合得到更多的勾邊效果,圖7、圖8分別是同時選中框內勾邊和內部勾邊的效果以及同時選中內部勾邊和反轉得到的結果。
本發(fā)明所述的方法并不限于具體實施方式
中所述的實施例,本領域技術人員根據(jù)本發(fā)明的技術方案得出其他的實施方式,同樣屬于本發(fā)明的技術創(chuàng)新范圍。
權利要求
1.一種在排版過程中進行圖像勾邊的方法,包括以下步驟(1)將排版過程中需要處理的圖像轉換成灰度圖像;(2)將步驟(1)中的灰度圖像轉換為二值圖,即將圖像中的背景和目標進行圖像分割;(3)將步驟(2)中的二值圖進行勾邊處理,采用改進的Freeman鏈碼跟蹤算法得到圖像目標的輪廓封閉Bezier曲線,完成圖像的勾邊處理,具體方法如下1)將圖像的像素矩陣等比例放大整數(shù)倍,使單像素寬的區(qū)域變成多像素寬的區(qū)域;2)采用Freeman鏈碼跟蹤算法得到目標的輪廓;3)跟蹤圖像中的所有目標后,將步驟2)中Freeman鏈碼跟蹤算法得到的輪廓坐標等比例縮小相應倍數(shù)后得到原始的輪廓信息。
2.如權利要求1所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(1)中,將圖像轉成灰度圖像時,根據(jù)用戶設定的容忍度值,采用高斯濾波方法對圖像進行高斯濾波。
3.如權利要求1所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(2)中將灰度圖像轉換為二值圖時,根據(jù)用戶設定的閾值進行圖像轉換。
4.如權利要求1所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(2)中將灰度圖像轉換為二值圖時,根據(jù)迭代閾值算法得到的閾值進行圖像轉換。
5.如權利要求4所述的一種在排版過程中進行圖像勾邊的方法,其特征是所述的迭代閾值算法包括以下步驟1)取圖像灰度范圍的中值為初始閾值;2)根據(jù)初始開關函數(shù)將輸入圖像的每一個像素分成目標和背景并得到兩個積分器目標積分器和背景積分器;3)第一次對圖像掃描結束后,平均兩個積分器的值以確定一個新的閾值,利用這個閾值控制開關再次將輸入圖像分成目標和背景,并用作新的開關函數(shù),如此反復迭代直到開關函數(shù)不再發(fā)生變化;此時得到的閾值即為最終閾值,灰度圖像根據(jù)這個閾值就可以分割為二值圖。
6.如權利要求1、2、3、4或5所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(3)中的步驟1)中,將圖像的像素矩陣等比例放大整數(shù)倍時,放大倍數(shù)為原像素矩陣的2倍。
7.如權利要求6所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(3)中的步驟2)中,對圖像進行內部勾邊的方法還包括以下步驟首先將圖像中所有點都標記為“未跟蹤”狀態(tài),在對一個目標跟蹤時,對每一個置入Freeman鏈碼中的目標點,將其標記為“已跟蹤”狀態(tài),在下一次目標跟蹤時,只搜索標記為“未跟蹤”狀態(tài)的點,從而避免對一個輪廓的多次跟蹤且能夠進入到目標內部得到內部邊界的輪廓信息。
8.如權利要求6所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(3)中的步驟2)中,對圖像進行非內部勾邊的方法還包括以下步驟在采用Freeman鏈碼跟蹤算法得到一個封閉區(qū)域的鏈碼后,采用Flooding算法將圖像中該區(qū)域內的所有像素都填充為背景色,然后尋找下一個目標區(qū)域的起始點,再進行輪廓跟蹤。
9.如權利要求6所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(3)中的步驟2)中,對圖像進行框內勾邊的方法如下首先將圖像上所有點在版面上的坐標轉換為圖像坐標系的像素坐標,將其與圖像本身矩形區(qū)域的像素坐標求交,將圖像中位于交集之外的像素置為背景,保留交集內的像素值,最后在此基礎上對圖像采用Freeman鏈碼跟蹤算法進行路徑跟蹤達到框內勾邊的效果。
10.如權利要求6所述的一種在排版過程中進行圖像勾邊的方法,其特征是步驟(3)中的步驟2)中,對圖像進行反轉的方法如下將得到的二值圖取反色后再進行勾邊,從而得到反轉的效果。
全文摘要
本發(fā)明涉及一種在排版過程中進行圖像勾邊的方法,屬于圖像處理技術領域。現(xiàn)有的圖像勾邊技術雖然很成熟,但是在排版過程中很少對圖像進行勾邊處理,并且現(xiàn)有的圖像勾邊算法也不能直接應用于排版過程中的圖像勾邊處理。本發(fā)明所述的方法先將排版過程中的圖像轉換成灰度圖像;然后再轉換為二值圖;對二值圖進行勾邊處理時,先將圖像的像素矩陣等比例放大整數(shù)倍,然后采用Freeman鏈碼跟蹤算法得到目標輪廓的封閉Bezier曲線。采用本發(fā)明所述的方法,能夠方便的、高效的在排版過程中即可完成圖像的勾邊處理,并且適合各類圖像,方便圖像的后續(xù)處理,同時,用戶可以根據(jù)不同的需求調節(jié)閾值和容忍度從而得到不同的勾邊結果。
文檔編號H04N1/40GK1852389SQ200610078638
公開日2006年10月25日 申請日期2006年4月29日 優(yōu)先權日2006年4月29日
發(fā)明者孫亦南, 陳宇, 傅薔, 王旭, 周泰峰 申請人:北京北大方正電子有限公司, 北京大學