專利名稱:一種電視字幕文字的處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻中字幕處理領(lǐng)域,具體涉及一種電視字幕文字的處理方法。
背景技術(shù):
字幕系統(tǒng)在視頻領(lǐng)域有廣泛的應(yīng)用,也是應(yīng)用視頻技術(shù)的重要部分。由于電視的分辨率較低,顯示為隔行掃描,為獲得穩(wěn)定清晰的圖像,電視字幕常需要進行反走樣和反抖動處理等特殊處理。由點陣構(gòu)成的顯示設(shè)備,圖像被顯示在整數(shù)坐標上,連續(xù)性被破壞,直線段顯示為階梯狀的多個短線段,反走樣技術(shù)用于消除這種情況。反抖動技術(shù)可以避免因隔行掃描造成的線段時隱時現(xiàn)的抖動現(xiàn)象,電視字幕的這種處理遠比其他高分辨率、逐行掃描顯示設(shè)備如計算機CRT(Cathode Ray Tube,陰極射線管)設(shè)備的字幕處理復(fù)雜,經(jīng)過這些處理的電視字幕可以保持原文字的清晰輪廓。目前,字幕的邊緣處理都采用二維圖像處理方法,在圖像的邊緣引入各種濾波器,可得到反走樣和反抖動的圖像,這些方法取得了很成功的效果,廣泛應(yīng)用于電視節(jié)目制作中。但是,日益豐富的文化節(jié)目對字幕質(zhì)量和形式提出更高的要求,三維文字將更頻繁地出現(xiàn)在電視節(jié)目中,而現(xiàn)有的技術(shù)還沒發(fā)現(xiàn)有效處理電視字幕中三維文字的方法。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的是提供一種電視字幕文字的處理方法,該方法能夠通過計算取得文字的膨脹和收縮曲線,保證計算結(jié)果與原文字輪廓保持一致,從而實現(xiàn)電視字幕中三維文字的清晰顯示;同時,這種方法還可以實現(xiàn)二維字幕的效果處理,并且可使硬件加速,減少計算量,保證了實時性。
為達到以上目的,本發(fā)明采用的技術(shù)方案是一種電視字幕文字的處理方法,包括以下步驟(1)從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),把其中的曲線數(shù)據(jù)插值,其結(jié)果是直線數(shù)組;(2)計算電視字幕中文字輪廓的偏移直線,偏移直線對應(yīng)于原輪廓上的直線段,文字的膨脹或收縮輪廓是封閉的,并且與原輪廓不在同一平面上;(3)建立文字的膨脹面和收縮面,使用能夠達到反走樣和反抖動效果的紋理填充膨脹面和收縮面。
更進一步,為使本發(fā)明具有更好的效果,步驟(1)中,從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),是指從輪廓字型的字體中獲取輪廓數(shù)據(jù),所述字庫中的字型是輪廓無相交的。
更進一步,為使本發(fā)明具有更好的效果,步驟(1)中,從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),并把曲線數(shù)據(jù)轉(zhuǎn)換為直線數(shù)組時,插值后直線段的大小是由模型精度決定的。
更進一步,為使本發(fā)明具有更好的效果,步驟(2)中,如果相鄰矢量之間角度大于180度,為使拐角平滑,采用以下兩種方法增加控制點,具體如下(1)該點在兩條矢量之間的角平分線上,距離兩條矢量的交點的長度是膨脹和收縮距離;或(2)該點是曲線的控制點,在兩條矢量之間的角平分線上,距離兩條矢量的交點的長度是膨脹和收縮距離。第一條偏移線的終點、控制點和第二條偏移線的起點構(gòu)成描述膨脹或收縮曲線的輪廓。
再進一步,為使本發(fā)明具有更好的效果,相鄰矢量之間角度大于180度而增加控制點時,如果此控制點與已計算的膨脹點或收縮點的距離在模型精度范圍內(nèi),則合并此控制點到膨脹點或收縮點,這樣可以減少構(gòu)成輪廓面的數(shù)量,而且圖像更平滑;對于由重合點構(gòu)成的直線不需要計算。
更進一步,為使本發(fā)明具有更好的效果,步驟(2)中,如果相鄰矢量之間角度小于180度,將產(chǎn)生面的交叉,利用Z軸方向偏移,使遠離輪廓的面交叉部分不可見;對所有新計算出的點增加Z坐標數(shù)據(jù),使膨脹線、收縮線與原文字輪廓具有不一樣的Z坐標。
更進一步,為使本發(fā)明具有更好的效果,步驟(3)中,建立文字的膨脹面和收縮面,具體方法如下(1)用原輪廓上的直線段和由此直線段計算出的膨脹點或收縮點共四點構(gòu)成面。
(2)對于有插點的情況,由輪廓上的一點與插入曲線構(gòu)成面。
本發(fā)明的效果在于采用本發(fā)明所述的方法處理電視字幕,不僅可以實現(xiàn)二維字幕的效果處理,而且可以實現(xiàn)三維字幕的處理,通過計算取得的膨脹和收縮的面,可以用作反走樣和反抖動處理,電視字幕地顯示更清晰;同時該方法保留了原輪廓點與膨脹或收縮點的對應(yīng)關(guān)系,方便后期渲染操作;并且內(nèi)存消耗減少;可以實現(xiàn)硬件加速,為實時處理提供基礎(chǔ);特技效果不依賴于特殊硬件,而且增加了特技效果種類。
圖1是本發(fā)明所述方法的流程圖;圖2是求一條直線的外延線示意圖;圖3是當相鄰矢量沿前進方向的角度小于180度時,形成交叉面,用Z緩沖區(qū)消除交叉面示意圖;圖4是當相鄰矢量沿前進方向的角度大于180度時,需要添加控制點,使拐角平滑示意圖。
具體實施例方式
下面結(jié)合附圖和具體實施例對本發(fā)明作進一步的描述。
首先,對文字外側(cè)、內(nèi)側(cè)及兩條矢量的夾角作以下定義文字輪廓外側(cè)即膨脹方向,內(nèi)側(cè)即收縮方向。如果文字的外輪廓是逆時針的,則沿前進方向的左側(cè)為外側(cè),沿前進方向的右側(cè)為內(nèi)側(cè);反之,沿前進方向的右側(cè)為外側(cè),沿前進方向的左側(cè)為內(nèi)側(cè)。膨脹面和收縮面統(tǒng)稱外延面。兩條矢量的夾角是指從第二條矢量到第一條矢量之間沿逆時針方向的夾角。
在圖2、圖3和圖4中,粗黑實線表示文字輪廓,箭頭指向文字輪廓的前進方向,粗黑虛線表示輪廓矢量的偏移;與輪廓直線平行的虛線是文字的膨脹線,連接輪廓線和膨脹線的虛線是輪廓點上的法線。
如圖1所示,一種電視字幕文字的處理方法,包括以下步驟(1)從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),把其中的曲線數(shù)據(jù)插值,結(jié)果是直線數(shù)組。從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),是指從輪廓字型的字體中獲取輪廓數(shù)據(jù),要求這種字庫中的字型是輪廓無相交的。從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),需要把曲線轉(zhuǎn)換為直線,根據(jù)期望的模型精度決定插值后直線段的大小。
(2)圖2,圖3和圖4中均假設(shè)字庫輪廓為順時針方向,并計算外側(cè),內(nèi)側(cè)的計算方法與此類似。
計算電視字幕中文字輪廓的偏移直線,偏移直線對應(yīng)于原輪廓上的直線段,文字的膨脹或收縮輪廓是封閉的,并且與原輪廓不在同一平面上。如果相鄰矢量之間角度大于180度,即出現(xiàn)相鄰?fù)庋用鏇]有交叉的情況,增加控制點,使拐角平滑;如果相鄰矢量之間角度小于180度,即外延面有交叉,利用Z軸方向偏移,保留有關(guān)面的交叉信息;對所有新計算出的點增加Z坐標數(shù)據(jù),使膨脹線、收縮線與原文字輪廓具有不一樣的Z坐標;計算偏移直線的方法沿文字輪廓前進的方向,以法線方向計算偏移量;對描述輪廓的每一條直線計算兩個偏移點,這兩點確定的直線就是該直線的膨脹線和收縮線;對輪廓的結(jié)束點采用以下方法計算特殊點的處理文字的輪廓是千差萬別的,對相鄰兩條直線按矢量計算夾角,分兩種情況第一,如圖4所示,如果相鄰兩條矢量間夾角大于180度,以適當?shù)姆椒ㄔ黾涌刂泣c,使拐角平滑。所述適當?shù)姆椒ň唧w采用以下兩種方法1)該點在兩條矢量之間的角平分線上,距離兩條矢量的交點的長度是膨脹和收縮距離;或2)該點是曲線的控制點,在兩條矢量之間的角平分線上,距離兩條矢量的交點的長度是膨脹和收縮距離的兩倍。第一條偏移線的終點、此控制點和第二條偏移線的起點構(gòu)成描述膨脹或收縮曲線的輪廓。
優(yōu)化方法a.如果兩個控制點距離在容許范圍內(nèi),可以合并,這樣可以減少構(gòu)成輪廓面的數(shù)量,而且圖像更平滑。
b.對于由重合點構(gòu)成的直線不需要計算。
第二,如圖3所示,如果相鄰兩條矢量間夾角小于180度,將產(chǎn)生面的交叉,可直接按步驟(3)處理。
(3)建立文字的膨脹面和收縮面,使用能夠達到反走樣和反抖動效果的紋理填充膨脹面和收縮面。
具體包括如下方法1)用原輪廓上的直線段和由此線段計算出的膨脹點或收縮點共四點構(gòu)成面。
2)對于有插點的情況,由輪廓上的一點與插入線段共三點構(gòu)成面。
外延面的相交處理按本發(fā)明所述的方法計算的外延輪廓將不可避免地產(chǎn)生大量交叉,膨脹面與膨脹面之間、膨脹面與原圖形之間都存在相交的情況。如果計算這些交叉點、并判斷有效點將大大增加計算量。本實施例中,采取Z緩沖區(qū)的辦法在繪制圖形時,消除不可見點,把外延點與原輪廓點在Z軸方向上分開,利用Z緩沖區(qū)判斷交叉部分。
本發(fā)明所述的方法并不限于具體實施方式
中所述的實施例,本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明的技術(shù)方案得出其他的實施方式,同樣屬于本發(fā)明的技術(shù)創(chuàng)新范圍。
權(quán)利要求
1.一種電視字幕文字的處理方法,包括以下步驟(1)從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),把其中的曲線數(shù)據(jù)插值,其結(jié)果是直線數(shù)組;(2)計算電視字幕中文字輪廓的偏移直線,偏移直線對應(yīng)于原輪廓上的直線段,文字的膨脹或收縮輪廓是封閉的,并且與原輪廓不在同一平面上;(3)建立文字的膨脹面和收縮面,使用能夠達到反走樣和反抖動效果的紋理填充膨脹面和收縮面。
2.如權(quán)利要求1所述的一種電視字幕文字的處理方法,其特征是步驟(1)中,從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),是指從輪廓字型的字體中獲取輪廓數(shù)據(jù),所述字庫中的字型是輪廓無相交的。
3.如權(quán)利要求2所述的一種電視字幕文字的處理方法,其特征是步驟(1)中,從字庫中獲取電視字幕文字的輪廓數(shù)據(jù),并把曲線數(shù)據(jù)轉(zhuǎn)換為直線數(shù)組時,插值后直線段的大小是由模型精度決定的。
4.如權(quán)利要求1所述的一種電視字幕文字的處理方法,其特征是步驟(2)中,如果相鄰矢量之間角度大于180度,為使拐角平滑,采用以下兩種方法增加控制點,具體如下1)該點在兩條矢量之間的角平分線上,距離兩條矢量的交點的長度就是膨脹和收縮距離;或2)該點是曲線的控制點,在兩條矢量之間的角平分線上,距離兩條矢量的交點的長度是膨脹和收縮距離,第一條偏移線的終點、控制點和第二條偏移線的起點構(gòu)成描述膨脹或收縮曲線的輪廓。
5.如權(quán)利要求4所述的一種電視字幕文字的處理方法,其特征是相鄰矢量之間角度大于180度而增加控制點時,如果此控制點與已計算的膨脹點或收縮點的距離在模型精度范圍內(nèi),則合并此控制點到膨脹點或收縮點。
6.如權(quán)利要求4所述的一種電視字幕文字的處理方法,其特征是相鄰矢量之間角度大于180度而增加控制點時,對于由重合點構(gòu)成的直線不需要計算。
7.如權(quán)利要求1所述的一種電視字幕文字的處理方法,其特征是步驟(2)中,如果相鄰矢量之間角度小于180度,將產(chǎn)生面的交叉,利用Z軸方向偏移,使遠離輪廓的面交叉部分不可見;對所有新計算出的點增加Z坐標數(shù)據(jù),使膨脹線、收縮線與原文字輪廓具有不一樣的Z坐標。
8.如權(quán)利要求1所述的一種電視字幕文字的處理方法,其特征是步驟(3)中,建立文字的膨脹面和收縮面,具體方法如下(1)用原輪廓上的直線段和由此直線段計算出的膨脹點或收縮點共四點構(gòu)成面;(2)對于有插點的情況,由輪廓上的一點與插入曲線構(gòu)成面。
全文摘要
本發(fā)明涉及一種電視字幕文字的處理方法,屬于視頻中字幕處理領(lǐng)域?,F(xiàn)有技術(shù)中,字幕系統(tǒng)在視頻領(lǐng)域有廣泛應(yīng)用,由于電視的分辨率較低、顯示為隔行掃描,為獲得穩(wěn)定清晰的圖像,電視字幕需要做反走樣和反抖動處理等特殊處理。字幕的邊緣處理目前采用二維圖像處理方法,即在圖像的邊緣引入各種濾波器,可得到反走樣和反抖動的圖像,從而獲得穩(wěn)定清晰的圖像。采用本發(fā)明所述的方法,不僅可以實現(xiàn)二維字幕的處理,還可以實現(xiàn)三維字幕的處理,能夠?qū)崿F(xiàn)文字的膨脹和收縮曲線與原輪廓保持一致,計算得到的曲線與原曲線配合可以實現(xiàn)文字邊緣的反走樣和反抖動處理,也可用于實現(xiàn)文字的特殊效果。
文檔編號H04N5/278GK1731834SQ200510088800
公開日2006年2月8日 申請日期2005年8月2日 優(yōu)先權(quán)日2005年8月2日
發(fā)明者韓仲陽, 郭宗明 申請人:北京北大方正電子有限公司, 北京大學(xué)