版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
(19)國家知識產(chǎn)權(quán)局(30)優(yōu)先權(quán)數(shù)據(jù)(62)分案原申請數(shù)據(jù)(71)申請人阿里巴巴(中國)有限公司地址310052浙江省杭州市濱江區(qū)長河街道網(wǎng)商路699號4號樓5樓508室(74)專利代理機構(gòu)北京清源匯知識產(chǎn)權(quán)代理事務所(特殊普通合伙)11644專利代理師馮德魁HO4N19/176(2014.01)HO4N19/167(2014.01)HO4N19/70(2014.01)(54)發(fā)明名稱用于在圖像邊界劃分塊的方法和裝置本公開提供一種視頻處理方法及裝置。示例方法包括:確定編碼塊是否包括圖像邊界之外的樣本;以及響應于所述編碼塊被確定為包括圖像邊界之外的樣本,不管第一參數(shù)的值如何,執(zhí)行所述編碼塊的四叉樹分割,其中,所述第一參數(shù)指示是否允許使用所述四叉樹來分割所述編碼圖像900圖像900圖像邊界的示例性塊劃分2確定用于幀內(nèi)條帶的第一參數(shù)的值,其中所述第一參數(shù)指示由編碼樹單元的四叉樹分割產(chǎn)生的一色度葉塊的多個亮度樣本中的最小尺寸;確定第二參數(shù)的值,其中所述第二參數(shù)指示所述最小亮度編碼塊大??;確定一編碼塊是否包括圖像邊界之外的樣本;確定所述編碼塊的大??;響應于所述第一參數(shù)等于第一值,所述編碼塊的大小等于第一值,所述第二參數(shù)等于第一值,并且所述編碼塊包括圖像邊界之外的樣本,將所述編碼塊分割為具有水平和垂直大小一半的編碼塊。2.根據(jù)權(quán)利要求1所述的視頻處理方法,其中,所述第一值為128。3.根據(jù)權(quán)利要求1所述的方法,其中,響應于所述第一參數(shù)等于第一值,所述編碼塊的大小等于所述第一值,所述第二參數(shù)等于所述第一值,并且所述編碼塊包括圖像邊界之外的樣本,確定在位流中發(fā)送的第一標志具有第二值,其中,等于第二值的第一標志指示多個編碼塊中的每一個都被分割為具有水平大小和垂直大小一半的編碼塊。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述第二值等于1。5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述第一標志包括split_qt_flag。6.根據(jù)權(quán)利要求1所述的方法,進一步包括:確定與所述編碼塊相關(guān)聯(lián)的第二、第三、第四、第五和第六參數(shù)的值,這些參數(shù)分別指示是否允許使用四叉分割、二叉水平分割、二叉垂直分割、三叉水平分割和三叉垂直分割來分割所述編碼塊。7.根據(jù)權(quán)利要求6所述的方法,進一步包括:響應于所述第一參數(shù)等于第一值,所述編碼塊的大小等于所述第一值,確定第二、第8.根據(jù)權(quán)利要求6所述的方法,其中,所述第二、第三、第四、第五和第六參數(shù)的值都等于第三值,指示不允許使用四叉分割、二叉水平分割、二叉垂直分割、三叉水平分割或三叉垂直分割中的任一個來對所述編碼塊進行分割。9.根據(jù)權(quán)利要求1所述的方法,進一步包括:基于在位流中發(fā)送的第一標志的值來確定所述編碼塊被分割為多個編碼塊。10.根據(jù)權(quán)利要求9所述的方法,其中,所述第至少一個處理器,所述處理器被配置為執(zhí)行所述指令集以使所述系統(tǒng)執(zhí)行:確定用于幀內(nèi)條帶的第一參數(shù)的值,其中所述第一參數(shù)指示由編碼樹單元的四叉樹分割產(chǎn)生的一色度葉塊的多個亮度樣本中的最小尺寸;確定第二參數(shù)的值,其中所述第二參數(shù)指示所述最小亮度編碼塊大?。淮_定一編碼塊是否包括圖像邊界之外的樣本;確定所述編碼塊的大小;3響應于所述第一參數(shù)等于第一值,所述編碼塊的大小等于第一值,所述第二參數(shù)等于第一值,并且所述編碼塊包括圖像邊界之外的樣本,將所述編碼塊分割為具有水平和垂直大小一半的編碼塊。13.根據(jù)權(quán)利要求12所述的視頻處理系統(tǒng),其特征在于,所述第一值等于0。14.一種非暫時性計算機可讀存儲介質(zhì),其存儲有視頻位流,所述位流由視頻處理裝置確定用于幀內(nèi)條帶的第一參數(shù)的值,其中所述第一參數(shù)指示由編碼樹單元的四叉樹分割產(chǎn)生的一色度葉塊的多個亮度樣本中的最小尺寸;確定第二參數(shù)的值,其中所述第二參數(shù)指示所述最小亮度編碼塊大?。淮_定一編碼塊是否包括圖像邊界之外的樣本;確定所述編碼塊的大??;響應于所述第一參數(shù)等于第一值,所述編碼塊的大小等于第一值,所述第二參數(shù)等于第一值,并且所述編碼塊包括圖像邊界之外的樣本,將所述編碼塊分割為具有水平和垂直大小一半的編碼塊。15.根據(jù)權(quán)利要求14所述的非暫時性計算機可讀存儲介質(zhì),其中,所述第一值為128。16.根據(jù)權(quán)利要求14所述的非暫時性計算機可讀存儲介質(zhì),其中,所述位流包括第一響應于所述第一參數(shù)等于第一值,所述編碼塊的大小等于所述第一值,所述第二參數(shù)等于所述第一值,并且所述編碼塊包括圖像邊界之外的樣本,確定在位流中發(fā)送的第一標志具有第二值,其中,等于第二值的第一標志指示多個編碼塊中的每一個都被分割為具有水平大小和垂直大小一半的編碼塊。17.根據(jù)權(quán)利要求16所述的非暫時性計算機可讀存儲介質(zhì),其中,所述第二值等于1。18.根據(jù)權(quán)利要求16所述的非暫時性計算機可讀存儲介質(zhì),其中,所述第一標志包括split_qt_flag。19.根據(jù)權(quán)利要求14所述的非暫時性計算機可讀存儲介質(zhì),所述方法進一步包括:確定與所述編碼塊相關(guān)聯(lián)的第二、第三、第四、第五和第六參數(shù)的值,這些參數(shù)分別指示是否允許使用四叉分割、二叉水平分割、二叉垂直分割、三叉水平分割和三叉垂直分割來分割所述編碼塊。20.根據(jù)權(quán)利要求14所述的非暫時性計算機可讀存儲介質(zhì),所述方法進一步包括:響應于所述第一參數(shù)等于第一值,所述編碼塊的大小等于所述第一值,確定第二、第4用于在圖像邊界劃分塊的方法和裝置相關(guān)申請的交叉引用[0001]本公開要求于本公開要求對在2019年12月17日上提交的美國臨時申請?zhí)?2/948,856的美國臨時申請的優(yōu)先權(quán),其全部通過引用并入本文。技術(shù)領(lǐng)域[0002]本公開一般涉及視頻處理,并且更具體地,涉及用于在圖像邊界進行塊劃分的方法和裝置。背景技術(shù)[0003]視頻是一組采集視覺信息的靜態(tài)圖像(或“幀”)。為了減少存儲內(nèi)存和傳輸帶寬,可以在存儲或傳輸之前對視頻進行壓縮,然后在顯示之前對視頻進行解壓縮。壓縮過程通常稱為編碼,解壓縮過程通常稱為解碼。有多種使用標準化視頻編碼技術(shù)的視頻編碼格式,最常見的是基于預測、變換、量化、熵編碼和環(huán)路濾波。視頻編碼標準,例如高效視頻編碼(HEVC/H.265)標準、通用視頻編碼(VVC/H.266)標準和AVS標準,指定了特定的視頻編碼格式,由標準化組織開發(fā)。隨著視頻標準中采用越來越多的先進視頻編碼技術(shù),新的視頻編碼標準的編碼效率越來越高。發(fā)明內(nèi)容[0004]在一些實施例中,示例性視頻處理方法包括:確定編碼塊是否包括圖像邊界之外的樣本;以及響應于所述編碼塊被確定為包括圖像邊界之外的樣本,不管第一參數(shù)的值如何,執(zhí)行所述編碼塊的四叉樹分割,其中,所述第一參數(shù)指示是否允許使用所述四叉樹來分割所述編碼塊。[0005]在一些實施例中,示例性視頻處理裝置包括用于存儲指令的至少一個存儲器和至少一個處理器。所述至少一個處理器被配置為執(zhí)行所述指令以使所述裝置執(zhí)行:確定編碼塊是否包括圖像邊界之外的樣本;以及響應于所述編碼塊被確定為包括圖像邊界之外的樣本,不管第一參數(shù)的值如何,執(zhí)行所述編碼塊的四叉樹分割,其中所述第一參數(shù)指示所述四叉樹是否被允許用于分割所述編碼塊。[0006]在一些實施例中,示例性非暫時性計算機可讀存儲介質(zhì),存儲有指令集。所述指令集可由一個或多個處理設(shè)備執(zhí)行以使視頻處理設(shè)備執(zhí)行:確定編碼塊是否包括圖像邊界之外的樣本,以及響應于所述編碼塊被確定為包括圖像邊界之外的樣本,不管第一參數(shù)的值如何,執(zhí)行所述編碼塊的四叉樹分割,其中所述第一參數(shù)指示所述四叉樹是否被允許用于分割所述編碼塊。附圖說明[0007]在下面的詳細描述和附圖中示出了本公開的實施例和各個方面。圖中所示的各種特征沒有按比例繪制。5[0008]圖1是根據(jù)本公開的一些實施例的示例性視頻序列的結(jié)構(gòu)示意圖。[0009]圖2A是示出根據(jù)本公開的實施例的混合視頻編碼系統(tǒng)的示例性編碼過程的示意[0010]圖2B是示出根據(jù)本公開的實施例的混合視頻編碼系統(tǒng)的另一示例性編碼過程的[0011]圖3A是示出根據(jù)本公開的實施例的混合視頻編碼系統(tǒng)的示例性解碼過程的示意[0012]圖3B是示出根據(jù)本公開的實施例的混合視頻編碼系統(tǒng)的另一示例性解碼過程的示意圖。[0013]圖4是根據(jù)本公開的一些實施例的用于對視頻進行編碼或解碼的示例性裝置的框[0014]圖5是根據(jù)本公開的一些實施例的示出了多類型樹拆分模式的示例的示意圖。[0015]圖6是示出根據(jù)本公開的一些實施例的用于在具有嵌套的多類型樹編碼樹結(jié)構(gòu)的四叉樹(QT)中分區(qū)劃分信息的示例性信號通知機制的示意圖。[0016]圖7示出了根據(jù)本公開的一些實施例的示例性表1,其示出了基于多類型樹語法元素的示例性多類型樹劃分模式(MttSplitMode)推導。[0017]圖8是示出根據(jù)本公開的一些實施例的不允許的三叉樹(TT)和二叉樹(BT)劃分的示例的示意圖。[0018]圖9是示出根據(jù)本公開的一些實施例的在圖像邊界上劃分的示例性塊的示意圖。[0019]圖10示出了根據(jù)本公開的一些實施例的示例性表2,其示出了基于二進制劃分模式(btSplit)的并行三叉樹劃分(parallelTtSplit)和編碼塊大小(cbSize)的示例性規(guī)范。[0020]圖11示出了根據(jù)本公開的一些實施例的示例性表3,其示出了基于三叉樹劃分模式(ttSplit)的cbSize的示例性規(guī)范。[0021]圖12示出了根據(jù)本公開的一些實施例示例性表4,其示出了示例性編碼樹語法。[0022]圖13是示出根據(jù)本公開的一些實施例的由MttSplitMode指示的多類型樹拆分模式的示例的示意圖。[0023]圖14示出了根據(jù)本公開的一些實施例的示例性表5,其示出MttSplitMode的示例性規(guī)范。[0024]圖15示出了根據(jù)本公開的一些實施例的示例性表6,其示出了示例性序列參數(shù)集[0025]圖16示出了根據(jù)本公開的一些實施例的示例性表7,其示出了示例性圖像頭RBSP[0026]圖17是示出根據(jù)本公開的一些實施例的在圖像邊界處不允許QT、TT或BT劃分的示例性塊的示意圖。[0027]圖18是示出根據(jù)本公開的一些實施例的在圖像邊界處不允許QT、TT或BT劃分的示例性塊的示意圖。[0028]圖19是示出根據(jù)本公開的一些實施例的使用BT和TT劃分的示例的示意圖。[0029]圖20示出了根據(jù)本公開的一些實施例的示例性視頻處理方法的流程圖。6具體實施方式[0030]現(xiàn)在將詳細參考示例性實施例,其示例在附圖中示出。以下描述參照附圖,除非另有說明,其中不同附圖中的相同數(shù)字表示相同或相似的元件。在示例性實施例的以下描述中闡述的實施方式并不代表與本公開一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求中所述的與本公開相關(guān)的方面一致的裝置和方法的示例。下面更詳細地描述本公開的特定方面。如果與通過引用并入的術(shù)語和/或定義相沖突的話,以本文提供的術(shù)語和定義為[0031]ITU-T視頻編碼專家組(ITU-TVCEG)和ISO/IEC運動圖像專家組(ISO/IECMPEG)的聯(lián)合視頻專家小組(JVET)目前正在開發(fā)通用視頻編碼(VVC/H.266)標準。VVC標準旨在將其前身高效視頻編碼(HEVC/H.265)標準的壓縮效率提高一倍。換句話說,VVC的目標是使用一半的帶寬實現(xiàn)與HEVC/H.265相同的主觀質(zhì)量。[0032]為了使用一半的帶寬實現(xiàn)與HEVC/H.265相同的主觀質(zhì)量,JVET一直在使用聯(lián)合探高的編碼性能。[0033]VVC標準是最近開發(fā)的,并且繼續(xù)包括提供更好壓縮性能的更多編碼技術(shù)。VVC基等現(xiàn)代視頻壓縮標準中一直使用的混合視頻編碼系統(tǒng)。[0034]視頻是按時間順序排列以存儲視覺信息的一組靜態(tài)圖像(或“幀”)。可以使用視頻采集設(shè)備(例如,相機)以時間順序采集和存儲這些圖像,并且可以使用視頻回放設(shè)備(例端)顯示時間序列中的此類圖像。此外,在一些應用中,視頻采集設(shè)備可以實時地將采集的視頻發(fā)送到視頻回放設(shè)備(例如,具有監(jiān)視器的計算機),例如用于監(jiān)視、會議或現(xiàn)場廣播。[0035]為了減少此類應用所需的存儲空間和傳輸帶寬,可以在存儲和傳輸之前對視頻進行壓縮,并在顯示之前進行解壓縮??梢酝ㄟ^由處理器(例如,通用計算機的處理器)或?qū)S糜布?zhí)行的軟件來實現(xiàn)壓縮和解壓縮。用于壓縮的模塊通常被稱為“編碼器”,并且用于解器可以被實現(xiàn)為各種合適的硬件、軟件、或其組合中的任何一種。例如,編碼器和解碼器的硬件實現(xiàn)可以包括電路,諸如一個或多個微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、離散邏輯或其任何組合。編碼器和解碼器的軟件實現(xiàn)可以包括固定在計算機可讀介質(zhì)中的程序代碼、計算機可執(zhí)行指令、固件或任何合適的計算機實現(xiàn)的算法或過程。視頻壓縮和解壓縮可以通過各種算法或標準來實現(xiàn),例如MPEG-1、并且使用第二編碼標準重新壓縮解壓縮的視頻,在這種情況下,編解碼器可以被稱為“轉(zhuǎn)碼[0036]視頻編碼過程可以識別并保留可用于重建圖像的有用信息,并忽略不重要的重建信息。如果忽略不重要的信息不能被完全重建,則這樣的編碼過程可以被稱為“有損”。否輸帶寬的權(quán)衡。[0037]被編碼的圖像(稱為“當前圖像”)的有用信息包括相對于參考圖像(例如,先前編碼和重建的圖像)的變化。這樣的變化可以包括像素的位置變化、亮度變化或顏色變化,其7中位置變化是最受關(guān)注的。代表對象的一組像素的位置變化可以反映對象在參考圖像和當前圖像之間的運動。[0038]未參考另一圖像而編碼的圖像(即,它是自己的參考圖像)被稱為“I-圖像”。使用先前圖像作為參考圖像編碼的圖像被稱為“P-圖像”,使用先前圖像和將來圖像作為參考圖[0039]圖1示出了根據(jù)本公開的一些實施例的示例視頻序列100的結(jié)構(gòu)。視頻序列100可以是實況視頻或已被采集和存檔的視頻。視頻100可以是現(xiàn)實生活中的視頻、計算機生成的視頻(例如,計算機游戲視頻)或二者組合(例如,具有增強現(xiàn)實效果的真實視頻)。視頻序列100可以從視頻采集設(shè)備(例如,相機)、包含先前采集的視頻檔案(例如,存儲在存儲設(shè)備中的視頻文件)或從視頻內(nèi)容提供商接收視頻的視頻饋送接口(例如,視頻廣播收發(fā)器)輸入。[0040]如圖1所示,視頻序列100可以包括沿時間線在時間上布置的一系列圖像,包括圖像102、104、106和108。圖像102-106是連續(xù)的,在圖像106和108之間有更多的圖像。在圖1中,圖像102是I-圖像,其參考圖像是圖像102本身。圖像104是P-圖像,其參考圖像是圖像102,如箭頭所示。圖像106是B圖像,其參考圖像是圖像104和108,如箭頭所示。在一些實施例中,圖像的參考圖像(例如,圖像104)可以不緊接在圖像之前或之后。例如,圖像104的參考圖像可以是圖像102之前的圖像。需要說明的是,圖像102-106的參考圖像僅僅是示例,本公開并不限定如圖1所示的參考圖像的實施例。[0041]通常,由于編解碼任務的計算復雜性,視頻編解碼器不會一次對整個圖像進行編碼或解碼。相反,他們可以將圖像分割成基本段,并逐段對圖像段進行編碼或解碼。在本公開中,這樣的基本段被稱為基本處理單元("BPU")。例如,圖1中的結(jié)構(gòu)110示出了視頻序列100的圖像(例如,圖像102-108中的任何圖像)的示例結(jié)構(gòu)。在結(jié)構(gòu)110中,圖像被劃分為4×4基本處理單元,其邊界被示出為虛線。在一些實施例中,基本處理單元可以在一些視頻編形狀和大小的像素??梢曰诰幋a效率和要保持在基本處理單元中的細節(jié)水平的平衡來為圖像選擇基本處理單元的尺寸和形狀。[0042]基本處理單元可以是邏輯單元,其可以包括存儲在計算機存儲器中(例如,在視頻幀緩沖區(qū)中)的一組不同類型的視頻數(shù)據(jù)。例如,彩色圖像的基本處理單元可以包括表示消色差亮度信息的亮度分量(Y)、表示顏色信息的一個或多個色度分量(例如,Cb和Cr)以及相關(guān)聯(lián)的語法元素,其中亮度和色度分量可以具有與基本處理單元的相同大小。在一些視頻編碼標準(例如,H.265/HEVC或H.266/VVC)中,亮度和色度分量可以被稱為“編碼樹塊”("CTB")。對基本處理單元執(zhí)行的任何操作都可以對其亮度和色度分量中的每一個重復執(zhí)[0043]視頻編碼具有多個操作階段,其示例如圖2A-2B和圖3A-3B所示。對于每個階段,基本處理單元的大小對于處理仍然可能太大,因此可以進一步分為在本公開中稱為“基本處理子單元”的段。在一些實施例中,基本處理子單元可以在一些視頻編碼標準(例如,MPEG族、H.261、H.263或H.264/AVC)中被稱為“塊”,或者作為一些其他視頻編碼標準(例如,8元相同的大小或具有比基本處理單元更小的大小。與基本處理單元類似,基本處理子單元也是邏輯單元,其可以包括存儲在計算機存儲器(例如,在視頻幀緩沖區(qū)中)中的一組不同都可以對其亮度和色度分量中的每一個重復執(zhí)行。應該注意的是,可以根據(jù)處理需要將這種劃分執(zhí)行到進一步的級別。還應注意,不同階段可以使用不同的方案來劃分基本處理單[0044]例如,在模式?jīng)Q策階段(其示例在圖2B中示出,編碼器可以決定對基本處理單元使用什么預測模式(例如,幀內(nèi)預測或幀間預測),該基本處理單元可能太大而無法做出這樣的決定。編碼器可以將基本處理單元劃分成多個基本處理子單元(例如,如H.265/HEVC或H.266/VVC中的CU),并且決定每個單獨的基本處理子單元的預測類型。[0045]對于另一個示例,在預測階段(其示例在圖2A-2B中示出),編碼器可以在基本處理子單元(例如,CU)的級別上執(zhí)行預測操作。但是,在某些情況下,基本處理子單元仍然可能太大而無法處理。編碼器可以進一步將基本處理子單元劃分成更小的段(例如,在H.265/[0046]對于另一個示例,在變換階段(其示例在圖2A-2B中示出),編碼器可以對殘差基本處理子單元(例如,CU)執(zhí)行變換操作。但是,在某些情況下,基本處理子單元仍然可能太大而無法處理。編碼器可以進一步將基本處理子單元分成更小的段(例如,在H.265/HEVC或本處理子單元的劃分方案在預測階段和變換階段可以不同。例如,在H.265/HEVC或H.266/VVC中,相同CU的預測塊和變換塊可以具有不同的大小和數(shù)量。[0047]在圖1的結(jié)構(gòu)110中,將基本處理單元112進一步分為3×3個基本處理子單元,其邊界以虛線示出。同一圖像的不同基本處理單元可以在不同的方案中劃分為基本處理子單[0048]在一些實施方式中,為了提供對視頻編碼和解碼的并行處理的能力以及容錯能力,可以將圖像劃分成用于處理的區(qū)域,使得對于該圖像的區(qū)域,編碼或解碼過程可以不依賴于來自圖像的任何其他區(qū)域的信息。換句話說,圖像的每個區(qū)域都可以獨立處理。通過這樣做,編解碼器可以并行處理圖像的不同區(qū)域,從而提高了編碼效率。此外,當一區(qū)域的數(shù)據(jù)在處理中被損壞或在網(wǎng)絡(luò)傳輸中丟失時,編解碼器可以正確地編碼或解碼相同圖像的其他區(qū)域而不依賴于被損壞或丟失的數(shù)據(jù),從而提供容錯能力。在某些視頻編碼標準中,可以(slice)”和“塊片(tile)”。還應注意的是,視頻序列100的不同圖像可以具有用于將圖像劃分為區(qū)域的不同劃分方案。[0049]例如,在圖1中,結(jié)構(gòu)110被劃分成三個區(qū)域114、116和118,其邊界被示為結(jié)構(gòu)110內(nèi)部的實線。區(qū)域114包括四個基本處理單元。區(qū)域116和118均包括六個基本處理單元。需要說明的是,圖1中基本處理單元、基本處理子單元和結(jié)構(gòu)110的區(qū)域僅是示例,本公開不限制其實施例。[0050]圖2A示出了根據(jù)本公開的實施例的示例性編碼過程200A的示意圖。例如,編碼過程200A可以由編碼器執(zhí)行。如圖2A所示,編碼器可以根據(jù)過程200A將視頻序列202編碼為視頻位流228。類似于圖1中的視頻序列100,視頻序列202可以包括按時間順序排列的一組圖9像(稱為“原始圖像”)。類似于圖1中的結(jié)構(gòu)110,視頻序列202的每個原始圖像可以由編碼器劃分為基本處理單元、基本處理子單元或區(qū)域進行處理。在一些實施例中,編碼器可以針對視頻序列202的每個原始圖像在基本處理單元的級別上執(zhí)行過程200A。例如,編碼器可以以迭代方式執(zhí)行過程200A,其中編碼器可以在過程200A的一次迭代中對基本處理單元進行編碼。在一些實施例中,編碼器可以針對視頻序列202的每個原始圖像的區(qū)域(例如,區(qū)域114-118)并行地執(zhí)行過程200A。[0051]參考圖2A,編碼器可以將視頻序列202的原始圖像的基本處理單元(稱為“原始BPU”)饋送到預測階段204,以生成預測數(shù)據(jù)206和預測BPU208。編碼器可以從原始BPU減去預測的BPU208以生成殘差BPU210。編碼器可以將殘差BPU210饋送到變換階段212和量化階段214以216生成量化變換系數(shù)216。編碼器可以將預測數(shù)據(jù)206和量化變換系數(shù)216饋送換系數(shù)216饋送到逆量化階段218和逆變換階段220以生成重建的殘差BPU222。編碼器可以將重建的殘差BPU222添加到預測的BPU208以生成預測參考224,其用于過程200A的下一路徑可以用于確保編碼器和解碼器都使用相同的參考數(shù)據(jù)進行預測。[0052]編碼器可以迭代地執(zhí)行過程200A以對編碼原始圖像的每個原始BPU(在前向路徑中)編碼,并生成用于編碼原始圖像的下一個原始BPU(在重建路徑中)的預測參考224。在對原始圖像的所有原始BPU進行編碼之后,編碼器可以繼續(xù)對視頻序列202中的下一個圖像進行編碼。[0053]參考過程200A,編碼器可以接收由視頻采集設(shè)備(例如,相機)生成的視頻序列用于輸入數(shù)據(jù)的任何動作。[0054]在預測階段204,在當前迭代時,編碼器可以接收原始BPU和預測參考224,并執(zhí)行預測操作以生成預測數(shù)據(jù)206和預測BPU208。預測參考224可以從過程200A的先前迭代的重建路徑生成。預測階段204的目的是通過從預測數(shù)據(jù)206和預測參考224中提取可用于將原始BPU重建為預測BPU208的預測數(shù)據(jù)206來減少信息冗余。[0055]理想地,預測的BPU208可以與原始BPU相同。然而,由于非理想的預測和重建操器可以將其從原始BPU中減去以生成殘差BPU210。例如,編碼器可以從原始BPU的像素的值減去預測BPU208的對應像素的值(例如,灰度值或RGB值)。殘差BPU210的每個像素可以具有殘差值作為原始BPU和預測BPU208的相應像素之間的這種相減的結(jié)果,與原始BPU相比,預測數(shù)據(jù)206和殘差BPU210可以具有更少的比特數(shù),但是它們可以用于重建原始BPU,而不[0056]為了進一步壓縮殘差BPU210,在變換階段212,編碼器可以通過將殘差BPU210分解為一組二維“基本圖案(basepattern)”來減少其空間冗余。每個基本圖案與“變換系數(shù)”相關(guān)聯(lián)?;緢D案可以具有相同的尺寸(例如,殘差BPU210的尺寸),每個基本圖案可以表示殘差BPU210的變化頻率(例如,亮度變化的頻率)分量?;緢D案中的任何一個都不能從任何其他基本圖案的任何組合(例如,線性組合)中再現(xiàn)。換句話說,分解可以將殘差BPU210的變化分解到頻域中。這種分解類似于函數(shù)的離散傅立葉變換,其中,基本圖像類似于離散傅立葉變換的基本函數(shù)(例如,三角函數(shù)),并且變換系數(shù)類似于與基本函數(shù)相關(guān)聯(lián)的[0057]不同的變換算法可以使用不同的基本圖案。各種變換算法可以在變換階段212處210的像素,逆變換可以是將基本圖案的對應像素的值乘以相應的相關(guān)聯(lián)系數(shù)并將乘積相加以產(chǎn)生加權(quán)和。對于視頻編碼標準,編碼器和解碼器都可以使用相同的變換算法(因此具有相同的基本圖案)。因此,編碼器可以僅記錄變換系數(shù),解碼器可以從中重建殘差BPU210,而無需從編碼器接收基本圖案。與殘差BPU210相比,變換系數(shù)可以具有更少的比特,但是它們可以用于重建殘差BPU210而沒有顯著的質(zhì)量劣化。因此,殘差BPU210被進一步[0058]編碼器可以進一步在量化階段214壓縮變換系數(shù)。在變換過程中,不同的基本圖案可以表示不同的變化頻率(例如,亮度變化頻率)。因為人眼通常更擅長識別低頻變化,所以編碼器可以忽略高頻變化的信息,而不會在解碼中引起明顯的質(zhì)量劣化。例如,在量化階段214,編碼器可以通過將每個變換系數(shù)除以整數(shù)值(稱為“量化參數(shù)”)并將商四舍五入到其最接近的整數(shù)來生成量化的變換系數(shù)216。在這樣的操作之后,可以將高頻基本圖案的一些變換系數(shù)轉(zhuǎn)換為零,并且可以將低頻基本圖案的變換系數(shù)轉(zhuǎn)換為較小的整數(shù)。編碼器可以忽略零值的量化變換系數(shù)216,由此變換系數(shù)被進一步壓縮。該量化處理也是可逆的,其中量化變換系數(shù)216可以在量化的逆操作(稱為“逆量化”)中被重建為變換系數(shù)。[0059]因為編碼器在舍入操作中忽略了該除法的余數(shù),所以量化階段214可能是有損的。通常,量化階段214可以在過程200A中貢獻最多的信息損失。信息損失越大,量化變換系數(shù)216所需的比特數(shù)就越少。為了獲得不同級別的信息損失,編碼器可以使用不同的量化參數(shù)值或量化過程的任何其他參數(shù)。[0060]在二進制編碼階段226,編碼器可以使用二進制編碼技術(shù)對預測數(shù)據(jù)206和量化變換系數(shù)216進行編碼,二進制編碼例如為熵編碼、可變長度編碼、下文自適應二進制算術(shù)編碼,或任何其他無損或有損壓縮算法。在一些實施例中,除了預測數(shù)據(jù)206和量化變換系數(shù)216之外,編碼器可以在二進制編碼階段226編碼其他信息,例如,在預測階段204使用的預測模式、預測操作的參數(shù)、在變換階段212處的變換類型。量化過程的參數(shù)(例如,量化參數(shù))、編碼器控制參數(shù)(例如,比特率控制參數(shù))等。編碼器可以使用二進制編碼階段226的輸出數(shù)據(jù)來生成視頻位流228。在一些實施例中,視頻位流228可以被進一步打包以用于網(wǎng)絡(luò)傳輸。[0061]參照過程200A的重建路徑,在逆量化階段218,編碼器可以對量化變換系數(shù)216執(zhí)行逆量化,以生成重建的變換系數(shù)。在逆變換階段220,編碼器可以基于重建的變換系數(shù)生成重建殘差BPU222。編碼器可以將重建殘差BPU222添加到預測BPU208以生成將在過程200A的下一次迭代中使用的預測參考224。[0062]應當注意的是,過程200A的其他變體可用于對視頻序列202進行編碼。在一些實施例中,過程200A的階段可以由編碼器以不同的順序執(zhí)行。在一些實施例中,過程200或多個階段可以組合成單個階段。在一些實施例中,過程200A的單個階段可以分為多個階11段。例如,變換階段212和量化階段214可以組合成單個階段。在一些實施例中,過程200A可以包括附加的階段。在一些實施例中,過程200A可以省略圖2A中的一個或多個階段。[0063]圖2B示出了根據(jù)本公開的實施例的另一示例編碼過程200B的示意圖。過程200B可以修改自過程200A。例如,過程200B可以由符合混合視頻編碼標準(例如,H.26x系列)的編碼器使用。與過程200A相比,過程200B的前向路徑還包括模式?jīng)Q策階段230,并將預測階段204分為空間預測階段2042和時間預測階段2044,過程200B的重建路徑還另外包括環(huán)路濾波階段232和緩沖區(qū)234。像預測或“幀內(nèi)預測”)可以使用來自同一圖像中的一個或多個已經(jīng)編碼的相鄰BPU的像素來預測當前BPU。也就是說,空間預測中的預測參考224可以包括相鄰的BPU。空間預測可以減少圖像固有的空間冗余。時間預測(例如,圖像間預測或“幀間預測”)可以使用來自一個或多個已經(jīng)編碼的圖像的區(qū)域來預測當前BPU。也就是說,時間預測中的預測參考224可以包括編碼圖像。時間預測可以減少圖像固有的時間冗余。[0065]參考過程200B,在前向路徑中,編碼器在空間預測階段2042和時間預測階段2044執(zhí)行預測操作。例如,在空間預測階段2042,編碼器可以執(zhí)行幀內(nèi)預測。對于被編碼的圖像的原始BPU,預測參考224可以包括在同一圖像中已經(jīng)被編碼(在前向路徑中)和重建(在重建路徑中)的一個或多個相鄰BPU。編碼器可以通過插值相鄰的BPU來生成預測的BPU208。插值技術(shù)可以包括例如線性插值或內(nèi)插、多項式插值或內(nèi)插等。在一些實施例中,編碼器可以在像素級執(zhí)行插值,例如通過插值預測BPU208的每個像素的對應像素的值。用于插值的相鄰BPU可以位于相對于原始BPU的各個方向,例如在垂直方向(例如,在原始BPU的頂部),水平方向(例如,在原始BPU的左側(cè)),對角線方向(例如,在原始BPU的左下、右下、左上或右上),或在所使用的視頻編碼標準中定義的任何方向。對于幀內(nèi)預測,預測數(shù)據(jù)206可以包使用的相鄰BPU相對于原始BPU的方向等。[0066]對于另一個示例,在時間預測階段2044,編碼器可以執(zhí)行幀間預測。對于當前圖像的原始BPU,預測參考224可以包括已經(jīng)被編碼(在前向路徑中)和重建(在重建路徑中)的一個或多個圖像(被稱為“參考圖像”)。在一些實施例中,可以通過逐個BP同一張圖像的所有重建的BPU都被生成時,編碼器可以生成一重建圖像作為參考圖像。編碼以基于原始BPU在當前圖像中的位置來確定搜索窗口在參考圖像中的位置。例如,搜索窗口可以在參考圖像中與當前圖像中的原始BPU具有相同坐標的位置處為中心,并且可以向外延伸預定距離。當編碼器在搜索窗口中識別(例如,通過使用pel遞歸算法、塊匹配算法等)類似于原始BPU的區(qū)域時,編碼器可以確定這樣的區(qū)域作為匹配區(qū)域。匹配區(qū)域可以具有與原始BPU不同的尺寸(例如,小于、等于、大于或具有不同的形狀)。因為參考圖像和當前圖像在時間線上在時間上分開(例如,如圖1所示),所以可以認為匹配區(qū)域隨著時間的推移“移個參考圖像時(例如,如圖1中的圖像106),編碼器可以搜索匹配區(qū)域并為每個參考圖像確定其相關(guān)聯(lián)的運動矢量。在一些實施例中,編碼器可以將權(quán)重分配給各個匹配參考圖像的匹配區(qū)域的像素值。測數(shù)據(jù)206可以包括例如匹配區(qū)域的位置(例如,坐標)、與匹配區(qū)域相關(guān)聯(lián)的運動矢量、參考圖像的數(shù)量、與參考圖像相關(guān)聯(lián)的權(quán)重等?;陬A測數(shù)據(jù)206(例如,運動向量)和預測參考224來重建預測的BPU208。例如,編碼器可以根據(jù)運動矢量移動參考圖像的匹配區(qū)域,其中編碼器可以預測當前圖像的原始BPU。當使用多個參考圖像時(例如,如圖1中的圖像106),編碼器可以根據(jù)匹配區(qū)域的各個運動矢量和平均像素值來移動參考圖像的匹配區(qū)域。在一些實施例中,如果編碼器已經(jīng)將權(quán)重分配給各個匹配參考圖像的匹配區(qū)域的像素值,則編碼器可以將移動的匹配區(qū)域的像素值的加權(quán)和相加。[0069]在一些實施例中,幀間預測可以是單向的或雙向的。單向幀間預測可以使用相對于當前圖像在相同時間方向上的一個或多個參考圖像。例如,圖1中的圖像104是單向幀間預測圖像,其中參考圖像(即,圖像102)在圖像04之前。雙向幀間預測可以在相對于當前圖像的兩個時間方向上使用一個或多個參考圖像。例如,圖1中的圖像106是雙向幀間預測圖像,其中參考圖像(即,圖像104和08)相對于圖像104在兩個時間方向上。[0070]仍然參考過程200B的前向路徑,在空間預測2042和時間預測階段2044之后,在模式?jīng)Q策階段230,編碼器可以為過程200B的當前迭代選擇預測模式(例如,幀內(nèi)預測或幀間預測之一)。例如,編碼器可以執(zhí)行速率失真優(yōu)化技術(shù),其中編碼器可以根據(jù)候選預測模式的比特率和候選預測模式下的重建參考圖像的失真來選擇預測模式以最小化成本函數(shù)的值。根據(jù)所選擇的預測模式,編碼器可以生成相應的預測BPU208和預測數(shù)據(jù)206。[0071]在過程200B的重建路徑中,如果在前向路徑中已經(jīng)選擇了幀內(nèi)預測模式,則在生成預測參考224(例如,在當前圖像中已經(jīng)編碼和重建的當前BPU)之后,編碼器可以將預測參考224直接饋送到空間預測階段2042以用于以后的使用(例如,用于插值當前圖像的下一BPU)。如果在前向路徑中已經(jīng)選擇了幀間預測模式,則在生成預測參考224(例如,其中所有BPU都已被編碼和重建的當前圖像)之后,編碼器可以將預測參考224饋送到環(huán)路濾波器階段232。在該階段,編碼器可以將環(huán)路濾波器應用于預測參考224,以減少或消除由幀間預測引入的失真(例如,塊狀偽影)。編碼器可以在環(huán)路濾波器階段232處應用各種環(huán)路濾波器技術(shù),例如去塊、采樣自適應補償、自適應環(huán)路濾波器等??梢詫⒔?jīng)環(huán)路濾波的參考圖像存儲在緩沖區(qū)234(或“經(jīng)解碼的圖像緩沖區(qū)”)中以供以后使用(例如,用作視頻序列202的未來圖像的幀間預測參考圖像)。編碼器可以將一個或多個參考圖像存儲在緩沖區(qū)234中,以在時間預測階段2044處使用。在一些實施例中,編碼器可以在二進制編碼階段226處編碼環(huán)路濾波器的參數(shù)(例如,環(huán)路濾波器強度)以及量化變換系數(shù)216、預測數(shù)據(jù)206和其他信息。[0072]圖3A示出了根據(jù)本發(fā)明的實施例的示例性解碼過程300A的示意圖。過程300A可以是對應于圖2A中的壓縮過程200A的解壓縮過程。在一些實施例中,過程300A可以類似于過程200A的重建路徑。解碼器可以根據(jù)過程300A將視頻位流228解碼成視頻流304。視頻流304可以非常類似于視頻序列202。然而,由于壓縮和解壓縮過程中的信息丟失(例如,圖2A-2B中的量化階段214),通常,視頻流304與視頻序列202不同。類似于圖2A-2B中的過程200A和200B,解碼器可以在基本處理單元(BPU)級別對在視頻位流228中編碼的每個圖像執(zhí)行過程300A。例如,解碼器可以以迭代方式執(zhí)行過程300A,其中解碼器可以在過程300A的一次迭代中對基本處理單元進行解碼。在一些實施例中,解碼器可以針對在視頻位流228中編碼的每個圖像的區(qū)域(例如,區(qū)域114-118)并行地執(zhí)行過程300A。[0073]如圖3A所示,解碼器可以將與編碼圖像的基本處理單元(稱為“編碼BPU”)相關(guān)聯(lián)的視頻位流228的一部分饋送到二進制解碼階段302,在二進制解碼階段302,解碼器可以將該部分解碼成預測數(shù)據(jù)206和量化變換系數(shù)216。解碼器可以將量化變換系數(shù)216饋送到逆量化階段218和逆變換階段220以生成重建殘差BPU222。解碼器可以將預測數(shù)據(jù)206饋送到預測階段204以生成預測BPU208。解碼器可以將重建殘差BPU222添加到預測BPU208以生成預測參考224。在一些實施例中,預測參考224可以存儲在緩沖區(qū)(例如,計算機存儲器中的解碼圖像緩沖區(qū))中。解碼器可以將預測參考224饋送到預測階段204,用于在過程300A的下一次迭代中執(zhí)行預測操作。[0074]解碼器可以迭代地執(zhí)行過程300A,以解碼編碼圖像的每個編碼BPU,并生成用于編碼圖像的下一個編碼BPU的預測參考224。在解碼編碼圖像的所有編碼BPU之后,解碼器可以將該圖像輸出到視頻流304以供顯示,并且繼續(xù)解碼視頻位流228中的下一個編碼圖像。[0075]在二進制解碼階段302,解碼器可以執(zhí)行編碼器使用的二進制編碼技術(shù)(例如,熵編碼、可變長度編碼、算術(shù)編碼、霍夫曼編碼、上下文自適應二進制算術(shù)編碼或任何其他無損壓縮算法)的逆運算。在一些實施例中,除了預測數(shù)據(jù)206和量化的變換系數(shù)216,解碼器可以在二進制解碼階段302解碼其他信息,例如預測模式、預測操過程的參數(shù)(例如,量化參數(shù))、編碼器控制參數(shù)(例如,比特率控制參數(shù))等。在一些實施例中,如果視頻位流228通過網(wǎng)絡(luò)以包的形式傳輸,則解碼器可以在將視頻位流228饋送到二進制解碼級302之前對其進行解包。[0076]圖3B示出了根據(jù)本公開的實施例的另一示例解碼過程300B的示意圖。過程300B可以修改自過程300A。例如,過程300B可以由符合混合視頻編碼標準(例如,H.26x系列)的解碼器使用。與過程300A相比,過程300B額外地將預測階段204劃分為空間預測階段2042和時間預測階段2044,并且額外地包括環(huán)路濾波階段232和緩沖區(qū)234。[0077]在過程300B中,對于在解碼的編碼圖像(稱為“當前圖像”)的編碼基本處理單元(稱為“當前BPU”),由解碼器從二進制解碼階段302解碼的預測數(shù)據(jù)206可以包括各種類型的數(shù)據(jù),這取決于編碼器使用什么預測模式來編碼當前BPU。例如,如果編碼器使用幀內(nèi)預測來編碼當前BPU,則預測數(shù)據(jù)206可以包括指示幀內(nèi)預測、幀內(nèi)預測操作的參數(shù)等的預測模式指示符(例如,標志值)。幀內(nèi)預測操作的參數(shù)可以包括例如用作參考的一個或多個相鄰BPU的位置(例如,坐標)、相鄰BPU的大對于另一示例,如果由編碼器使用的幀間預測來編碼當前BPU,則預測數(shù)據(jù)206可以包括指示幀間預測、幀間預測操作的參數(shù)等預測模式指示符(例如,標志值)。幀間預測操作的參數(shù)可以包括例如與當前BPU相關(guān)聯(lián)的參考圖像的數(shù)量、分別與參考圖像相關(guān)聯(lián)的權(quán)重、相應參考圖像中的一個或多個匹配區(qū)域的位置(例如,坐標)、分別與所述匹配區(qū)域相關(guān)聯(lián)的一個或多個運動矢量等。[0078]基于預測模式指示符,解碼器可以決定是在空間預測階段2042執(zhí)行空間預測(例如,幀內(nèi)預測)還是在時間預測階段2044執(zhí)行時間預測(例如,幀間預測),執(zhí)行這種空間預測或時間預測的細節(jié)在圖2B中描述,其不會在下文中重復。在執(zhí)行這樣的空間預測或時間預測之后,解碼器可以生成預測的BPU208,解碼器可以添加預測的BPU208和重建殘差BPU222以生成預測參考224,如圖3A中所述。[0079]在過程300B中,解碼器可以將預測參考224饋送到空間預測階段2042或時間預測階段2044,用于在過程300B的下一次迭代中執(zhí)行預測操作。例如,如果在空間預測階段2042使用幀內(nèi)預測解碼當前BPU,則在生成預測參考224(例如,解碼的當前BPU)之后,解碼器可以將預測參考224直接饋送到空間預測階段2042以供以后使用(例如,用于插值當前圖像的下一個BPU)。如果在時間預測階段2044使用幀間預測解碼當前BPU,則在生成預測參考224(例如,其中所有BPU都被解碼的參考圖像)之后,編碼器可以將預測參考224饋送到環(huán)路濾波器階段232以減少或消除失真(例如,塊狀偽影)。解碼器可以如圖2B所示的方式將環(huán)路濾波器應用于預測參考224。環(huán)路濾波的參考圖像可以存儲在緩沖區(qū)234(例如,計算機存儲器中的解碼圖像緩沖區(qū))中供以后使用(例如,用作視頻位流228的未來編碼圖像的預測間參考圖像)。解碼器可以將一個或多個參考圖像存儲在緩沖區(qū)234中,以在時間預測階段2044處使用。在一些實施例中,當預測數(shù)據(jù)206的預測模式指示符指示幀間預測被用于編碼當前[0080]圖4是根據(jù)本公開的實施例的用于對視頻進行編碼或解碼的示例裝置400的框圖。如圖4所示,裝置400可以包括處理器402。當處理器402執(zhí)行本文所述的指令時,裝置400可以成為用于視頻編碼或解碼的專用機器。處理器402可以是能夠操縱或處理信息的任何類型的電路。例如,處理器402可以包括任何數(shù)量的中央處理單元(或“CPU”)、圖形處理單元器、微處理器、數(shù)字信號處理器、知識產(chǎn)權(quán)(IP)核心、可編程邏輯陣列(P輯(PAL)、通用陣列邏輯(GAL)、復雜可編程邏輯器件(CPLD),一種現(xiàn)場可編程門陣列(FPGA)、片上系統(tǒng)(SoC)、專用集成電路(ASIC)等的任意組合。在一些實施例中,處理器402還可以是被分組為單個邏輯組件的一組處理器。例如,如圖4所示,處理器402可以包括多個處理器,包括處理器402a、處理器402b和處理器[0081]裝置400還可以包括被配置為存儲數(shù)據(jù)(例如,指令集、計算機代碼、中間數(shù)據(jù)等)的存儲器404。例如,如圖4所示,所存儲的數(shù)據(jù)可以包括程序指令(例如,用于實現(xiàn)過程視頻流304)。處理器402可以訪問用于處理的程序指令和數(shù)據(jù)(例如,經(jīng)由總線410),并且執(zhí)行程序指令以對用于處理的數(shù)據(jù)執(zhí)行操作或操縱。存儲器404可以包括高速隨機存取存儲設(shè)備或非易失性存儲設(shè)備。在一些實施例中,存儲器404可以包括任意數(shù)量的隨機存取存儲(SD)卡、記憶棒、緊湊型閃存(CF)卡等的任意組合。存儲器404也可以是被分組為單個邏輯組件的一組存儲器(圖4中未示出)。[0082]總線410可以是在裝置400內(nèi)部的組件之間傳輸數(shù)據(jù)的通信設(shè)備,諸如內(nèi)部總線者類似物。[0083]為了便于解釋而不引起歧義,在本公開中,處理器402和其他數(shù)據(jù)處理電路統(tǒng)稱為“數(shù)據(jù)處理電路”。數(shù)據(jù)處理電路可以完全實現(xiàn)為硬件,或者實現(xiàn)為軟件、硬件或固件的組合。此外,數(shù)據(jù)處理電路可以是單個獨立模塊,或者可以完全或部分地組合到裝置400的任何其他部件中。[0084]裝置400還可以包括網(wǎng)絡(luò)接口406,以提供與網(wǎng)絡(luò)(例如,因特網(wǎng)、內(nèi)聯(lián)網(wǎng)、局域網(wǎng)、移動通信網(wǎng)絡(luò)等)的有線或無線通信。在一些實施例中,網(wǎng)絡(luò)接口406可以包括任何數(shù)量的芯片等的任意組合。[0085]在一些實施例中,可選地,裝置400可以進一步包括外圍接口408,以提供到一個或多個外圍設(shè)備的連接。如圖4所示,外圍設(shè)備可以包括,但不限于,光標控制設(shè)備(例如,鼠顯示器)、視頻輸入設(shè)備(例如,相機或耦合到視頻檔案的輸入接口)等。以被實現(xiàn)為裝置400中的任何軟件或硬件模塊的任何組合。例如,過程200A、200B、300A或30013的一些或所有階段可以被實現(xiàn)為裝置400的一個或多個軟件模塊,諸如可以被加載到等)。[0087]在量化和逆量化功能塊(例如,圖2A或圖2B的量化214和逆量化218,圖3A或圖3B的逆量化218)中,量化參數(shù)(QP)用于確定應用于預測殘差的量化(和逆量化)量。用于對圖像或條帶(slice)進行編碼的初始QP值可以在較高的級別上發(fā)出信號,例如,使用圖像參數(shù)集以使用以量化組的粒度發(fā)送的增量(delta)QP值在本地級別針對每個CU適配QP值。[0088]根據(jù)一些實施例,可以將圖像分成多個編碼樹單元(CTU)。然后,使用具有用二元和三元劃分分割結(jié)構(gòu)的嵌套多類型樹的四叉樹(SPLIT_QT)將CTU進一步劃分成一個或多個編碼單元(CU)。圖5是示出根據(jù)本公開的一些實施例的多類型樹劃分模式的示例的示意圖。如圖5所示,多類型樹結(jié)構(gòu)中的劃分類型可以包括四叉樹拆分(SPLIT_QT)501,垂直二叉樹劃分(SPLITBTVER)502,水平二叉樹劃分(拆分SPLIT_BT_HOR)503、垂直三叉樹劃分(SPLIT_TT_VER)504和水平三叉樹劃分(SPLIT_TT_HQR)505。多類型的樹葉節(jié)點稱為編碼單元(CU),其可以具有正方形或矩形形狀。[0089]圖6是根據(jù)本公開的一些實施例的用于具有嵌套的多類型樹編碼樹結(jié)構(gòu)的四叉樹中的分區(qū)劃分信息的示例性信號通知機制的示意圖。在圖6首先由四叉樹結(jié)構(gòu)劃分。每個四叉樹的樹葉節(jié)點(當足夠大以允許它時)由多類型樹結(jié)構(gòu)進一步劃分。在多類型樹結(jié)構(gòu)中,第一標志(例如,mtt_split_cu_flag)被用信號通知以指示節(jié)點是否被進一步劃分。當節(jié)點被進一步劃分時,第二標志(例如,mtt_split_cu_vertical_flag)被發(fā)信號指示劃分方向,然后第三標志(例如,mtt_split_cu_binary_flag)被發(fā)信號指示劃分是二叉樹劃分還是三叉樹劃分。根據(jù)第二個和第三個標志的值,mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag,可以導出一CU的多類型樹劃分模式(MttSplitMode)。圖7示出了根據(jù)本公開的一些實施例的示例性表1,其示出了基于多類型樹語法元素的示例性MTTSplitMode推導。[0090]虛擬管道數(shù)據(jù)單元(VPDU)在圖像中被定義為非重疊單元。在硬件解碼器中,連續(xù)的VPDU由多個流水線階段同時處理。在大多數(shù)流水線階段中,VPDU大小與緩沖成比例,因此保持VPDU大小很重要。在大多數(shù)硬件解碼器中,VPDU大小可以設(shè)置為64×64亮度樣本。然而,在一些實施例中,三叉樹(TT)和二叉樹(BT)劃分可能導致VPDU大小的增加。與本公開一致,為了將VPDU大小保持為64×64亮度樣本,可以應用某些規(guī)范分區(qū)限制。圖8示出了根據(jù)本公開的一些實施例的不允許的TT和BT劃分的示例。如圖8所示,對于寬度或高且高度小于128)的CU,不允許水平BT。對于N×128,N≤64(例如,高度等于128且寬度小于128)的CU,不允許垂直BT。[0091]根據(jù)HEVC中的要求,當樹節(jié)點塊的一部分超過圖像底部或右側(cè)邊界時,需強制拆分樹節(jié)點塊,直到每個編碼CU的所有樣本都位于圖像邊界內(nèi)。在VVC草案7中應用了以下拆分規(guī)則:-如果樹節(jié)點塊的一部分超過圖像底部和右側(cè)邊界,分該塊。-否則,如果樹節(jié)點塊的一部分超過圖像底部邊界,-如果該塊是QT節(jié)點,并且該塊的大小大于最小QT大小,并且該塊的大小大于最大BT大小,則強制使用QT拆分模式拆分該塊。-否則,如果該塊是QT節(jié)點,并且塊的大小大于最小QT大小并且塊的大小小于或等于最大BT大小,則強制使用QT拆分模式或SPLIT_BT_HQR模式拆分該塊。-否則(該塊是BT節(jié)點或該塊的大小小于或等于最小QT大小),則強制使用SPLIT_-否則,如果樹節(jié)點塊的一部分超出圖像邊右側(cè)界,-如果該塊是QT節(jié)點,并且該塊的大小大于最小QT大小,并且該塊的大小大于最大BT大小,則強制使用QT拆分模式拆分該塊,-否則,如果塊是QT節(jié)點,并且塊的大小大于最小QT大小并且塊的大小小于或等于最大BT大小,則強制使用QT拆分模式或SPLIT_BT_VER模式拆分該塊。-否則(例如,該塊是BT節(jié)點或該塊的大小小于或等于最小QT大小),則強制使用[0092]圖9示出了根據(jù)本公開的一些實施例的在圖像邊界上的示例性塊劃分。如圖9所以執(zhí)行SPLIT_QT,如果不允許SPLIT_QT,則可以執(zhí)行SPLIT_BT_HOR。對于CTU915,可以執(zhí)行[0093]在VVC草案7中,有兩個與塊分區(qū)有關(guān)的部分。第一個是第6.4節(jié),它定義了是否可以使用四叉樹、二叉樹或三叉樹來劃分塊。6.4節(jié)的輸出是變量allowSplitQt、allowsplitBtHor、allowSplitBtVer、allowSplitTtHor和allowSplitTtVer。這些變量在如圖12中的表4所示的第7.3.9.4節(jié)中使用,以確定是否用信號通知相應的CU級別劃分標志(由圖12的表4中的框1201-1204標記)。[0094]VC草案7的第6.4.1節(jié)描述:在使用雙樹時,目前正在處理中的是亮度(DUAL_TREE_LUMA)還是色度分量(DUAL_TREE_-如果以下一個或多個條件為真(true),則將allowSplitQt設(shè)置為假(FALSE):-treeType等于DUAL_TREE_CHROM-mttDepth不等于0-相對于圖像的左上角亮度樣本,所考慮的編碼塊的左上角亮度樣本的位置(x0,[0097]此過程的輸出是變量allowBtSplit。圖10示出了根據(jù)本公開的一些實施例的示例性表2,其示出了基于btSplit的變量parallelTtSpSubHeightC)小于或等于16-treeType等于DUAL_TRE-y0+cbHeight大于pic_height_in_luma_sam-cbWidth大于64-y0+cbHeight大于pic_height_in_luma_sam-y0+cbHeight大于pic_height_in_luma_sam-y0+cbHeight小于或等于pic_height_i-MttsplitMode[x0][y0][mttDepth-1]等于parallel-cbWidth大于64-所考慮的編碼塊的左上角亮度樣本相對于圖像的左上角亮度樣本的位置(x0,[0100]此過程的輸出是變量allowTtSplit。圖11示出了根據(jù)本公開的一些實施例的示例性表3,其示出了基于ttSplit的變yO+cbHeight大于pic_height_in_luma_samples(cbWidth/SubWidthC)*(cbHeight/SubHeightC)小于或等于32[0102]圖12示出了根據(jù)本公開的一些實施例的示例性表4,其示出了VVC草案7的示例性部分7.3.9.4編碼樹語法(用斜體和陰影添加強調(diào)符號)。allowSplitTtHor的推導如下:-調(diào)用第6.4.1條中指定的允許的四叉樹劃分過程,使用編碼塊大小cbSize設(shè)置為等于cbWidth,當前多類型樹深度mttDepth、treeTypeCurr和modeTypeCurr作為輸入,并將輸出分配給allowSplitQt。-變量minQtSize,maxBtSize,maxTtSize和maxMttDepth的推導如下:maxMttdepth分別設(shè)置為等于MinQtSizeC、MaxBtSizeC、MaxTtSizeC和MaxMttDepthc+-否則,minQtSize、maxBtSize、maxTtSize和maxMttDepth分別設(shè)置為等于-調(diào)用第6.4.2條中指定的允許的二叉樹劃分過程,使用二叉樹劃分模式SPLIT_BT_VER、編碼塊寬度cbWith、編碼塊高度cbHeight、位置(x0,y0)、當前多類型樹深度mttDepth、具有偏移maxMttdepth的最大多類型樹深度、最大二叉樹大小maxBtSize、最小四叉樹大小minQtSize、當前分區(qū)索引partIdx、treeTypeCurr和modeTypeCurr作為輸入,并將輸出分配給allowSplitBtVer。-調(diào)用子句6.4.2中指定的允許的二叉樹拆分過程,使用二叉樹拆分模式SPLIT_BT_HOR、編碼塊高度cbHeight、編碼塊寬度cbWidth、位置(x0,y0)、當前多類型樹深度mttDepth、具有偏移的最大多類型樹深度maxMttDepth、最大二叉樹大小maxBtSize、最小四叉樹大小minQtSize、當前分區(qū)索引partIdx、treeTypeCurr和modeTypeCurr作為輸入,并將輸出分配給allowSplitBtHor。-調(diào)用第6.4.3條中指定的允許的三叉樹劃分過程,使用三叉樹劃分模式SPLIT_TT_VER、編碼塊寬度cbWidth、編碼塊高度cbHeight、位置(x0,y0)、當前多類型樹深度mttDepth、具有偏移maxMttDepth的最大多類型樹深度、最大三叉樹大小maxTtSize、-調(diào)用第6.4.3條中指定的允許的三叉樹劃分過程,使用三叉樹劃分模式SPLIT_TT_HOR、編碼塊高度cbHeight、編碼塊寬度cbWidth、位置(x0,y0)、當前多類型樹深度mttDepth、具有偏移maxMttDepth的最大多類型樹深度、最大三叉樹樹大小maxTtSize、treeTypeCurr和modeTypeCurr作為輸入,并將[0104]語法元素split_cu_flag等于0指定不拆分編碼單元。語法元素split_cu_flag等于1指定使用語法元素split_qt_flag指示的四叉樹劃分將編碼單元分成四個編碼單元,或使用二叉樹劃分將編碼單元分成兩個編碼單元,或使用語法元素mtt_split_cu_binary_flag指示的三叉樹劃分將編碼單元分成三個編碼單元。如語法元素mtt_split_cu_vertical_flag所指示,二叉樹或三叉樹劃分可以是垂直的或水平的。[0105]當語法元素split_cu_flag不存在時,split_cu_flag的-如果以下一個或多個條件為true,則將推斷split_cu_flag的值等于1:-xO+cbWidth大于pic_width_in_luma_samples。-y0+cbHeight大于pic_height_in_luma_sampless。[0106]語法元素split_qt_flag指定編碼單元是否被劃分成具有水平和垂直大小一半的編碼單元。-如果allowSplitQt等于TRUE,則推斷split_qt_flag的值等于1。[0108]語法元素mtt_split_cu_vertical_flag等于0指定編碼單元是水平劃分的。語法元素mtt_split_cu_vertical_flag等于1指定編碼單元是垂直劃分的。-如果allowSplitBtHor等于TRUE或allowSplitTtHor等于TRUE,則將推斷mtt_split_cu_vertical_flag的值為等于0。[0110]語法元素mtt_split_cu_binary_flag等于0的指定使用三叉樹將編碼單元分分割三個編碼單元。語法元素mtt_split_cu_binary_flag等于1指定使用二叉樹劃分將編碼單元分割為兩個編碼單元。-如果allowSplitBtVer等于FALSE并且allowSplitBtHor等于FALSE,則推斷mtt_split_cu_binary_flag的值等于0。mtt_split_cu_binary_flag的值為等于1。-否則(allowSplitBtVer等于TRUE,allowSplitTtHor等于TRUE),推斷mtt_split_cu_binary_flag的值為等于mtt_split_cu_vertical_flag。[0112]圖14示出了根據(jù)本公開的一些實施例示例性表5,其示出了MttSplitMode的示例性規(guī)范。變量MttSplitMode[x][y][mttDepth]是從語法元素mtt_split_cu_vertical_flag的值以及語法元素mtt_split_cu_binary_flag的值當定義表4中x=x0..xO+cbWidth-1和y=y0...yO+cbHeight-1定義的情況下導出的。[0113]MttSplitMode[x][y][mttDepth]表示多類型樹內(nèi)編碼單元的水平二叉樹、垂直二叉樹、水平三叉樹和垂直三叉樹劃分。數(shù)組索引x0,y0指定所考慮的編碼塊的左上亮度樣本相對于圖像的左上亮度樣本的位置(x0,y0)。圖13示出了根據(jù)本公開的一些實施例的由MttSplitMode指示的多類型樹劃分模式的示例。如圖13所示,多類型樹劃分模式可以包括垂直二叉樹劃分(SPLIT_BT_VER)1301、水平二叉樹劃分(SPLIT_BT_HOR)1302、垂直叉樹劃[0114]應當注意,四叉樹、二叉樹和三叉樹劃分的CTU大小、最小塊大小和塊大小限制在序列參數(shù)集或圖像頭中用信號通知。[0115]圖15示出了根據(jù)本公開的一些實施例的示例性表6,其示出了VVC草案7的示例性部分7.3.2.3序列參數(shù)集RBSP語法。圖16示出了根據(jù)本公開的一些實施例的示例性表格7,[0117]作為不允許所有樹劃分模式的第一示例性情況,當CTU大小和最小QT大小都設(shè)置6.4.1允許的四叉樹劃分過程小于或等于小于或等于-y0+cbHeight大于pic_heigh-y0+cbHeight大于pic_height_in_luma_samples-y0+cbHeight小于或等于pi6.4.2允許的二進制劃分過程-否則,如果以下所有條件均為true,則將allowBiSplit設(shè)置為FALSE-y0+cbHeight大于pic_height_in_luma_samples-否則,如果以下所有條件均為true,則將all-chHeight大于64-xO+cbWidth大于pic_width_in_luma_samples[0121]由于以下情況,變量allowSplitTtHor和allowSplilTtVer(6.4.3允許的三叉樹劃分過程-如果以下一個或多個條件為真,則allowTtSplit設(shè)置為等于FALSE:-cbSize小于或等于2*MinTtSizeY-cbHeight大于min(64,maxTt-mttDepth大于或等于maxMttDepth-xO+cbWidth大于pic_width_in_luma_samples[0122]當所有這些變量都被設(shè)置為false時,可以不以信號方式發(fā)送CU級別的劃分標志。推斷語法元素split_cu_flag為1,推斷語法元素split_qt_flag為0,推斷語法元素mtt_split_cu_vertical_flag為1,推斷語法元素mtt_split_cu_binary_flag為0。在這種情況[0123]作為不允許所有樹的劃分模式的第二示例性,對于位于圖像邊界處且包含的樣本超出圖像邊界的塊,不允許所有樹的劃分。當最小QT大小大于最小CU大小(先前表中的語法元素log2_min_luma_codign_block_size_minus2)和最大BT/TT深度(語法元素sps_max_mtt_hierarcyh_depth_inter_slice,sps_max_mtt_hierarchy_depth_intra_spic_max_mtt_hierarchy_depth_inter_slice,_pic_max_mtt_hierarchy_depth_slice_luma,和pic_max_mtt_hierarchy_depth_intra_slice_chroma)等于0時,所有變量allowSplitQt,allowSplitBtHor,allowSplitBtHor,allowSplitTtHor和allowSplitTtVer[0124]圖18示出了根據(jù)本公開的一些實施例的在圖像邊界處不允許QT、BT或BT劃分的示塊。然后,每個64x64塊都無法進一步劃分。但是,超出了右側(cè)和/或底部圖像邊界的塊的部點),變量allowSpiltQt設(shè)置為false:6.4.1允許的四叉樹劃分過程-如果以下一個或多個條件為真,則allowSplitQt設(shè)置為等于FALSE:小于或等于小于或等于[0125]對于標記為灰色的塊,變量allowSplitBtHor和allowSplitBtVer由于以下情況而設(shè)置為false(斜體用以強調(diào)):6.4.2允許的二進制拆分過程-如果以下一個或多個條件為ture,則allowBtSplit設(shè)置為FALSE:-cbSize小于或等于MinBtSizeY-cbHeight大于maxBtSizeMttdepth大于或等于maxMttDeptih[0127]對于標記為灰色的塊,變量allowSplitTtHor和allowSplitTtVer由于以下情況而設(shè)置為false(斜體用以強調(diào)):6.4.3允許的三元分裂過程-如果以下一個或多個條件為真,則allowTtSplit設(shè)置為FALSE:-cbSize小于或等于2*MinTtSizeY-cbWidth大于Min(64,max-mttDepth大于或等于maxMttDepth[0129]如在不允許所有樹劃分模式的第一示例性情況中所述,在當前VVC草案7中,CU可能包含圖像邊界之外的樣本,但是在某些條件下不能再劃分CU。在本公開的一些實施例中,分可以比使用BT或TT劃分更直接。圖19是示出根據(jù)本公開的一些實施例的使用BT和TT劃分的示例的示意圖。劃分塊可能需要多個步驟。此外,對于位于不同位置的塊,劃分可能是不[0130]在一些實施例中,當不允許塊劃分時,可以使用四叉樹劃分,并且可以推斷語法元素split_qt_flag為1。語法元素split_qt_flag指定是否將編碼單元劃分為水平和垂直大小一半的編碼單元。[0131]當語法元素split_qt_fiag不存在時,適用以下內(nèi)容(斜體以示強調(diào)):-如果以下所有條件均成立,則推斷split_qt_flag等于1:-split_cu_flag等于I-allowSplitQt,allowSplitBtHor,allowSplitBtVer,allowSplitTtHor和[0132]在一些實施例中,不能將最小QT大小約束應用于位于圖像邊界的塊。當塊的一部分超過圖像底部或右側(cè)邊界時,可以使用四叉樹劃分塊。允許的四叉樹劃分過程描述如下:6.4.1允許的四路分割過程此過程的輸入是:-亮度樣本中的編碼塊大小cbSize,-多類型樹深度mttDepth,變量樹類型,用于指定使用單樹(SINGLE_TREE)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026上半年云南事業(yè)單位聯(lián)考文山州招聘143人考試備考題庫及答案解析
- 2026鄱陽湖湖泊濕地綜合研究站實驗支撐崗位招聘1人考試參考題庫及答案解析
- 2026年中核五〇四醫(yī)院?甘肅(蘭州)國際陸港中心醫(yī)院招聘司機筆試參考題庫及答案解析
- 2026年度黃山市歙縣事業(yè)單位統(tǒng)一公開招聘工作人員51名筆試參考題庫及答案解析
- 2026重慶龍璟紙業(yè)有限公司招聘1人筆試備考試題及答案解析
- 浙商銀行嘉興分行2026年一季度社會招聘考試備考題庫及答案解析
- 2026銅陵分行社會招聘筆試參考題庫及答案解析
- 2026年1月黑龍江大慶市肇州縣招聘公益性崗位人員35人筆試備考試題及答案解析
- 2026年房地產(chǎn)行業(yè)中的網(wǎng)絡(luò)營銷效益評估
- 2026年地震后的建筑評估與修復
- 2024-2025學年上學期深圳高一物理期末模擬卷1
- 胸痛中心聯(lián)合例會培訓
- 臥式橢圓封頭儲罐液位體積對照表
- 國家職業(yè)技術(shù)技能標準 4-10-01-02 育嬰員 人社廳發(fā)201947號
- 天鵝到家合同模板
- 全球鈷礦資源儲量、供給及應用
- 中考字音字形練習題(含答案)-字音字形專項訓練
- 消防安全責任人任命書
- MOOC 數(shù)據(jù)挖掘-國防科技大學 中國大學慕課答案
- 2024屆新高考物理沖刺復習:“正則動量”解決帶電粒子在磁場中的運動問題
- 中學體育與健康課程與教學論PPT高職完整全套教學課件
評論
0/150
提交評論