檢測用于視頻譯碼的相鄰視頻單元的可用性的制作方法
【專利摘要】作為對視頻數(shù)據(jù)的視頻編碼或解碼操作的部分,視頻譯碼器對所述視頻數(shù)據(jù)的當(dāng)前視頻單元執(zhí)行譯碼操作。作為對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作的部分,所述視頻譯碼器確定相鄰于所述當(dāng)前視頻單元的一個(gè)或一個(gè)以上視頻單元的可用性。為了確定相鄰于所述當(dāng)前視頻單元的視頻單元的可用性,所述視頻譯碼器基于相鄰于所述當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目。所述所識別條目指示相鄰于所述當(dāng)前視頻單元的所述視頻單元的可用性。所述視頻譯碼器隨后基于相鄰于所述當(dāng)前視頻單元的所述視頻單元是否可用而對所述當(dāng)前視頻單元執(zhí)行譯碼操作。
【專利說明】檢測用于視頻譯碼的相鄰視頻單元的可用性
[0001]相關(guān)申請案的交叉參考
[0002]本申請案主張2011年10月18日申請的第61/548,630號美國臨時(shí)申請案的權(quán)益,所述美國臨時(shí)申請案的整個(gè)內(nèi)容以應(yīng)用的方式并入本文。
【技術(shù)領(lǐng)域】
[0003]本申請案涉及視頻譯碼的領(lǐng)域,例如視頻編碼和解碼。
【背景技術(shù)】
[0004]數(shù)字視頻能力可并入到廣泛多種裝置中,包含數(shù)字電視機(jī)、數(shù)字直播系統(tǒng)、無線廣播系統(tǒng)、個(gè)人數(shù)字助理(PDA)、膝上型或桌上型計(jì)算機(jī)、數(shù)碼相機(jī)、數(shù)字記錄裝置、數(shù)字媒體播放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式或衛(wèi)星無線電電話、視頻電話會議裝置和類似裝置。數(shù)字視頻裝置實(shí)施視頻壓縮技術(shù),例如由MPEG-2、MPEG-4、ITU-TH.263、ITU-TH.264/MPEG-4第10部分高級視頻譯碼(AVC)定義的標(biāo)準(zhǔn)以及此些標(biāo)準(zhǔn)的擴(kuò)展中描述的那些技術(shù),從而較有效地發(fā)射和接收數(shù)字視頻信息。新的視頻譯碼標(biāo)準(zhǔn)正在開發(fā),例如由作為MPEG與ITU-T之間的合作的“視頻譯碼聯(lián)合合作組”(JCT-VC)開發(fā)的高效視頻譯碼(HEVC)標(biāo)準(zhǔn)。新興的HEVC標(biāo)準(zhǔn)有時(shí)稱為H.265,但尚未正式做出此指定。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的技術(shù)大體上涉及在視頻譯碼期間確定相鄰視頻單元的可用性。更具體來說,視頻譯碼器對當(dāng)前視頻單元執(zhí)行視頻譯碼操作。作為執(zhí)行視頻譯碼操作的部分,在一些實(shí)例中,視頻譯碼器可基于當(dāng)前視頻單元的母代視頻單元的可用性而識別查找表中的條目。所識別條目指示相鄰于當(dāng)前視頻單元的視頻單元的可用性。以此方式,查找表準(zhǔn)許視頻譯碼器檢測相鄰于當(dāng)前視頻單元的視頻單元的可用性。所述視頻譯碼器基于相鄰于所述當(dāng)前視頻單元的視頻單元的可用性而對所述當(dāng)前視頻單元執(zhí)行譯碼操作。
[0006]在一個(gè)實(shí)例中,本發(fā)明描述用于對視頻數(shù)據(jù)進(jìn)行譯碼的方法。所述方法包括基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目。當(dāng)前視頻單元在視頻數(shù)據(jù)的圖片內(nèi)。所識別條目指示相鄰于當(dāng)前視頻單元的視頻單元的可用性。此外,所述方法包括基于相鄰于當(dāng)前視頻單元的視頻單元是否可用而對當(dāng)前視頻單元執(zhí)行譯碼操作。
[0007]在另一實(shí)例中,本發(fā)明描述一種視頻譯碼設(shè)備,包括一個(gè)或一個(gè)以上處理器,所述處理器經(jīng)配置以基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目。當(dāng)前視頻單元在圖片內(nèi)。所識別條目指示相鄰于當(dāng)前視頻單元的視頻單元的可用性。所述一個(gè)或一個(gè)以上處理器進(jìn)一步經(jīng)配置以基于相鄰于當(dāng)前視頻單元的視頻單元是否可用而對當(dāng)前視頻單元執(zhí)行譯碼操作。
[0008]在另一實(shí)例中,本發(fā)明描述用于對視頻數(shù)據(jù)進(jìn)行譯碼的視頻譯碼設(shè)備。視頻譯碼設(shè)備包括用于基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目的裝置。當(dāng)前視頻單元在視頻數(shù)據(jù)的圖片內(nèi)。所識別條目指示相鄰于當(dāng)前視頻單元的視頻單元的可用性。所述視頻譯碼設(shè)備進(jìn)一步包括用于基于相鄰于所述當(dāng)前視頻單元的所述視頻單元是否可用而對所述當(dāng)前視頻單元執(zhí)行譯碼操作的裝置。
[0009]在另一實(shí)例中,本發(fā)明描述一種包括計(jì)算機(jī)可讀媒體的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)可讀媒體上存儲有指令,所述指令在執(zhí)行時(shí)致使一個(gè)或一個(gè)以上處理器基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目。當(dāng)前視頻單元在圖片內(nèi)。所識別條目指示相鄰于當(dāng)前視頻單元的視頻單元的可用性。另外,所述指令在執(zhí)行時(shí)致使所述一個(gè)或一個(gè)以上處理器基于相鄰于當(dāng)前視頻單元的視頻單元是否可用而對當(dāng)前視頻單元執(zhí)行譯碼操作。
[0010]在附圖和以下描述中陳述本發(fā)明的一個(gè)或一個(gè)以上方面的細(xì)節(jié)。從描述和圖式以及從權(quán)利要求書將明了本發(fā)明中描述的技術(shù)的其它特征、目的和優(yōu)點(diǎn)。
【專利附圖】
【附圖說明】
[0011]圖1是圖解說明可利用本發(fā)明的技術(shù)的實(shí)例性視頻譯碼系統(tǒng)的框圖。
[0012]圖2是圖解說明將圖片實(shí)例性地分割為樹塊和切片的概念圖。
[0013]圖3是圖解說明圖片的樹塊的實(shí)例性光柵掃描次序的概念圖。
[0014]圖4是圖解說明經(jīng)分割為逐漸變小的視頻譯碼單元的實(shí)例性樹塊的概念圖。
[0015]圖5是圖解說明用于分割樹塊的實(shí)例四叉樹數(shù)據(jù)結(jié)構(gòu)的概念圖。
[0016]圖6是圖解說明根據(jù)z掃描次序?qū)鋲K的未經(jīng)分割譯碼單元的實(shí)例定序的概念圖。
[0017]圖7是圖解說明對視頻序列進(jìn)行編碼的視頻編碼器的實(shí)例的框圖。
[0018]圖8是圖解說明對經(jīng)編碼視頻序列進(jìn)行解碼的視頻解碼器的實(shí)例的框圖。
[0019]圖9是圖解說明用以確定當(dāng)前視頻單元的相鄰者的可用性的實(shí)例性遞歸操作的流程圖。
[0020]圖10是圖解說明視頻單元的實(shí)例性相鄰者的概念圖。
[0021]圖11是圖解說明經(jīng)再分非葉視頻單元與相鄰視頻單元之間的實(shí)例性關(guān)系的概念圖。
[0022]圖12是圖解說明非葉視頻單元的左上方子單元的相鄰者的實(shí)例可用性的概念圖。
[0023]圖13是圖解說明非葉視頻單元的右上方子單元的相鄰者的實(shí)例可用性的概念圖。
[0024]圖14是圖解說明非葉視頻單元的左下方子單元的相鄰者的實(shí)例可用性的概念圖。
[0025]圖15是圖解說明非葉視頻單元的右下方子單元的相鄰者的實(shí)例可用性的概念圖。
[0026]圖16是圖解說明用以確定當(dāng)前視頻單元的相鄰者的可用性的另一實(shí)例性操作的流程圖。
[0027]圖17是已經(jīng)分割為六十四個(gè)基本視頻單元的IXU的概念圖。
[0028]圖18是圖解說明針對左下方相鄰者的實(shí)例性查找表(LUT)的概念圖。[0029]圖19是圖解說明針對左邊相鄰者的實(shí)例性LUT的概念圖。
[0030]圖20是圖解說明針對左上方相鄰者的實(shí)例性LUT的概念圖。
[0031]圖21是圖解說明針對上方相鄰者的實(shí)例性LUT的概念圖。
[0032]圖22是圖解說明針對右上方相鄰者的實(shí)例性LUT的概念圖。
[0033]圖23是圖解說明用以確定當(dāng)前視頻單元的相鄰者的可用性的另一實(shí)例性操作的流程圖。
【具體實(shí)施方式】
[0034]附圖圖解說明實(shí)例。在附圖中由參考標(biāo)號指示的元件對應(yīng)于在以下描述中由相同參考標(biāo)號指示的元件。在本發(fā)明中,具有以序數(shù)詞(例如,“第一”、“第二”、“第三”等等)開始的名稱的元件不一定暗示所述元件具有特定次序。而是,此些序數(shù)詞僅用以指代相同或相似類型的不同元件。
[0035]本發(fā)明的技術(shù)可增加視頻譯碼器可確定圖片的視頻單元的相鄰者的可用性的效率。如本文描述所使用,術(shù)語“視頻譯碼器”一般指代視頻編碼器和視頻解碼器兩者。在本發(fā)明中,術(shù)語“視頻譯碼”或“譯碼”可一般指代視頻編碼和視頻解碼?!耙曨l單元”可對應(yīng)于鄰接的一組像素值。如果第一視頻單元的一個(gè)或一個(gè)以上像素值在圖片中鄰近于第二視頻單元的一個(gè)或一個(gè)以上像素值,那么第一視頻單元可為第二視頻單元的相鄰者(即,第一視頻單元相鄰于第二視頻單元)。
[0036]當(dāng)對視頻單元執(zhí)行視頻譯碼過程時(shí),如果視頻譯碼器能夠使用與相鄰視頻單元相關(guān)聯(lián)的數(shù)據(jù)來對視頻單元進(jìn)行譯碼,那么相鄰視頻單元可為“可用的”。如果視頻譯碼器不能使用與相鄰視頻單元相關(guān)聯(lián)的數(shù)據(jù)來對視頻單元進(jìn)行譯碼,那么相鄰視頻單元可為“不可用的”。舉例來說,當(dāng)視頻編碼器對視頻單元執(zhí)行視頻編碼過程時(shí),如果視頻編碼器尚未對相鄰視頻單元進(jìn)行編碼,如果相鄰視頻單元不存在,如果相鄰視頻單元在不同于視頻單元的切片中,或如果視頻編碼器另外不能使用與相鄰視頻單元相關(guān)聯(lián)的數(shù)據(jù)來對視頻單元進(jìn)行編碼,那么相鄰視頻單元可為不可用的。當(dāng)視頻解碼器對視頻塊執(zhí)行視頻解碼過程時(shí),如果視頻解碼器尚未對相鄰視頻單元進(jìn)行解碼,如果相鄰視頻單元不存在,如果相鄰視頻單元在不同于視頻單元的切片中,或如果視頻解碼器另外不能使用與相鄰視頻單元相關(guān)聯(lián)的數(shù)據(jù)來對視頻單元進(jìn)行解碼,那么相鄰視頻單元可為不可用的。
[0037]可存在多種原因視頻譯碼器為何可能需要確定相鄰視頻單元是否可用,例如用于幀內(nèi)預(yù)測或運(yùn)動(dòng)向量預(yù)測。舉例來說,視頻編碼器或視頻解碼器可能需要存取相鄰視頻單元的像素值以便對當(dāng)前視頻單元的像素值進(jìn)行幀內(nèi)預(yù)測。在此實(shí)例中,如果視頻解碼器尚未對相鄰視頻單元進(jìn)行解碼,那么視頻解碼器可能不能存取相鄰視頻單元的像素值。在另一實(shí)例中,對于運(yùn)動(dòng)向量預(yù)測,視頻編碼器或視頻解碼器可能需要存取相鄰視頻單元的運(yùn)動(dòng)數(shù)據(jù)以便產(chǎn)生當(dāng)前視頻單元的運(yùn)動(dòng)數(shù)據(jù),例如用于合并或跳過模式,或高級運(yùn)動(dòng)向量預(yù)測(AMVP)模式。在其它實(shí)例中,可能需要相鄰視頻單元的可用性來確定用于各種語法元素的熵譯碼的上下文。在這些實(shí)例中,如果視頻編碼器尚未對相鄰視頻單元進(jìn)行編碼,那么視頻編碼器可能不能存取相鄰視頻單元的運(yùn)動(dòng)數(shù)據(jù)。
[0038]根據(jù)本發(fā)明的技術(shù),視頻譯碼器可存儲含有多個(gè)條目的查找表(LUT)。視頻譯碼器可基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而存取LUT中的特定條目。LUT中的條目可指定相鄰于當(dāng)前視頻單元的視頻單元的可用性。以此方式,視頻譯碼器可使用LUT來基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而確定相鄰于當(dāng)前視頻單元的視頻單元的可用性。以此方式確定相鄰視頻單元的可用性可需要比先前提出的用于確定相鄰視頻單元的可用性的技術(shù)少的存儲器存取,且可促進(jìn)可用性的相對快檢測。
[0039]圖1是圖解說明可利用本發(fā)明中描述的技術(shù)的實(shí)例性視頻譯碼系統(tǒng)10的框圖。如圖1的實(shí)例所示,視頻譯碼系統(tǒng)10包含源裝置12和目的地裝置14。源裝置12產(chǎn)生經(jīng)編碼視頻數(shù)據(jù)。目的地裝置14可在稍后時(shí)間對經(jīng)編碼視頻數(shù)據(jù)進(jìn)行解碼。源裝置12和目的地裝置14可包括廣泛多種裝置中的任一者,包含桌上型計(jì)算機(jī)、筆記型(B卩,膝上型)計(jì)算機(jī)、平板計(jì)算機(jī)、機(jī)頂盒、移動(dòng)電話、電話手持機(jī)、“智能”板、電視機(jī)、相機(jī)、顯示裝置、數(shù)字媒體播放器、視頻游戲控制臺、視頻流式傳輸裝置、交通工具中計(jì)算機(jī),或能夠編碼和解碼視頻數(shù)據(jù)的其它類型的計(jì)算裝置。
[0040]目的地裝置14可經(jīng)由通信信道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。源裝置12或另一裝置可根據(jù)例如無線通信協(xié)議等通信標(biāo)準(zhǔn)調(diào)制經(jīng)編碼視頻數(shù)據(jù)。通信媒體可包括任何無線或有線通信媒體,例如射頻(RF)頻譜或者一種或一種以上物理傳輸線。通信信道16可形成基于包的網(wǎng)絡(luò)的部分,所述網(wǎng)絡(luò)例如為局域網(wǎng)、廣域網(wǎng)或例如因特網(wǎng)的全球網(wǎng)。通信信道16可包含路由器、交換機(jī)、基站或可用于促進(jìn)經(jīng)編碼視頻數(shù)據(jù)從源裝置12到目的地裝置14的通信的任何其它設(shè)備。
[0041]在一些實(shí)例中,源裝置12和目的地裝置14可針對無線通信而裝備。然而,本發(fā)明的技術(shù)不一定限于無線應(yīng)用或設(shè)定。而是,所述技術(shù)可應(yīng)用于視頻譯碼以支持多種多媒體應(yīng)用中的任一種,例如空中電視廣播、閉路電視發(fā)射、衛(wèi)星電視發(fā)射、流式傳輸視頻發(fā)射(例如,經(jīng)由因特網(wǎng))、為存儲在數(shù)據(jù)存儲媒體上對數(shù)字視頻的編碼、對存儲在數(shù)據(jù)存儲媒體上的數(shù)字視頻的解碼,或其它應(yīng)用。在一些實(shí)例中,源裝置12和目的地裝置14可經(jīng)配置以支持單向或雙向視頻發(fā)射以支持例如視頻流式傳輸、視頻重放、視頻廣播和/或視頻電話等應(yīng)用。
[0042]此外,在一些實(shí)例中,源裝置12可將經(jīng)編碼視頻數(shù)據(jù)輸出到存儲系統(tǒng)34。類似地,目的地裝置14可存取存儲在存儲系統(tǒng)34上的經(jīng)編碼視頻數(shù)據(jù)。在各種實(shí)例中,存儲系統(tǒng)34可包含各種分布式或局部存取的數(shù)據(jù)存儲媒體。數(shù)據(jù)存儲媒體的實(shí)例類型包含(但不限于)硬驅(qū)動(dòng)器、藍(lán)光光盤、DVD、CD-ROM、固態(tài)存儲器單元、易失性或非易失性存儲器,或適合用于存儲經(jīng)編碼視頻數(shù)據(jù)的其它數(shù)字存儲媒體。
[0043]在一些實(shí)例中,存儲系統(tǒng)34可包括文件服務(wù)器或另一中間存儲裝置,其可存儲由源裝置12產(chǎn)生的經(jīng)編碼視頻。目的地裝置14可經(jīng)由流式傳輸或下載從存儲系統(tǒng)34存取所存儲的視頻數(shù)據(jù)。文件服務(wù)器可為能夠存儲經(jīng)編碼視頻數(shù)據(jù)且將所述經(jīng)編碼視頻數(shù)據(jù)發(fā)射到目的地裝置14的任一類型的服務(wù)器。實(shí)例文件服務(wù)器包含網(wǎng)絡(luò)服務(wù)器(例如,用于網(wǎng)站)、文件傳送協(xié)議(FTP)服務(wù)器、網(wǎng)絡(luò)附接存儲(NAS)裝置或本地磁盤驅(qū)動(dòng)器。目的地裝置14可通過數(shù)據(jù)連接(例如因特網(wǎng)連接)存取經(jīng)編碼視頻數(shù)據(jù)。數(shù)據(jù)連接可包含適于存取存儲在文件服務(wù)器上的經(jīng)編碼視頻數(shù)據(jù)的無線信道(例如,W1-Fi連接)、有線連接(例如,DSL、電纜調(diào)制解調(diào)器等等)或兩者的組合。經(jīng)編碼視頻數(shù)據(jù)從存儲系統(tǒng)34的發(fā)射可為流式傳輸發(fā)射、下載發(fā)射或兩者的組合。
[0044]在圖1的實(shí)例中,源裝置12包含視頻源18、視頻編碼器20和輸出接口 22。在一些實(shí)例中,輸出接口 22還可包含調(diào)制器/解調(diào)器(調(diào)制解調(diào)器)和/或發(fā)射器。視頻源18可將視頻數(shù)據(jù)提供到視頻編碼器20。在各種實(shí)例中,視頻源18可包括用于提供視頻數(shù)據(jù)的各種類型的裝置和/或系統(tǒng)。舉例來說,視頻源18可包括視頻俘獲裝置,例如攝像機(jī)。在另一實(shí)例中,視頻源18可包括含有先前俘獲視頻的視頻檔案。在又一實(shí)例中,視頻源18可包括從視頻內(nèi)容提供者接收視頻的視頻饋送接口。在又一實(shí)例中,視頻源18可包括用于產(chǎn)生計(jì)算機(jī)圖形數(shù)據(jù)的計(jì)算機(jī)圖形系統(tǒng)。
[0045]如下文詳細(xì)描述,視頻編碼器20可對由視頻源18提供的視頻數(shù)據(jù)進(jìn)行編碼。在一些實(shí)例中,源裝置12可經(jīng)由輸出接口 22將經(jīng)編碼視頻數(shù)據(jù)直接發(fā)射到目的地裝置14。而且,在一些實(shí)例中,存儲系統(tǒng)34可存儲經(jīng)編碼視頻數(shù)據(jù)用于目的地裝置14或其它裝置稍后存取。
[0046]本發(fā)明可大體上涉及視頻編碼器20將某些信息“用信號發(fā)送”到另一裝置,例如視頻解碼器30。然而應(yīng)了解,視頻編碼器20可通過使某些語法元素與視頻數(shù)據(jù)的各種經(jīng)編碼部分相關(guān)聯(lián)來用信號發(fā)送信息。也就是說,視頻編碼器20可通過將某些語法元素存儲到視頻數(shù)據(jù)的各種經(jīng)編碼部分的標(biāo)頭來用信號發(fā)送數(shù)據(jù)。在一些情況下,此些語法元素可在由視頻解碼器30接收和解碼之前經(jīng)編碼和存儲(例如,存儲到存儲系統(tǒng)34)。因此,術(shù)語“用信號發(fā)送”可大體上指代用以對經(jīng)壓縮視頻數(shù)據(jù)進(jìn)行解碼的語法或其它數(shù)據(jù)的通信。此通信可實(shí)時(shí)或近實(shí)時(shí)地發(fā)生?;蛘?,此通信可在一時(shí)間跨度中發(fā)生,例如可能當(dāng)在編碼時(shí)將語法元素存儲到媒體時(shí)發(fā)生,解碼裝置可隨后在存儲到此媒體之后的任何時(shí)間檢索所述語法元素。
[0047]在圖1的實(shí)例中,目的地裝置14包含輸入接口 28、視頻解碼器30和顯示裝置32。在一些實(shí)例中,輸入接口 28可包含接收器和/或調(diào)制解調(diào)器。目的地裝置14的輸入接口28從通信信道16和/或存儲系統(tǒng)34接收經(jīng)編碼視頻數(shù)據(jù)。視頻解碼器30對由輸入接口28接收的經(jīng)編碼視頻數(shù)據(jù)進(jìn)行解碼。目的地裝置14可再現(xiàn)經(jīng)解碼視頻數(shù)據(jù)用于在顯示裝置32上顯示。
[0048]顯示裝置32可與目的地裝置14集成或可在目的地裝置14的外部。在一些實(shí)例中,目的地裝置14可包含集成顯示裝置,且還可經(jīng)配置以與外部顯示裝置介接。在各種實(shí)例中,顯示裝置32可包括各種類型的顯示裝置。舉例來說,顯示裝置32可包括液晶顯示器(LCD)、等離子顯示器、有機(jī)發(fā)光二極管(OLED)顯示器,或另一類型的顯示裝置。
[0049]雖然圖1中未圖示,但視頻編碼器20和視頻解碼器30可各自與音頻編碼器和解碼器集成,且可包含適當(dāng)?shù)亩嗦窂?fù)用器-多路分用器(MUX-DEMUX)單元或其它硬件和軟件,以處置共同數(shù)據(jù)流或單獨(dú)數(shù)據(jù)流中的音頻和視頻兩者的編碼。如果適用,MUX-DEMUX單元可符合ITU H.223多路復(fù)用器協(xié)議,或例如用戶數(shù)據(jù)報(bào)協(xié)議(UDP)等其它協(xié)議。
[0050]視頻編碼器20和視頻解碼器30各自可實(shí)施為多種合適電路中的任一者,例如一個(gè)或一個(gè)以上微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、離散邏輯、軟件、硬件、固件或其任一組合。當(dāng)所述技術(shù)部分地以軟件實(shí)施時(shí),裝置可將用于所述軟件的指令存儲在合適的非暫時(shí)性計(jì)算機(jī)可讀媒體中,且使用一個(gè)或一個(gè)以上處理器執(zhí)行硬件中的指令以便執(zhí)行本發(fā)明的技術(shù)。視頻編碼器20和視頻解碼器30中的每一者可包含于一個(gè)或一個(gè)以上編碼器或解碼器中,其中任一者可集成為相應(yīng)裝置中的組合式編碼器/解碼器(CODEC)的部分。
[0051]視頻編碼器20和視頻解碼器30可根據(jù)例如當(dāng)前在開發(fā)的高效視頻譯碼(HEVC)標(biāo)準(zhǔn)等視頻壓縮標(biāo)準(zhǔn)來操作,且可符合HEVC測試模型(HM)?;蛘撸曨l編碼器20和視頻解碼器30可根據(jù)例如ITU-T H.264標(biāo)準(zhǔn)(或者稱為MPEG-4第10部分高級視頻譯碼(AVC))等其它專門或行業(yè)標(biāo)準(zhǔn)或此些標(biāo)準(zhǔn)的擴(kuò)展來操作。對標(biāo)準(zhǔn)的實(shí)例擴(kuò)展包含對H.264/AVC標(biāo)準(zhǔn)的可縮放視頻譯碼(SVC)和多視圖視頻譯碼(MVC)擴(kuò)展。本發(fā)明的技術(shù)不限于任何特定譯碼標(biāo)準(zhǔn)。視頻壓縮標(biāo)準(zhǔn)的其它實(shí)例包含MPEG-2和ITU-T H.263。
[0052]如上文簡要提到,視頻編碼器20對視頻數(shù)據(jù)進(jìn)行編碼。視頻數(shù)據(jù)可包括一個(gè)或一個(gè)以上圖片序列。圖片中的每一者是靜止圖像。在一些實(shí)例中,圖片可稱為“幀”。當(dāng)視頻編碼器20對視頻數(shù)據(jù)進(jìn)行編碼時(shí),視頻編碼器20可產(chǎn)生位流。位流包含形成經(jīng)譯碼圖片的表示和相關(guān)聯(lián)數(shù)據(jù)的位序列。經(jīng)譯碼圖片是圖片的經(jīng)譯碼表示。
[0053]為了產(chǎn)生位流,視頻編碼器20可對視頻數(shù)據(jù)中的圖片序列執(zhí)行編碼操作。當(dāng)視頻編碼器20對圖片序列執(zhí)行編碼操作時(shí),視頻編碼器20可產(chǎn)生一系列經(jīng)譯碼圖片和相關(guān)聯(lián)數(shù)據(jù)。另外,視頻編碼器20可產(chǎn)生序列參數(shù)集(SPS),其含有適用于圖片序列的參數(shù)。此夕卜,視頻編碼器20可產(chǎn)生圖片參數(shù)集(PPS),其含有整體適用于圖片的參數(shù)。
[0054]為了產(chǎn)生經(jīng)譯碼圖片,視頻編碼器20可將圖片分割為一個(gè)或一個(gè)以上樹塊。樹塊是視頻數(shù)據(jù)的2D塊。在一些實(shí)例中,樹塊也可稱為最大譯碼單元(IXU)。HEVC的樹塊可廣義地類似于例如H.264/AVC等先前標(biāo)準(zhǔn)的宏塊。然而,樹塊不一定限于特定大小,且可包含一個(gè)或一個(gè)以上譯碼單元(CU)。
[0055]在一些實(shí)例中,視頻編碼器20可將圖片分割為多個(gè)切片。切片中的每一者可包含整數(shù)個(gè)⑶。在一些實(shí)例中,切片包括整數(shù)個(gè)樹塊。在其它實(shí)例中,切片的邊界可在樹塊內(nèi)。如果切片的邊界在樹塊內(nèi),那么切片可稱為精細(xì)粒度切片。圖2圖解說明經(jīng)分割為LCU的圖片50??拷鼒D片50的中點(diǎn)的較暗的線52指示圖片50的切片54與切片56之間的邊界。在圖2的實(shí)例中,圖片50內(nèi)的單元58可對應(yīng)于樹塊。
[0056]作為對圖片執(zhí)行編碼操作的部分,視頻編碼器20可對圖片的每一切片執(zhí)行編碼操作。用于切片的編碼操作可產(chǎn)生與切片相關(guān)聯(lián)的經(jīng)編碼數(shù)據(jù)。與切片相關(guān)聯(lián)的經(jīng)編碼數(shù)據(jù)可稱為“經(jīng)譯碼切片”。經(jīng)譯碼切片可包含切片標(biāo)頭和切片數(shù)據(jù)。切片數(shù)據(jù)可包含成譯碼次序的一系列連續(xù)譯碼單元。切片標(biāo)頭可含有屬于切片的第一或所有樹塊的數(shù)據(jù)元素。
[0057]為了產(chǎn)生切片的經(jīng)譯碼切片數(shù)據(jù),視頻編碼器20可對切片中的每一樹塊執(zhí)行編碼操作。視頻編碼器20可根據(jù)光柵掃描次序?qū)η衅械臉鋲K執(zhí)行編碼操作。圖3是展示圖片50的樹塊的實(shí)例光柵掃描次序的概念圖,其中每一樹塊中的數(shù)字指示樹塊的光柵掃描的實(shí)例次序(例如,圖3的實(shí)例中I到56)。當(dāng)視頻編碼器20對樹塊執(zhí)行編碼操作時(shí),視頻編碼器20可產(chǎn)生經(jīng)譯碼樹塊。經(jīng)譯碼樹塊可包括表示樹塊的經(jīng)編碼版本的數(shù)據(jù)。
[0058]為了產(chǎn)生經(jīng)譯碼樹塊,視頻編碼器20可對樹塊遞歸地執(zhí)行四叉樹分割以將樹塊劃分為逐漸變小的CU。舉例來說,視頻編碼器20可將樹塊分割為四個(gè)相等大小的子CU,將子CU中的一者或一者以上分割為四個(gè)相等大小的子子CU,等等。位流中的一個(gè)或一個(gè)以上語法元素可指示視頻編碼器20可對樹塊進(jìn)行分割的最大次數(shù)。語法元素也可指示最小譯碼單元(S⑶)。在一些實(shí)例中,⑶的形狀可為正方形。在其它實(shí)例中,⑶可為矩形或具有另一形狀。給定當(dāng)前視頻單元的母代視頻單元可對應(yīng)于與當(dāng)前視頻單元對應(yīng)的四叉樹節(jié)點(diǎn)正上方的四叉樹節(jié)點(diǎn)。當(dāng)視頻編碼器20使用四叉樹分割來將給定視頻單元分割為四個(gè)相等大小的視頻單元時(shí),給定視頻單元在本發(fā)明中稱為四個(gè)相等大小的視頻單元的母代視頻單元。
[0059]圖4是圖解說明經(jīng)分割為逐漸變小的⑶的樹塊60的概念圖。在圖4的實(shí)例中,樹塊60經(jīng)分割為十三個(gè)未經(jīng)分割的CU62。在其它實(shí)例中,視頻編碼器20可以其它方式分表1]樹塊。
[0060]作為對樹塊執(zhí)行編碼操作的部分,視頻編碼器20可產(chǎn)生樹塊的階層式四叉樹數(shù)據(jù)結(jié)構(gòu)。舉例來說,樹塊可對應(yīng)于四叉樹數(shù)據(jù)結(jié)構(gòu)的根節(jié)點(diǎn)。如果視頻編碼器20將樹塊分割為四個(gè)子CU,那么根節(jié)點(diǎn)在四叉樹數(shù)據(jù)結(jié)構(gòu)中具有四個(gè)子節(jié)點(diǎn)。子節(jié)點(diǎn)中的每一者對應(yīng)于子CU中的一者。如果視頻編碼器20將子CU中的一者分割為四個(gè)子子CU,那么對應(yīng)于子CU的節(jié)點(diǎn)可具有四個(gè)子節(jié)點(diǎn),其各自對應(yīng)于子子CU中的一者。四叉樹數(shù)據(jù)結(jié)構(gòu)的每一節(jié)點(diǎn)可提供對應(yīng)CU的語法數(shù)據(jù)。舉例來說,四叉樹中的節(jié)點(diǎn)可包含分裂旗標(biāo),其指示對應(yīng)于節(jié)點(diǎn)的CU是否經(jīng)分割(B卩,分裂)為四個(gè)子CU。CU的語法元素可遞歸地界定,且可取決于CU是否經(jīng)分裂為子CU。未經(jīng)分割的CU可對應(yīng)于四叉樹數(shù)據(jù)結(jié)構(gòu)中的葉節(jié)點(diǎn)。四叉樹數(shù)據(jù)結(jié)構(gòu)中的葉節(jié)點(diǎn)可稱為“譯碼節(jié)點(diǎn)”。表示樹塊的經(jīng)編碼版本的數(shù)據(jù)可包含基于樹塊的四叉樹數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)。
[0061]圖5是圖解說明用于分割樹塊的實(shí)例四叉樹數(shù)據(jù)結(jié)構(gòu)70的概念圖。圖5的實(shí)例中的四叉樹數(shù)據(jù)結(jié)構(gòu)70不對應(yīng)于圖4中的樹塊60的分區(qū)。在圖5的實(shí)例中,四叉樹數(shù)據(jù)結(jié)構(gòu)70包含對應(yīng)于樹塊的根節(jié)點(diǎn)72。視頻編碼器20將樹塊分割為四個(gè)子⑶。這些子⑶對應(yīng)于四叉樹數(shù)據(jù)結(jié)構(gòu)70的子層級中的節(jié)點(diǎn)74。此外,在圖5的實(shí)例中,視頻編碼器20已將第二子CU分割為四個(gè)子子CU。這些子子CU對應(yīng)于四叉樹數(shù)據(jù)結(jié)構(gòu)70的孫層級中的節(jié)點(diǎn)76。在圖5中,視頻編碼器20已將第四子子⑶分割為四個(gè)子子子⑶。這些子子子⑶對應(yīng)于四叉樹數(shù)據(jù)結(jié)構(gòu)70的曾孫層級中的節(jié)點(diǎn)78。
[0062]當(dāng)視頻編碼器20對樹塊執(zhí)行編碼操作時(shí),視頻編碼器20可根據(jù)z掃描次序確定樹塊的四叉樹內(nèi)的每一層級處的樹塊的CU的序列。舉例來說,視頻編碼器20可根據(jù)Z掃描次序?qū)ψ訉蛹壧幍淖覥U進(jìn)行定序,根據(jù)z掃描次序?qū)Φ谝蛔覥U的子子CU進(jìn)行定序,根據(jù)z掃描次序?qū)Φ诙覥U的子子CU進(jìn)行定序,根據(jù)z掃描次序?qū)ψ幼覥U的子子子CU進(jìn)行定序,以此類推。視頻編碼器20可隨后基于所確定的CU序列對樹塊的每一 CU執(zhí)行編碼操作。圖6是圖解說明根據(jù)z掃描次序?qū)鋲K60的未經(jīng)分割CU的實(shí)例定序的概念圖。特定來說,每一 CU內(nèi)的數(shù)字指示CU相對于其它CU被掃描的次序(例如,在圖6的實(shí)例中從
O到 12)。
[0063]作為對未經(jīng)分割CU執(zhí)行編碼操作的部分,視頻編碼器20可產(chǎn)生用于CU的預(yù)測數(shù)據(jù)。視頻編碼器20可使用幀內(nèi)預(yù)測或幀間預(yù)測來產(chǎn)生CU的預(yù)測數(shù)據(jù)。當(dāng)視頻編碼器20使用幀內(nèi)預(yù)測來產(chǎn)生CU的預(yù)測數(shù)據(jù)時(shí),視頻編碼器20可從含有CU的圖片的經(jīng)解碼像素值導(dǎo)出CU的預(yù)測數(shù)據(jù)。舉例來說,視頻編碼器20可基于相鄰于當(dāng)前視頻單元的視頻單元的一個(gè)或一個(gè)以上像素值產(chǎn)生當(dāng)前視頻單元的預(yù)測數(shù)據(jù)。當(dāng)視頻編碼器20使用幀間預(yù)測來產(chǎn)生CU的預(yù)測數(shù)據(jù)時(shí),視頻編碼器20可從除了含有CU的圖片之外的參考圖片的經(jīng)解碼值導(dǎo)出CU的預(yù)測數(shù)據(jù)。
[0064]在視頻編碼器20產(chǎn)生⑶的預(yù)測數(shù)據(jù)之后,視頻編碼器20可產(chǎn)生⑶的殘余數(shù)據(jù)。舉例來說,視頻編碼器20可基于CU的預(yù)測數(shù)據(jù)產(chǎn)生CU的殘余數(shù)據(jù)。CU的殘余數(shù)據(jù)可指示CU的預(yù)測數(shù)據(jù)中的像素值與CU的原始像素值之間的差。
[0065]此外,作為對未經(jīng)分割CU執(zhí)行編碼操作的部分,視頻編碼器20可對CU執(zhí)行遞歸四叉樹分割以將CU分割為一個(gè)或一個(gè)以上變換單元(TU)。本發(fā)明可大體上將CU和TU指代為“視頻單元”。CU的每一 TU可與CU的殘余數(shù)據(jù)的一不同部分相關(guān)聯(lián)。以與視頻編碼器20對樹塊內(nèi)的CU進(jìn)行定序類似的方式,視頻編碼器20可根據(jù)Z掃描次序?qū)U的TU進(jìn)行定序。視頻編碼器20可根據(jù)z掃描次序?qū)U的每一 TU執(zhí)行變換操作。當(dāng)視頻編碼器20對TU執(zhí)行變換操作時(shí),視頻編碼器20可至少部分地通過將變換應(yīng)用于與TU相關(guān)聯(lián)的殘余數(shù)據(jù)來產(chǎn)生變換系數(shù)塊(即,變換系數(shù)的塊)。舉例來說,視頻編碼器20可將一個(gè)或一個(gè)以上變換應(yīng)用于殘余數(shù)據(jù)以產(chǎn)生一個(gè)或一個(gè)以上變換系數(shù)塊。變換系數(shù)塊可為系數(shù)的2D矩陣。
[0066]在產(chǎn)生變換系數(shù)塊之后,視頻編碼器20可通過對變換系數(shù)塊執(zhí)行量化和熵編碼操作產(chǎn)生變換系數(shù)塊的經(jīng)編碼版本。視頻編碼器20可輸出視頻數(shù)據(jù)的位流中的變換系數(shù)塊的經(jīng)編碼版本。換句話說,視頻編碼器20可輸出含有表示變換系數(shù)塊的經(jīng)編碼數(shù)據(jù)的位流。
[0067]由視頻解碼器30執(zhí)行的視頻解碼過程可大體上與由視頻編碼器20執(zhí)行的編碼過程互逆。舉例來說,當(dāng)視頻解碼器30接收到位流時(shí),視頻解碼器30可對位流中的每一圖片序列執(zhí)行解碼操作。作為對圖片序列執(zhí)行解碼操作的部分,視頻解碼器30可對圖片序列中的每一圖片執(zhí)行解碼操作。作為對圖片執(zhí)行解碼操作的部分,視頻解碼器30可對圖片的每一切片執(zhí)行解碼操作。作為對切片執(zhí)行解碼操作的部分,視頻解碼器30可根據(jù)光柵掃描次序?qū)η衅械拿恳粯鋲K執(zhí)行解碼操作。作為對樹塊執(zhí)行解碼操作的部分,視頻解碼器30可根據(jù)z掃描次序?qū)鋲K的每一 CU執(zhí)行解碼操作。
[0068]在一些實(shí)例中,視頻解碼器30可能不能對樹塊內(nèi)的視頻單元(例如,CU或TU)執(zhí)行某些解碼操作,直到視頻解碼器30已對一個(gè)或一個(gè)以上相鄰視頻單元完成解碼操作為止。舉例來說,視頻解碼器30可能不能對視頻單元執(zhí)行某些解碼操作,直到視頻解碼器30已對左下方相鄰視頻單元、左邊相鄰視頻單元、左上方相鄰視頻單元、上方相鄰視頻單元和/或右上方相鄰視頻單元進(jìn)行解碼為止。給定視頻單元的左下方相鄰視頻單元在給定視頻單元的下方和左邊發(fā)生。給定視頻單元的左邊相鄰視頻單元在給定視頻單元的左邊發(fā)生。給定視頻單元的左上方相鄰視頻單元在給定視頻單元的左上方發(fā)生。給定視頻單元的上方相鄰視頻單元在給定視頻單元的上方發(fā)生。右上方相鄰視頻單元在給定視頻單元的右上方發(fā)生。因?yàn)橐曨l解碼器30根據(jù)光柵掃描次序?qū)鋲K執(zhí)行解碼操作,且根據(jù)z掃描次序?qū)鋲K的CU和TU執(zhí)行解碼操作,所以視頻解碼器30可能不需要確定視頻單元的右邊、右下方或下方相鄰者的可用性以對視頻單元執(zhí)行解碼操作。
[0069]可能存在多種原因視頻解碼器30為何不能對給定視頻單元執(zhí)行解碼操作直到一個(gè)或一個(gè)以上相鄰視頻單元經(jīng)解碼為止。舉例來說,視頻編碼器20可能已執(zhí)行幀內(nèi)預(yù)測以對CU的像素值進(jìn)行編碼。作為執(zhí)行幀內(nèi)預(yù)測的部分,視頻編碼器20可使用來自相鄰CU的像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。當(dāng)視頻解碼器30對CU執(zhí)行解碼操作時(shí),視頻解碼器30可確定相鄰CU是否已經(jīng)解碼。換句話說,視頻解碼器30可確定相鄰CU是否可用。如果特定相鄰CU可用,那么視頻解碼器30可使用來自相鄰CU的像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。然而,如果相鄰⑶不可用,那么視頻解碼器30不必存取來自相鄰⑶的像素值。因此,視頻解碼器30可使用默認(rèn)像素值而不是使用來自相鄰CU的像素值。
[0070]在一些實(shí)例中,視頻編碼器20還可能需要確定⑶的相鄰⑶是否已經(jīng)編碼。舉例來說,視頻編碼器20可能需要確定⑶的相鄰⑶是否已經(jīng)編碼,以便產(chǎn)生指示⑶的運(yùn)動(dòng)向量的運(yùn)動(dòng)向量候選。視頻編碼器20和視頻解碼器30可使用各種算法來確定給定視頻單元的相鄰視頻單元是否已經(jīng)編碼或解碼(即,相鄰視頻單元是否可用)。這些算法可能是復(fù)雜的,因?yàn)槔鏑U和TU等視頻單元可與四叉樹數(shù)據(jù)結(jié)構(gòu)的不同層級(或深度)相關(guān)聯(lián)。換句話說,視頻單元的相鄰者可與四叉樹的與所述視頻單元不同的層級相關(guān)聯(lián)。因此,可能實(shí)際上存在位于給定視頻單元正上方的兩個(gè)視頻單元。一些先前提出的算法是復(fù)雜的,且可能需要大量存儲器存取。因?yàn)樘幚韽?fù)雜算法和執(zhí)行存儲器存取消耗時(shí)間和電能,所以可能希望視頻編碼器20或視頻解碼器30執(zhí)行此些復(fù)雜算法。
[0071]在一些實(shí)例中,本發(fā)明的技術(shù)可減少確定視頻單元的相鄰視頻單元是否已經(jīng)編碼或解碼的復(fù)雜性。為了便于闡釋,術(shù)語“視頻譯碼器”可用以指代視頻編碼器或視頻解碼器。根據(jù)本發(fā)明的技術(shù),視頻譯碼器使用查找表(LUT)來加速視頻單元的相鄰者的可用性的檢測。在各種實(shí)例中,視頻譯碼器以不同方式使用不同LUT來加速視頻單元的相鄰者的可用性的檢測。舉例來說,視頻譯碼器可使用視頻單元的母代視頻單元的相鄰者的可用性作為到LUT中的索引,所述索引指定視頻單元的相鄰者的可用性。換句話說,視頻譯碼器可基于視頻單元的相鄰者的可用性確定視頻單元的子單元的相鄰者的可用性。
[0072]以此方式,視頻譯碼器可執(zhí)行用于對視頻數(shù)據(jù)進(jìn)行譯碼的方法。在此方法中,視頻譯碼器可基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目。在此方法中,當(dāng)前視頻單元在視頻數(shù)據(jù)的圖片內(nèi)。所識別條目可指示相鄰于當(dāng)前視頻單元的視頻單元的可用性。所述方法還可包含基于相鄰于當(dāng)前視頻單元的視頻單元是否可用而對當(dāng)前視頻單元執(zhí)行譯碼操作。譯碼操作可為視頻編碼操作或視頻解碼操作。在一些實(shí)例中,對當(dāng)前視頻單元執(zhí)行譯碼操作包括基于與相鄰于當(dāng)前視頻單元的視頻單元相關(guān)聯(lián)的數(shù)據(jù)對當(dāng)前視頻單元執(zhí)行譯碼操作。視頻譯碼器可在視頻編碼或視頻解碼操作期間執(zhí)行此方法以執(zhí)行幀內(nèi)預(yù)測,以在合并/跳過或AMVP模式中獲得運(yùn)動(dòng)信息,在熵譯碼中獲得上下文信息,或執(zhí)行視頻編碼或視頻解碼操作的其它部分。
[0073]在其它實(shí)例中,視頻譯碼器根據(jù)光柵或z掃描次序確定樹塊內(nèi)的視頻單元的索弓I。視頻譯碼器可隨后使用此索引來識別LUT中的條目。視頻譯碼器可使用所識別條目來確定視頻單元的相鄰者的可用性。下文詳細(xì)描述的圖16和23圖解說明根據(jù)此些實(shí)例確定相鄰者的可用性的實(shí)例操作。
[0074]圖7是圖解說明對視頻序列進(jìn)行編碼的視頻編碼器20的配置實(shí)例的框圖。圖7是為了闡釋目的而提供,且不應(yīng)被視為限制如在本發(fā)明中廣義地例示和描述的技術(shù)。為了闡釋的目的,本發(fā)明在HEVC譯碼的上下文中描述視頻編碼器20。然而,本發(fā)明的技術(shù)可適用于其它譯碼標(biāo)準(zhǔn)或方法。
[0075]在圖7的實(shí)例中,視頻編碼器20包含多個(gè)功能組件。視頻編碼器20的功能組件包含模式選擇模塊100、運(yùn)動(dòng)估計(jì)模塊102、運(yùn)動(dòng)補(bǔ)償模塊104、幀內(nèi)預(yù)測模塊106、殘余產(chǎn)生模塊110、變換模塊112、量化模塊114、熵編碼模塊116、逆量化模塊118、逆變換模塊120、重構(gòu)模塊122以及經(jīng)解碼圖片緩沖器124。在其它實(shí)例中,視頻編碼器20可包含較多、較少或不同的功能組件。舉例來說,視頻編碼器20可包含解塊濾波器以對重構(gòu)模塊122的輸出進(jìn)行濾波以從經(jīng)重構(gòu)視頻中移除成塊假象。此外,運(yùn)動(dòng)估計(jì)模塊102和運(yùn)動(dòng)補(bǔ)償模塊104可高度集成,但在圖7的實(shí)例中為了闡釋目的而分開表示。
[0076]視頻編碼器20可接收視頻數(shù)據(jù)。在各種實(shí)例中,視頻編碼器20可從各種源接收視頻數(shù)據(jù)。舉例來說,視頻編碼器20可從視頻源18 (圖1)或另一源接收視頻數(shù)據(jù)。視頻數(shù)據(jù)可表示圖片序列。為了對視頻數(shù)據(jù)進(jìn)行編碼,視頻編碼器20可對每一圖片序列執(zhí)行編碼操作。作為對圖片序列執(zhí)行編碼操作的部分,視頻編碼器20可對圖片序列內(nèi)的每一切片執(zhí)行編碼操作。作為對圖片執(zhí)行編碼操作的部分,視頻編碼器20可對圖片中的每一切片執(zhí)行編碼操作。作為對切片執(zhí)行編碼操作的部分,視頻編碼器20可對切片中的每一樹塊執(zhí)行編碼操作。
[0077]作為對樹塊執(zhí)行編碼操作的部分,視頻編碼器20可將樹塊分割為一個(gè)或一個(gè)以上⑶。在一些實(shí)例中,⑶的大小的范圍可為從8x8像素直到具有最大64x64像素或更大的樹塊的大小。在本發(fā)明中,“NxN”和“N乘N”可以互換地使用以在垂直和水平尺寸方面指代視頻塊的像素尺寸,例如16x16像素或16乘16像素。大體上,16x16塊將在垂直方向上具有16個(gè)像素(y = 16)且在水平方向上具有16個(gè)像素(x = 16)。同樣,NxN塊通常在垂直方向上具有N個(gè)像素且在水平方向上具有N個(gè)像素,其中N表示非負(fù)整數(shù)值。類似標(biāo)記法可用以指示變換系數(shù)塊的尺寸。
[0078]視頻編碼器20可對樹塊的每一未經(jīng)分割⑶執(zhí)行編碼操作。當(dāng)視頻編碼器20對未經(jīng)分割CU執(zhí)行編碼操作時(shí),視頻編碼器20產(chǎn)生表示未經(jīng)分割CU的經(jīng)編碼版本的數(shù)據(jù)。
[0079]作為對⑶執(zhí)行編碼操作的部分,運(yùn)動(dòng)估計(jì)模塊102和運(yùn)動(dòng)補(bǔ)償模塊104對⑶執(zhí)行幀間預(yù)測。換句話說,運(yùn)動(dòng)估計(jì)模塊102和運(yùn)動(dòng)補(bǔ)償模塊104可基于參考圖片而非含有CU的圖片的經(jīng)解碼像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。幀間預(yù)測可提供時(shí)間壓縮。
[0080]為了對⑶執(zhí)行幀間預(yù)測,視頻編碼器20可將⑶分割為一個(gè)或一個(gè)以上預(yù)測單元(PU)。視頻編碼器20和視頻解碼器30可支持各種PU大小。假定特定CU的大小為2NX 2N,則視頻編碼器20和視頻解碼器30可支持2NX2N、NXN、2NXN或NX2N的PU大小。視頻編碼器20和視頻解碼器30還可支持2NXnU、2NXnD、nLX2N和nRX2N的PU大小的不對稱分割。在一些實(shí)例中,視頻編碼器20可沿著不以直角會合CU的側(cè)的邊界將CU分割為若干PU。
[0081]運(yùn)動(dòng)估計(jì)模塊102可執(zhí)行關(guān)于⑶的每一 的運(yùn)動(dòng)估計(jì)操作。當(dāng)運(yùn)動(dòng)估計(jì)模塊102執(zhí)行關(guān)于I3U的運(yùn)動(dòng)估計(jì)操作時(shí),運(yùn)動(dòng)估計(jì)模塊102產(chǎn)生PU的一個(gè)或一個(gè)以上運(yùn)動(dòng)向量。舉例來說,切片可為I切片、P切片或B切片。運(yùn)動(dòng)估計(jì)模塊102和運(yùn)動(dòng)補(bǔ)償模塊104可取決于CU是否在I切片、P切片或B切片中而執(zhí)行針對CU的PU的不同操作。在I切片中,所有⑶經(jīng)幀內(nèi)預(yù)測。因此,如果⑶在I切片中,那么運(yùn)動(dòng)估計(jì)模塊102和運(yùn)動(dòng)補(bǔ)償模塊104不對⑶執(zhí)行幀間預(yù)測。
[0082]如果CU在P切片中,那么含有CU的圖片與稱為“列表O”的參考圖片列表相關(guān)聯(lián)。列表O中的參考圖片中的每一者含有可用于解碼次序上的后續(xù)圖片的幀間預(yù)測的像素值。當(dāng)運(yùn)動(dòng)估計(jì)模塊102執(zhí)行關(guān)于P切片中的的運(yùn)動(dòng)估計(jì)操作時(shí),運(yùn)動(dòng)估計(jì)模塊102搜索列表O中的參考圖片是否有PU的參考樣本。I3U的參考樣本可為一組像素值,其最接近地對應(yīng)于PU的像素值。運(yùn)動(dòng)估計(jì)模塊102可使用多種度量來確定參考圖片中的一組像素值如何接近地對應(yīng)于的像素值。舉例來說,運(yùn)動(dòng)估計(jì)模塊102可通過絕對差和(SAD)、平方差和(SSD)或其它差度量來確定參考圖片中的一組像素值如何接近地對應(yīng)于的像素值。
[0083]在識別P切片中的⑶的PU的參考樣本之后,運(yùn)動(dòng)估計(jì)模塊102可產(chǎn)生指示列表O中含有參考樣本的參考圖片的參考索引,以及指不PU與參考樣本之間的空間位移的運(yùn)動(dòng)向量。在各種實(shí)例中,運(yùn)動(dòng)估計(jì)模塊102可在各種程度的精度上產(chǎn)生運(yùn)動(dòng)向量。舉例來說,運(yùn)動(dòng)估計(jì)模塊102可以四分之一像素精度、八分之一像素精度或其它分?jǐn)?shù)像素精度來產(chǎn)生運(yùn)動(dòng)向量。運(yùn)動(dòng)估計(jì)模塊102可將參考索引和運(yùn)動(dòng)向量輸出到熵編碼模塊116和運(yùn)動(dòng)補(bǔ)償模塊104。運(yùn)動(dòng)補(bǔ)償模塊104可使用⑶的PU的參考索引和運(yùn)動(dòng)向量來識別和檢索I3U的參考樣本。運(yùn)動(dòng)補(bǔ)償模塊104可隨后使用的參考樣本的像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。
[0084]如果⑶在B切片中,那么含有⑶的圖片可與稱為“列表O”和“列表I”的兩個(gè)參考圖片列表相關(guān)聯(lián)。列表O中的參考圖片中的每一者含有可用于解碼次序上的后續(xù)圖片的幀間預(yù)測的像素值。列表I中的參考圖片在解碼次序上發(fā)生在圖片之前,但在呈現(xiàn)次序上發(fā)生在圖片之后。在一些實(shí)例中,含有B切片的圖片可與作為列表O與列表I的組合的列表組合相關(guān)聯(lián)。
[0085]此外,如果⑶在B切片中,那么運(yùn)動(dòng)估計(jì)模塊102可執(zhí)行針對⑶的I3U的單向預(yù)測或雙向預(yù)測。當(dāng)運(yùn)動(dòng)估計(jì)模塊102執(zhí)行PU的單向預(yù)測時(shí),運(yùn)動(dòng)估計(jì)模塊102可搜索列表I的參考圖片是否有PU的參考樣本。運(yùn)動(dòng)估計(jì)模塊102可隨后產(chǎn)生指示列表I中含有參考樣本的參考圖片的參考索引,以及指示PU與參考樣本之間的空間位移的運(yùn)動(dòng)向量。運(yùn)動(dòng)估計(jì)模塊102可將CU的PU的參考索引和運(yùn)動(dòng)向量輸出到熵編碼模塊116和運(yùn)動(dòng)補(bǔ)償模塊104。運(yùn)動(dòng)補(bǔ)償模塊104可使用⑶的PU的參考索引和運(yùn)動(dòng)向量來識別和檢索I3U的參考樣本。運(yùn)動(dòng)補(bǔ)償模塊104可隨后使用的參考樣本的像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。
[0086]當(dāng)運(yùn)動(dòng)估計(jì)模塊102執(zhí)行PU的雙向預(yù)測時(shí),運(yùn)動(dòng)估計(jì)模塊102可搜索列表O中的參考圖片是否有PU的參考樣本,且還可搜索列表I中的參考圖片是否有PU的另一參考樣本。運(yùn)動(dòng)估計(jì)模塊102可隨后產(chǎn)生指示參考樣本的參考索引,以及指示參考樣本與PU之間的空間位移的運(yùn)動(dòng)向量。運(yùn)動(dòng)估計(jì)模塊102可將參考索引和運(yùn)動(dòng)向量輸出到熵編碼模塊116和運(yùn)動(dòng)補(bǔ)償模塊104。運(yùn)動(dòng)補(bǔ)償模塊104可使用參考索引和運(yùn)動(dòng)向量來識別和檢索的參考樣本。運(yùn)動(dòng)補(bǔ)償模塊104可隨后從CU的PU的參考樣本中的像素值內(nèi)插CU的預(yù)測數(shù)據(jù)的像素值。
[0087]在一些實(shí)例中,運(yùn)動(dòng)估計(jì)模塊102可產(chǎn)生數(shù)據(jù),運(yùn)動(dòng)補(bǔ)償模塊104或視頻解碼器30可根據(jù)所述數(shù)據(jù)預(yù)測⑶的PU的運(yùn)動(dòng)向量。在此些實(shí)例中,運(yùn)動(dòng)補(bǔ)償模塊104或視頻解碼器30可使用來自相鄰CU的數(shù)據(jù)和運(yùn)動(dòng)數(shù)據(jù)來預(yù)測CU的PU的運(yùn)動(dòng)向量。然而,如果相鄰CU不可用,那么運(yùn)動(dòng)估計(jì)模塊102可不使用相鄰CU的運(yùn)動(dòng)向量來產(chǎn)生此數(shù)據(jù)。因此,運(yùn)動(dòng)估計(jì)模塊102可使用本發(fā)明的技術(shù)來確定相鄰CU的可用性。相鄰CU可出于各種原因而不可用。舉例來說,如果視頻編碼器20尚未對相鄰CU進(jìn)行編碼,如果相鄰CU不存在,如果相鄰CU處于與CU不同的切片中,或如果視頻編碼器20另外不能使用與相鄰CU相關(guān)聯(lián)的數(shù)據(jù)來預(yù)測CU的PU的運(yùn)動(dòng)向量,那么相鄰CU可為不可用的。
[0088]作為對CU執(zhí)行編碼操作的部分,幀內(nèi)預(yù)測模塊106可對CU執(zhí)行幀內(nèi)預(yù)測。換句話說,幀內(nèi)預(yù)測模塊106可基于與CU相同的切片中的經(jīng)解碼像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。幀內(nèi)預(yù)測可提供空間壓縮。
[0089]為了對CU執(zhí)行幀內(nèi)預(yù)測,幀內(nèi)預(yù)測模塊106可使用多個(gè)幀內(nèi)預(yù)測模式來產(chǎn)生CU的多個(gè)預(yù)測數(shù)據(jù)集合。當(dāng)幀內(nèi)預(yù)測模塊106使用幀內(nèi)預(yù)測模式來產(chǎn)生CU的預(yù)測數(shù)據(jù)集合時(shí),幀內(nèi)預(yù)測模塊106可在與幀內(nèi)預(yù)測模式相關(guān)聯(lián)的方向和/或梯度上從相鄰CU延伸像素值越過⑶。相鄰⑶可位于當(dāng)前⑶的上方、右上方和左上方或左邊,假定⑶和樹塊的從左到右、從上到下(即,z掃描)編碼次序。幀內(nèi)預(yù)測模塊106可使用各種數(shù)目的幀內(nèi)預(yù)測模式,例如33個(gè)方向性幀內(nèi)預(yù)測模式,這取決于CU的大小。
[0090]如果相鄰⑶不可用,那么幀內(nèi)預(yù)測模塊106可不能使用相鄰⑶的像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。相鄰CU可出于各種原因而不可用。舉例來說,如果視頻編碼器20尚未對相鄰CU進(jìn)行編碼,如果相鄰CU不存在,如果相鄰CU處于與CU不同的切片中,或如果幀內(nèi)預(yù)測模塊106另外不能使用相鄰CU的像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù),那么相鄰CU可為不可用的。因此,幀內(nèi)預(yù)測模塊106可能需要確定相鄰CU是否可用。在一些實(shí)例中,幀內(nèi)預(yù)測模塊106可使用本發(fā)明的技術(shù)來確定相鄰CU的可用性。
[0091]在一些實(shí)例中,如果幀內(nèi)預(yù)測模塊106確定相鄰⑶不存在,那么幀內(nèi)預(yù)測模塊106可使用默認(rèn)像素值而非相鄰⑶的實(shí)際像素值來產(chǎn)生⑶的預(yù)測數(shù)據(jù)。此外,在一些實(shí)例中,如果幀內(nèi)預(yù)測模塊106確定相鄰CU不存在,那么幀內(nèi)預(yù)測模塊106可使用合成像素值而非相鄰CU的實(shí)際像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。幀內(nèi)預(yù)測模塊106可基于可用的相鄰CU的像素值產(chǎn)生合成像素值。
[0092]幀內(nèi)預(yù)測模塊106可選擇CU的預(yù)測數(shù)據(jù)集合中的一者。在各種實(shí)例中,幀內(nèi)預(yù)測模塊106可以各種方式選擇CU的預(yù)測數(shù)據(jù)集合。舉例來說,幀內(nèi)預(yù)測模塊106可通過計(jì)算預(yù)測數(shù)據(jù)集合的失真率且選擇具有最低失真率的預(yù)測數(shù)據(jù)集合來選擇CU的預(yù)測數(shù)據(jù)集
八
口 ο
[0093]模式選擇模塊100可從由運(yùn)動(dòng)補(bǔ)償模塊104針對⑶產(chǎn)生的預(yù)測數(shù)據(jù)或由幀內(nèi)預(yù)測模塊106針對CU產(chǎn)生的預(yù)測數(shù)據(jù)當(dāng)中選擇CU的預(yù)測數(shù)據(jù)。在一些實(shí)例中,模式選擇模塊100基于預(yù)測數(shù)據(jù)集合中的誤差(即,失真)來選擇CU的預(yù)測數(shù)據(jù)。在一些實(shí)例中,模式選擇模塊100基于速率-失真量度來選擇CU的預(yù)測數(shù)據(jù),所述量度平衡了譯碼位的數(shù)目對所得經(jīng)譯碼數(shù)據(jù)中的失真。
[0094]在模式選擇模塊100選擇⑶的預(yù)測數(shù)據(jù)之后,殘余產(chǎn)生模塊110可執(zhí)行殘余產(chǎn)生操作,其基于CU的預(yù)測數(shù)據(jù)產(chǎn)生CU的殘余數(shù)據(jù)。CU的殘余數(shù)據(jù)可指示CU的原始像素值與⑶的預(yù)測數(shù)據(jù)之間的像素值的差。在一些實(shí)例中,執(zhí)行殘余產(chǎn)生操作可包括從⑶的像素值減去CU的預(yù)測數(shù)據(jù)。CU的殘余數(shù)據(jù)可包含對應(yīng)于CU中的像素的不同像素分量的2D殘余塊。舉例來說,殘余數(shù)據(jù)可包含對應(yīng)于CU的預(yù)測數(shù)據(jù)中的像素的明度分量與CU的原始像素中的明度像素分量之間的差的殘余塊。另外,CU的殘余數(shù)據(jù)可包含對應(yīng)于CU的預(yù)測數(shù)據(jù)中的像素的色度分量與CU的原始像素的色度分量之間的差的殘余塊。
[0095]如上文描述,⑶可具有一個(gè)或一個(gè)以上TU。⑶的每一 TU可對應(yīng)于⑶的殘余數(shù)據(jù)的一不同部分。CU的TU的大小可以或可以不基于CU的PU的大小。在一些實(shí)例中,視頻編碼器20可使用遞歸四叉樹分割來將CU再分為若干TU。所得數(shù)據(jù)結(jié)構(gòu)可稱為“殘余四叉樹”(RQT)。RQT中的每一節(jié)點(diǎn)可對應(yīng)于⑶的TU。當(dāng)根據(jù)本發(fā)明的技術(shù)確定相鄰者的可用性時(shí),視頻譯碼器可使用RQT作為樹塊的CU的四叉樹的擴(kuò)展。
[0096]變換模塊112可通過將變換應(yīng)用于對應(yīng)于TU的殘余數(shù)據(jù)來產(chǎn)生⑶的每一未經(jīng)分割TU的變換系數(shù)塊。舉例來說,變換模塊112可將變換應(yīng)用于殘余數(shù)據(jù)的特定部分以產(chǎn)生變換系數(shù)塊。變換系數(shù)塊中的每一者可為系數(shù)的2D矩陣。在各種實(shí)例中,變換模塊112可將各種變換應(yīng)用于對應(yīng)于TU的殘余數(shù)據(jù)。舉例來說,變換模塊112可應(yīng)用離散余弦變換(DCT)、方向性變換或概念上類似的變換。
[0097]在變換模塊112產(chǎn)生TU的變換系數(shù)塊之后,量化模塊114可量化變換系數(shù)塊中的系數(shù)。量化大體上指代其中變換系數(shù)塊中的系數(shù)經(jīng)量化以可能地減少用以表示所述系數(shù)的數(shù)據(jù)量從而提供進(jìn)一步壓縮的過程。量化可減少與系數(shù)中的一些或全部相關(guān)聯(lián)的位深度。舉例來說,在量化期間可將η位值下舍入到m位值,其中η大于m。
[0098]在量化模塊114量化變換系數(shù)塊之后,熵編碼模塊116可對變換系數(shù)塊執(zhí)行熵編碼操作。在各種實(shí)例中,視頻編碼器20可對變換系數(shù)塊執(zhí)行各種類型的熵編碼操作。舉例來說,視頻編碼器20可對變換系數(shù)塊執(zhí)行上下文自適應(yīng)可變長度譯碼(CAVLC)操作、上下文自適應(yīng)二進(jìn)制算術(shù)譯碼(CABAC)操作、基于語法的上下文自適應(yīng)二進(jìn)制算術(shù)譯碼(SBAC)操作、概率區(qū)間分割熵(PIPE)譯碼操作或另一類型的熵編碼操作。視頻編碼器20還可對與視頻數(shù)據(jù)相關(guān)聯(lián)的語法元素執(zhí)行熵編碼操作。
[0099]為了執(zhí)行CABAC,熵編碼模塊116可將上下文模型指派于待發(fā)射的符號。所述上下文可例如涉及符號的相鄰值是否為非零。為了執(zhí)行CAVLC,視頻編碼器20可針對待發(fā)射符號選擇可變長度譯碼。VLC中的碼字可經(jīng)構(gòu)造以使得相對較短的碼對應(yīng)于較可能的符號,而相對長的碼對應(yīng)于較不可能的符號。以此方式,VLC的使用可針對待發(fā)射的每一符號使用相等長度碼字來實(shí)現(xiàn)位節(jié)省。概率確定可基于對符號指派的上下文。
[0100]在一些實(shí)例中,當(dāng)熵編碼模塊116對變換系數(shù)塊執(zhí)行熵編碼操作時(shí),熵編碼模塊116可基于與相鄰于與變換系數(shù)塊相關(guān)聯(lián)的TU的TU相關(guān)聯(lián)的數(shù)據(jù)而選擇一個(gè)或一個(gè)以上上下文模型用于對變換系數(shù)塊進(jìn)行編碼。然而,如果相鄰TU不可用,熵編碼模塊116可能不能選擇用于對變換系數(shù)塊進(jìn)行編碼的上下文模型。相鄰TU可出于各種原因而不可用。舉例來說,如果熵編碼模塊116尚未對相鄰TU執(zhí)行熵編碼操作或如果熵編碼模塊116另外不能存取通過對相鄰TU執(zhí)行熵編碼操作而產(chǎn)生的數(shù)據(jù),那么相鄰TU可能不可用。因此,熵編碼模塊116可確定相鄰TU是否可用。在一些此類實(shí)例中,熵編碼模塊116可使用本發(fā)明的技術(shù)來確定相鄰于TU的TU的可用性。當(dāng)對CU的其它語法元素執(zhí)行熵編碼操作時(shí),類似的考慮可適用。
[0101]逆量化模塊118和逆變換模塊120可分別將逆量化和逆變換應(yīng)用于變換系數(shù)塊以從變換系數(shù)塊解碼用于譯碼單元的殘余數(shù)據(jù)。重構(gòu)模塊122可將經(jīng)重構(gòu)殘余數(shù)據(jù)添加到由運(yùn)動(dòng)補(bǔ)償模塊104或幀內(nèi)預(yù)測模塊106產(chǎn)生的預(yù)測數(shù)據(jù)以產(chǎn)生經(jīng)重構(gòu)視頻塊用于存儲在經(jīng)解碼圖片緩沖器124中。換句話說,重構(gòu)模塊122可基于視頻單元的預(yù)測數(shù)據(jù)和視頻單元的殘余數(shù)據(jù)而重構(gòu)視頻單元的像素值。運(yùn)動(dòng)估計(jì)模塊102和運(yùn)動(dòng)補(bǔ)償模塊104可使用含有經(jīng)重構(gòu)視頻塊的參考圖片來對后續(xù)圖片的CU執(zhí)行幀間預(yù)測。視頻解碼器30可輸出圖片,所述圖片包含當(dāng)前視頻單元的像素值。
[0102]在視頻編碼器20對變換系數(shù)塊執(zhí)行熵編碼之后,視頻編碼器20可在用于視頻數(shù)據(jù)的位流中包含表示經(jīng)熵編碼變換系數(shù)塊的數(shù)據(jù)。所述位流可為形成經(jīng)譯碼圖片的表示和相關(guān)聯(lián)數(shù)據(jù)的位序列。所述位流可包括網(wǎng)絡(luò)抽象層(NAL)單元的序列。NAL單元中的每一者可為一種語法結(jié)構(gòu),其含有NAL單元中的數(shù)據(jù)類型和含有所述數(shù)據(jù)的字節(jié)的指示。舉例來說,NAL單元可含有表示PPS、經(jīng)譯碼切片、補(bǔ)充增強(qiáng)信息、存取單元定界符、填充數(shù)據(jù)或另一類型數(shù)據(jù)的數(shù)據(jù)。NAL單元的數(shù)據(jù)可呈散布有防止競爭位的原始字節(jié)序列有效負(fù)載(RBSP)的形式。RBSP可為含有整數(shù)個(gè)字節(jié)的囊封于NAL單元內(nèi)的語法結(jié)構(gòu)。
[0103]圖8是圖解說明經(jīng)配置以實(shí)施本發(fā)明的技術(shù)的視頻解碼器30的實(shí)例配置的框圖。圖8是為了闡釋目的而提供,且不限制如本發(fā)明中廣義地例示和描述的技術(shù)。為了闡釋的目的,本發(fā)明在HEVC譯碼的上下文中描述視頻解碼器30。然而,本發(fā)明的技術(shù)可適用于其它譯碼標(biāo)準(zhǔn)或方法。
[0104]在圖8的實(shí)例中,視頻解碼器30包含多個(gè)功能組件。視頻解碼器30的功能組件包含熵解碼模塊150、運(yùn)動(dòng)補(bǔ)償模塊152、幀內(nèi)預(yù)測模塊154、逆量化模塊156、逆變換模塊158、重構(gòu)模塊160,以及經(jīng)解碼圖片緩沖器162。在一些實(shí)例中,視頻解碼器30可執(zhí)行與關(guān)于圖7的視頻編碼器20描述的編碼遍次大體上互逆的解碼遍次。在其它實(shí)例中,視頻解碼器30可包含較多、較少或不同功能組件。舉例來說,視頻解碼器30可包含解塊濾波器以對重構(gòu)模塊160的輸出進(jìn)行濾波以從經(jīng)重構(gòu)視頻移除成塊假象。
[0105]視頻解碼器30可接收包括經(jīng)編碼視頻數(shù)據(jù)的位流。當(dāng)視頻解碼器30接收到位流時(shí),視頻解碼器30對位流執(zhí)行解碼操作以重構(gòu)視頻數(shù)據(jù)的每一圖片中的像素值。作為對位流執(zhí)行解碼操作的部分,視頻解碼器30可對視頻數(shù)據(jù)中的每一圖片的每一樹塊執(zhí)行解碼操作。視頻解碼器30可以光柵掃描次序?qū)D片內(nèi)的樹塊執(zhí)行解碼操作。作為對樹塊執(zhí)行解碼操作的部分,視頻解碼器30可在樹塊的四叉樹的每一層級處以z掃描次序?qū)λ鰧蛹壧幍臉鋲K的CU執(zhí)行解碼操作。
[0106]作為對未經(jīng)分割CU執(zhí)行解碼操作的部分,視頻解碼器30可在未經(jīng)分割CU的殘余四叉樹的每一層級處以z掃描次序?qū)Β堑拿恳?TU執(zhí)行解碼操作。通過對⑶的每一 TU執(zhí)行解碼操作,視頻解碼器30可重構(gòu)CU的殘余數(shù)據(jù)。
[0107]作為對未經(jīng)分割TU執(zhí)行解碼操作的部分,熵解碼模塊150可對與TU相關(guān)聯(lián)的變換系數(shù)塊的經(jīng)編碼版本執(zhí)行熵解碼操作。在一些實(shí)例中,熵解碼模塊150可使用CABAC來對變換系數(shù)塊進(jìn)行解碼。在此些實(shí)例中,熵解碼模塊150可基于通過對與相鄰TU相關(guān)聯(lián)的變換系數(shù)塊執(zhí)行熵解碼操作所產(chǎn)生的數(shù)據(jù)而選擇上下文模型。熵解碼模塊150可使用選定上下文模型來對變換系數(shù)塊進(jìn)行解碼。
[0108]然而,如果相鄰TU不可用,那么熵解碼模塊150可能不能基于通過對與相鄰TU相關(guān)聯(lián)的變換系數(shù)塊執(zhí)行熵解碼操作所產(chǎn)生的數(shù)據(jù)而選擇上下文模型。相鄰TU可出于各種原因而不可用。舉例來說,如果熵解碼模塊150尚未對相鄰TU執(zhí)行熵解碼操作或如果熵解碼模塊150另外不能使用通過對相鄰TU執(zhí)行熵解碼操作而產(chǎn)生的數(shù)據(jù),那么相鄰TU可能不可用。因此,熵解碼模塊150可確定相鄰TU是否可用。在此些實(shí)例中,熵解碼模塊150可使用本發(fā)明的技術(shù)來確定相鄰TU是否可用。以此方式,視頻譯碼器(例如,視頻編碼器20或視頻解碼器30)可基于與相鄰于給定視頻單元的視頻單元相關(guān)聯(lián)的數(shù)據(jù)而選擇上下文模型,且基于選定上下文模型而對與給定視頻單元相關(guān)聯(lián)的數(shù)據(jù)執(zhí)行熵譯碼操作。
[0109]此外,作為對未經(jīng)分割TU執(zhí)行解碼操作的部分,逆量化模塊156可對與TU相關(guān)聯(lián)的變換系數(shù)塊進(jìn)行逆量化,即解量化。逆量化模塊156可以類似于針對HEVC提出或由H.264解碼標(biāo)準(zhǔn)界定的逆量化過程的方式來逆量化變換系數(shù)塊。逆量化模塊156可使用由視頻編碼器20針對變換系數(shù)塊的CU計(jì)算的量化參數(shù)QP來確定量化程度,且同樣確定將應(yīng)用的用于逆量化模塊156的逆量化程度。
[0110]在逆量化模塊156逆量化變換系數(shù)塊之后,逆變換模塊158可產(chǎn)生與變換系數(shù)塊相關(guān)聯(lián)的TU的殘余數(shù)據(jù)。逆變換模塊158可至少部分地通過將逆變換應(yīng)用于變換系數(shù)塊來產(chǎn)生TU的殘余數(shù)據(jù)。舉例來說,逆變換模塊158可將逆DCT、逆整數(shù)變換、逆卡忽南-拉維(Karhunen-Loeve)變換(KLT)、逆旋轉(zhuǎn)變換、逆方向性變換或另一逆變換應(yīng)用于變換系數(shù)塊。在一些實(shí)例中,逆變換模塊158可基于來自視頻編碼器20的信令來確定將應(yīng)用于變換系數(shù)塊的逆變換。在此些實(shí)例中,逆變換模塊158可基于與變換系數(shù)塊相關(guān)聯(lián)的樹塊的四叉樹的根節(jié)點(diǎn)處用信號發(fā)送的變換來確定逆變換。在其它實(shí)例中,逆變換模塊158可從例如塊大小、譯碼模式或類似物等一個(gè)或一個(gè)以上譯碼特性推斷逆變換。在一些實(shí)例中,逆變換模塊158可應(yīng)用級聯(lián)逆變換。
[0111]運(yùn)動(dòng)補(bǔ)償模塊152可執(zhí)行運(yùn)動(dòng)補(bǔ)償以產(chǎn)生⑶的預(yù)測數(shù)據(jù)。為了執(zhí)行運(yùn)動(dòng)補(bǔ)償,運(yùn)動(dòng)補(bǔ)償模塊152可基于相鄰于CU的CU的PU的運(yùn)動(dòng)信息來預(yù)測CU的PU的運(yùn)動(dòng)信息。在一些實(shí)例中,運(yùn)動(dòng)補(bǔ)償模塊152可使用合并/跳過模式或AMVP模式來預(yù)測的運(yùn)動(dòng)信息。運(yùn)動(dòng)補(bǔ)償模塊152可使用⑶的PU的運(yùn)動(dòng)信息來識別的參考樣本。運(yùn)動(dòng)補(bǔ)償模塊152可隨后使用PU的參考樣本來產(chǎn)生CU的預(yù)測數(shù)據(jù)。
[0112]然而,如果相鄰⑶不可用,那么運(yùn)動(dòng)補(bǔ)償模塊152可能不能基于相鄰⑶的的運(yùn)動(dòng)信息來預(yù)測CU的PU的運(yùn)動(dòng)信息。相鄰CU可出于各種原因而不可用。舉例來說,如果視頻解碼器30尚未對相鄰CU進(jìn)行解碼,如果相鄰CU不存在,如果相鄰CU處于與CU不同的切片中,或如果運(yùn)動(dòng)補(bǔ)償模塊152另外不能使用與相鄰CU相關(guān)聯(lián)的數(shù)據(jù)來預(yù)測CU的PU的運(yùn)動(dòng)向量,那么相鄰CU可為不可用的。因此,運(yùn)動(dòng)補(bǔ)償模塊152可確定相鄰CU是否可用。運(yùn)動(dòng)估計(jì)模塊152可使用本發(fā)明的技術(shù)來確定相鄰CU是否可用。
[0113]在一些實(shí)例中,運(yùn)動(dòng)補(bǔ)償模塊152可通過基于內(nèi)插濾波器執(zhí)行內(nèi)插來精煉⑶的預(yù)測數(shù)據(jù)。將用于具有子像素精度的運(yùn)動(dòng)補(bǔ)償?shù)膬?nèi)插濾波器的識別符可包含于語法元素中。運(yùn)動(dòng)補(bǔ)償模塊152可使用由視頻編碼器20在CU的預(yù)測數(shù)據(jù)的產(chǎn)生期間使用的相同內(nèi)插濾波器來計(jì)算參考塊的子整數(shù)像素的經(jīng)內(nèi)插值。運(yùn)動(dòng)補(bǔ)償模塊152可根據(jù)所接收語法信息來確定由視頻編碼器20使用的內(nèi)插濾波器且使用所述內(nèi)插濾波器來產(chǎn)生預(yù)測數(shù)據(jù)。
[0114]幀內(nèi)預(yù)測模塊154可執(zhí)行幀內(nèi)預(yù)測來產(chǎn)生CU的預(yù)測數(shù)據(jù)。舉例來說,幀內(nèi)預(yù)測模塊154可基于位流中的語法元素來確定CU的幀內(nèi)預(yù)測模式。幀內(nèi)預(yù)測模塊154可隨后使用幀內(nèi)預(yù)測模式基于相鄰CU的像素值而產(chǎn)生CU的預(yù)測數(shù)據(jù)(例如,預(yù)測像素值)。
[0115]然而,如果相鄰⑶不可用,那么幀內(nèi)預(yù)測模塊154可能不能使用相鄰⑶的像素值。相鄰CU可出于各種原因而不可用。舉例來說,如果視頻解碼器30尚未對相鄰CU進(jìn)行解碼,如果相鄰CU不存在,如果相鄰CU處于與CU不同的切片中,或如果幀內(nèi)預(yù)測模塊154另外不能使用相鄰⑶的像素值來產(chǎn)生⑶的預(yù)測數(shù)據(jù),那么相鄰⑶可為不可用的。因此,幀內(nèi)預(yù)測模塊154可確定相鄰CU是否可用。幀內(nèi)預(yù)測模塊154可使用本發(fā)明的技術(shù)來確定相鄰CU是否可用。如果CU的幀內(nèi)預(yù)測模式必須使用不可用相鄰CU的像素值,那么幀內(nèi)預(yù)測模塊154可使用默認(rèn)或合成像素值而不是使用不可用相鄰CU的像素值來產(chǎn)生CU的預(yù)測數(shù)據(jù)。[0116]在HEVC實(shí)例中,運(yùn)動(dòng)補(bǔ)償模塊152和幀內(nèi)預(yù)測模塊154可使用語法信息(例如,由四叉樹提供)中的一些來確定用以對經(jīng)編碼視頻序列的圖片進(jìn)行編碼的樹塊的大小、描述經(jīng)編碼視頻序列的圖片的每一 CU如何分裂(以及同樣,子CU如何分裂)的分裂信息、指示每一 CU如何經(jīng)編碼的模式(例如,幀內(nèi)或幀間預(yù)測,和針對幀內(nèi)預(yù)測的幀內(nèi)預(yù)測編碼模式)、每一經(jīng)幀間預(yù)測CU的一個(gè)或一個(gè)以上參考幀(和/或含有參考幀的識別符的參考圖片列表),以及用以對經(jīng)編碼視頻序列進(jìn)行解碼的其它信息。
[0117]重構(gòu)模塊160可使用⑶的殘余數(shù)據(jù)和⑶的預(yù)測數(shù)據(jù)來重構(gòu)⑶的像素值。在一些實(shí)例中,視頻解碼器30可應(yīng)用解塊濾波器以從切片或圖片的經(jīng)重構(gòu)像素值濾波器移除成塊假象。經(jīng)解碼圖片緩沖器162可存儲視頻數(shù)據(jù)的圖片的經(jīng)解碼像素值。經(jīng)解碼圖片緩沖器162可提供參考圖片以用于后續(xù)運(yùn)動(dòng)補(bǔ)償、幀內(nèi)預(yù)測以及在例如圖1的顯示裝置32等顯示裝置上的呈現(xiàn)。
[0118]圖9是圖解說明用以確定當(dāng)前視頻單元的相鄰者的可用性的實(shí)例性遞歸操作200的流程圖。如本發(fā)明中別處所述,例如視頻編碼器20和視頻解碼器30等視頻譯碼器可出于各種原因確定相鄰視頻單元是否可用。視頻譯碼器可出于此些原因中的任一者而執(zhí)行操作200。舉例來說,如果視頻譯碼器是視頻編碼器,那么視頻譯碼器可在確定CU的PU的運(yùn)動(dòng)信息時(shí)執(zhí)行操作200。在此實(shí)例中,視頻譯碼器可確定相鄰CU的可用性且基于可用相鄰⑶中的一者的PU的運(yùn)動(dòng)信息來用信號發(fā)送PU的運(yùn)動(dòng)信息。在另一實(shí)例中,如果視頻譯碼器是視頻解碼器,那么視頻譯碼器可在對CU執(zhí)行幀內(nèi)預(yù)測操作時(shí)執(zhí)行操作200。在此實(shí)例中,視頻譯碼器可確定相鄰CU的可用性,且如果CU的幀內(nèi)預(yù)測模式必須使用不可用CU的像素值,那么使用默認(rèn)或合成像素值。
[0119]當(dāng)視頻譯碼器(例如視頻編碼器20或視頻解碼器30)確定當(dāng)前視頻單元的相鄰視頻單元的可用性時(shí),視頻譯碼器確定當(dāng)前視頻單元是否為樹塊(202)。如果當(dāng)前視頻單元是樹塊(202的“是”),那么視頻譯碼器可基于當(dāng)前視頻單元的水平和垂直索引以及關(guān)于含有當(dāng)前視頻單元的切片的信息來確定相鄰視頻單元的可用性(204)。舉例來說,在確定當(dāng)前視頻單元是樹塊之后,視頻譯碼器可基于圖片內(nèi)的當(dāng)前視頻單元的位置確定當(dāng)前視頻單元的相鄰者的可用性。
[0120]舉例來說,如果當(dāng)前視頻單元是樹塊,那么當(dāng)前視頻單元可具有水平索引I和垂直索引1,即當(dāng)前視頻單元處于坐標(biāo)(1,1)。在此實(shí)例中,樹塊可根據(jù)光柵掃描次序來譯碼。因此,如果當(dāng)前視頻單元左上方的樹塊(即,左上方相鄰者)、當(dāng)前視頻單元上方的樹塊(即,上方相鄰者)、當(dāng)前視頻單元右上方的樹塊(即,右上方相鄰者)、當(dāng)前視頻單元左邊的樹塊(即,左邊相鄰者)處于與樹塊相同的切片中,那么左上方相鄰者、上方相鄰者、右上方相鄰者和左邊相鄰者可用。然而,當(dāng)前視頻單元左下方的樹塊(即,左下方相鄰者)不可用。左下方相鄰者不可用是因?yàn)樵诖藢?shí)例中,視頻譯碼器根據(jù)光柵掃描次序?qū)鋲K進(jìn)行譯碼,且當(dāng)前視頻單元在光柵掃描次序上在左下方相鄰者之前發(fā)生。
[0121]如果當(dāng)前視頻單元不是樹塊(202的“否”),那么當(dāng)前視頻單元是樹塊的子單元。因此,為了確定當(dāng)前視頻單元的相鄰者是否可用,視頻譯碼器可確定當(dāng)前視頻單元的母代視頻單元的相鄰者的可用性(206)。當(dāng)前視頻單元的母代視頻單元可對應(yīng)于與當(dāng)前視頻單元對應(yīng)的四叉樹節(jié)點(diǎn)正上方的四叉樹節(jié)點(diǎn)。圖5展示具有連續(xù)子CU層級的實(shí)例性四叉樹分割階層。[0122]為了確定母代視頻單元的相鄰者的可用性,視頻譯碼器可遞歸地調(diào)用操作200。也就是說,視頻譯碼器可至少部分地通過遞歸地執(zhí)行操作以確定當(dāng)前視頻單元的前代視頻單元的相鄰者的可用性來確定母代視頻單元的相鄰者的可用性。前代視頻單元可為在四叉樹數(shù)據(jù)結(jié)構(gòu)中在當(dāng)前視頻單元上方的視頻單元。當(dāng)視頻譯碼器遞歸地調(diào)用操作200時(shí),當(dāng)前節(jié)點(diǎn)的母代視頻單元是“當(dāng)前”節(jié)點(diǎn)。因此,如果母代視頻單元是樹塊,那么視頻譯碼器可基于如上所述的母代視頻單元的水平和垂直索引而確定母代視頻單元的相鄰者的可用性。另一方面,如果母代視頻單元不是樹塊,那么視頻譯碼器可確定母代視頻單元的母代視頻單元(即,祖代視頻單元)的相鄰者的可用性。
[0123]如果祖代視頻單元是樹塊,那么視頻譯碼器可使用如上所述的祖代視頻單元的水平和垂直索引確定祖代視頻單元的相鄰者的可用性。如果祖代視頻單元不是樹塊,那么視頻譯碼器可確定祖代視頻單元的母代視頻單元(即,曾祖代視頻單元)的可用性。處理通過當(dāng)前視頻單元的前代視頻單元的此過程可以此方式繼續(xù)直到到達(dá)樹塊(即,前代樹塊)且視頻譯碼器能夠確定前代樹塊的相鄰者的可用性為止。一旦視頻譯碼器確定當(dāng)前視頻單元的前代樹塊的可用性,視頻譯碼器便可返回向下工作通過當(dāng)前視頻單元的前代視頻單元。對于每一代處的視頻單元,視頻譯碼器使用視頻單元的母代視頻單元的可用性來識別LUT中的條目。LUT可包含母代視頻單元的相鄰者的可用性的多種組合。所識別條目指示視頻單元的相鄰者的可用性。
[0124]在視頻譯碼器已確定當(dāng)前視頻單元的母代視頻單元的相鄰者的可用性之后,視頻譯碼器使用當(dāng)前視頻單元的母代視頻單元的相鄰者的可用性來識別LUT中的條目(208)。所識別條目可包含一系列值,所述值中的每一者指示當(dāng)前視頻單元的不同相鄰者的可用性。視頻譯碼器可隨后基于所識別條目來識別當(dāng)前視頻單元的相鄰者的可用性(210)。使用當(dāng)前視頻單元的母代視頻單元的相鄰者的可用性識別的條目指示當(dāng)前視頻單元的相鄰者的可用性。
[0125]以下是實(shí)例LUT。
[0126]
【權(quán)利要求】
1.一種用于對視頻數(shù)據(jù)進(jìn)行譯碼的方法,所述方法包括: 基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目,所述當(dāng)前視頻單元在所述視頻數(shù)據(jù)的圖片內(nèi),所述所識別條目指示相鄰于所述當(dāng)前視頻單元的視頻單元的可用性;以及 基于相鄰于所述當(dāng)前視頻單元的所述視頻單元是否可用而對所述當(dāng)前視頻單元執(zhí)行譯碼操作。
2.根據(jù)權(quán)利要求1所述的方法,其中對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作包括基于與相鄰于所述當(dāng)前視頻單元的所述視頻單元相關(guān)聯(lián)的數(shù)據(jù)對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作。
3.根據(jù)權(quán)利要求2所述的方法,其中使用與所述相鄰者相關(guān)聯(lián)的所述數(shù)據(jù)來對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作包括: 基于與相鄰于所述當(dāng)前視頻單元的所述視頻單元相關(guān)聯(lián)的所述數(shù)據(jù)而選擇上下文模型;以及 基于所述選定上下文模型而對與所述當(dāng)前視頻單元相關(guān)聯(lián)的數(shù)據(jù)執(zhí)行熵譯碼操作。
4.根據(jù)權(quán)利要求1所述的方法,其中相鄰于所述當(dāng)前視頻單元的所述視頻單元與四叉樹的不同于所述當(dāng)前視頻單元的層級相關(guān)聯(lián)。
5.根據(jù)權(quán)利要求1所述的方法,其中所述當(dāng)前視頻單元為譯碼單元或變換單元。
6.根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包括: 確定所述當(dāng)前視頻單元是否為樹塊;以及` 在確定所述當(dāng)前視頻單元不是樹塊之后,確定相鄰于所述母代視頻單元的所述視頻單元的所述可用性。
7.根據(jù)權(quán)利要求6所述的方法,其進(jìn)一步包括在確定所述當(dāng)前視頻單元是樹塊之后,基于所述圖片內(nèi)的所述當(dāng)前視頻單元的位置確定相鄰于所述當(dāng)前視頻單元的所述視頻單元的所述可用性。
8.根據(jù)權(quán)利要求6所述的方法,其中確定相鄰于所述母代視頻單元的所述視頻單元的所述可用性包括遞歸地執(zhí)行操作以確定相鄰于所述當(dāng)前視頻單元的前代視頻單元的所述視頻單元的所述可用性。
9.根據(jù)權(quán)利要求6所述的方法,其中確定相鄰于所述母代視頻單元的所述視頻單元的所述可用性包括執(zhí)行非遞歸操作以確定相鄰于所述當(dāng)前視頻單元的所述前代視頻單元的所述視頻單元的所述可用性。
10.根據(jù)權(quán)利要求1所述的方法,其中所述所識別條目包括一系列值,所述值指示相鄰于所述當(dāng)前視頻單元的不同視頻單元的可用性。
11.根據(jù)權(quán)利要求1所述的方法,其中所述查找表包含用于相鄰于所述母代視頻單元的所述視頻單元的可用性的多種組合的條目。
12.根據(jù)權(quán)利要求11所述的方法,其中所述查找表包含用于所述母代視頻單元的其它子代視頻單元的條目,用于所述其它子代視頻單元的所述條目指示相鄰于所述其它子代視頻單元的視頻單元的可用性。
13.根據(jù)權(quán)利要求1所述的方法,其中所述譯碼操作是編碼操作的部分。
14.根據(jù)權(quán)利要求13所述的方法,其中對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作包括基于相鄰于所述當(dāng)前視頻單元的所述視頻單元的一個(gè)或一個(gè)以上像素值產(chǎn)生所述當(dāng)前視頻單元的預(yù)測數(shù)據(jù);且其中所述方法進(jìn)一步包括: 基于所述當(dāng)前視頻單元的所述預(yù)測數(shù)據(jù)產(chǎn)生所述當(dāng)前視頻單元的殘余數(shù)據(jù); 將一個(gè)或一個(gè)以上變換應(yīng)用于所述殘余數(shù)據(jù)以產(chǎn)生一個(gè)或一個(gè)以上變換系數(shù)塊;以及 輸出含有表示所述變換系數(shù)塊的經(jīng)編碼數(shù)據(jù)的位流。
15.根據(jù)權(quán)利要求1所述的方法,其中所述譯碼操作是解碼操作的部分。
16.根據(jù)權(quán)利要求15所述的方法, 其中對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作包括基于相鄰于所述當(dāng)前視頻單元的所述視頻單元的一個(gè)或一個(gè)以上像素值產(chǎn)生所述當(dāng)前視頻單元的預(yù)測數(shù)據(jù);且 其中所述方法進(jìn)一步包括: 對所述當(dāng)前視頻單元的殘余數(shù)據(jù)進(jìn)行解碼; 基于所述當(dāng)前視頻單元的所述預(yù)測數(shù)據(jù)和所述當(dāng)前視頻單元的所述殘余數(shù)據(jù)重構(gòu)所述當(dāng)前視頻單元的像素值;以及 輸出所述圖片,所述圖片包含所述當(dāng)前視頻單元的所述像素值。
17.一種視頻譯碼設(shè)備,其包括一個(gè)或一個(gè)以上處理器,所述一個(gè)或一個(gè)以上處理器經(jīng)配置以: 基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目,所述當(dāng)前視頻單元在圖片內(nèi),所述所識別條目指示相鄰于所述當(dāng)前視頻單元的視頻單元的可用性;以及 基于相鄰于所述當(dāng)前視頻單元的所述視頻單元是否可用而對所述當(dāng)前視頻單元執(zhí)行譯碼操作。
18.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以基于與相鄰于所述當(dāng)前視頻單元的所述視頻單元相關(guān)聯(lián)的數(shù)據(jù)對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作。
19.根據(jù)權(quán)利要求18所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以: 基于與相鄰于所述當(dāng)前視頻單元的所述視頻單元相關(guān)聯(lián)的所述數(shù)據(jù)而選擇上下文模型;以及 基于所述選定上下文模型而對與所述當(dāng)前視頻單元相關(guān)聯(lián)的數(shù)據(jù)執(zhí)行熵譯碼操作。
20.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中相鄰于所述當(dāng)前視頻單元的所述視頻單元與四叉樹的不同于所述當(dāng)前視頻單元的層級相關(guān)聯(lián)。
21.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中所述當(dāng)前視頻單元為譯碼視頻單元。
22.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以:確定所述當(dāng)前視頻單元是否為樹塊;以及 在確定所述當(dāng)前視頻單元不是樹塊之后,確定相鄰于所述母代視頻單元的所述視頻單元的所述可用性。
23.根據(jù)權(quán)利要求22所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以在確定所述當(dāng)前視頻單元是樹塊之后,基于所述圖片內(nèi)的所述當(dāng)前視頻單元的位置確定相鄰于所述當(dāng)前視頻單元的所述視頻單元的所述可用性。
24.根據(jù)權(quán)利要求22所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以遞歸地執(zhí)行操作以確定相鄰于所述當(dāng)前視頻單元的前代視頻單元的視頻單元的所述可用性。
25.根據(jù)權(quán)利要求22所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以執(zhí)行非遞歸操作以確定相鄰于所述當(dāng)前視頻單元的所述前代視頻單元的所述視頻單元的所述可用性。
26.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中所述條目包括一系列值,所述值指示相鄰于所述當(dāng)前視頻單元的不同視頻單元的可用性。
27.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中所述查找表包含用于相鄰于所述母代視頻單元的所述視頻單元的可用性的多種組合的條目。
28.根據(jù)權(quán)利要求27所述的視頻譯碼設(shè)備,其中所述查找表包含用于所述母代視頻單元的其它子代視頻單元的條目,用于所述其它子代視頻單元的所述條目指示相鄰于所述其它子代視頻單元的視頻單元的可用性。
29.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中所述譯碼操作是編碼操作的部分。
30.根據(jù)權(quán)利要求29所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以: 基于相鄰于所述當(dāng)前視頻單元的所述視頻單元的一個(gè)或一個(gè)以上像素值產(chǎn)生所述當(dāng)前視頻單元的預(yù)測數(shù)據(jù); 基于所述當(dāng)前視頻單元的所述預(yù)測數(shù)據(jù)產(chǎn)生所述當(dāng)前視頻單元的殘余數(shù)據(jù); 將一個(gè)或一個(gè)以上變換應(yīng)用于所述殘余數(shù)據(jù)以產(chǎn)生一個(gè)或一個(gè)以上變換系數(shù)塊; 以及 輸出含有表示所述變換系數(shù)塊的經(jīng)編碼數(shù)據(jù)的位流。
31.根據(jù)權(quán)利要求17所述的視頻譯碼設(shè)備,其中所述譯碼操作是解碼操作的部分。
32.根據(jù)權(quán)利要求31所述的視頻譯碼設(shè)備,其中所述一個(gè)或一個(gè)以上處理器經(jīng)配置以: 基于相鄰于所述當(dāng)前視頻單元的所述視頻單元的一個(gè)或一個(gè)以上像素值產(chǎn)生所述當(dāng)前視頻單元的預(yù)測數(shù)據(jù); 對所述當(dāng)前視頻單元的殘余數(shù)據(jù)進(jìn)行解碼; 基于所述當(dāng)前視頻單元的所述預(yù)測數(shù)據(jù)和所述當(dāng)前視頻單元的所述殘余數(shù)據(jù)重構(gòu)所述當(dāng)前視頻單元的像素值;以及 輸出所述圖片,所述圖片包含所述當(dāng)前視頻單元的所述像素值。
33.一種用于對視頻數(shù)據(jù)進(jìn)行譯碼的視頻譯碼設(shè)備,所述視頻譯碼設(shè)備包括: 用于基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目的裝置,所述當(dāng)前視頻單元在所述視頻數(shù)據(jù)的圖片內(nèi),所述所識別條目指示相鄰于所述當(dāng)前視頻單元的視頻單元的可用性;以及 用于基于相鄰于所述當(dāng)前視頻單元的所述視頻單元是否可用而對所述當(dāng)前視頻單元執(zhí)行譯碼操作的裝置。
34.根據(jù)權(quán)利要求33所述的視頻譯碼設(shè)備,其包括用于基于與所述相鄰者相關(guān)聯(lián)的數(shù)據(jù)對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作以對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作的裝置。
35.根據(jù)權(quán)利要求33所述的視頻譯碼設(shè)備,其進(jìn)一步包括: 用于確定所述當(dāng)前視頻單元是否為樹塊的裝置; 用于在所述當(dāng)前視頻單元為樹塊的情況下基于所述圖片內(nèi)的所述當(dāng)前視頻單元的位置確定相鄰于所述母代視頻單元的所述視頻單元的所述可用性的裝置;以及 用于在所述當(dāng)前視頻單元不是樹塊的情況下遞歸地執(zhí)行操作以確定相鄰于所述當(dāng)前視頻單元的前代視頻單元的視頻單元的所述可用性的裝置。
36.根據(jù)權(quán)利要求33所述的視頻譯碼設(shè)備,其中所述所識別條目包括一系列值,所述值指示相鄰于所述當(dāng)前視頻單元的不同視頻單元的可用性。
37.根據(jù)權(quán)利要求33所述的視頻譯碼設(shè)備,其中所述譯碼操作是編碼操作的部分。
38.根據(jù)權(quán)利要求33所述的視頻譯碼設(shè)備,其中所述譯碼操作是解碼操作的部分。
39.一種包括計(jì)算機(jī)可讀媒體的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)可讀媒體上存儲有指令,所述指令在執(zhí)行時(shí)致使一個(gè)或一個(gè)以上處理器: 基于相鄰于當(dāng)前視頻單元的母代視頻單元的視頻單元的可用性而識別查找表中的條目,所述當(dāng)前視頻單元在圖片內(nèi),所述所識別條目指示相鄰于所述當(dāng)前視頻單元的視頻單元的可用性;以及 基于相鄰于所述當(dāng)前視頻單元的所述視頻單元是否可用而對所述當(dāng)前視頻單元執(zhí)行譯碼操作。
40.根據(jù)權(quán)利要求39所述的計(jì)算機(jī)程序產(chǎn)品,其中所述指令致使所述一個(gè)或一個(gè)以上處理器基于與相鄰于所述當(dāng)前視頻單元的所述視頻單元相關(guān)聯(lián)的數(shù)據(jù)對所述當(dāng)前視頻單元執(zhí)行所述譯碼操作。
41.根據(jù)權(quán)利要求39所述的計(jì)算機(jī)程序產(chǎn)品,其中所述指令致使所述一個(gè)或一個(gè)以上處理器: 確定所述當(dāng)前視頻單元是否為樹塊; 在所述當(dāng)前視頻單元為樹塊的情況下基于所述圖片內(nèi)的所述當(dāng)前視頻單元的位置確定相鄰于所述母代視頻單元的所述視頻單元的所述可用性;以及 在所述當(dāng)前視頻單元不是樹塊的情況下遞歸地執(zhí)行操作以確定相鄰于所述當(dāng)前視頻單元的前代視頻單元的視頻單元的可用性。
42.根據(jù)權(quán)利要求39所述的計(jì)算機(jī)程序產(chǎn)品,其中所述所識別條目包括一系列值,所述值指示相鄰于所述當(dāng)前視頻單元的不同視頻單元的可用性。
43.根據(jù)權(quán)利要求39所述的計(jì)算機(jī)程序產(chǎn)品,其中所述譯碼操作是編碼操作的部分。
44.根據(jù)權(quán)利要求39所述的計(jì)算機(jī)程序產(chǎn)品,其中所述譯碼操作是解碼操作的部分。
【文檔編號】H04N19/194GK103891281SQ201280050981
【公開日】2014年6月25日 申請日期:2012年9月14日 優(yōu)先權(quán)日:2011年10月18日
【發(fā)明者】周博, 古魯納特·拉馬斯瓦米, 卡西克·維拉, 陳培松, 穆罕默德·蔡德·科班, 杜俊晨, 蘇海勒·亞利爾 申請人:高通股份有限公司