專利名稱:一種mpeg-2/h.264標(biāo)準(zhǔn)下視頻流插入臺標(biāo)字幕的壓縮域局部處理算法的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于一種數(shù)字視頻碼流插入臺標(biāo)字幕的壓縮域局部處理算法。
背景技術(shù):
電視節(jié)目的臺標(biāo)字幕插入,在模擬時代就廣泛應(yīng)用,已經(jīng)得到證明是一種重要的 信息標(biāo)示和發(fā)布手段。但由于目前使用的模擬字幕系統(tǒng),各個電視臺仍然各自采集發(fā)送,還 不能通過網(wǎng)絡(luò)公司實現(xiàn)字幕群發(fā)。節(jié)目數(shù)字化編碼之后,情況發(fā)生很大變化。首先,壓縮后的圖像是一個變長的數(shù)據(jù)序列,每幅圖像的數(shù)據(jù)不僅大小不一樣,而 且相互之間有很大的相關(guān)和依賴性,處理I幀以外的任何圖像都需要同時處理與其參考幀 有關(guān)系的一系列參考幀;其次,如果仍然沿用模擬視頻的臺標(biāo)字幕插入方式,必然要對碼流 進(jìn)行解碼利再編碼過程,直接帶來視頻圖像質(zhì)量的下降,原來碼流特性幾乎完全發(fā)生變化, 這在廣播級的應(yīng)用中是不能接受的;最后,如果使用解碼和再編碼處理,對系統(tǒng)的計算資源 要求很高,系統(tǒng)能處理的節(jié)目數(shù)量會非常有限,不適宜在數(shù)字電視節(jié)目豐富的環(huán)境下使用, 設(shè)備投資也比較大。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種高效的、對原始流視頻質(zhì)量幾乎沒有影響的數(shù)字視頻碼 流插入臺標(biāo)字幕的實現(xiàn)方法。MPEG-2/H. 264視頻碼流是基于以宏塊為單位的運動補(bǔ)償、整數(shù)余弦變換/反變 換、量化/反最化以及熵編碼技術(shù)進(jìn)行有損壓縮編碼的數(shù)據(jù)流。將數(shù)據(jù)流按照對應(yīng)標(biāo)準(zhǔn),解 碼為一序列Slice。根據(jù)臺標(biāo)字幕插入位置,對每幀圖像的宏塊進(jìn)行分類處理。將每幀圖片的宏塊按照與插入臺標(biāo)字幕位置關(guān)系不同,分為兩類。要插入臺標(biāo)字 幕區(qū)域的宏塊和其運動矢量指向臺標(biāo)字幕插入?yún)^(qū)域的宏塊為第一類,其余宏塊為第二類。 第二類宏塊數(shù)據(jù)不做任何處理,順序輸出。需要進(jìn)行處理的第一類宏塊,僅在壓縮域進(jìn)行處 理,大幅提高算法效率。當(dāng)宏塊參考幀為幀間模式時,為了找到最有效的運動矢量,要將當(dāng)前宏塊利周圍 的大量宏塊進(jìn)行比較,消耗很多寶貴的Cpu資源。本發(fā)明中,在原運動矢量基礎(chǔ)上的比較小 的范圍內(nèi)進(jìn)行運動估計,選取最小殘差對應(yīng)的運動矢量為最優(yōu)運動矢量。當(dāng)宏塊類型為幀 內(nèi)模式時,MPEG-2標(biāo)準(zhǔn)下直接進(jìn)行處理即可;H. 264標(biāo)準(zhǔn)下,根據(jù)參考宏塊的位置不同來改 變,來改變宏塊的參考模式,然后進(jìn)行處理。由于插入的臺標(biāo)字幕與原始圖像內(nèi)容會有很大差別,造成插入臺標(biāo)字幕后的碼流 與原始碼流的碼率有很大不同。本發(fā)明對需要處理的宏塊進(jìn)行精細(xì)碼率控制,調(diào)整插入臺 標(biāo)字幕區(qū)域宏塊利周邊相關(guān)宏塊的量化參數(shù),來獲得與原始碼流一致的碼率。
圖1為本發(fā)明的流程示意圖;圖2為本發(fā)明的幀內(nèi)預(yù)測類型宏塊矢量處理流圖;圖3為本發(fā)明的幀間預(yù)測類型宏塊矢量處理流具體實施例方式如圖1所示,為本發(fā)明的流程圖。視頻碼流數(shù)據(jù)經(jīng)熵解碼后得到宏塊在幀圖像中 的位置,再和要插入的臺標(biāo)字幕在幀圖像中的位置進(jìn)行比較,以確定是否處理該宏塊,其比 較方法如圖2和圖3所示。當(dāng)前幀為I幀時,MPEG-2標(biāo)準(zhǔn)下只需要判斷當(dāng)前宏塊是否在臺標(biāo)字幕插入?yún)^(qū)域宏 塊內(nèi),如果在就需要處理,否則不需要處理;H. 264標(biāo)準(zhǔn)下,不僅需要判斷當(dāng)前宏塊是否在 臺標(biāo)字幕插入?yún)^(qū)域宏塊內(nèi),還要判斷是否是這些宏塊的左、上、左上、右上宏塊,如果是則需 要處理,否則不需要處理。當(dāng)前幀為P幀時,除了要判斷當(dāng)前宏塊是否在臺標(biāo)字幕插入?yún)^(qū)域,還要判斷其運 動矢量是否指向臺標(biāo)字幕插入?yún)^(qū)域,如圖3中所示的需要處理區(qū)域的左上角宏塊。如果宏 塊滿足條件,則需要處理,否則不需要處理。當(dāng)前幀為B幀時的情況與P幀類似,不同的是 還要考慮宏塊運動矢量后向分量,這里不再用示意圖來演示了。經(jīng)過前面的判斷,不需要處理的宏塊,其所有相關(guān)數(shù)據(jù)直接輸出。而需要處理的宏 塊就要進(jìn)行運動估計、量化以及熵編碼等處理,最后輸出。由于運動補(bǔ)償對于編碼效率、編 碼后的圖像質(zhì)量以及碼流碼率有比較大的影響,因此需要關(guān)注一下。設(shè)定進(jìn)行運動估計的塊尺寸為WXH像素,運動向量的范圍是水平方向為[-K, +K],垂直方向為[-L,+L],單位為像素。用絕對值誤差和(TAD)作為衡量塊匹配程度的判 據(jù),失配函數(shù)F(k,1)定義為
W H
I'\k,l)\k e [-K,+K],l e [-Ζ,+Ι] =— + k'J + l)\(1)
,=I 7 = Ι這里G、H分別表示當(dāng)前幀(場)與參考幀(場)圖像,(k,1)代表參考塊相對于 當(dāng)前塊的位移,相應(yīng)的運動向量可由下式?jīng)Q定-MV = (k, 1) |min(F(k,1))(2)由于運動估計有比較高的計算復(fù)雜度,因此為了提高系統(tǒng)處理速度,本文對運動 估計算法進(jìn)行了精簡,再原運動矢量的基礎(chǔ)上,將運動向量限制在較小范圍,這樣就能保持 處理質(zhì)量的同時,大幅提高處理速度。由于插入臺標(biāo)字幕內(nèi)容與原始圖像內(nèi)容會有很大不同,又采用新的運動矢量,為 了保持處理后的碼率與原始碼率一致,必須對需要處理的宏塊進(jìn)行碼率控制。本發(fā)明支持 多個臺標(biāo)及字幕的插入,對每個插入的臺標(biāo)字幕單獨進(jìn)行精細(xì)碼率控制,確保臺標(biāo)字幕插 入前后碼率一致。
權(quán)利要求
一種MPEG 2/H.264標(biāo)準(zhǔn)下視頻流插入臺標(biāo)字幕的壓縮域局部處理算法,其特征在于,所述方式的實現(xiàn)步驟包括1)通過對視頻數(shù)字碼流進(jìn)行熵解碼,得到宏塊位置信息,根據(jù)宏塊與臺標(biāo)字幕插入位置關(guān)系區(qū)分是否進(jìn)行壓縮域處理;2)幀類型為I幀時,不僅根據(jù)當(dāng)前宏塊與臺標(biāo)字幕插入位置宏塊的位置關(guān)系,而且根據(jù)當(dāng)前宏塊的左、左上、上、右上宏塊與臺標(biāo)字幕插入位置宏塊的位置關(guān)系,區(qū)分是否進(jìn)行重編處理;3)幀類型為P,B幀時,不僅根據(jù)當(dāng)前宏塊與臺標(biāo)字幕插入位置宏塊的位置關(guān)系,而且根據(jù)參考幀宏塊的運動矢量的位置,區(qū)分是否進(jìn)行重編處理;4)幀類型為P,B幀時,重編宏塊的運動矢量,在原運動矢量的基礎(chǔ)上的在小范圍內(nèi)進(jìn)行選擇,殘差最小者最優(yōu);5)調(diào)整插入臺標(biāo)字幕區(qū)域周圍相關(guān)宏塊量化參數(shù)及插入臺標(biāo)字幕區(qū)域宏塊量化參數(shù),對插入的每個臺標(biāo)字幕區(qū)域相關(guān)宏塊進(jìn)行精細(xì)碼率控制,保持插入臺標(biāo)字幕前后碼率一致。
2.根據(jù)權(quán)利要求1所述的方式,其特征在于,MPEG-2/H.264視頻流插入臺標(biāo)字幕在壓 縮域局部處理,局部處理的宏塊運動矢量在原運動矢量基礎(chǔ)上的小范圍內(nèi)估計搜索,對每 個臺標(biāo)字幕插入?yún)^(qū)域宏塊進(jìn)行獨立精細(xì)碼率控制。
3.根據(jù)權(quán)利要求2所述的方式,其特征在于,對MPEG-2/H.264視頻流進(jìn)行臺標(biāo)字幕插 入,根據(jù)臺標(biāo)字幕插入位置對壓縮域宏塊進(jìn)行分類,然后需要處理的局部宏塊進(jìn)行處理。
4.根據(jù)權(quán)利要求2所述的方式,其特征在于,局部處理的宏塊運動矢量在當(dāng)前宏塊原 運動矢量基礎(chǔ)上的小范圍區(qū)域進(jìn)行估計搜索。
5.根據(jù)權(quán)利要求2所述的方式,其特征在于,局部處理的臺標(biāo)字幕插入?yún)^(qū)域宏塊進(jìn)行 精細(xì)碼率控制,關(guān)聯(lián)調(diào)整臺標(biāo)字幕插入?yún)^(qū)域宏塊和周圍宏塊的量化參數(shù),控制臺標(biāo)字幕插 入前后碼率保持一致。
全文摘要
一種MPEG-2/H.264標(biāo)準(zhǔn)下視頻流插入臺標(biāo)字幕的壓縮域局部處理算法本發(fā)明屬于一種在數(shù)字視頻流插入臺標(biāo)字幕的實現(xiàn)方法。根據(jù)插入臺標(biāo)字幕在幀圖像中的位置,對壓縮域的每幀圖像宏塊進(jìn)行分類。對需要處理的一類宏塊在原運動矢量基礎(chǔ)上估計出最優(yōu)運動矢量,并對插入臺標(biāo)字幕區(qū)域內(nèi)的宏塊進(jìn)行單獨的精確碼率控制,與原碼率保持一致;不需要處理的一類宏塊,直接順序輸出。本發(fā)明算法,最大限度降低系統(tǒng)處理的復(fù)雜度,最大限度保證原畫面不失真,最大限度與原碼率保持一致。
文檔編號H04N5/278GK101895766SQ20101025225
公開日2010年11月24日 申請日期2010年8月13日 優(yōu)先權(quán)日2010年8月13日
發(fā)明者趙巍, 馬保宏 申請人:北京算通科技發(fā)展股份有限公司