專利名稱:視頻壓縮編解碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種視頻壓縮編碼算法,及建立在該算法基礎(chǔ)上的AVCS視頻會議系統(tǒng)。
背景技術(shù):
目前國外同類視頻會議終端普遍采用H.263、H.264等編碼技術(shù)。采用H.263的產(chǎn)品具有較低的計算復(fù)雜度,容易在成本較低的硬件上實現(xiàn),產(chǎn)品的生產(chǎn)成本較低,但同時這類產(chǎn)品對視頻數(shù)據(jù)的壓縮率很低,占用較大的帶寬,又增加了網(wǎng)絡(luò)運營成本;采用H.264的產(chǎn)品具有極高的壓縮比,占用較少的網(wǎng)絡(luò)資源,但隨之而帶來的是極高的計算開銷,使得這類產(chǎn)品依賴于成本相當(dāng)高的硬件平臺。
1995年,國際電聯(lián)的視頻編碼專家組(VCEG)在完成了H.263標準的制訂工作后,開發(fā)一種新的低碼率視頻通信標準,命名為H.26L。2001年,ISO的運動圖像專家組(MPEG)認識到H.26L的潛在優(yōu)勢,與VCEG合作成立了聯(lián)合視頻組(JVT)。這個小組的成果就是在2003年第二季度發(fā)布的高級視頻編碼(Advanced Video Coding,AVC)。在ITU-T系列標準中,AVC被稱作H.264。自2003年末以來,因為用一半的帶寬就可以實現(xiàn)原有的圖像質(zhì)量,H.264的這一魅力迅速折服了那些一直苦于專線帶寬昂貴的視訊用戶。在國內(nèi)市場,目前包括鼎視通、中太、中興、科達、TANDBERG等視訊廠商都已經(jīng)或即將推出支持H.264標準的視訊新品。H.264相對于H.263來說,最大優(yōu)勢在于它是一個甚低碼率的編碼方式。理論上講,在同等的還原圖像質(zhì)量的情況下,H.264要比H.263節(jié)省一半的碼率。換句話說,同樣的一段視頻,用H.264在384kbps下編解碼后的圖像質(zhì)量,與H.263用768kbps編解碼相同。這就為那些帶寬資源比較緊張的用戶提供了低帶寬下獲得高質(zhì)量圖像的可能。H.264在設(shè)計之初就考慮到了在不同網(wǎng)絡(luò)資源下的分級編碼傳輸。H.264具有較強的容錯能力,在質(zhì)量不穩(wěn)定的網(wǎng)絡(luò)環(huán)境中,可以得到比H.263編碼視頻更好的質(zhì)量。隨著視頻通信應(yīng)用逐漸從政府和企業(yè)專網(wǎng)向公眾網(wǎng)轉(zhuǎn)移,H.264的抗干擾特性將會發(fā)揮關(guān)鍵作用。H.264與H.261和H.263編碼方式的另一個顯著區(qū)別是它在執(zhí)行運動補償預(yù)測時,可以支持更細的分像素運動矢量。對比H.263的1/2像素級預(yù)測,H.264可以實現(xiàn)在1/4像素級別的預(yù)測,這就使得H.264編碼出的視頻質(zhì)量更高。H.264所帶來的好處不是免費的。H.264的代價是其計算復(fù)雜度大大高于H.263。H.264的解碼復(fù)雜度是同等情況下H.263的2倍,而編碼復(fù)雜度更是H.263的3倍。計算復(fù)雜度的增加就使得H.264的實現(xiàn)受到了一定的限制。一個簡單的例子就是一個著名國際視頻終端廠商的最新產(chǎn)品,在H.263下可以支持2M碼率,但是在H.264下,只可以支持到512kbps。
當(dāng)然,作為一個新的編碼標準,H.264在應(yīng)用方面存在其局限性。因為原始的設(shè)計目標是希望采用H.264以便在低帶寬的情況下得到良好的圖像質(zhì)量,但在實際測試中,我們可以看到,H.264在高碼率情況下,圖像質(zhì)量和H.263比較起來并沒有明顯差別。所以,在選購H.264產(chǎn)品的時候,所用的網(wǎng)絡(luò)帶寬是用戶必須考慮的因素。因為如果視頻會議是運行在專網(wǎng)之上,通??梢员WC有1M帶寬,那么也就沒必要在H.264上花費更多的投資。由于H.264標準推出僅一年,大部分宣傳支持H.264的終端廠商主要都是支持H.264的基本檔次。因為H.264編解碼復(fù)雜度的增加,對終端廠商的視頻處理能力提出了挑戰(zhàn)?,F(xiàn)有的平臺,要么就根本無法做H.264的編解碼,要么就不能支持高碼率下的編解碼。而且,幾個主要終端廠商之間H.264的實現(xiàn)方法不盡相同,不同品牌的終端很難使用H.264建立連接,互聯(lián)互通能力很難得到保障,這些客觀因素都為H.264的迅速普及設(shè)置了很大障礙。
無論如何,H.264畢竟有其技術(shù)層面的先進性,作為一個新興的編解碼標準,其高效的編碼性能有助與提高資源的使用效率,節(jié)省在網(wǎng)絡(luò)帶寬上的龐大投資。在2003年,我國寬帶普及程度越來越高,在DSL這樣低帶寬下的視頻通信需求會逐漸增大,我們有理由相信H.264必將在普及視頻通信的過程中發(fā)揮關(guān)鍵的作用。
H.264的誕生在視頻通信和存儲應(yīng)用中,視頻編解碼標準占據(jù)著技術(shù)的核心地位。一直以來,視頻編碼存在著兩個標準化體系,一個是由ISO/IEC主導(dǎo)的MPEG系列標準(如MPEG-1、MPEG-2、MPEG-4);另一個是ITU-T主導(dǎo)的H.26x系列標準(如H.261和H.263)。MPEG系列標準被廣泛應(yīng)用在視頻存貯、點播和轉(zhuǎn)發(fā)領(lǐng)域,比如VCD的視頻格式,就是基于MPEG-1技術(shù)開發(fā)的。同樣,由于國際電聯(lián)的推薦,H.26x系列標準也大量應(yīng)用于視頻通信領(lǐng)域,為廣大運營商和設(shè)備提供商所采用。
視頻編碼方法的專利申請有CN 200410012857.1視頻編碼的整數(shù)變換矩陣選擇方法及相關(guān)的整數(shù)變換方法涉及視頻編解碼器中圖像數(shù)據(jù)壓縮的整數(shù)變換,針對當(dāng)前我國將要制定的第一個音視頻編碼標準(AVS)采用8乘8整數(shù)類DCT變換,提出了一種整數(shù)變換的變換基選擇方法,綜合評價變換基的去相關(guān)效率和能量集中率兩項指標及變換基變換動態(tài)范圍和計算復(fù)雜度,并通過此方法提出兩組性能優(yōu)異的8乘8整數(shù)變換基(5,6,4,1)和(4,5,3,1),并得到基于這兩組基的整數(shù)變換快速算法。
CN03157077.1公開了一種用于視頻編碼的雙向預(yù)測方法,在編碼端雙向預(yù)測編碼時,首先,對當(dāng)前B幀的每一圖像塊,獲得當(dāng)前圖像塊給定的候選前向運動矢量;然后,利用計算得到侯選后向運動矢量,采用雙向預(yù)測的方法得到候選雙向預(yù)測參考塊;在給定的搜索范圍之內(nèi)和/或給定的匹配閾值之內(nèi),計算匹配;最后,選取最優(yōu)的匹配塊來確定該塊最終的前向運動矢量、后向運動矢量和塊殘差。與前向和后向預(yù)測編碼相結(jié)合,實現(xiàn)新的預(yù)測編碼類型,可適用于正在制定的AVS標準。
CN200310116090.2提出了一種直接編碼模式下確定參考圖像塊的方法,能夠很好地解決在保持精確的運動矢量的同時,又可以通過無除法的方式來實現(xiàn),從而提高運動矢量的計算的精度,可以更真實地體現(xiàn)視頻中物體的運動,獲得更準確的運動矢量預(yù)測,與前向預(yù)測編碼,后向預(yù)測編碼相結(jié)合,可用實現(xiàn)一種新的預(yù)測編碼類型,既可以保證direct mode編碼高效性又便于硬件的實現(xiàn),取得與傳統(tǒng)B幀編碼相似的效果,可以用于正在制定的AVS標準。98123036.9一種差錯恢復(fù)方式的視頻編解碼(CODEC)方法,含有視頻CODEC方法程序的計算機可讀介質(zhì),及視頻CODEC裝置。視頻CODEC方法為防止信道差錯提供更大恢復(fù)能力,使通信受差錯影響較小。其中,從差錯恢復(fù)方式視頻數(shù)據(jù)每個宏塊劃分首部數(shù)據(jù)位區(qū)、運動矢量數(shù)據(jù)位區(qū)和離散余弦變換數(shù)據(jù)位區(qū),然后對劃分位區(qū)可變長編碼,對按照用于恢復(fù)的優(yōu)先權(quán)從可變長編碼區(qū)選擇的位區(qū)可逆可變長編碼,在可變長編碼或可逆向變長編碼位區(qū)插入標記。但現(xiàn)有方法未集中于解決計算負荷的問題。
發(fā)明內(nèi)容
本發(fā)明的目的是采用自主設(shè)計的視頻壓縮編碼算法體系,在網(wǎng)絡(luò)開銷和計算量上達到完美的平衡,具有壓縮率高,同時計算負荷低的特點,既能提供接近H.264的壓縮比,又能將計算負荷降低到接近H.263的水平。
視頻壓縮編解碼方法,其特征是包括下述程序?qū)σ曨l壓縮信號進行編碼處理,離散余弦變換DCTDCT是一種空間變換,以像塊為單位進行,生成的是DCT系數(shù)數(shù)據(jù)塊,將一般的圖像都能夠?qū)⑾駢K的能量集中于少數(shù)低頻DCT系數(shù)上;變換與量化量化是針對DCT變換系數(shù)進行的,量化過程就是以某個量化步長去除DCT系數(shù),對DCT變換塊中的64個DCT變換系數(shù)采用不同的量化精度,以保證盡可能多地包含特定的DCT空間頻率信息,又使量化精度不超過需要。DCT變換系數(shù)中,低頻系數(shù)對視覺感應(yīng)的重要性較高,因此分配的量化精度較細;高頻系數(shù)對視覺感應(yīng)的重要性較低,分配的量化精度較粗,一個DCT變換塊中的大多數(shù)高頻系數(shù)量化后都會變?yōu)榱?;在編碼比特流進入信道前需設(shè)置信道緩存。信道緩存通過一緩存器以變比特率從熵編碼器向里寫入數(shù)據(jù),以傳輸系統(tǒng)標稱的恒定比特率向外讀出,送入信道。緩存器的大小,或稱容量是設(shè)定好的,但編碼器的瞬時輸出比特率常明顯高于或低于傳輸系統(tǒng)的頻帶,這就有可能造成緩存器的上溢出或下溢出。因此緩存器須帶有控制機制,通過反饋控制壓縮算法,調(diào)整編碼器的比特率,使得緩存器的寫入數(shù)據(jù)速率與讀出數(shù)據(jù)速率趨于平衡。緩存器對壓縮算法的控制是通過控制量化器的量化步長實現(xiàn)的,當(dāng)編碼器的瞬時輸出速率過高,緩存器將要上溢時,就使量化步長增大以降低編碼數(shù)據(jù)速率,當(dāng)然也相應(yīng)增大了圖像的損失;當(dāng)編碼器的瞬時輸出速率過低,緩存器將要下溢出時,就使量化步長減小以提高編碼數(shù)據(jù)速率。
運動估計運動估計使用于幀間編碼方式時,通過參考幀圖像產(chǎn)生對被壓縮圖像的估計。運動估計以宏塊為單位進行,計算被壓縮圖像與參考圖像的對應(yīng)位置上的宏塊間的位置偏移。這種位置偏移是以運動矢量來描述的,一個運動矢量代表水平和垂直兩個方向上的位移。運動估計時,P幀和B幀圖像所使用的參考幀圖像是不同的。P幀圖像使用前面最近解碼的I幀或P幀作參考圖像,稱為前向預(yù)測;而B幀圖像使用兩幀圖像作為預(yù)測參考,稱為雙向預(yù)測,其中一個參考幀在顯示順序上先于編碼幀(前向預(yù)測),另一幀在顯示順序上晚于編碼幀(后向預(yù)測),B幀的參考幀在任何情況下都是I幀或P幀;運動補償利用運動估計算出的運動矢量,將參考幀圖像中的宏塊移至水平和垂直方向上的相對應(yīng)位置,即可生成對被壓縮圖像的預(yù)測。在絕大多數(shù)的自然場景中運動都是有序的。因此這種運動補償生成的預(yù)測圖像與被壓縮圖像的差分值是很小的。
本發(fā)明特征是在頻域中進行運動搜索當(dāng)采用在頻域的運動搜索算法后,對采樣信號做DCT變換之后的量化、存儲、運動搜索全部在頻域完成視頻編碼器在頻域完成所有計算。
本發(fā)明的基礎(chǔ)還包括游程編碼中,只有非零系數(shù)被編碼。一個非零系數(shù)的編碼由兩部分組成前一部分表示非零系數(shù)前的連續(xù)零系數(shù)的數(shù)量(稱為游程),后一部分是那個非零系數(shù)。這樣就把之型掃描的優(yōu)點體現(xiàn)出來了,因為之型掃描在大多數(shù)情況下出現(xiàn)連零的機會比較多,游程編碼的效率就比較高。當(dāng)一維序列中的后部剩余的DCT系數(shù)都為零時,只要用一個″塊結(jié)束″標志(EOB)來指示,就可結(jié)束這一8×8變換塊的編碼,產(chǎn)生的壓縮效果是非常明顯的。
數(shù)字圖像質(zhì)量的主觀評價主觀評價的條件包括評價小組結(jié)構(gòu),觀察距離,測試圖像,環(huán)境照度和背景色調(diào)等。評價小組由一定人數(shù)觀察人員構(gòu)成,其中專業(yè)人員與非專業(yè)人員各占一定比例。觀察距離為顯示器對角線尺寸的3-6倍。測試圖像有若干具有一定圖像細節(jié)和運動的圖像序列構(gòu)成。主觀評價反映的是許多人對圖像質(zhì)量統(tǒng)計評價的平均值。
之型掃描與游程編碼DCT變換產(chǎn)生的是一8×8的二維數(shù)組,為進行傳輸,還須將其轉(zhuǎn)換為一維排列方式。有兩種二維到一維的轉(zhuǎn)換方式,或稱掃描方式之型掃描(Zig-Zag)和交替掃描,其中之型掃描是最常用的一種。由于經(jīng)量化后,大多數(shù)非零DCT系數(shù)集中于8×8二維矩陣的左上角,即低頻分量區(qū),之型掃描后,這些非零DCT系數(shù)就集中于一維排列數(shù)組的前部,后面跟著長串的量化為零的DCT系數(shù),這些就為游程編碼創(chuàng)造了條件。熵編碼,對量化生成的DCT系數(shù)的一種有效的離散表示,在傳輸前,進行比特流編碼,產(chǎn)生用于傳輸?shù)臄?shù)字比特流。熵編碼是基于編碼信號的統(tǒng)計特性,使得平均比特率下降。游程和非零系數(shù)既可獨立的,也可聯(lián)合的作熵編碼。熵編碼中使用霍夫曼編碼中,在確定了所有編碼信號的概率后生產(chǎn)一個碼表,對經(jīng)常發(fā)生的大概率信號分配較少的比特表示,對不常發(fā)生的小概率信號分配較多的比特表示,使得整個碼流的平均長度趨于最短。
本發(fā)明的特點在于提高運動搜索這一步驟本身的性能。傳統(tǒng)視頻編碼體系中,編碼器必須在空間域-頻域做反復(fù)的轉(zhuǎn)換,在運動搜索時,使用的都是基于空間域的算法,而在對殘差編碼時,又需要在頻域進行,以使系數(shù)的能量集中在低頻區(qū),方便量化。在空間域-頻域之間頻繁的轉(zhuǎn)換相當(dāng)耗費資源。
本發(fā)明的特點還在于提供一套先進而完備的視頻會議系統(tǒng)。視頻會議的技術(shù)核心是視頻編解碼算法體系,本發(fā)明在這個領(lǐng)域展開深入研究,提出具有獨創(chuàng)性的基于頻域的亞象素運動搜索算法,建立起一套高效而穩(wěn)定的視頻編碼算法體系,該視頻編碼算法體系不僅編碼效率高,而且計算復(fù)雜度遠低于同類其他算法,容易在低成本的硬件平臺上實現(xiàn)。本發(fā)明在運動搜索的亞象素搜索步驟提出一種獨創(chuàng)的搜索算法,可以將計算復(fù)雜度降低到10%以下,同時能夠保證搜索結(jié)果足夠的精確度。
除此外,本發(fā)明的系統(tǒng)實現(xiàn)如下的功能使用新穎的視頻編碼算法,在頻域完成亞象素運動搜索。
提供遠程電子白板,遠程幻燈片,數(shù)據(jù)共享。
12”液晶觸摸屏,可以繪制任意圖形與文字交流。
支持移動電話訪問,會議數(shù)據(jù)及時發(fā)往移動終端。
內(nèi)建web服務(wù)器,提供用戶界面修改編碼參數(shù)。
內(nèi)建磁盤錄象機,錄制超長時間視頻圖像。
提供usb接口,方便交換數(shù)據(jù)及接駁usb數(shù)字攝像機。
內(nèi)建高靈敏運動檢測算法,可兼作安防監(jiān)控。
四
圖1視頻壓縮編碼算法框2漏桶模型圖3物體移動時的δ響應(yīng)其中圖3(a)物體向右平動s時的δ響應(yīng)圖3(b)物體向左平動s-1時的δ響應(yīng)圖4亞象素空間位置圖5各標準測試序列下的計算性能比較圖6完全基于頻域的視頻編碼流程圖7 4×4中像素以及周圍像素的分布圖8幀內(nèi)4×4預(yù)測模式圖9幀內(nèi)4×4快速預(yù)測模式選擇流程10 4×4小塊的亞采樣圖11當(dāng)前的塊和相鄰塊圖12當(dāng)前4×4小塊與前一幀相同位置4×4小塊示意13系統(tǒng)軟件組成框圖 圖14系統(tǒng)硬件組成框圖五具體實施方式
1視頻壓縮編碼算法圖1是本發(fā)明所采用的視頻壓縮編碼算法框圖。
框圖中的各算法模塊介紹如下a.運動搜索(運動估計)運動搜索(或稱為運動估計)是視頻壓縮編碼領(lǐng)域的核心技術(shù)之一,同時也是視頻編碼中最消耗系統(tǒng)計算資源的算法模塊。運動搜索分整象素搜索與亞象素搜索兩個層次,本發(fā)明的視頻編碼方案在整象素搜索中采用常規(guī)的混合搜索算法;而在亞象素搜索,本發(fā)明實現(xiàn)了具有獨創(chuàng)性的搜索技術(shù)。后面將詳細介紹這個新穎的搜索算法。
b.幀內(nèi)預(yù)測在視頻流中,每幀圖像的編碼方式既可以是I幀(幀內(nèi)預(yù)測幀),也可以是P幀(幀間預(yù)測幀)。P幀在編碼時并不直接把自身圖像中的信息作為編碼的數(shù)據(jù)源,而是在以往已編碼的圖像中進行運動搜索,找到運動信息,作為幀間預(yù)測的依據(jù),然后再將兩幀圖像的差值進行編碼。這樣可以大大減少用來描述圖像所用的比特數(shù),從而實現(xiàn)壓縮的目的。I幀在編碼時并不借助于任何以往的圖像,但利用自身已編碼部分的象素來預(yù)測未編碼部分象素的值。I幀的編碼效率沒有P幀高,但I幀是視頻碼流中的重要組成單位,因為I幀提供重同步的能力。在傳輸中如果某幀發(fā)生丟包,則使用該幀預(yù)測的后續(xù)P幀將不能正確解碼,但由于I幀是自包含的,沒有引用任何以往的圖像,所以碼流在這里獲得重新同步,將錯誤限制在一定范圍內(nèi)。由于I幀的重要性,對I幀的幀內(nèi)預(yù)測算法也是任何視頻編碼方案的研究重點之一。本發(fā)明在后面提出一種新穎的幀內(nèi)預(yù)測算法,在有限的計算開銷之下提供了高效、穩(wěn)定的幀內(nèi)預(yù)測性能。
c.率失真優(yōu)化在各個編碼模式中選擇最優(yōu)方案。在視頻編碼中會有許多編碼模式和參數(shù)的決策問題。例如,在幀間預(yù)測時運動矢量應(yīng)該取何值,搜索精度是多少,這些編碼參數(shù)和模式的選擇取決于率失真優(yōu)化算法。率失真優(yōu)化算法對每個侯選的編碼模式或參數(shù)進行評估,然后按照一定的法則挑選出最優(yōu)模式。這個挑選的法則一般是要同時衡量編碼效率(即壓縮性能)及壓縮后的信噪比兩個性能指標。這兩個性能指標的關(guān)系是非線形的,為了加快計算速度,減少系統(tǒng)的計算開銷,本發(fā)明的視頻壓縮編碼方案中采用拉格朗日算子來實現(xiàn)線性逼近。下式是本方案中的拉格朗日算子。其中,DREC是失真度,PREC是預(yù)測后的編碼效率,Sk、Q是待選擇的編碼模式和參數(shù),JMODE是總的代價值,使JMODE取值最小的編碼模式和參數(shù)就是待選的最優(yōu)值。
JMODE(Sk,Ik,λ)=DREC(Sk,Q)+λRREC(Sk,Q)d.碼率控制監(jiān)測信道狀況,對碼率的分配作出決策。這個算法模塊利用如圖2所示的漏桶模型來檢測信道的發(fā)送狀況。
e.存儲器管理存儲器的邏輯和物理管理,并負責(zé)對參考幀隊列管理。在對P幀編碼時,需要參考以往已編碼或解碼的圖像,進行運動搜索,所以在編碼和解碼的同時必須建立參考幀隊列,存儲參考幀數(shù)據(jù)。編碼器與解碼器之間使用同樣的存儲器邏輯模型,各自獨立地維護參考幀隊列,僅傳遞最少用來同步的信息。
f.熵編碼對視頻序列壓縮的各種方法都圍繞三個方面消除時間冗余、消除空間冗余、消除統(tǒng)計冗余。幀間和幀內(nèi)預(yù)測分別針對時間冗余和空間冗余,而消除統(tǒng)計冗余的方法就稱作熵編碼。本發(fā)明的視頻編碼算法體系采用成熟的哈夫曼算法作為熵編碼。
g.變換與量化對殘差數(shù)據(jù)作時-頻變換,并在頻域進行量化。
1.1亞象素運動搜索運動搜索(或稱為運動估計)是視頻壓縮編碼領(lǐng)域的核心技術(shù)之一。視頻信號經(jīng)模擬-數(shù)字轉(zhuǎn)換后,具有巨大的數(shù)據(jù)量,無法直接將之存儲或用來通信。然而,相對于高速的采樣頻率,視頻圖像中出現(xiàn)的自然物體都是緩慢變化的,這導(dǎo)致原始視頻信息中在時間域和空間域都存在極大的冗余。運動搜索技術(shù)的基本原理是搜索視頻序列中的相鄰圖像,找出運動信息和運動矢量,用表征物體運動的數(shù)據(jù)代替相應(yīng)圖像的原始信息,從而極大地消除時間冗余,達到數(shù)據(jù)壓縮的目的。
現(xiàn)代運動搜索算法的精度已不再局限于整象素。實驗證明,當(dāng)達到半象素或以上的亞象素精度時,將使編碼后的碼率有顯著降低。在低噪聲條件下,當(dāng)搜索精度每增加一倍,壓縮比可以提高約0.5bit/sample,編碼后平均碼率可以下降24.41%~36.92%。然而,當(dāng)搜索精度達到1/8象素以上時,由于噪聲增強,壓縮比的提高不再明顯。目前主流的視頻編碼標準都采用了亞象素搜索技術(shù)以提高編碼性能,在H.263和MPEG-2中引進了半象素運動搜索,而在MPEG-4及最新制定的H.264更是使用了1/4象素精度的運動搜索。
在現(xiàn)有亞象素搜索算法中,廣泛使用的技術(shù)是基于空間域的全搜索算法或是全搜索的各種快速算法,這些算法在搜索窗內(nèi)以象素塊為單位查找最匹配塊,以平均方差和或絕對差值和為判斷法則,其搜索過程中需要作多次濾波插值,并反復(fù)計算代價函數(shù),計算復(fù)雜度非常高。實驗顯示,進入亞象素精度后,運動搜索過程的計算開銷往往要超出原整象素搜索的一倍以上。不僅如此,匹配的準確度還取決于插值算法的精度,從一定程度上影響編碼效率。本發(fā)明提出一種新穎的搜索算法,在頻域利用相位的相關(guān)性預(yù)測和搜索運動矢量,該算法在亞象素搜索過程中幾乎不需做插值計算,也不用計算代價函數(shù),能夠極大削減空間域搜索算法帶來的計算開銷,適用于需要視頻內(nèi)容服務(wù)的嵌入式平臺。
1.1.1頻域相位與物體空間平動眾所周知,在傅立葉變換域中,相位的變化與物體在時間域/空間域中的平動相對應(yīng)F{x(s-τ)}=e-jwτF{x(s)}(1)在式(1)中F{·}表示離散信號的傅立葉變換,s表示空間位移(如果在時域,用t代替,以下只介紹空間域)。通過傅立葉變換的這個性質(zhì),可以很容易地在頻域中解析出空間域中的運動信息。在視頻編碼的方案中,如果采用傅立葉變換,在頻域中搜索運動信息將變得十分方便與精確。然而,傅立葉變換的能量收斂性能不好,變換后不能有效地去除空間冗余,這個缺點使得傅立葉變換不能應(yīng)用在實際的視頻編碼算法中。目前被各視頻編碼標準普遍采用的是DCT變換,DCT變換具有接近K-L變換的能量收斂性能,能夠?qū)⒋蟛糠帜芰考性谥绷骱偷皖l部分,在通過低通濾波器后,可以在高壓縮比下保證圖像質(zhì)量。針對這點,本發(fā)明采用DCT來實現(xiàn)時-頻變換,下面從DCT變換域的相位來推算空間的平動,由于DCT變換的特殊性,在DCT域不再像傅立葉那樣有簡單的對應(yīng)關(guān)系。
假設(shè)有一維離散信號(x1(n)|n∈
}(N為搜索窗的大小),經(jīng)右移m后,形成信號{x2(n)|n∈
}x2(n)=x1(n-m),n≥m0,n<m----(2)]]>根據(jù)[2],定義如下的DCT和DST變換X2C(k)=2NC(k)Σn=0N-1x2(n)cos(kπN(n+0.5)),k∈
----(3)]]>X2S(k)=2NC(k)Σn=0N-1x2(n)sin(kπN(n+0.5)),k∈
----(4)]]>Z1C(k)=2NC(k)Σn=0N-1x1(n)cos(kπNn),k∈
----(5)]]>Z1S(k)=2NC(k)Σn=0N-1x1(n)sin(kπNn),k∈
----(6)]]>上式中,C(k)=12,k={0,N}1,k=[1,N-1]----(7)]]>容易證明,這四個變換滿足如下方程X2C(k)X2S(k)=Z1C(k)-Z1S(k)Z1S(k)+Z1C(k)gmC(k)gmS(k)----(8)]]>其中,gmS=sin((kπ/N)(m+0.5)),gmC=cos((kπ/N)(m+0.5)).]]>我們看到,這兩個屬于頻域的變量包含了平動信息m。在已知信號x1(n)、x2(n)的情況下,如果能夠找到快速算法解出gmC、gmS,并從中提取出m,就能實現(xiàn)DCT域的運動搜索。
將(8)中的方程改寫為X→(k)=Z(k)Ω→(k).]]>可以證明,Z(k)是一個正交矩陣,并且有λZT(k)Z(k)=I2(9)I2是一個2×2的單位矩陣。這樣,我們可以解出方程Ω→(k)=λZT(k)X→(k)----(10)]]>
從而可以解出gmC、gmS。
根據(jù)正弦函數(shù)的正交法則,有如下定律[4]Σk=1NC2(k)sin(kπN(m+0.5))sin(kπN(n+0.5))=δ(m-n)-δ(m+n+1)----(11)]]>Σk=0N-1C2(k)cos(kπN(m+0.5))cos(kπN(n+0.5))=δ(m-n)+δ(m+n+1)----(12)]]>其中,δ(n)是離散沖激函數(shù)。
根據(jù)式(8)、(10~12),我們可以得出2NΣk=1NC2(k)gmSsin(kπN(n+0.5))=δ(m-n)-δ(m+n+1)----(13)]]>2NΣk=1NC2(k)gmCcos(kπN(n+0.5))=δ(m-n)+δ(m+n+1)----(14)]]>分析式(13),當(dāng)m大于0,且位于搜索窗
時,總能在n=m處找到正的δ響應(yīng),同時在n=-m-1處找到負的δ響應(yīng);當(dāng)m<0,且位于搜索窗的負鏡象[-N,0)時,總能在n=m處找到負的δ響應(yīng),同時在n=-m-1處找到正的δ響應(yīng)。如圖3所示,灰色區(qū)域為搜索窗,當(dāng)在搜索窗內(nèi)發(fā)現(xiàn)正的δ響應(yīng),則意味著物體有向右的平動,且運動位移為s;當(dāng)在搜索窗內(nèi)發(fā)現(xiàn)負的δ響應(yīng),則意味著物體有向左的平動,且運動位移為s-1。見圖3(a)物體向右平動s時的δ響應(yīng)和圖3(b)物體向左平動s-1時的δ響應(yīng)。圖4為亞象素空間位置示意圖。
在具體計算時,可將 代替2NΣk=1NC2(k)gmSsin(kπN(n+0.5)),]]>以降低計算復(fù)雜度。
1.1.2頻域的亞象素搜索算法流程在上面推導(dǎo)的基礎(chǔ)上,基于頻域的亞象素搜索算法的流程如下1)確定搜索窗為N,提取在x方向上以參考圖像整象素點F為起始的一維信號x1(n)及當(dāng)前圖像中對應(yīng)位置的x2(n)。
2)根據(jù)式(3~6),計算x1(n)和x2(n)的四個離散DCT/DST變換系數(shù)。
3)計算在[1,N]區(qū)間的gmS,由式(3~6)、(8)得到gmS(k)=1,k=N(Z1C(k)·X2S(k)-Z1S(k)·X2C(k))/((Z1C(k))2+(Z1S(k))2),k∈[1,N)----(15)]]>4)根據(jù)式(13)得出x方向上的平動方向dx及位移sx。
5)在y方向上重復(fù)以上步驟,得出y方向上的dy、sy。
6)攜帶參數(shù)mx、my查詢表1,確定在圖4中的匹配點,并確定半象素運動矢量。
表1 m與運動矢量
7)如果需要1/4象素精度的運動矢量,按6)中所得的運動矢量使用雙線性濾波器插值,在所得象素塊上重復(fù)1)-6)步驟。
圖5是本文的算法在各標準測試序列下與全搜索算法在亞象素搜索中的計算復(fù)雜度比較,即計算性能比較。由于各測試序列的圖像構(gòu)成各異,計算環(huán)境各不相同,為方便起見,將各個測試序列中的全搜索算法計算復(fù)雜度設(shè)為1,作為比較基準。
DCT變換的全稱是離散余弦變換(Discrete Cosine Transform),是指將一組光強數(shù)據(jù)轉(zhuǎn)換成頻率數(shù)據(jù),以便得知強度變化的情形。若對高頻的數(shù)據(jù)做些修飾,再轉(zhuǎn)回原來形式的數(shù)據(jù)時,顯然與原始數(shù)據(jù)有些差異,但是人類的眼睛卻是不容易辨認出來。壓縮時,將原始圖像數(shù)據(jù)分成8*8數(shù)據(jù)單元矩陣,例如亮度值的第一個矩陣內(nèi)容如下y00y01y02y03y04y05y06y07y10y11y12y13y14y15y16y17y20y21y22y23y24y25y26y27y30y31y32y33y34y35y36y37y40y41y42y43y44y45y46y47y50y51y52y53y54y55y56y57y60y61y62y63y64y65y66y67y70y71y72y73y74y75y76y77JPEG將整個亮度矩陣與色度Cb矩陣,飽和度Cr矩陣,視為一個基本單元稱作MCU。每個MCU所包含的矩陣數(shù)量不得超過10個。例如,行和列采樣的比例皆為4∶2∶2,則每個MCU將包含四個亮度矩陣,一個色度矩陣及一個飽和度矩陣。
當(dāng)圖像數(shù)據(jù)分成一個8*8矩陣后,還必須將每個數(shù)值減去128,然后一一代入DCT變換公式中,即可達到DCT變換的目的。圖像數(shù)據(jù)值必須減去128,是因為DCT轉(zhuǎn)換公式所接受的數(shù)字范圍是在-128到+127之間。
DCT變換公式
x,y代表圖像數(shù)據(jù)矩陣內(nèi)某個數(shù)值的坐標位置。(x,y)代表圖像數(shù)據(jù)矩陣內(nèi)的數(shù)個數(shù)值。,v代表DCT變換后矩陣內(nèi)某個數(shù)值的坐標位置,F(xiàn)(u,v)代表DCT變換后矩陣內(nèi)的某個數(shù)值。
u=0且v=0 c(u)c(v)=1/1.414u>0或v>0 c(u)c(v)=1經(jīng)過DCT變換后的矩陣數(shù)據(jù)自然數(shù)為頻率系數(shù),這些系數(shù)以F(0,0)的值最大,稱為DC,其余的63個頻率系數(shù)則多半是一些接近于0的正負浮點數(shù),一概稱之為AC。
1.1.3小結(jié)對于視頻編碼而言,在頻域中進行運動搜索,其優(yōu)處不僅在于提高運動搜索這一步驟本身的性能。傳統(tǒng)視頻編碼體系中,編碼器必須在空間域-頻域做反復(fù)的轉(zhuǎn)換,在運動搜索時,使用的都是基于空間域的算法,而在對殘差編碼時,又需要在頻域進行,以使系數(shù)的能量集中在低頻區(qū),方便量化。在空間域-頻域之間頻繁的轉(zhuǎn)換相當(dāng)耗費資源,當(dāng)采用在頻域的運動搜索算法后,視頻編碼器將在頻域完成所有計算,編碼流程如圖6所示。與在空間域中搜索運動矢量的視頻編碼流程相比,圖6在對采樣信號做DCT變換之后的量化、存儲、運動搜索全部在頻域完成,這不但減少了空間域編碼流程中的反DCT變換步驟,更有效地縮減存儲需要的空間,有利于編碼器與解碼器的優(yōu)化。
1.2幀內(nèi)預(yù)測模式的快速選擇算法1.2.1幀內(nèi)編碼預(yù)測模式如果當(dāng)前圖像與前面輸入圖像之間沒有很強的時間相關(guān)性,該幀圖像一般被編碼為I幀,使用幀內(nèi)編碼模式。在以往的視頻編碼標準中,I幀圖像不使用預(yù)測的技術(shù)而是直接編碼,也就是將宏塊數(shù)據(jù)直接變換、量化后編碼傳輸,這樣I幀圖像編碼后的數(shù)據(jù)量非常大。為了更有效的提高編碼效率,本發(fā)明的視頻編碼體系充分利用圖像中各個像素之間的空間冗余度,定義了16×16和4×4預(yù)測單位。圖7 4×4中像素以及周圍像素的分布在本發(fā)明的幀內(nèi)預(yù)測模塊中,如果當(dāng)前宏塊編碼模式是幀內(nèi)編碼,宏塊的預(yù)測值是來自于相鄰的編碼重建后的宏塊。亮度分量可以使用16×16宏塊或者4×4小塊作為幀內(nèi)預(yù)測編碼的基本單位。在使用16×16宏塊作為編碼單位時,有4種預(yù)測模式可供選擇;在使用4×4小塊作為編碼單位時,共有9種預(yù)測模式可供選擇。兩個色度分量使用8×8宏塊作為幀內(nèi)預(yù)測編碼的基本單位,有4種預(yù)測模式可供選擇,兩個色度分量選擇的模式必須一樣。由于4×4小塊更為精細,計算復(fù)雜度主要體現(xiàn)在這個單位上。
4×4小塊中像素以及周圍像素的分布如圖7所示,其中小寫英文字母a到p表示小塊內(nèi)部的16個像素,大寫字母A到M表示小塊周圍的像素。幀內(nèi)4×4使用9種模式進行預(yù)測,其中模式2是DC預(yù)測,其余的預(yù)測模式方向如圖8幀內(nèi)4×4預(yù)測模式所示。例如,如果選用模式1進行水平方向的預(yù)測,小塊中的預(yù)測值來自于像素I、J、K、L。
1.2.2快速幀內(nèi)預(yù)測編碼模式選擇算法本發(fā)明提出的幀內(nèi)預(yù)測模式選擇算法利用邊界方向直方圖、上下文模型以及前一幀相同位置小塊的預(yù)測編碼模式,來快速選擇出可用的候選預(yù)測模式,根據(jù)預(yù)選模式進行預(yù)編碼,再利用拉格朗日代價函數(shù)來選出最優(yōu)的預(yù)測模式。為了進一步減少計算量,在計算邊界方向向量之前,先對原始數(shù)據(jù)進行亞采樣。以幀內(nèi)4×4為例,快速幀內(nèi)預(yù)測模式選擇的流程如圖9幀內(nèi)4×4快速預(yù)測模式選擇流程圖所示,下文將對流程中的各個部分進行分別介紹。
1.2.2.1像素亞采樣對輸入的原始像素數(shù)據(jù)進行2∶1亞采樣,采樣后的像素個數(shù)是原始像素個數(shù)的1/2,對采樣后的像素進行邊界方向向量計算所耗費的時間大約是原來的1/2。本文中所采用的像素的亞采樣方法如圖10 4×4小塊的亞采樣所示,在亞采樣后的圖中,實心圓表示的是可用的采樣像素。
1.2.2.2基于邊界方向的模式選擇自然圖像在空間是連續(xù)和相關(guān)的,組成圖像的各像素在空間上的8個預(yù)測方向上都有相關(guān)性,這個特性可以被利用來減除空間冗余,如果能找到相關(guān)性最強的那個方向,并使用幀內(nèi)預(yù)測來編碼像素的值,就可以達到幀內(nèi)編碼的最優(yōu)效果。本文使用Sobel算子[3~5]來計算亞采樣后的像素的邊界方向矢量,Sobel算子是-1-2-1000121]]>和-101-202-101,]]>分別用來計算邊界向量的水平和垂直方向分量。
對于亞采樣后的像素pi,j,相應(yīng)的邊界向量為D→i,j={dxi,j,dyi,j},]]>dxi,j和dyi,j分別代表邊界向量水平和垂直方向分量。dxi,j和dyi,j的計算公式,如1式所示,其中pi-1,j+1等指的是像素pi,j在原始圖像中的相鄰像素。
dxi,j=pi-1,j+1+2×pi,j+1+pi+1,j+1-pi-1,j-1-2×pi,j-1-pi+1,j-1dyi,j=pi+1,j-1+2×pi+1,j+pi+1,j+1-pi-1,j-1-2×pi-1,j-pi-1,j+1(1)為了方便計算,定義邊界方向向量的模是Amp(D→i,j)=|dxi,j|+|dyi,j|----(2)]]>邊界方向向量的方向是 將小塊中相同方向的向量的模相加,得到相應(yīng)的邊界方向直方圖(Edgedirection histogram),幀內(nèi)4×4的邊界方向直方圖的建立如下式3所示,選擇方向直方圖中模最大的方向作為候選預(yù)測方向。
Histo(k)=Σ(m,n)∈SET(k)Amp(D→m,n),]]>SET(k)∈{(i,j)|Ang(D→i,j)∈au},]]>whilea0=(-103.30,-76.60]a1=(-13.30,13.30]a3=(35.80,54.20]a4=(-54.20,-35.80]a5=(-76.70,-54.20]a6=(-35.80,-13.30]a7=(54.20,-76.70]a8=(13.30,35.80](3)1.2.2.3基于上下文的模型進行模式選擇一幅圖像各個小塊之間有空間相關(guān)性,所以可以利用相鄰小塊的編碼模式來預(yù)測當(dāng)前小塊的編碼模式。如圖11所示,C表示當(dāng)前的4×4小塊,A和B表示的是當(dāng)前塊上邊的4×4小塊和當(dāng)前塊左邊的4×4小塊。用A和B預(yù)測模式的最大值作為當(dāng)前塊的候選預(yù)測模式。如圖11所示當(dāng)前的塊和相鄰塊1.2.2.4基于前一幀圖像相同位置上塊的狀態(tài)模式選擇根據(jù)當(dāng)前小塊在前一幀圖像中對應(yīng)位置的4×4小塊的編碼模式,如果前一幀圖像的對應(yīng)小塊是使用的幀內(nèi)編碼模式,那么前一幀圖像中對應(yīng)小塊的編碼模式就被選出作為當(dāng)前4×4小塊的候選編碼模式,如圖12當(dāng)前4×4小塊與前一幀相同位置4×4小塊示意圖所示。
1.2.2.5預(yù)編碼和性能比較預(yù)編碼用當(dāng)前小塊周圍的像素,根據(jù)上文已經(jīng)選擇出來的候選預(yù)測模式,依次對當(dāng)前小塊進行預(yù)測編碼,利用拉格朗日代價函數(shù)來選出最優(yōu)的預(yù)測模式,拉格朗日的代價函數(shù)是J(s,c,IMODE|QP,λMODE)=SSD(s,c,IMODE|QP)+λMODE·R(s,c,IMODE|QP)(4)其中IMODE指得是幀內(nèi)預(yù)測可供選擇的幾種預(yù)測方向,SSD指得是幀內(nèi)4×4原始的像素值s和重建的像素值c之間的均方誤差和,R(s,c,IMODE|QP)指的是使用IMODE模式來進行編碼,所需要編碼的碼流大小,使用的是變長霍夫曼編碼。在視頻編碼中使用峰值信噪比(PSNR)來進行質(zhì)量檢測,式(5)是峰值信噪比的公式
PSNR=10log10(2552MSE)----(5)]]>1.2.3實驗結(jié)果實驗使用的測試序列為大小為QCIF的Mobile、Tempete、Bus、Paris,同時只對亮度分量進行測試。試驗結(jié)果如表2所示。
表2在不同測試序列下的編碼性能變化
2系統(tǒng)軟件組成框圖(圖13系統(tǒng)軟件組成框圖)在系統(tǒng)的軟件體系中,最核心的模塊是視頻編碼和解碼器,這兩個部分是整個軟件架構(gòu)的主體,也是本發(fā)明的最大創(chuàng)新所在。本發(fā)明所設(shè)計的視頻會議系統(tǒng)使用RTP/RTCP協(xié)議來傳輸視頻與語音數(shù)據(jù)。其中RTP負責(zé)將媒體數(shù)據(jù)打包發(fā)送,RTCP負責(zé)溝通視頻與語音數(shù)據(jù)流的發(fā)送和接收方,傳遞反饋信息及時間同步信息。
3系統(tǒng)硬件組成框圖(圖14所示),系統(tǒng)采用嵌入式設(shè)計。
總之,視頻會議是一個正在快速增長的市場,但由于行業(yè)標準尚未完全統(tǒng)一,西方國家還無法在核心技術(shù)上取得壟斷地位,我國正面臨著極大的機遇,有望在這領(lǐng)域一展宏圖。目前國內(nèi)生產(chǎn)的部分視頻會議網(wǎng)絡(luò)設(shè)備如MCU、網(wǎng)守等產(chǎn)品已經(jīng)在國際上居于技術(shù)先進、甚至領(lǐng)先的地位,而對于視頻會議的終端設(shè)備產(chǎn)品,我國尚缺少有競爭力的產(chǎn)品,市場幾乎被國外產(chǎn)品完全占領(lǐng)。南京大學(xué)應(yīng)用物理研究所研制的AVCS-II視頻會議系統(tǒng),從一定程度上可以說是我國在視頻會議終端產(chǎn)品領(lǐng)域,尤其是視頻編解碼器技術(shù)上的一個新的嘗試和突破,有望打開國內(nèi)和國外視頻會議的市場。本發(fā)明提出的基于頻域的亞象素運動搜索算法在技術(shù)上是一個創(chuàng)新,實驗和用戶的實際使用證明,該算法準確率高,且計算復(fù)雜度極低,能夠快速匹配最優(yōu)運動矢量。除了獨特的視頻編碼體系外,本發(fā)明設(shè)計的系統(tǒng)提供了豐富的視頻會議工具集,從而為用戶構(gòu)建了完整的視頻與數(shù)據(jù)交互的平臺。
權(quán)利要求
1.視頻壓縮編解碼方法,包括下述程序?qū)σ曨l壓縮信號進行編碼處理,離散余弦變換DCTDCT是一種空間變換,以像塊為單位生成DCT系數(shù)數(shù)據(jù)塊,將一般的圖像都能夠?qū)⑾駢K的能量集中于少數(shù)低頻DCT系數(shù)上;變換與量化量化是針對DCT變換系數(shù)進行的,量化過程就是以某個量化步長去除DCT系數(shù),DCT變換系數(shù)中,低頻系數(shù)對視覺感應(yīng)的重要性較高,因此分配的量化精度較細;高頻系數(shù)對視覺感應(yīng)的重要性較低,分配的量化精度較粗;在編碼比特流進入信道前需設(shè)置信道緩存信道緩存,通過一緩存器以變比特率從熵編碼器向里寫入數(shù)據(jù),以傳輸系統(tǒng)標稱的恒定比特率向外讀出,送入信道;緩存器須帶有控制機制,通過反饋控制壓縮算法,調(diào)整編碼器的比特率,使得緩存器的寫入數(shù)據(jù)速率與讀出數(shù)據(jù)速率趨于平衡;運動估計使用于幀間編碼方式時,通過參考幀圖像產(chǎn)生對被壓縮圖像的估計,運動估計以宏塊為單位進行,計算被壓縮圖像與參考圖像的對應(yīng)位置上的宏塊間的位置偏移,這種位置偏移是以運動矢量來描述的,一個運動矢量代表水平和垂直兩個方向上的位移;運動估計時,P幀圖像使用前面最近解碼的I幀或P幀作參考圖像,稱為前向預(yù)測;而B幀圖像使用兩幀圖像作為預(yù)測參考,稱為雙向預(yù)測,其中一個參考幀在顯示順序上先于編碼幀(前向預(yù)測),另一幀在顯示順序上晚于編碼幀(后向預(yù)測),B幀的參考幀在任何情況下都是I幀或P幀;運動補償利用運動估計算出的運動矢量,將參考幀圖像中的宏塊移至水平和垂直方向上的相對應(yīng)位置,即可生成對被壓縮圖像的預(yù)測;并對亞象素進行搜索計算;其特征是在頻域中進行運動搜索當(dāng)采用在頻域的運動搜索算法后,對采樣信號做DCT變換之后的量化、存儲、運動搜索全部在頻域完成視頻編碼器在頻域完成所有計算。
2.由權(quán)利要求1所述的視頻壓縮編解碼方法,其特征是基于頻域的亞象素搜索算法的流程如下1)確定搜索窗為N,提取在x方向上以參考圖像整象素點F為起始的一維信號x1(n)及當(dāng)前圖像中對應(yīng)位置的x2(n)。2)根據(jù)式(3~6),計算x1(n)和x2(n)的四個離散DCT/DST變換系數(shù)。3)計算在[1,N]區(qū)間的gmS,由式(3~6)、(8)得到gmS(k)=1,k=N(Z1C(k)·X2S(k)-Z1S(k)·X2C(k))/((Z1C(k))2+(Z1S(k))2),k∈(1,N)--(15)]]>4)根據(jù)式(13)得出x方向上的平動方向dx及位移sx。5)在y方向上重復(fù)以上步驟,得出y方向上的dy、sy。6)攜帶參數(shù)mx、my查詢表1,確定在圖4中的匹配點,并確定半象素運動矢量。m與運動矢量
7)如果需要1/4象素精度的運動矢量,按6)中所得的運動矢量使用雙線性濾波器插值,在所得象素塊上重復(fù)1)-6)步驟。
3.由權(quán)利要求1所述的視頻壓縮編解碼方法,其特征是幀內(nèi)預(yù)測模式選擇算法利用邊界方向直方圖、上下文模型以及前一幀相同位置小塊的預(yù)測編碼模式,來快速選擇出可用的候選預(yù)測模式,根據(jù)預(yù)選模式進行預(yù)編碼,再利用拉格朗日代價函數(shù)來選出最優(yōu)的預(yù)測模式;并在計算邊界方向向量之前,先對原始數(shù)據(jù)進行亞采樣;像素亞采樣對輸入的原始像素數(shù)據(jù)進行2∶1亞采樣,采樣后的像素個數(shù)是原始像素個數(shù)的1/2,對采樣后的像素進行邊界方向向量計算所耗費的時間大約是原來的1/2?;谶吔绶较虻哪J竭x擇自然圖像在空間是連續(xù)和相關(guān)的,組成圖像的各像素在空間上的8個預(yù)測方向上都有相關(guān)性,使用Sobel算子[3~5]來計算亞采樣后的像素的邊界方向矢量,Sobel算子是-1-2-1000121]]>和-101-202-101,]]>分別用來計算邊界向量的水平和垂直方向分量;對于亞采樣后的像素pi,j,相應(yīng)的邊界向量為D→i,j={dxi,j,dyi,j},]]>dxi,j和dyi,j分別代表邊界向量水平和垂直方向分量。dxi,j和dyi,j的計算公式,如1式所示,其中pi-1,j+1等指的是像素pi,j在原始圖像中的相鄰像素。dxi,j=pi-1,j+1+2×pi,j+1+pi+1,j+1-pi-1,j-1-2×pi,j-1-pi+1,j-1dyi,j=pi+1,j-1+2×pi+1,j+pi+1,j+1-pi-1,j-1-2×pi-1,j-pi-1,j+1(1)為了方便計算,定義邊界方向向量的模是Amp(D→i,j)=|dxi,j|+|dyi,j|---(2)]]>邊界方向向量的方向是 將小塊中相同方向的向量的模相加,得到相應(yīng)的邊界方向直方圖(Edge directionhistogram),幀內(nèi)4×4的邊界方向直方圖的建立如下式3所示,選擇方向直方圖中模最大的方向作為候選預(yù)測方向;Histo(k)=Σ(m,n)∈SET(k)Amp(D→m,n),]]>SET(k)∈{(i,j)|Ang(D→i,j)∈au},]]>whilea0=(-103.3°,-76.6°]a1=(-13.3°,13.3°]a3=(35.8°,54.2°]a4=(-54.2°,-35.8°]a5=(-76.7°,-54.2°]a6=(-35.8°,-13.3°]a7=(54.2°,-76.7°]a8=(13.3°,35.8°](3)根據(jù)當(dāng)前小塊在前一幀圖像中對應(yīng)位置的4×4小塊的編碼模式,如果前一幀圖像的對應(yīng)小塊是使用的幀內(nèi)編碼模式,那么前一幀圖像中對應(yīng)小塊的編碼模式就被選出作為當(dāng)前4×4小塊的候選編碼模式;預(yù)編碼用當(dāng)前小塊周圍的像素,根據(jù)上文已經(jīng)選擇出來的候選預(yù)測模式,依次對當(dāng)前小塊進行預(yù)測編碼,利用拉格朗日代價函數(shù)來選出最優(yōu)的預(yù)測模式,拉格朗日的代價函數(shù)是J(s,c,IMODE|QP,λMODE)=SSD(s,c,IMODE|QP)+λMODE·R(s,c,IMODE|QP) (4)其中IMODE指得是幀內(nèi)預(yù)測可供選擇的幾種預(yù)測方向,SSD指得是幀內(nèi)4×4原始的像素值s和重建的像素值c之間的均方誤差和,R(s,c,IMODE|QP)指的是使用IMODE模式來進行編碼,所需要編碼的碼流大小,使用的是變長霍夫曼編碼。
全文摘要
視頻壓縮編解碼方法,包括下述程序?qū)σ曨l壓縮信號進行編碼處理,離散余弦變換DCT;變換與量化;在編碼比特流進入信道前需設(shè)置信道緩存;緩存器須帶有控制機制;運動估計;這種位置偏移是以運動矢量來描述的,一個運動矢量代表水平和垂直兩個方向上的位移;運動估計時,P幀圖像使用前面最近解碼的I幀或P幀作參考圖像,稱為前向預(yù)測;運動補償利用運動估計算出的運動矢量,將參考幀圖像中的宏塊移至水平和垂直方向上的相對應(yīng)位置,即可生成對被壓縮圖像的預(yù)測;并對亞象素進行搜索計算;對采樣信號做DCT變換之后的量化、存儲、運動搜索全部在頻域完成視頻編碼器在頻域完成所有計算。壓縮率高,計算量小。
文檔編號H04N7/26GK1658673SQ20051003853
公開日2005年8月24日 申請日期2005年3月23日 優(yōu)先權(quán)日2005年3月23日
發(fā)明者馬國強, 徐蘇珊, 吳金勇, 徐健鍵 申請人:南京大學(xué)