專利名稱:一種處理數(shù)據(jù)的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及應(yīng)用于視頻編碼系統(tǒng)的信號處理,更具體地說,涉及一種為AVS1-P2進行自適應(yīng)解塊的方法和系統(tǒng)。
背景技術(shù):
中國音頻視頻編碼標(biāo)準(zhǔn)(AVS)視頻標(biāo)準(zhǔn)是一種流化(streamlined)高效的視頻編碼方案,其使用了最新的視頻編碼工具,專門用來編碼HDTV內(nèi)容。AVS的設(shè)計目標(biāo)是提供最優(yōu)的性能和在一定程度上降低復(fù)雜度。因此AVS將可提供低成本的實現(xiàn)方式。AVS應(yīng)用包括廣播TV、HD-DVD和寬帶視頻網(wǎng)絡(luò)。
AVS是構(gòu)建在分層的數(shù)據(jù)結(jié)構(gòu)之上的,該數(shù)據(jù)結(jié)構(gòu)表示傳統(tǒng)的視頻數(shù)據(jù)。該結(jié)構(gòu)映射到編碼后的視頻比特流。通常,序列包括從序列頭開始的幾個GOP(圖片組),每一個GOP都可以是一個隨機訪問點。GOP和宏塊之間的其它層為圖片和分片。
AVS視頻(第二部分)將基于空間和臨時預(yù)測進行混合編碼,整數(shù)轉(zhuǎn)換和熵編碼。AVS可用于將圖片使用矩形格式進行編碼,該矩形格式的大小為16K×16K個像素。像素將被編碼到亮度-色度格式(YCrCb)之中,每個分量的精確度為8比特。該標(biāo)準(zhǔn)中的基本編碼/解碼單元為宏塊,其包括一個16×16亮度塊和兩個8×8色度塊。在該編碼方案中,獨立的基于塊的編碼技術(shù)可能會在重建圖像或視頻的塊的邊界之間產(chǎn)生可察覺的不連續(xù)現(xiàn)象,這種現(xiàn)象也稱為方塊效應(yīng)(blocking artifact)。為降低方塊效應(yīng)并改善視頻的質(zhì)量,AVS采用了許多新技術(shù),其中包括自適應(yīng)解塊濾波。AVS要求在AVS編解碼器的運動補償預(yù)測環(huán)路中使用解塊濾波器,以確保視覺質(zhì)量達到一定級別。由于解塊濾波器是設(shè)置在運動補償預(yù)測環(huán)路之中的,解塊濾波器通常也稱為“環(huán)路內(nèi)部解塊濾波器”。
比較本發(fā)明后續(xù)將要結(jié)合附圖介紹的系統(tǒng),現(xiàn)有技術(shù)的其它局限性和弊端對于本領(lǐng)域的普通技術(shù)人員來說是顯而易見的。
發(fā)明內(nèi)容
本發(fā)明提供了一種為AVS1-P2進行自適應(yīng)解塊的方法和系統(tǒng),在至少一副附圖中做了描述,并結(jié)合權(quán)利要求做了完整的定義。
依據(jù)本發(fā)明,提供了一種處理數(shù)據(jù)的方法,包括, 接收比特流,其中包括一個或多個濾波參數(shù)和構(gòu)成圖片的多個宏塊; 解碼所述多個宏塊,生成解碼后的圖片; 基于所述一個或多個濾波參數(shù)和從所述生成的解碼后的圖片中計算得出的一個或多個參數(shù)來處理所述解碼后的圖片。
優(yōu)選地,所述比特流為AVS1-P2比特流或者H.264比特流。
優(yōu)選地,所述方法還包括為所述解碼后的圖片計算調(diào)整后的量化參數(shù)。
優(yōu)選地,所述方法還包括基于所述解碼后的圖片的圖片類型確定所述調(diào)整后的量化參數(shù)。
優(yōu)選地,所述方法還包括基于所述解碼后的圖片和所述解碼后的圖片的一個或多個參考圖片來確定所述調(diào)整后的量化參數(shù)。
優(yōu)選地,所述方法還包括基于所述一個或多個濾波參數(shù)和/或所述調(diào)整后的量化參數(shù)和/或用戶控制信息來為所述解碼后的圖片確定濾波強度。
優(yōu)選地,所述方法還包括基于所述確定的濾波強度對所述解碼后的圖片進行濾波。
優(yōu)選地,所述方法還包括調(diào)整所述確定的濾波強度以降低宏塊的邊界效應(yīng)(macroblock boundary artifact)和/或分片的邊界效應(yīng)(slice boundary artifact)。
優(yōu)選地,所述方法還包括基于所述確定的濾波強度來開啟或關(guān)閉所述處理。
依據(jù)本發(fā)明,提供了一種處理數(shù)據(jù)的系統(tǒng),包括 一個或多個處理器,用于接收比特流,所述比特流包括一個或多個濾波參數(shù)和構(gòu)成圖片的多個宏塊; 所述一個或多個處理器用于解碼所述多個宏塊,生成解碼后的圖片; 所述一個或多個處理器用于基于所述一個或多個濾波參數(shù)和從所述生成的解碼后的圖片中計算得出的一個或多個參數(shù)來處理所述解碼后的圖片。
優(yōu)選地,所述比特流為AVS1-P2比特流或者H.264比特流。
優(yōu)選地,所述一個或多個處理器用于為所述解碼后的圖片計算調(diào)整后的量化參數(shù)。
優(yōu)選地,所述一個或多個處理器用于基于所述解碼后的圖片的圖片類型確定所述調(diào)整后的量化參數(shù)。
優(yōu)選地,所述一個或多個處理器用于基于所述解碼后的圖片和所述解碼后的圖片的一個或多個參考圖片來確定所述調(diào)整后的量化參數(shù)。
優(yōu)選地,所述一個或多個處理器用于基于所述一個或多個濾波參數(shù)和/或所述調(diào)整后的量化參數(shù)和/或用戶控制信息來為所述解碼后的圖片確定濾波強度。
優(yōu)選地,所述一個或多個處理器用于基于所述確定的濾波強度對所述解碼后的圖片進行濾波。
優(yōu)選地,所述一個或多個處理器用于調(diào)整所述確定的濾波強度以降低宏塊的邊界效應(yīng)和/或分片的邊界效應(yīng)。
優(yōu)選地,所述一個或多個處理器用于基于所述確定的濾波強度來開啟或關(guān)閉所述處理。
依據(jù)本發(fā)明,提供了一種機器可讀存儲器,其中存儲有計算機程序,該計算機程序包括用于處理數(shù)據(jù)的至少一個代碼段,所述至少一個代碼段可由機器執(zhí)行,以控制機器執(zhí)行如下步驟 接收比特流,其中包括一個或多個濾波參數(shù)和構(gòu)成圖片的多個宏塊; 解碼所述多個宏塊,生成解碼后的圖片; 基于所述一個或多個濾波參數(shù)和從所述生成的解碼后的圖片中計算得出的一個或多個參數(shù)來處理所述解碼后的圖片。
優(yōu)選地,所述比特流為AVS1-P2比特流或者H.264比特流。
優(yōu)選地,所述至少一個代碼段包括用于為所述解碼后的圖片計算調(diào)整后的量化參數(shù)的代碼。
優(yōu)選地,所述至少一個代碼段包括用于基于所述解碼后的圖片的圖片類型確定所述調(diào)整后的量化參數(shù)的代碼。
優(yōu)選地,所述至少一個代碼段包括用于基于所述解碼后的圖片和所述解碼后的圖片的一個或多個參考圖片來確定所述調(diào)整后的量化參數(shù)的代碼。
優(yōu)選地,所述至少一個代碼段包括用于基于所述一個或多個濾波參數(shù)和/或所述調(diào)整后的量化參數(shù)和/或用戶控制信息來為所述解碼后的圖片確定濾波強度的代碼。
優(yōu)選地,所述至少一個代碼段包括用于基于所述確定的濾波強度對所述解碼后的圖片進行濾波的代碼。
優(yōu)選地,所述至少一個代碼段包括用于調(diào)整所述確定的濾波強度以降低宏塊的邊界效應(yīng)和/或分片的邊界效應(yīng)的代碼。
優(yōu)選地,所述至少一個代碼段包括用于基于所述確定的濾波強度來開啟或關(guān)閉所述處理的代碼。
本發(fā)明的上述和其它優(yōu)點、特征和創(chuàng)新之處,以及下述實施例中的細(xì)節(jié),將通過下列
和附圖得到更為清楚的理解。
圖1是依據(jù)本發(fā)明一較佳實施例的示范性AVS CODEC系統(tǒng)的結(jié)構(gòu)示意圖; 圖2是依據(jù)本發(fā)明一較佳實施例的示范性AVS1-P2訪問單元結(jié)構(gòu)的示意圖; 圖3是依據(jù)本發(fā)明一較佳實施例的示范性AVS1-P2解碼器結(jié)構(gòu)的示意圖; 圖4是依據(jù)本發(fā)明一較佳實施例的為AVS視頻計算量化參數(shù)的方法的流程圖; 圖5是依據(jù)本發(fā)明一較佳實施例的應(yīng)用于AVS1-P2視頻的自適應(yīng)邊界強度-決策樹的操作流向示意圖。
具體實施例方式 本發(fā)明涉及一種為AVS1-P2進行自適應(yīng)解塊(adaptive deblocking)的方法和系統(tǒng)。本發(fā)明的多個特征可用于在AVS解碼器中接收編碼比特流。收到的編碼比特流可包括一個或多個圖片處理相關(guān)的濾波參數(shù),以及構(gòu)成圖片的多個宏塊。解碼器可用于解碼每個宏塊,以構(gòu)建一個或多個解碼后的圖片。每個解碼后的圖片可基于從收到的比特流中提取的濾波參數(shù)和對應(yīng)的從各自解碼后的圖片中計算得出的量化參數(shù)來進行處理。可在AVS解碼器中基于解碼后的圖片的類型和相關(guān)聯(lián)的解碼后的圖片中的一個或多個參考圖片來為解碼后的圖片計算調(diào)整后的量化參數(shù)(adj_qp)。處理解碼后的圖片時用到的濾波強度可基于濾波參數(shù)、adj_qp和用戶控制信息來確定。解碼后的圖片可使用確定的濾波強度通過外部環(huán)路解塊濾波器來進行濾波。解碼后的圖片的濾波強度可基于收到的濾波參數(shù)、計算得到的adj_qp和用戶控制信息來自適應(yīng)地調(diào)整,以降低解碼后的圖片的宏塊邊界效應(yīng)和/或分片邊界效應(yīng)。外部環(huán)路解塊濾波器可依據(jù)確定的濾波強度級別來開啟或關(guān)閉。
圖1是依據(jù)本發(fā)明一較佳實施例的示范性AVS CODEC系統(tǒng)100的結(jié)構(gòu)示意圖。如圖1所示,其中展示了AVS編解碼系統(tǒng)100,包括預(yù)處理單元102、AVS編碼器104、AVS解碼器106和包含外部環(huán)路解塊濾波器108a的后處理單元108。
預(yù)處理單元102可包括適當(dāng)?shù)倪壿?、電路?或代碼,用于在編碼之前消除一些相對不明顯的高頻分量,以改善編碼效率,降低視頻編碼處理過程中處理痕跡(artifact)發(fā)生的可能性。
AVS編碼器104可包括適當(dāng)?shù)倪壿?、電路?或代碼,用于使用盡可能少的比特來將視頻流轉(zhuǎn)換為壓縮格式,例如AVS格式,同時保持可以接受的視覺效果。AVS1-P2中的基本編碼單元可以是宏塊。AVS1-P2比特流具有分層結(jié)構(gòu)。通常來說,AVS序列可包括幾個圖片組(GOP),每個圖片組都具有隨機訪問點。GOP和宏塊之間的其它層可以是圖片和分片。AVS序列層可提供到編碼比特流的進入點。
AVS序列層可包括一組系統(tǒng)參數(shù),用于啟動和設(shè)置相應(yīng)的解碼器系統(tǒng)。圖片層可提供視頻幀的編碼表現(xiàn)形式。圖片層可包括包頭,包括必選和可選的參數(shù),還可包括可選的用戶數(shù)據(jù)。AVS指定了多個圖片類型,包括幀間圖片(I圖片)、預(yù)測圖片(P圖片)和插值圖片(B圖片)。分片結(jié)構(gòu)可提供最底層機制,用于在發(fā)生傳輸錯誤時為AVS1-P2比特流重新建立同步。分片頭可包括對應(yīng)相關(guān)聯(lián)宏塊的宏塊級別處理上的信息。例如,例如AVS解碼器106之中的內(nèi)部環(huán)路解塊濾波器的狀態(tài)。每一分片可包括任意數(shù)量的以柵格順序(raster-ordered)排列的宏塊中的行。宏塊可包括量度和色度分量像素,其共同代表16×16區(qū)域的圖片。宏塊層可以使AVS編解碼器中自適應(yīng)性和運動補償?shù)闹饕獑卧?。宏塊頭可包括與編碼模式、運動向量和/或相應(yīng)宏塊的量化參數(shù)(QP)有關(guān)的信息。
AVS1-P2標(biāo)準(zhǔn)之中的內(nèi)部環(huán)路解塊濾波器可用于消除方塊效應(yīng),以改善視頻質(zhì)量。內(nèi)部環(huán)路解塊濾波器可以是非線性1D濾波器,可跨塊選擇性的使用該濾波器以使方塊效應(yīng)變得平滑。可在壓縮后的比特流中以圖片為單位采用顯式方式傳送濾波參數(shù),或者也可由解碼器基于本地條件推算得出,從而可以對濾波強度進行靈活的調(diào)整,以及啟動或關(guān)閉濾波器。
后處理單元108可包括適當(dāng)?shù)倪壿?、電路?或代碼,用于處理解碼后的圖片,并將其轉(zhuǎn)換為LCD輸入格式以進行顯示。后處理單元108可用于通過各種后濾波算法來增強圖片SNR(信噪比)和主觀(subjective)圖片質(zhì)量。在這點上,后處理單元108可包括編碼環(huán)路之外的外部環(huán)路解塊濾波器108a。外部環(huán)路解塊濾波器108a可在重建和顯示宏塊之前使用。外部環(huán)路解塊濾波器108a可用于消除例如8×8塊的邊緣上的可見的塊結(jié)構(gòu),這種塊結(jié)構(gòu)是在進行基于塊的轉(zhuǎn)換編碼和運動估計過程中產(chǎn)生的。外部環(huán)路解塊濾波器108a可自適應(yīng)地調(diào)整,以對宏塊邊界進行自適應(yīng)濾波,或者基于來自AVS解碼器106和/或用戶噪聲降低控制的信息來開啟或者關(guān)閉。
在操作過程中,預(yù)處理單元102可從例如攝像機或者其它視頻源接收視頻比特流。預(yù)處理單元102可用于通過例如在進行編碼之前移除一些相對不明顯的高頻分量來處理收到的比特流,以改善編碼效率,并降低視頻編碼處理過程中產(chǎn)生的處理痕跡。AVS編碼器104可用于將預(yù)處理的比特流轉(zhuǎn)換為AVS-P2比特流。視頻數(shù)據(jù)處理參數(shù)例如環(huán)路濾波關(guān)閉(loop_filter_disable)(用于指示需要啟動還是關(guān)閉內(nèi)部環(huán)路解塊濾波器108a)和分片邊界信息(slice_boundary_info)(用于指示像素是否位于相關(guān)圖片的分片邊界上)可包含在AVS1-P2比特流中,發(fā)往AVS解碼器106。
AVS解碼器108可從收到的AVS1-P2比特流中提取有關(guān)的內(nèi)部環(huán)路解塊濾波參數(shù),例如loop_filter_disable和slice_boundary_info。AVS解碼器108將收到的1-P2比特流處理和轉(zhuǎn)換為解碼后的圖片。調(diào)整后的AP參數(shù)(adi_qp),用于指示多少解碼后的圖片的AP需要調(diào)整,其可在AVS解碼器106中為每一解碼后的圖片來計算。各種參數(shù)和/或信號例如loop_filter_disable、silce_boundary_info和算得的adi_qp可與解碼后的圖片一起發(fā)往后處理單元108。收到的參數(shù)例如loop_filter_disable、slice_boundary_info和算得的adi_qp可用于控制后處理單元108的濾波強度。此外,用戶還可控制后處理單元108的濾波強度,這是通過經(jīng)由對應(yīng)設(shè)備的用戶接口發(fā)送用戶噪聲降低控制參數(shù)usr_bnr來實現(xiàn)的。后處理單元108可通過外部環(huán)路解塊濾波108a來處理解碼后的圖片,并將生成的比特流轉(zhuǎn)換為LCD格式以進行顯示。
圖2是依據(jù)本發(fā)明一較佳實施例的示范性AVS1-P2訪問單元結(jié)構(gòu)的示意圖。如圖2所示,其中展示了AVS訪問點(AU)200,包括序列頭(SH)202、圖片頭204、分片頭206和宏塊解碼208。
序列頭202包括與圖片序列有關(guān)的信息,并可應(yīng)用于一系列連續(xù)的編碼的視頻圖片。序列頭202可包括一些參數(shù),例如初始化AVS編碼器106、同步AVS編碼器106以及解碼收到的解碼比特流所需的比特率和采樣率。
圖片頭206可包括模塊參數(shù)例如AVS編解碼器中的loop_filter_disable。圖片頭204中的信息可在解碼整個圖片的過程中一直保持不變。
分片頭206可包括處理與分片有關(guān)的宏塊時需要的信息。分片頭206中的信息可包括內(nèi)部解塊濾波參數(shù)例如slice_boundary_info。
為了對AVS1-P2比特流中的圖片進行解碼,AVS編碼器106可從收到的圖片中提取包含的內(nèi)部解碼濾波參數(shù)例如圖片頭204之中的loop_filter_disable和分片頭206之中的slice_boundary_info,并計算當(dāng)前圖片調(diào)整后的QP(adj_qp)。adj_qp可基于圖片頭204、分片頭206和需要在宏塊解碼208中解碼的多個宏塊中的信息來計算。提取的loop_filter_disable和slice_boundary_info將與計算得到的adj_qp一起發(fā)往后處理單元108,以便對相關(guān)聯(lián)宏塊的邊界和/或解碼后的圖片中的分片進行自適應(yīng)的外部解塊濾波。
圖3是依據(jù)本發(fā)明一較佳實施例的示范性AVS1-P2解碼器結(jié)構(gòu)的示意圖。如圖3所示,其中展示了AVS解碼器結(jié)構(gòu)300,其中包含AVS解碼器106、DRAM(動態(tài)隨機訪問存儲器)302、外部環(huán)路解塊器304和處理器306。
DRAM 302可包括適當(dāng)?shù)倪壿?、電路?或代碼,用于存儲信息,例如AVS解碼器106可能使用的可執(zhí)行指令和數(shù)據(jù)。可執(zhí)行指令可包括一些算法,用于自動或者在收到請求之后存儲實時視頻流。DRAM 302可用于輸出AVS解碼器106和/或外部環(huán)路解塊器304所請求的不同長度的示范性視頻流。DRAM302可包括低延遲非易失性存儲器例如閃存和/或其它適當(dāng)?shù)碾娮訑?shù)據(jù)存儲器。
外部環(huán)路解塊器304可包括適當(dāng)?shù)倪壿?、電路?或代碼,用于消除與來自AVS解碼器106的解碼后的圖片有關(guān)的塊噪聲。外部環(huán)路解塊器304的外部環(huán)路解塊濾波的強度可由AVS解碼器106和用戶自適應(yīng)地控制。例如,外部環(huán)路解塊器304可使用分片邊界上的信息、塊結(jié)構(gòu)上的信息、跨塊應(yīng)用到圖片像素梯度的像素梯度(gradient)和跳變上的信息和量化參數(shù)的狀態(tài)上的信息。外部環(huán)路解塊器304可基于來自AVS解碼器106和用戶的信息靈活的修改濾波強度或者甚至啟動/關(guān)閉濾波器。外部環(huán)路解塊器304可用于向DRAM302讀取/寫入視頻數(shù)據(jù)。
處理器306可包括適當(dāng)?shù)倪壿?、電路?或代碼,用于提供處理從用戶收到的接收信號時所需的控制指令,以及向外部環(huán)路解塊器304提供信息,以調(diào)整濾波強度或者開啟或關(guān)閉濾波器。
在操作過程中,對于進站AVS1-P2比特流,AVS解碼器106可從收到的AVS1-P2比特流中提取濾波參數(shù)例如loop_filter_disable和slice_boundary_info信息和計算得到的相關(guān)的adj_qp。AVS解碼器108可將收到的AVS1-P2比特流處理和轉(zhuǎn)換為一個或多個解碼后的圖片(重建圖片)。每一解碼后的圖片中的分片以及相關(guān)的分片信息例如分片中第一宏塊(MB)的宏塊地址,將發(fā)往DRAM 302以進行存儲。DRAM 302可用于在等到解碼后的圖片的所有分片到達之后,再開始后處理該圖片。圖片后處理過程中使用的濾波參數(shù)例如loop_filter_disable和slice_boundary_info可在AVS解碼器106中從編碼比特流中提取。AVS解碼器106可為每一解碼后的圖片計算adj_qp,并將其與提取的loop_filter_disable和slice_boundary_info一起發(fā)往外部環(huán)路解塊器304。外部環(huán)路解塊器304的濾波強度可通過使用處理器306發(fā)送user-bnr和/或adaptive-filtering-flag來進行控制。外部環(huán)路解塊器304可用于從DRAM 302中讀取解碼后的圖片以進行后處理。外部環(huán)路解塊器304可使用來自AVS解碼器106和通過處理器306得到的用戶控制參數(shù)的信息來對解碼后的圖片的塊邊界進行自適應(yīng)濾波。濾波后的圖片可發(fā)往DRAM 302進行存儲,以便進行后續(xù)的處理和顯示。
圖4是依據(jù)本發(fā)明一較佳實施例的為AVS視頻計算量化參數(shù)的方法的流程圖。如圖4所示,其中展示了基于圖片類型計算adj_qp的過程。表1展示了處理過程中可能用到的示范性參數(shù)。
表1自適應(yīng)外部環(huán)路解塊濾波參數(shù) 計算adj_qp的示范性步驟可開始于步驟402,在初始化AVS解碼器106的過程中,參數(shù)B_adj_only和p_adj-forwarding和alpha將被設(shè)置。參數(shù)B_adj_only可設(shè)置為二進制的0或1。參數(shù)B_adj_only只有在以下情況下進行調(diào)整,即只有對B圖片進行QP調(diào)整(計算adj_qp)同時avg_qp_cur參數(shù)直接應(yīng)用于I圖片和B圖片的情況下。參數(shù)p_adj-forwarding可控制是否將參考圖片的adj_qp或avg_qp_cur值用于為隨后的參考圖片生成調(diào)整后的QP值。換句話說,當(dāng)參數(shù)p_adj-forwarding被設(shè)置時,P圖片的QP的調(diào)整將開始進行,并用作后續(xù)圖片的“參考圖片的QP”。參數(shù)alpha為0到1范圍內(nèi)的浮點數(shù),代表例如2抽頭(two-tap)IIR濾波器的系數(shù),該濾波器用于計算adj_qp,該參數(shù)用于對從一張圖片到另一張圖片的adj_qp的較大波動進行平滑處理。
在步驟404,在每一視頻序列的開始處,初始化參數(shù)adj_qp_pre和adj_qp_ref,這是通過分別將adj_qp_pr=0和adj_qp_ref=0來進行的。參數(shù)adj_qp_pre可用于指示最近顯示的圖片的調(diào)整后的QP,參數(shù)adj_qp_ref可用于展示當(dāng)前P圖片的最近的參考圖片的平均QP。
在步驟406,將為當(dāng)前圖片計算參數(shù)adj_qp。參數(shù)adj_qp可使用圖片的加權(quán)平均后的adj_qp_cur和adj_qp_ref來計算。
圖片的avg_qp_cur可使用下列關(guān)系來計算avg_qp_cur=每一宏塊的Qp的和/total_mb_cnt,其中QP為圖片中每一宏塊的平均QP。
參數(shù)avg_qp_ref可依據(jù)圖片類型來生成。對于I圖片,avg_qp_ref可設(shè)置成與圖片的avg_qp_cur相等。對于P圖片,avg_qp_ref可取最近參考圖片(I或P圖片)的avg_qp_cur的值。對于B圖片,avg_qp_ref可取最近解碼的兩個參考圖片的avg_qp_cur值的算術(shù)平均值。理想情況下,依據(jù)運動向量的方向(前進/后退/雙向),B圖片的avg_qp_ref為參考I和P圖片的的加權(quán)平均值,然而,若I和P圖片在多數(shù)情況下非常接近時,簡單的算術(shù)平均值可以作為可行的近似解。若在開放GOP(圖片組)中第一連續(xù)B圖片緊跟第一編碼I幀的情況下,這些B圖片的avg_qp_ref可設(shè)置為第一解碼I幀的avg_qp_cur,這是因為當(dāng)前可能沒有可用的P圖片可作為當(dāng)前GOP的參考。
步驟406的操作將對與在步驟406中收到的GOP相關(guān)聯(lián)的每一圖片重復(fù)進行。在步驟406之后,將對下一新的GOP執(zhí)行步驟404。
圖5是依據(jù)本發(fā)明一較佳實施例的應(yīng)用于AVS1-P2視頻的自適應(yīng)邊界強度-決策樹的操作流向示意圖。如圖5所示,示范性步驟可開始于步驟502,確定是否設(shè)置user_bnr。user_bnr為用戶塊噪聲降低控制參數(shù),其可設(shè)置為不同的值如0、1、2,以便指示外部環(huán)路解塊器304的不同濾波強度級別。將user_bnr設(shè)置為0或1或2可分別對應(yīng)0強度外部環(huán)路解塊濾波(關(guān)閉外部環(huán)路解塊器304)、低強度外部環(huán)路解塊濾波和高強度外部環(huán)路解塊濾波。若在步驟502中將user_bnr設(shè)置為0,則外部環(huán)路解塊器304將被關(guān)閉,因此濾波強度可設(shè)置為0。在步驟502,若user_bnr設(shè)置為大于0,則在步驟504,確定是否設(shè)置adaptive_filtering_flag。若設(shè)置adaptive_filtering_flag,則在步驟506,確定是否設(shè)置loop_filter_flag。
若設(shè)置loop_filter_flag,則在步驟508,確定圖片中正在進行的像素是否跨越分片邊界,以及外部環(huán)路解塊器304是否進行外部環(huán)路水平濾波。若是,則在步驟510,將外部環(huán)路解塊器304的濾波強度設(shè)置為f(adj_qp,user_bnr)+s,其中f()為adj_qp和user_bnr的函數(shù),s為正常數(shù)??梢罁?jù)具體的實現(xiàn)來選擇user_bnr、f()和s。在步驟504,若沒有對adaptive_filtering_flag進行設(shè)置,則在步驟514,將外部環(huán)路解塊器304的濾波強度設(shè)置為f(adj_qp,user_bnr)。在步驟506,若loop_filter_flag未設(shè)置,則在步驟516,確定圖片中當(dāng)前正在進行的像素是否跨越分片邊界,以及外部環(huán)路解塊器304是否執(zhí)行外部環(huán)路水平濾波。若圖片中當(dāng)前正在進行的像素跨越分片邊界和/或外部環(huán)路解塊器304執(zhí)行外部環(huán)路水平濾波,則在步驟520,外部環(huán)路解塊器304的濾波強度可設(shè)置為f(adj_qp,user_bnr)+s。在步驟516,若正在進行的像素未跨越分片邊界和/外部環(huán)路解塊器304不執(zhí)行水平濾波,則在步驟518,外部環(huán)路解塊器304的濾波強度將設(shè)置為f(adj_qp,user_bnr)。在步驟508,若正在進行的像素未跨越分片的邊界和/或外部環(huán)路解塊器304不執(zhí)行水平濾波,則在步驟522,外部環(huán)路解塊器304的濾波強度將設(shè)置為0。
圖5所示的過程可展示如何使用外部環(huán)路解塊器304來基于用戶噪聲降低控制以及與解碼后的圖片有關(guān)的位置信息(例如內(nèi)部環(huán)路解塊濾波器的狀態(tài)、分片邊界信息(slice_boundary_info)和所需的圖片量化參數(shù)調(diào)整)對解碼后的圖片的像素進行自適應(yīng)濾波。例如,外部環(huán)路解塊器304可基于對user_bnr的設(shè)置來開啟或關(guān)閉。當(dāng)user_bnr設(shè)置為0時,外部環(huán)路解塊器304將關(guān)閉,因此強度將設(shè)置為0。當(dāng)adaptive_filter_flag設(shè)置為例如1或2時,解碼后的圖片的所有邊界將使用強度f(adj_qp,user_brn)(圖5未示出)進行濾波,或者基于內(nèi)部環(huán)路解塊濾波器的狀態(tài)來確定濾波強度。例如,若adaptive_filter_flag進行了設(shè)置,則濾波強度將依據(jù)loop_filter_flag和slice_boundary_info進行自適應(yīng)設(shè)置。如果loop_filter_disable未進行設(shè)置,則內(nèi)部環(huán)路解塊濾波器將開啟,因此只有分片邊界將使用外部環(huán)路解塊器304進行濾波。由于分片邊界可能需要更強的濾波,所以強度值可設(shè)置為f(adj_qp,user_brn)+s,其中s為正常數(shù)值。若loop_filter_disable進行了設(shè)置,則內(nèi)部環(huán)路解塊濾波器將關(guān)閉,因此所有塊邊界將進行濾波,解碼后的圖片中的分片邊界將使用比解碼后的圖片其它邊界更強的濾波強度進行濾波。
圖5中描述的自適應(yīng)強度決策方法可應(yīng)用任何多級解塊濾波算法例如H.264之中。
本發(fā)明提供了一種為AVS1-P2進行自適應(yīng)解塊的方法和系統(tǒng)。依據(jù)本發(fā)明的各個實施例,AVS解碼器106可接收來自AVS編碼器104的編碼比特流。收到的編碼比特流可包括一個或多個嵌入的濾波參數(shù),例如圖片頭204中的inner-loop-flag,分片頭206中的slice_boundary_info,以及宏塊208中的構(gòu)建圖片的多個宏塊。AVS解碼器106可用于對收到的比特流中的每一宏塊進行解碼,以構(gòu)建/生成解碼后的圖片。每一解碼后的圖片將在后處理單元108中基于從收到的比特流中提取的濾波參數(shù)和從解碼后的圖片中算得的對應(yīng)的量化參數(shù)來進行處理。解碼后的圖片的調(diào)整后的量化參數(shù)(adj_qp)可在AVS解碼器106中計算。adj_qp可指示與對應(yīng)的解碼后的圖片有關(guān)的噪聲級別。adj_qp可基于輸入解碼后的圖片的類型和圖4中描述的輸入解碼后的圖片的相關(guān)聯(lián)的一個或多個參考圖片來確定或計算。處理每一解碼后的圖片所需的濾波強度可基于從收到的比特流中提取的濾波參數(shù)adj_qp和圖5所述的用戶控制信息例如user_bnr來確定。每一解碼后的圖片可使用對應(yīng)的確定的濾波強度通過外部環(huán)路解塊濾波器108進行濾波。解碼器的濾波強度可基于收到的濾波參數(shù)adj_qp和用戶信息來進行自適應(yīng)的調(diào)整,以降低解碼后的圖片的宏塊邊界效應(yīng)和/分片邊界效應(yīng)。外部環(huán)路解塊濾波器108a可基于確定的濾波強度級來開啟或關(guān)閉。例如,外部環(huán)路解塊濾波器108a可在確定的濾波強度級為非零或0時開啟或關(guān)閉。
本發(fā)明的另一實施例可提供一種機器可讀存儲器,其中存儲有計算機程序,該計算機程序包括用于處理數(shù)據(jù)的至少一個代碼段,所述至少一個代碼段可由機器執(zhí)行,以控制機器執(zhí)行本文描述的步驟以便為AVS1-P2進行自適應(yīng)解塊。
本發(fā)明可以通過硬件、軟件,或者軟、硬件結(jié)合來實現(xiàn)。本發(fā)明可以在至少一個計算機系統(tǒng)中以集中方式實現(xiàn),或者由分布在幾個互連的計算機系統(tǒng)中的不同部分以分散方式實現(xiàn)。任何可以實現(xiàn)所述方法的計算機系統(tǒng)或其它設(shè)備都是可適用的。常用軟硬件的結(jié)合可以是安裝有計算機程序的通用計算機系統(tǒng),通過安裝和執(zhí)行所述程序控制計算機系統(tǒng),使其按所述方法運行。在計算機系統(tǒng)中,利用處理器和存儲單元來實現(xiàn)所述方法。
本發(fā)明的實施例可作為板級產(chǎn)品(board level product)來實施,如單個芯片、專用集成電路(ASIC)、或者作為單獨的部件以不同的集成度與系統(tǒng)的其它部分一起集成在單個芯片上。系統(tǒng)的集成度主要取決于速度和成本考慮?,F(xiàn)代處理器品種繁多,使得能夠采用目前市場上可找到的處理器。選擇性的,如果處理器可用作ASIC核心或邏輯模塊,則目前市場上可找到的處理器可以作為ASIC器件的一部分,帶有各種功能的固件。
本發(fā)明還可以通過計算機程序產(chǎn)品進行實施,所述程序包含能夠?qū)崿F(xiàn)本發(fā)明方法的全部特征,當(dāng)其安裝到計算機系統(tǒng)中時,通過運行,可以實現(xiàn)本發(fā)明的方法。本申請文件中的計算機程序所指的是可以采用任何程序語言、代碼或符號編寫的一組指令的任何表達式,該指令組使系統(tǒng)具有信息處理能力,以直接實現(xiàn)特定功能,或在進行下述一個或兩個步驟之后,a)轉(zhuǎn)換成其它語言、代碼或符號;b)以不同的格式再現(xiàn),實現(xiàn)特定功能。
本發(fā)明是通過幾個具體實施例進行說明的,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,在不脫離本發(fā)明范圍的情況下,還可以對本發(fā)明進行各種變換及等同替代。另外,針對特定情形或具體情況,可以對本發(fā)明做各種修改,而不脫離本發(fā)明的范圍。因此,本發(fā)明不局限于所公開的具體實施例,而應(yīng)當(dāng)包括落入本發(fā)明權(quán)利要求范圍內(nèi)的全部實施方式。
權(quán)利要求
1、一種處理數(shù)據(jù)的方法,其特征在于,包括,
接收比特流,其中包括一個或多個濾波參數(shù)和構(gòu)成圖片的多個宏塊;
解碼所述多個宏塊,生成解碼后的圖片;
基于所述一個或多個濾波參數(shù)和從所述生成的解碼后的圖片中計算得出的一個或多個參數(shù)來處理所述解碼后的圖片。
2、根據(jù)權(quán)利要求1所述的方法,其特征在于,所述比特流為AVS1-P2比特流或者H.264比特流。
3、根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括為所述解碼后的圖片計算調(diào)整后的量化參數(shù)。
4、根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括基于所述解碼后的圖片的圖片類型確定所述調(diào)整后的量化參數(shù)。
5、根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括基于所述解碼后的圖片和所述解碼后的圖片的一個或多個參考圖片來確定所述調(diào)整后的量化參數(shù)。
6、根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括基于所述一個或多個濾波參數(shù)和/或所述調(diào)整后的量化參數(shù)和/或用戶控制信息來為所述解碼后的圖片確定濾波強度。
7、一種處理數(shù)據(jù)的系統(tǒng),其特征在于,包括
一個或多個處理器,用于接收比特流,所述比特流包括一個或多個濾波參數(shù)和構(gòu)成圖片的多個宏塊;
所述一個或多個處理器用于解碼所述多個宏塊,生成解碼后的圖片;
所述一個或多個處理器用于基于所述一個或多個濾波參數(shù)和從所述生成的解碼后的圖片中計算得出的一個或多個參數(shù)來處理所述解碼后的圖片。
8、根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述比特流為AVS1-P2比特流或者H.264比特流。
9、根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述一個或多個處理器用于為所述解碼后的圖片計算調(diào)整后的量化參數(shù)。
10、一種機器可讀存儲器,其中存儲有計算機程序,該計算機程序包括用于處理數(shù)據(jù)的至少一個代碼段,其特征在于,所述至少一個代碼段可由機器執(zhí)行,以控制機器執(zhí)行如下步驟
接收比特流,其中包括一個或多個濾波參數(shù)和構(gòu)成圖片的多個宏塊;
解碼所述多個宏塊,生成解碼后的圖片;
基于所述一個或多個濾波參數(shù)和從所述生成的解碼后的圖片中計算得出的一個或多個參數(shù)來處理所述解碼后的圖片。
全文摘要
本發(fā)明提供了一種為AVS1-P2進行自適應(yīng)解塊的方法和系統(tǒng)。AVS解碼器可接收接收比特流,其中包括一個或多個濾波參數(shù)和構(gòu)成圖片的多個宏塊;解碼所述多個宏塊,生成解碼后的圖片;基于所述一個或多個濾波參數(shù)和從所述生成的解碼后的圖片中計算得出的調(diào)整后的量化參數(shù)(adj_qp)來處理所述解碼后的圖片。解碼后的圖片的adj_qp可基于解碼后的圖片和解碼后的圖片的相關(guān)聯(lián)的參考圖片的類型來確定。可基于濾波參數(shù)、分片邊界信息、adj_qp和用戶控制信息來確定和/或調(diào)整濾波強度。解碼后的圖片可通過外部環(huán)路解塊濾波器使用確定的濾波強度來進行濾波,以降低解碼后的圖片的宏塊和/或分片邊界效應(yīng)。外部環(huán)路解塊濾波器可基于確定的濾波強度級來開啟或關(guān)閉。
文檔編號H04N7/26GK101610416SQ200910152369
公開日2009年12月23日 申請日期2009年6月22日 優(yōu)先權(quán)日2008年6月20日
發(fā)明者邁克爾·楊, 謝孟·陳 申請人:美國博通公司