專利名稱:一種帶阿爾法透明通道的視頻壓縮編碼方法
技術(shù)領(lǐng)域:
本發(fā)明屬?gòu)V播電視領(lǐng)域,特別涉及一種帶阿爾法透明通道的視頻壓縮編碼方法,
該方法采用自定義編碼格式實(shí)現(xiàn)了一種特定視頻畫面的編碼,該編碼格式針對(duì)的視頻輸入
格式為RGB或者YUV4:4:4/YUV4:2:2/YUV4:2:0格式,并且可以選擇阿爾法(alpha)透明通 道數(shù)據(jù),壓縮編碼后的透明通道數(shù)據(jù)存放在特定位置,其他標(biāo)準(zhǔn)解碼器能夠正常解碼。
背景技術(shù):
在專業(yè)節(jié)目制作過程中,經(jīng)常需要利用阿爾法(alpha)透明通道制作各種特技效 果。阿爾法通道數(shù)據(jù)用8位二進(jìn)制數(shù)字表示,存儲(chǔ)圖像文件中代表各像素點(diǎn)透明度的附加 信息。利用阿爾法通道的透明特性能夠創(chuàng)作出十分豐富的圖像效果,不僅在多媒體作品,而 且在電影、電視、動(dòng)畫等方面都有大量應(yīng)用。在影視節(jié)目制作中用阿爾法透明通道來完成特 殊畫面的疊加與合成,使圖像中某一部分依據(jù)不同原理透明,將所選顏色或者亮度從圖像 中去除,從而使去掉顏色的圖像部分透出背景,沒有去掉顏色的部分依舊保留原來的圖像。 對(duì)于一幅包含有阿爾法透明通道信息的靜止圖像,可以保存為ARGB、 TYUV格式的無壓縮記 錄方法;Photoshop的專用格式;也可以用標(biāo)準(zhǔn)圖像格式如TIF、TGA等保存。但是目前對(duì)于 專業(yè)節(jié)目制作過程中的運(yùn)動(dòng)圖像并沒有類似的標(biāo)準(zhǔn)格式可以同時(shí)保存含有阿爾法透明通 道數(shù)據(jù),通??梢圆捎脙煞N方式一是利用運(yùn)動(dòng)圖像由多幅靜止圖像組成,將含有透明通道 數(shù)據(jù)的運(yùn)動(dòng)圖像分解多幅靜止圖像,每幅圖像使用標(biāo)準(zhǔn)圖像格式;另一個(gè)方法是將運(yùn)動(dòng)圖 像編碼成為一個(gè)標(biāo)準(zhǔn)格式(比如MPEG-2或者DV等格式),把透明通道數(shù)據(jù)另外保存。這兩
種方式都有明顯的不足兩種方式都需要保存多個(gè)文件,每幀圖像與相應(yīng)的阿爾法通道數(shù)
據(jù)對(duì)應(yīng)關(guān)系不清晰;不利于文件管理和程序間的信息共享,并且第一種方式忽視了運(yùn)動(dòng)圖
像本來具有的很強(qiáng)的空間相關(guān)性,造成了的數(shù)據(jù)量大,浪費(fèi)了存儲(chǔ)空間。 因此需要設(shè)計(jì)一種壓縮編解碼格式,對(duì)帶阿爾法透明通道的運(yùn)動(dòng)圖像進(jìn)行適當(dāng)?shù)?br>
壓縮,在保證視頻高質(zhì)量的同時(shí),有效降低視頻碼率。這樣就極大方便了不同應(yīng)用程序間的
信息共享。在正常播放的視頻畫面中加入特定的數(shù)據(jù),例如將節(jié)目單加在正在播出的畫面
中,或者加入一些文字等廣告宣傳;在一幀的視頻數(shù)據(jù)中將視頻畫面和特定的帶透明通道
的圖像同時(shí)傳輸。 經(jīng)過壓縮的視頻數(shù)據(jù)可以直接形成文件應(yīng)用。也可以進(jìn)一步封裝成通用的文件格 式,比如avi文件、MXF文件等。
發(fā)明內(nèi)容
針對(duì)上述技術(shù)的缺陷,本發(fā)明的目的是提出一種帶阿爾法透明通道的視頻壓縮編 碼方法,實(shí)現(xiàn)特定視頻畫面的壓縮編碼;該方法實(shí)現(xiàn)了視頻圖像中嵌入特定畫面數(shù)據(jù)的編 碼,將原來MPEG-2規(guī)定的輸入視頻格式由YUV4:2:0和YUV4:2:2兩個(gè)輸入視頻格式擴(kuò)展為 YUV4:2:0、YUV4:2:2、YUV4:4:4和RGB四個(gè)輸入視頻格式,將每幀圖像和對(duì)應(yīng)的阿爾法通道 數(shù)據(jù)分別編碼,然后把阿爾法透明通道的壓縮數(shù)據(jù)保存在MPEG-2比特流中的特定位置;本發(fā)明在進(jìn)行高質(zhì)量編碼的同時(shí),明確了每幀圖像與相應(yīng)的阿爾法通道數(shù)據(jù)的對(duì)應(yīng)關(guān)系;簡(jiǎn) 化了后期圖像處理的流程;保留了未疊加阿爾法通道數(shù)據(jù)的原始視頻,其他標(biāo)準(zhǔn)解碼器能 夠正常解碼除阿爾法通道數(shù)據(jù)外的編碼數(shù)據(jù)。 為了實(shí)現(xiàn)上述目的,本發(fā)明的目的是這樣實(shí)現(xiàn)的一種帶阿爾法透明通道的視頻
壓縮編碼方法,采用MPEG-2格式對(duì)含有阿爾法透明通道的視頻圖像文件根據(jù)用戶指定的
碼率范圍進(jìn)行壓縮編碼和解壓縮,壓縮編碼和解壓縮的過程是對(duì)每一幀視頻圖像的壓縮編
碼和解壓縮,其特征在于,所述一幀視頻圖像的壓縮編碼是,首先壓縮裝置獲取視頻圖像和
阿爾法透明通道視頻數(shù)據(jù),其編碼的步驟包括 a.將獲取的視頻圖像轉(zhuǎn)換為特定格式圖像; b.對(duì)所述阿爾法透明通道內(nèi)的數(shù)據(jù)進(jìn)行無損方式壓縮; c.將特定格式視頻圖像按照MPEG-2 I幀格式編碼壓縮視頻數(shù)據(jù),壓縮后的I幀比 特流數(shù)據(jù)結(jié)構(gòu)順序包括有序列頭,序列擴(kuò)展,擴(kuò)展&用戶,圖組頭,圖組頭擴(kuò)展&用戶,圖像 頭,圖像編碼擴(kuò)展,擴(kuò)展&用戶,圖像數(shù)據(jù); d.將阿爾法通道內(nèi)的壓縮數(shù)據(jù)保存在視頻圖像壓縮后數(shù)據(jù)結(jié)構(gòu)中圖像編碼擴(kuò)展 之后的擴(kuò)展和用戶數(shù)據(jù)中; e.判斷當(dāng)前幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi);如果不在范圍內(nèi),則調(diào)整 MPEG-2格式編碼參數(shù)重新壓縮數(shù)據(jù)直至數(shù)據(jù)量在碼率范圍內(nèi),得到含有阿爾法通道壓縮數(shù) 據(jù)的一幀MPEG-2 I幀格式編碼數(shù)據(jù); 所述一幀視頻圖像的解壓縮是,按照MPEG-2 I幀格式解碼視頻圖像,按照阿爾法 透明通道解碼方法解碼阿爾法透明通道數(shù)據(jù),所述阿爾法透明通道解碼方法步驟是當(dāng)遇 到連續(xù)碼字起始標(biāo)記,按照重復(fù)字節(jié)數(shù)重復(fù)碼字并計(jì)數(shù);遇到非連續(xù)碼字起始標(biāo)記時(shí),重復(fù) 后面的碼字直到遇到連續(xù)碼字起始標(biāo)記或者編碼行結(jié)束。所述的特定格式為YUV4:4:4格式時(shí),所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分成宏
塊,每個(gè)宏塊包含4個(gè)8X8的亮度塊,4個(gè)8X8的U色度塊,4個(gè)8X8的V色度塊,按照順序
把各個(gè)圖像塊從空間域變換到頻域,即使用離散余弦變換公式
, l ;rw(2f + l)細(xì)(2_/ + 1) ,,、 得到頻域數(shù)據(jù);余弦變換公式中的n, m, i, j的數(shù)值,數(shù)值范圍是0-7。 所述判斷當(dāng)前編碼幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi)的步驟順序是將頻
域數(shù)據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成
含有64個(gè)數(shù)據(jù)的一維數(shù)組。對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼之后再做哈夫曼編碼,
判斷所述編碼參數(shù)量化過程中的量化步長(zhǎng)。 所述的特定格式為RGB格式時(shí),所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分成宏塊,每 個(gè)宏塊包含4個(gè)8X8的R紅色度塊,4個(gè)8X8的G綠色度塊和4個(gè)8X8的B藍(lán)色度塊。按照 順序把各個(gè)圖像塊從空間域變換到頻域,使用所述的離散余弦變換公式得到頻域數(shù)據(jù);
所述判斷當(dāng)前編碼幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi)的步驟順序是將頻 域數(shù)據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成 含有64個(gè)數(shù)據(jù)的一維數(shù)組。對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼之后再做哈夫曼編碼, 判斷所述編碼參數(shù)量化過程中的量化步長(zhǎng)。
所述的特定格式為YUV4:2:2或YUV4:2:0格式時(shí),所述視頻數(shù)據(jù)按MPEG-2格式標(biāo) 準(zhǔn)劃分宏塊,YUV4:2:2格式的每個(gè)宏塊包含4個(gè)8X8的Y亮度塊,2個(gè)8X8的U色度塊和2 個(gè)8X8的V色度塊;YUV4:2:0格式的每個(gè)宏塊包含4個(gè)8X8的Y亮度塊,1個(gè)8X8的U色度 塊和1個(gè)8X8的V色度塊;按照順序把各個(gè)圖像塊從空間域變換到頻域,使用所述的離散余 弦變換公式得到頻域數(shù)據(jù); 所述判斷當(dāng)前編碼幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi)的步驟順序是將頻 域數(shù)據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成 含有64個(gè)數(shù)據(jù)的一維數(shù)組。對(duì)重新排列后的數(shù)據(jù)量化后之后再做哈夫曼編碼,判斷所述編 碼參數(shù)量化過程中的量化步長(zhǎng)。 所述的無損方式壓縮是采用游程編碼,編碼以行為單位,對(duì)于連續(xù)碼字以連續(xù)碼 字起始標(biāo)記開始,后面緊跟一個(gè)字節(jié)的碼字,之后為該碼字重復(fù)的字節(jié)數(shù),占2個(gè)字節(jié);非 連續(xù)碼字以非連續(xù)碼字起始標(biāo)記開始,之后是未壓縮的數(shù)據(jù)。
本發(fā)明產(chǎn)生的有益效果是 1.含有阿爾法透明通道數(shù)據(jù)的視頻圖像壓縮碼數(shù)據(jù)流可以使用標(biāo)準(zhǔn)MPEG2解碼 器解碼,能夠識(shí)別自定義數(shù)據(jù)的解碼器可以將阿爾法透明通道數(shù)據(jù)解碼和視頻數(shù)據(jù)組合, 從而獲得帶阿爾法透明通道的重建圖像。 2.本發(fā)明在保證視頻高質(zhì)量的同時(shí),有效降低視頻碼率,實(shí)現(xiàn)一種高質(zhì)量、高效 率、低成本的視頻數(shù)據(jù)流壓縮編碼方法。 3.本發(fā)明將阿爾法透明通道數(shù)據(jù)和視頻圖像壓縮數(shù)據(jù)保存在同一個(gè)文件中,不但 簡(jiǎn)化了后期圖像處理的流程、文件管理和程序間的信息共享;同時(shí)保留了未疊加阿爾法通 道數(shù)據(jù)的原始視頻。 下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明做一詳細(xì)描述。
圖1為對(duì)視頻圖像數(shù)據(jù)編碼的步驟流程圖;
圖2為MPEG-2視頻比特流的語法結(jié)構(gòu);
圖3為MPEG-2編碼過程;
圖4為YUV4:2:0宏i央結(jié)構(gòu)圖;
圖5為YUV4:2:2宏塊結(jié)構(gòu)圖;
圖6為YUV4:4:4/RGB宏塊結(jié)構(gòu)圖。
具體實(shí)施方式
實(shí)施例1 : —種帶阿爾法透明通道的視頻壓縮編碼方法實(shí)施例,參見圖1、圖2和圖3, 一種帶 阿爾法透明通道的視頻壓縮編碼方法,采用MPEG-2格式對(duì)含有阿爾法透明通道的視頻圖 像文件根據(jù)用戶指定的碼率范圍(是根據(jù)用戶的要求事先指定的一個(gè)已知值,通常是根據(jù) 用戶對(duì)視頻質(zhì)量的要求等因素確定)進(jìn)行壓縮編碼和解壓縮,壓縮編碼和解壓縮的過程是 對(duì)每一幀視頻圖像的壓縮編碼和解壓縮,所述一幀視頻圖像的壓縮編碼是,首先壓縮裝置 獲取視頻圖像和阿爾法透明通道視頻數(shù)據(jù),其編碼的步驟包括
a.將獲取的視頻圖像轉(zhuǎn)換為特定格式圖像; b.對(duì)所述阿爾法透明通道內(nèi)的數(shù)據(jù)進(jìn)行無損方式壓縮; c.將特定格式視頻圖像按照MPEG-2 I幀格式編碼壓縮視頻數(shù)據(jù),如圖2所示壓縮 后的I幀比特流數(shù)據(jù)結(jié)構(gòu)順序包括有序列頭,序列擴(kuò)展,擴(kuò)展&用戶,圖組頭,圖組頭擴(kuò)展 &用戶,圖像頭,圖像編碼擴(kuò)展,擴(kuò)展&用戶,圖像數(shù)據(jù); d.將阿爾法通道內(nèi)的壓縮數(shù)據(jù)保存在視頻圖像壓縮后數(shù)據(jù)結(jié)構(gòu)中圖像編碼擴(kuò)展 之后的擴(kuò)展和用戶數(shù)據(jù)中;(保存的方法是本領(lǐng)域通常的方法) e.判斷當(dāng)前幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi);如果不在范圍內(nèi),則調(diào)整 MPEG-2格式編碼參數(shù)重新壓縮數(shù)據(jù)直至數(shù)據(jù)量在碼率范圍內(nèi),得到含有阿爾法通道壓縮數(shù) 據(jù)的一幀MPEG-2 I幀格式編碼數(shù)據(jù); 所述一幀視頻圖像的解壓縮是,按照標(biāo)準(zhǔn)的MPEG-2 I幀格式解碼視頻圖像,按照 阿爾法透明通道解碼方法解碼阿爾法透明通道數(shù)據(jù),所述阿爾法透明通道解碼方法步驟 是當(dāng)遇到連續(xù)碼字起始標(biāo)記,按照重復(fù)字節(jié)數(shù)重復(fù)碼字并計(jì)數(shù);遇到非連續(xù)碼字起始標(biāo) 記時(shí),重復(fù)后面的碼字直到遇到連續(xù)碼字起始標(biāo)記或者編碼行結(jié)束。 所述編碼過程按照如下步驟對(duì)每視頻幀按照塊的順序把各個(gè)塊用離散余弦變換 得到頻域數(shù)據(jù);將頻域數(shù)據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維 數(shù)組重新組織排列成含有64個(gè)數(shù)據(jù)的一維數(shù)組,對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼 之后再做哈夫曼編碼。對(duì)視頻序列里的每一幀按照?qǐng)D2所示的視頻比特流的最高語法結(jié)構(gòu) 生成序列頭2-l,序列擴(kuò)展2-2,擴(kuò)展&用戶2-3,圖組頭2-4,圖組頭擴(kuò)展&用戶2_5,圖像頭 2-6,圖像編碼擴(kuò)展2-7,圖像擴(kuò)展&用戶2-8,所述哈夫曼編碼數(shù)據(jù)保存在圖像數(shù)據(jù)2-9中, 直到序列內(nèi)所有幀編碼完畢,就得到完整的視頻文件。需要指出的是,對(duì)于序列的各個(gè)組成 部分的翻譯名稱,在本行業(yè)的通用資料中有不同的習(xí)慣用語,例如"擴(kuò)展&用戶"2-3在國(guó)家 標(biāo)準(zhǔn)GB/T17975. 2-2000中被稱為"用戶數(shù)據(jù)";但是翻譯名稱的不同并不影響各編解碼器對(duì) 各數(shù)據(jù)塊的理解和使用。 所述的無損方式壓縮是根據(jù)阿爾法通道數(shù)據(jù)的特點(diǎn),采用游程編碼,編碼以行為 單位,對(duì)于連續(xù)碼字以連續(xù)碼字起始標(biāo)記開始,后面緊跟一個(gè)字節(jié)的碼字,之后為該碼字重 復(fù)的字節(jié)數(shù),占2個(gè)字節(jié);非連續(xù)碼字以非連續(xù)碼字起始標(biāo)記開始,之后是未壓縮的數(shù)據(jù); 避免碼流產(chǎn)生多義性,對(duì)于碼字恰巧為連續(xù)碼字起始標(biāo)記的情況,需要進(jìn)行轉(zhuǎn)義編碼。
標(biāo)準(zhǔn)的MPEG-2 I幀格式解碼視頻圖像是一種公知的方法,首先解碼端獲取編碼數(shù) 據(jù),其解碼的步驟包括 a.按照高層語法結(jié)構(gòu)解析編碼數(shù)據(jù),獲取視頻圖像的壓縮數(shù)據(jù);
b.對(duì)壓縮數(shù)據(jù)按照標(biāo)準(zhǔn)碼表進(jìn)行變長(zhǎng)碼解碼;
c.解碼后的數(shù)據(jù)按照掃描順序排列成8X8的二維數(shù)組。
d.反量化后的數(shù)據(jù)進(jìn)行反DCT變換,得到解碼數(shù)據(jù)。 自定義解碼器在對(duì)視頻數(shù)據(jù)解碼時(shí)讀到擴(kuò)展&用戶2-8數(shù)據(jù)后,讀到連續(xù)碼字起 始標(biāo)記或非連續(xù)碼字起始標(biāo)記,就可以識(shí)別出這是阿爾法透明通道的壓縮數(shù)據(jù)并對(duì)其解碼 還原出阿爾法透明通道的數(shù)據(jù);標(biāo)準(zhǔn)解碼器可以讀出擴(kuò)展&用戶2-8中的壓縮數(shù)據(jù),但不能 識(shí)別出是阿爾法透明通道的壓縮數(shù)據(jù)也不能解碼,會(huì)依照MPEG-2標(biāo)準(zhǔn)將這部分?jǐn)?shù)據(jù)丟棄。 由于本發(fā)明所提供的壓縮編碼方法并沒有改變輸入格式為YUV4:2:0和YUV4:2:2編碼方法,標(biāo)準(zhǔn)解碼器可以正確解碼視頻圖像,但對(duì)于輸入格式為YUV4:4:4和RGB情況,標(biāo)準(zhǔn)解碼
器不能正確解碼視頻圖像。 實(shí)施例2 : —種嵌入特定畫面的視頻壓縮編碼方法優(yōu)選1實(shí)施例,參見實(shí)施例1,
所述的特定輸入格式為YUV4:4:4格式時(shí),所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分 成宏塊,每個(gè)宏塊包含4個(gè)8X8的Y亮度塊,4個(gè)8X8的U色度塊和4個(gè)8X8的V色度塊。 按照?qǐng)D6所示的數(shù)字順序把各個(gè)圖像塊從空間域變換到頻域,使用離散余弦變換公式得到
頻域數(shù)據(jù);離散余弦變換公式如下所示
, l ;rw(2f + l)細(xì)(2_/ + 1) ,,、 /訓(xùn)"、U隱 ■os 、:、. (1) 4 ^ 一 16 16 余弦變換公式中的n,m, i, j的數(shù)值,數(shù)值范圍是0-7。 所述判斷當(dāng)前幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi)的步驟順序是將頻域數(shù) 據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成含有 64個(gè)數(shù)據(jù)的一維數(shù)組。對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼之后再做哈夫曼編碼,判斷 所述編碼參數(shù)是量化過程中的量化步長(zhǎng)。 所述的離散余弦變換公式、游程編碼和哈夫曼編碼是已知技術(shù)。
實(shí)施例3 : —種嵌入特定畫面的視頻壓縮編碼方法優(yōu)選2實(shí)施例,參見實(shí)施例1,
由于MPEG-2標(biāo)準(zhǔn)針對(duì)的輸入編碼數(shù)據(jù)的色度格式是YUV4:2:0和YUV4:2:2,原來 標(biāo)準(zhǔn)中定義的量化矩陣并沒有考慮RGB輸入數(shù)據(jù)的特點(diǎn),所以當(dāng)輸入格式為RGB時(shí),需要使 用另外的量化矩陣,以期得到較高的壓縮效率。 因此所述的特定輸入格式為RGB格式時(shí),所述判斷當(dāng)前編碼幀的數(shù)據(jù)量是否在用 戶要求的碼率范圍內(nèi)的步驟順序是 所述的特定輸入格式為RGB格式時(shí),所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分成宏 塊,每個(gè)宏塊包含4個(gè)8X8的R紅色度塊,4個(gè)8X8的G綠色度塊和4個(gè)8X8的B藍(lán)色度塊。 按照?qǐng)D6內(nèi)數(shù)字的順序把各個(gè)圖像塊從空間域變換到頻域,使用離散余弦變換公式得到頻
域數(shù)據(jù);離散余弦變換公式如下所示
, l ;rw(2f + l)細(xì)(2_/ + 1) ,,、 /訓(xùn)"、U隱 ■os 、:、. (1) 4 ^ 一 16 16 余弦變換公式中的n,m, i, j的數(shù)值,數(shù)值范圍是0_7。 所述判斷當(dāng)前幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi)的步驟順序是將頻域數(shù) 據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成含有 64個(gè)數(shù)據(jù)的一維數(shù)組,對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼之后再做哈夫曼編碼;判斷 所述編碼參數(shù)是量化過程中的量化步長(zhǎng)。
實(shí)施例4 : —種嵌入特定畫面的視頻壓縮編碼方法優(yōu)選3實(shí)施例,參見實(shí)施例1,
所述的特定輸入格式為YUV4:2:2或YUV4:2:0格式時(shí),所述視頻數(shù)據(jù)按MPEG-2格 式標(biāo)準(zhǔn)劃分成16X16的宏塊,YUV4:2:2格式的每個(gè)宏塊包含4個(gè)8X8的Y亮度塊,2個(gè)8X8 的U色度塊和2個(gè)8X8的V色度塊;YUV4:2:0格式的每個(gè)宏塊包含4個(gè)8X8的Y亮度塊,1
8個(gè)8X8的U色度塊和1個(gè)8X8的V色度塊;。按照?qǐng)D4圖5所示數(shù)字順序把各個(gè)圖像塊從
空間域變換到頻域,使用離散余弦變換公式得到頻域數(shù)據(jù);離散余弦變換公式如下所示
<formula>formula see original document page 9</formula> 余弦變換公式中的n,m, i, j的數(shù)值,數(shù)值范圍是0_7。 所述判斷當(dāng)前幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi)的步驟順序是將頻域數(shù) 據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成含有 64個(gè)數(shù)據(jù)的一維數(shù)組,對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼之后再做哈夫曼編碼,判斷 所述編碼參數(shù)是量化過程中的量化步長(zhǎng)。 上述實(shí)施例中視頻數(shù)據(jù)的壓縮采用MPEG-2標(biāo)準(zhǔn)。MPEG-2是目前廣電行業(yè)廣泛采 用的壓縮方法之一。MPEG-2圖像壓縮利用了圖像中的兩種特性空間相關(guān)性和時(shí)間相關(guān) 性。這兩種相關(guān)性使得圖像中存在大量的冗余信息。壓縮過程去除這些冗余信息,只保留 少量非相關(guān)信息進(jìn)行編碼,而解碼器利用這些非相關(guān)信息,按照一定的解碼算法,可以在保 證一定的圖像質(zhì)量的前提下恢復(fù)原始圖像。MPEG-2的編碼圖像被分為I幀、P幀和B幀三 類,I幀利用了圖像的空間相關(guān)性;而P幀和B幀同時(shí)利用了圖像的空間相關(guān)性和時(shí)間相關(guān) 性。為了得到高質(zhì)量的編碼數(shù)據(jù),上述實(shí)施例使用I幀編碼的方式。MPEG-2的最小編碼單 位是宏塊,每個(gè)宏塊都包含4個(gè)8X8的亮度塊,依據(jù)顏色格式的不同,一個(gè)宏塊還包含兩個(gè) 8X8色度塊(4:2:0采樣時(shí)U和V各一個(gè),)或四個(gè)8X8色度塊(4:2:2采樣時(shí)U和V各二 個(gè))。在對(duì)色度進(jìn)行4:2:0或4:2:2采樣時(shí),由于損失了部分色度信息,會(huì)導(dǎo)致編碼質(zhì)量下 降。圖3表示了針對(duì)圖像3-1各個(gè)宏塊的編碼過程,所述編碼過程按照如下步驟按照塊的 順序把各個(gè)圖像塊3-2用離散余弦變換3-3得到頻域數(shù)據(jù);將頻域數(shù)據(jù)進(jìn)行量化矩陣處理 3-4、按照掃描順序?qū)⒁粋€(gè)圖像塊的8X8的二維數(shù)組重新組織排列3-5成含有64個(gè)數(shù)據(jù)的 一維數(shù)組。對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼3-6之后再做哈夫曼編碼3-7。
MPEG規(guī)定,編碼視頻比特流的最高語法結(jié)構(gòu)是視頻序列。如圖2所示,視頻序列從 序列頭2-l開始,序列頭還可以包含序列擴(kuò)展2-2和擴(kuò)展&用戶2-3,序列頭后可跟隨圖組 頭2-4,然后是一個(gè)或多個(gè)編碼幀,編碼幀包括圖組頭擴(kuò)展&用戶2-5、圖像頭2-6、圖像編碼 擴(kuò)展2-7、擴(kuò)展&用戶2-8、圖像數(shù)據(jù)2-9,最后為序列尾2-10。在序列的各點(diǎn)處,特定的編 碼幀前面可以有重復(fù)的序列頭或圖組頭或兩者都有。 視頻數(shù)據(jù)壓縮部分遵循MPEG-2(IS013818-2)標(biāo)準(zhǔn),采用MPEG-2幀內(nèi)壓縮方式。
對(duì)于輸入編碼器的除阿爾法透明通道之外的三個(gè)通道(YUV,采樣格式可能為 4:2:0如圖4所示,或者4:2:2如圖5所示,或者4:4:4如圖6所示,或RGB)都按照MPEG-2 標(biāo)準(zhǔn)劃分成宏塊,每個(gè)宏塊都由若干個(gè)8X8的塊組成。對(duì)于每一種不同的色度格式,宏塊中 塊的順序也不同,圖中框中的順序數(shù)字為順序號(hào),字母R、 G、 B、 Y、 Cb、 Cr代表了顏色。
對(duì)YUV4:2:0采樣和YUV4:2:2采樣的顏色格式按MPEG-2標(biāo)準(zhǔn)進(jìn)行幀內(nèi)編碼;對(duì) YUV4:4:4采樣和色度格式為RGB時(shí),對(duì)于Alpha透明通道之外的三個(gè)通道(YUV或RGB)都按 照MPEG-2標(biāo)準(zhǔn)劃分成16X16的宏塊,并按宏塊進(jìn)行幀內(nèi)編碼,用比特流中的chroma—format =3(MPEG-2標(biāo)準(zhǔn)中的保留值)來表示這兩個(gè)色度格式,再用另外的保留字段區(qū)分YUV和 RGB。 編碼過程中先編碼阿爾法透明通道數(shù)據(jù),再編碼視頻數(shù)據(jù)以保證總體碼率可控。必要時(shí)采用視頻幀重編碼方式來保證碼率符合目標(biāo)值。 上述實(shí)施例遵循MPEG-2(IS013818-2)標(biāo)準(zhǔn),采用MPEG-2幀內(nèi)壓縮方式;對(duì)420 和422顏色格式按IS013818-2標(biāo)準(zhǔn)進(jìn)行編碼。對(duì)于本發(fā)明新增加的輸入格式Y(jié)UV4:4:4和 RGB色度格式時(shí),除alpha透明通道之外的三個(gè)通道都按照MPEG-2標(biāo)準(zhǔn)劃分成16X16的宏 塊,并按照宏塊進(jìn)行幀內(nèi)編碼;壓縮后的alpha透明通道數(shù)據(jù)放在圖2中的"圖像編碼擴(kuò) 展"之后的"用戶&擴(kuò)展"中。這樣的設(shè)計(jì)的優(yōu)點(diǎn)是含有alpha透明通道數(shù)據(jù)的yuv420和 yuv422格式的壓縮碼流可以使用標(biāo)準(zhǔn)MPEG2解碼器解碼,能夠識(shí)別自定義數(shù)據(jù)的解碼器可 以將alpha透明通道數(shù)據(jù)解碼和視頻數(shù)據(jù)組合,從而獲得帶alpha透明通道的重建圖像。
權(quán)利要求
一種帶阿爾法透明通道的視頻壓縮編碼方法,采用MPEG-2格式對(duì)含有阿爾法透明通道的視頻圖像文件根據(jù)用戶指定的碼率范圍進(jìn)行壓縮編碼和解壓縮,壓縮編碼和解壓縮的過程是對(duì)每一幀視頻圖像的壓縮編碼和解壓縮,其特征在于,所述一幀視頻圖像的壓縮編碼是,首先壓縮裝置獲取視頻圖像和阿爾法透明通道視頻數(shù)據(jù),其編碼的步驟包括a.將獲取的視頻圖像轉(zhuǎn)換為特定格式圖像;b.對(duì)所述阿爾法透明通道內(nèi)的數(shù)據(jù)進(jìn)行無損方式壓縮;c.將特定格式視頻圖像按照MPEG-2I幀格式編碼壓縮視頻數(shù)據(jù),壓縮后的I幀比特流數(shù)據(jù)結(jié)構(gòu)順序包括有序列頭,序列擴(kuò)展,擴(kuò)展&用戶,圖組頭,圖組頭擴(kuò)展&用戶,圖像頭,圖像編碼擴(kuò)展,擴(kuò)展&用戶,圖像數(shù)據(jù);d.將阿爾法通道內(nèi)的壓縮數(shù)據(jù)保存在視頻圖像壓縮后數(shù)據(jù)結(jié)構(gòu)中圖像編碼擴(kuò)展之后的擴(kuò)展和用戶數(shù)據(jù)中;e.判斷當(dāng)前幀的數(shù)據(jù)量是否在用戶要求的碼率范圍內(nèi);如果不在范圍內(nèi),則調(diào)整MPEG 2格式編碼參數(shù)重新壓縮數(shù)據(jù)直至數(shù)據(jù)量在碼率范圍內(nèi),得到含有阿爾法通道壓縮數(shù)據(jù)的I幀MPEG-2格式編碼數(shù)據(jù);所述一幀視頻圖像的解壓縮是,按照MPEG-2I幀格式解碼視頻圖像,按照阿爾法透明通道解碼方法解碼阿爾法透明通道數(shù)據(jù),所述阿爾法透明通道解碼方法步驟是當(dāng)遇到連續(xù)碼字起始標(biāo)記,按照重復(fù)字節(jié)數(shù)重復(fù)碼字并計(jì)數(shù);遇到非連續(xù)碼字起始標(biāo)記時(shí),重復(fù)后面的碼字直到遇到連續(xù)碼字起始標(biāo)記或者編碼行結(jié)束。
2. 根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻壓縮編碼方法,其特征在于,所述特定格式是YUV4:4:4,所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分成宏塊,每個(gè)宏塊包含4個(gè)8X8的亮度塊,4個(gè)8X8的U色度塊和4個(gè)8X8的V色度塊。
3. 根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻壓縮編碼方法,其特征在于,所述特定格式是YUV4:2:2,所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分宏塊,每個(gè)宏塊包含4個(gè)8X8的Y亮度塊,2個(gè)8X8的U色度塊和2個(gè)8X8的V色度塊。
4. 根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻壓縮編碼方法,其特征在于,所述特定格式是YUV4:2:0,所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分宏塊,每個(gè)宏塊包含4個(gè)8X8的Y亮度塊,1個(gè)8X8的U色度塊和1個(gè)8X8的V色度塊。
5. 根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻壓縮編碼方法,其特征在于,所述特定格式是RGB,所述視頻數(shù)據(jù)按MPEG-2格式標(biāo)準(zhǔn)劃分成宏塊,每個(gè)宏塊包含4個(gè)8X8的R紅色度塊,4個(gè)8X8的G綠色度塊和4個(gè)8X8的B藍(lán)色度塊。
6. 根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻壓縮編碼方法,其特征在于,所述的無損方式壓縮是編碼以行為單位,對(duì)于連續(xù)碼字以連續(xù)碼字起始標(biāo)記開始,后面緊跟一個(gè)字節(jié)的碼字,之后為該碼字重復(fù)的字節(jié)數(shù),占2個(gè)字節(jié);非連續(xù)碼字以非連續(xù)碼字起始標(biāo)記開始,之后是未壓縮的數(shù)據(jù)。
7. 根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻壓縮編碼方法,其特征在于,所述編碼步驟是按照塊的順序把各個(gè)圖像塊用離散余弦變換得到頻域數(shù)據(jù);將頻域數(shù)據(jù)進(jìn)行量化矩陣處理、按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成含有64個(gè)數(shù)據(jù)的一維數(shù)組,對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼之后再做哈夫曼編碼。
8. 根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻壓縮編碼方法,其特征在于,所述判斷當(dāng)前幀的數(shù)據(jù)量是否在視頻碼率范圍內(nèi)是按照掃描順序?qū)D像塊的一個(gè)8X8的二維數(shù)組重新組織排列成含有64個(gè)數(shù)據(jù)的一維數(shù)組,對(duì)重新排列后的數(shù)據(jù)量化后做游程編碼,之后再做哈夫曼編碼,判斷所述編碼參數(shù)量化過程中的量化步長(zhǎng)。
9.根據(jù)權(quán)利要求1所述一種帶阿爾法透明通道的視頻解碼方法,其特征在于,所述I幀MPEG-2格式解碼視頻圖像步驟是將編碼數(shù)據(jù)按照MPEG-2標(biāo)準(zhǔn)碼表進(jìn)行變長(zhǎng)解碼,按照掃描順序?qū)⒚總€(gè)塊的64個(gè)數(shù)據(jù)排列成8X8的二維數(shù)組,然后反量化,反DCT變換,最后得到的數(shù)據(jù)按照宏塊所處位置排列,組成圖像數(shù)據(jù)。
全文摘要
本發(fā)明涉及一種帶阿爾法透明通道的視頻壓縮編碼方法,是將獲取的視頻圖像轉(zhuǎn)換為RGB或者YUV4:4:4/YUV4:2:2/YUV4:2:0格式圖像;對(duì)獲取的阿爾法透明通道內(nèi)的數(shù)據(jù)進(jìn)行無損方式壓縮;對(duì)特定格式視頻圖像按照MPEG-2 I幀格式編碼壓縮視頻數(shù)據(jù),將阿爾法通道內(nèi)的壓縮數(shù)據(jù)保存在視頻圖像壓縮數(shù)據(jù)結(jié)構(gòu)中;該方法實(shí)現(xiàn)了一種特定視頻畫面的編碼,可以使用標(biāo)準(zhǔn)MPEG2解碼器解碼,在保證視頻高質(zhì)量的同時(shí),有效降低視頻碼率,實(shí)現(xiàn)一種高質(zhì)量、高效率、低成本的視頻數(shù)據(jù)編碼。本發(fā)明將阿爾法透明通道數(shù)據(jù)和視頻圖像壓縮數(shù)據(jù)保存在同一個(gè)文件中,不但簡(jiǎn)化了后期圖像處理的流程、文件管理和程序間的信息共享;同時(shí)保留了未疊加阿爾法通道數(shù)據(jù)的原始視頻。
文檔編號(hào)H04N7/26GK101742317SQ20091031298
公開日2010年6月16日 申請(qǐng)日期2009年12月31日 優(yōu)先權(quán)日2009年12月31日
發(fā)明者張 浩, 朱宇, 褚震宇, 鄧偉 申請(qǐng)人:北京中科大洋科技發(fā)展股份有限公司