基于絕對(duì)變換差的總和的用于視頻編碼的幀內(nèi)速率控制的制作方法
【專利說(shuō)明】
[0001] 本申請(qǐng)案請(qǐng)求2013年4月8日申請(qǐng)的第61/809, 846號(hào)美國(guó)臨時(shí)申請(qǐng)案的權(quán)利, 其全部?jī)?nèi)容以引用的方式并入本文中。
技術(shù)領(lǐng)域
[0002] 本發(fā)明涉及視頻編碼。
【背景技術(shù)】
[0003] 數(shù)字視頻能力可以并入到多種多樣的裝置中,包含數(shù)字電視、數(shù)字直播系統(tǒng)、無(wú)線 廣播系統(tǒng)、個(gè)人數(shù)字助理(PDA)、膝上型或桌上型計(jì)算機(jī)、平板計(jì)算機(jī)、電子圖書閱讀器、數(shù) 碼相機(jī)、數(shù)字記錄裝置、數(shù)字媒體播放器、視頻游戲裝置、視頻游戲控制臺(tái)、蜂窩式或衛(wèi)星無(wú) 線電電話(所謂的"智能電話")、視頻電話會(huì)議裝置、視頻流式傳輸裝置及類似者。數(shù)字視 頻裝置實(shí)施視頻壓縮技術(shù),例如,由MPEG-2、MPEG-4、ITU-T H. 263、ITU-T H. 264/MPEG-4第 10部分高級(jí)視頻譯碼(AVC)定義的標(biāo)準(zhǔn)、目前正在開發(fā)的高效率視頻譯碼(HEVC)標(biāo)準(zhǔn)及此 類標(biāo)準(zhǔn)的擴(kuò)展中所描述的視頻壓縮技術(shù)。視頻裝置通過實(shí)施此類視頻壓縮技術(shù)可以更有效 地發(fā)射、接收、編碼、解碼及/或存儲(chǔ)數(shù)字視頻信息。
[0004] 視頻壓縮技術(shù)執(zhí)行空間(圖片內(nèi))預(yù)測(cè)及/或時(shí)間(圖片間)預(yù)測(cè)來(lái)減少或去除 視頻序列中固有的冗余。對(duì)于基于塊的視頻譯碼來(lái)說(shuō),視頻切片(即,視頻幀或視頻幀的一 部分)可分割成視頻塊,視頻塊也可被稱作CTU、譯碼單元(CU)及/或譯碼節(jié)點(diǎn)。使用相對(duì) 于同一圖片中的相鄰塊中的參考樣本的空間預(yù)測(cè)對(duì)圖片的經(jīng)幀內(nèi)譯碼(I)切片中的視頻 塊進(jìn)行編碼。圖片的經(jīng)幀間譯碼(P或B)切片中的視頻塊可使用相對(duì)于同一圖片中的相鄰 塊中的參考樣本的空間預(yù)測(cè)或相對(duì)于其它參考圖片中的參考樣本的時(shí)間預(yù)測(cè)。圖片可被稱 作幀,且參考圖片可被稱為參考幀。
[0005] 空間或時(shí)間預(yù)測(cè)導(dǎo)致對(duì)塊的預(yù)測(cè)塊進(jìn)行譯碼。殘余數(shù)據(jù)表示待譯碼原始?jí)K與預(yù)測(cè) 性塊之間的像素差。經(jīng)幀間譯碼塊根據(jù)指向形成預(yù)測(cè)塊的參考樣本塊的運(yùn)動(dòng)向量和指示經(jīng) 譯碼塊與預(yù)測(cè)塊之間的差的殘余數(shù)據(jù)來(lái)編碼。經(jīng)幀內(nèi)譯碼塊根據(jù)幀內(nèi)譯碼模式和殘余數(shù)據(jù) 來(lái)編碼。為了進(jìn)一步壓縮,可將殘余數(shù)據(jù)從像素域變換到變換域,從而產(chǎn)生殘余變換系數(shù), 接著可對(duì)殘余變換系數(shù)進(jìn)行量化??蓲呙枳畛醪贾脼槎S陣列的經(jīng)量化變換系數(shù),以便產(chǎn) 生變換系數(shù)的一維向量,且可應(yīng)用熵譯碼以實(shí)現(xiàn)更多壓縮。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明描述用于針對(duì)編碼視頻數(shù)據(jù)的經(jīng)幀內(nèi)預(yù)測(cè)幀的位速率控制的技術(shù)。在本發(fā) 明的一個(gè)實(shí)例中,可使用目標(biāo)位速率及復(fù)雜度度量計(jì)算位速率控制參數(shù)。在一個(gè)實(shí)例中,用 經(jīng)幀內(nèi)譯碼幀的絕對(duì)變換差總和(SATD)計(jì)算來(lái)計(jì)算所述復(fù)雜度度量。
[0007] 在本發(fā)明的一個(gè)實(shí)例中,一種用于視頻編碼中的速率控制的方法包括:基于對(duì)視 頻數(shù)據(jù)幀中每一塊的SATD計(jì)算確定視頻數(shù)據(jù)幀的復(fù)雜度度量,其中所述視頻數(shù)據(jù)幀將使 用幀內(nèi)預(yù)測(cè)編碼;基于所述復(fù)雜度度量及目標(biāo)位速率確定速率控制參數(shù);基于所確定的速 率控制參數(shù)確定幀內(nèi)預(yù)測(cè)模式;及使用所確定的幀內(nèi)預(yù)測(cè)模式編碼視頻數(shù)據(jù)幀。
[0008] 在本發(fā)明的另一實(shí)例中,一種經(jīng)配置以在視頻編碼過程中執(zhí)行速率控制的設(shè)備包 括:存儲(chǔ)器,其經(jīng)配置以存儲(chǔ)視頻數(shù)據(jù)幀;及視頻編碼器,其經(jīng)配置以:基于對(duì)視頻數(shù)據(jù)幀 中的每一塊的SATD計(jì)算確定視頻數(shù)據(jù)幀的復(fù)雜度度量,其中所述視頻數(shù)據(jù)幀將使用幀內(nèi) 預(yù)測(cè)編碼;基于所述復(fù)雜度度量及目標(biāo)位速率確定速率控制參數(shù);基于所確定的速率控制 參數(shù)確定幀內(nèi)預(yù)測(cè)模式;及使用所確定的幀內(nèi)預(yù)測(cè)模式編碼視頻數(shù)據(jù)幀。
[0009] 在本發(fā)明的另一實(shí)例中,一種經(jīng)配置以在視頻編碼過程中執(zhí)行速率控制的設(shè)備包 括:用于基于對(duì)視頻數(shù)據(jù)幀中的每一塊的SATD計(jì)算確定視頻數(shù)據(jù)幀的復(fù)雜度度量的裝置, 其中將使用幀內(nèi)預(yù)測(cè)編碼所述視頻數(shù)據(jù)幀;用于基于所述復(fù)雜度度量及目標(biāo)位速率確定速 率控制參數(shù)的裝置;用于基于所確定的速率控制參數(shù)確定幀內(nèi)預(yù)測(cè)模式的裝置;及用于使 用所確定的幀內(nèi)預(yù)測(cè)模式編碼視頻數(shù)據(jù)幀的裝置。
[0010] 在另一實(shí)例中,本發(fā)明描述一種計(jì)算機(jī)可讀存儲(chǔ)媒體,其存儲(chǔ)在被執(zhí)行時(shí)引起經(jīng) 配置以編碼視頻數(shù)據(jù)的裝置的一或多個(gè)處理器執(zhí)行以下操作的指令:基于對(duì)視頻數(shù)據(jù)幀中 每一塊的SATD計(jì)算確定視頻數(shù)據(jù)幀的復(fù)雜度度量,其中將使用幀內(nèi)預(yù)測(cè)編碼所述視頻數(shù) 據(jù)幀;基于所述復(fù)雜度度量及目標(biāo)位速率確定速率控制參數(shù);基于所確定的速率控制參數(shù) 確定幀內(nèi)預(yù)測(cè)模式;及使用所確定的幀內(nèi)預(yù)測(cè)模式編碼視頻數(shù)據(jù)幀。
[0011] 在附圖和下文描述中闡述本發(fā)明的一或多個(gè)實(shí)例的細(xì)節(jié)。本發(fā)明的其它特征、目 標(biāo)和優(yōu)點(diǎn)將從所述描述和圖式以及權(quán)利要求書而顯而易見。
【附圖說(shuō)明】
[0012] 圖1為說(shuō)明可利用本發(fā)明中描述的技術(shù)的實(shí)例視頻編碼及解碼系統(tǒng)的框圖。
[0013] 圖2為說(shuō)明可實(shí)施本發(fā)明中描述的技術(shù)的實(shí)例視頻編碼器的框圖。
[0014] 圖3為說(shuō)明可實(shí)施本發(fā)明中描述的技術(shù)的實(shí)例速率控制單元的框圖。
[0015] 圖4為說(shuō)明實(shí)例視頻解碼器的框圖。
[0016] 圖5為說(shuō)明本發(fā)明的實(shí)例方法的流程圖。
【具體實(shí)施方式】
[0017] 本發(fā)明描述用于視頻編碼過程中的位速率控制的技術(shù)。用于經(jīng)幀內(nèi)譯碼幀的速率 控制的一些先前解決方案僅依賴于目標(biāo)位速率來(lái)確定速率控制參數(shù)。但是,此類技術(shù)在當(dāng) 譯碼具有不同復(fù)雜度的幀內(nèi)幀時(shí)維持目標(biāo)位速率方面缺乏精確度。本發(fā)明提出用于幀內(nèi)幀 的速率控制技術(shù),其中使用幀內(nèi)幀的復(fù)雜度度量確定速率控制參數(shù)。在一個(gè)實(shí)例中,使用對(duì) 幀內(nèi)幀的絕對(duì)變換差總和(SATD)計(jì)算來(lái)確定所述復(fù)雜度度量。
[0018] 圖1為說(shuō)明可利用本發(fā)明中描述的幀內(nèi)速率控制技術(shù)的實(shí)例視頻編碼及解碼系 統(tǒng)10的框圖。如圖1中所展示,系統(tǒng)10包含源裝置12,其產(chǎn)生稍后由目的地裝置14解碼 的經(jīng)編碼視頻數(shù)據(jù)。源裝置12及目的地裝置14可包括多種多樣的裝置中的任一者,包含 桌上型計(jì)算機(jī)、筆記型(即,膝上型)計(jì)算機(jī)、平板計(jì)算機(jī)、機(jī)頂盒、電話手持機(jī)(例如所謂 的"智能"電話)、所謂的"智能"平板計(jì)算機(jī)、電視機(jī)、相機(jī)、顯示裝置、數(shù)字媒體播放器、視 頻游戲控制臺(tái)、視頻流式傳輸裝置或類似者。在一些情況下,源裝置12及目的地裝置14可 經(jīng)裝備以用于無(wú)線通信。
[0019] 目的地裝置14可通過鏈路16接收待解碼的經(jīng)編碼視頻數(shù)據(jù)。鏈路16可包括能 夠?qū)⒔?jīng)編碼視頻數(shù)據(jù)從源裝置12移動(dòng)到目的地裝置14的任何類型的媒體或裝置。在一個(gè) 實(shí)例中,鏈路16可包括使得源裝置12能夠?qū)崟r(shí)地將經(jīng)編碼視頻數(shù)據(jù)直接發(fā)射到目的地裝 置14的通信媒體。經(jīng)編碼視頻數(shù)據(jù)可根據(jù)通信標(biāo)準(zhǔn)(例如,無(wú)線通信協(xié)議)來(lái)調(diào)制,并且 被發(fā)射到目的地裝置14。通信媒體可包括任何無(wú)線或有線通信媒體,例如射頻(RF)頻譜或 一或多個(gè)物理發(fā)射線路。通信媒體可形成基于包的網(wǎng)絡(luò)(例如局域網(wǎng)、廣域網(wǎng)或全球網(wǎng)絡(luò), 例如因特網(wǎng))的部分。通信媒體可包含路由器、交換器、基站或可用于促進(jìn)從源裝置12到 目的地裝置14的通信的任何其它裝備。
[0020] 替代地,可將經(jīng)編碼數(shù)據(jù)從輸出接口 22輸出到存儲(chǔ)裝置32。類似地,可通過輸入 接口從存儲(chǔ)裝置32存取經(jīng)編碼數(shù)據(jù)。存儲(chǔ)裝置32可包含多種分布式或本地存取的數(shù)據(jù)存 儲(chǔ)媒體中的任一者,例如硬盤驅(qū)動(dòng)器、藍(lán)光光盤、DVD、CD-ROM、快閃存儲(chǔ)器、易失性或非易失 性存儲(chǔ)器或用于存儲(chǔ)經(jīng)編碼視頻數(shù)據(jù)的任何其它合適數(shù)字存儲(chǔ)媒體。在另一實(shí)例中,存儲(chǔ) 裝置32可對(duì)應(yīng)于文件服務(wù)器或可保持源裝置12產(chǎn)生的經(jīng)編碼視頻的另一中間存儲(chǔ)裝置。 目的地裝置14可經(jīng)由流式傳輸或下載從存儲(chǔ)裝置32存取所存儲(chǔ)的視頻數(shù)據(jù)。文件服務(wù)器 可為能夠存儲(chǔ)經(jīng)編碼視頻數(shù)據(jù)并將經(jīng)編碼視頻數(shù)據(jù)發(fā)射到目的地裝置14的任何類型服務(wù) 器。實(shí)例文件服務(wù)器包含網(wǎng)絡(luò)服務(wù)器(例如,用于網(wǎng)站)、FTP服務(wù)器、網(wǎng)絡(luò)附接存儲(chǔ)(NAS) 裝置或本地磁盤驅(qū)動(dòng)器。目的地裝置14可通過任何標(biāo)準(zhǔn)數(shù)據(jù)連接(包含因特網(wǎng)連接)來(lái) 存取經(jīng)編碼視頻數(shù)據(jù)。此連接可包含適合于存取存儲(chǔ)在文件服務(wù)器上的經(jīng)編碼視頻數(shù)據(jù)的 無(wú)線信道(例如,Wi-Fi連接)、有線連接(例如,DSL、電纜調(diào)制解調(diào)器等)或兩者的組合。 經(jīng)編碼視頻數(shù)據(jù)從存儲(chǔ)裝置32的發(fā)射可為流式傳輸發(fā)射、下載發(fā)射或兩者的組合。
[0021] 本發(fā)明的用于幀內(nèi)速率控制的技術(shù)不必限于無(wú)線應(yīng)用或設(shè)定。用于幀內(nèi)速率控制 的所述技術(shù)可應(yīng)用于視頻譯碼以支持多種多媒體應(yīng)用中的任一者,例如空中電視廣播、有 線電視發(fā)射、衛(wèi)星電視發(fā)射、流式傳輸視頻發(fā)射(例如,通過因特網(wǎng))、編碼數(shù)字視頻以供存 儲(chǔ)于數(shù)據(jù)存儲(chǔ)媒體上、解碼存儲(chǔ)于數(shù)據(jù)存儲(chǔ)媒體上的數(shù)字視頻,或其它應(yīng)用。在一些實(shí)例 中,系統(tǒng)10可經(jīng)配置以支持單向或雙向視頻發(fā)射,以支持例如視頻流式傳輸、視頻回放、視 頻廣播及/或視頻電話等應(yīng)用。
[0022] 在圖1的實(shí)例中,源裝置12包含視頻源18、視頻編碼器20及輸出接口 22。在一 些情況下,輸出接口 22可包含調(diào)制器/解調(diào)器(調(diào)制解調(diào)器)及/或發(fā)射器。在源裝置 12中,視頻源18可包含例如視頻俘獲裝置(例如,攝像機(jī))、含有先前俘獲的視頻的視頻存 檔、用于從視頻內(nèi)容提供者接收視頻的視頻饋入接口及/或用于產(chǎn)生計(jì)算機(jī)圖形數(shù)據(jù)作為 源視頻的計(jì)算機(jī)圖形系統(tǒng)或此類來(lái)源的組合等來(lái)源。作為一個(gè)實(shí)例,如果視頻源18為攝像 機(jī),那么源裝置12及目的地裝置14可形成所謂的相機(jī)電話或視頻電話。但是,本發(fā)明中所 描述的技術(shù)一般來(lái)說(shuō)可適用于視頻譯碼,并且可應(yīng)用于無(wú)線及/或有線應(yīng)用。
[0023] 可由視頻編碼器20編碼所俘獲視頻、預(yù)俘獲視頻或計(jì)算機(jī)產(chǎn)生的視頻。經(jīng)編碼視 頻數(shù)據(jù)可通過源裝置12的輸出接口 22直接發(fā)射到目的地裝置14。經(jīng)編碼視頻數(shù)據(jù)還可 (或替代地)存儲(chǔ)到存儲(chǔ)裝置32上以供稍后由目的地裝置14或其它裝置存取以用于解碼 及/或回放。
[0024] 目的地裝置14包含輸入接口 28、視頻解碼器30及顯示裝置31。在一些情況下, 輸入接口 28可包含接收器及/或調(diào)制解調(diào)器。目的地裝置14的輸入接口 28經(jīng)由鏈路16 接收經(jīng)編碼視頻數(shù)據(jù)。經(jīng)由鏈路16傳達(dá)或在存儲(chǔ)裝置32上提供的經(jīng)編碼視頻數(shù)據(jù)可包含 由視頻編碼器20產(chǎn)生的多種語(yǔ)法元素以供由例如視頻解碼器30等視頻解碼器用于解碼視 頻數(shù)據(jù)。此類語(yǔ)法元素可與在通信媒體上發(fā)射、存儲(chǔ)在存儲(chǔ)媒體上或存儲(chǔ)在文件服務(wù)器中 的經(jīng)編碼的視頻數(shù)據(jù)包含在一起。
[0025] 顯示裝置31可與目的地裝置14集成或在目的地裝置14外部。在一些實(shí)例中,目 的地裝置14可包含集成式顯示裝置,并且還經(jīng)配置以與外部顯示裝置介接。在其它實(shí)例 中,目的地裝置14可為顯示裝置。一般來(lái)說(shuō),顯示裝置31將經(jīng)解碼視頻數(shù)據(jù)顯示給用戶, 并且可包括多種顯示裝置中的任一者,例如液晶顯示器(IXD)、等離子顯示器、有機(jī)發(fā)光二 極管(OLED)顯示器或另一類型的顯示裝置。
[0026] 視頻編碼器20及視頻解碼器30可根據(jù)例如高效率視頻譯碼(HEVC)標(biāo)準(zhǔn)等視頻 壓縮標(biāo)準(zhǔn)操作,并且可符合HEVC測(cè)試模型(HM)。替代地,視頻編碼器20及視頻解碼器30 可根據(jù)其它專有或行業(yè)標(biāo)準(zhǔn)來(lái)操作,所述標(biāo)準(zhǔn)例如是ITU-T H