TW202349965A - 高效的幾何分區模式視頻編解碼 - Google Patents

高效的幾何分區模式視頻編解碼 Download PDF

Info

Publication number
TW202349965A
TW202349965A TW112116008A TW112116008A TW202349965A TW 202349965 A TW202349965 A TW 202349965A TW 112116008 A TW112116008 A TW 112116008A TW 112116008 A TW112116008 A TW 112116008A TW 202349965 A TW202349965 A TW 202349965A
Authority
TW
Taiwan
Prior art keywords
candidates
width
current block
candidate
gpm
Prior art date
Application number
TW112116008A
Other languages
English (en)
Inventor
羅志軒
陳慶曄
莊子德
Original Assignee
聯發科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 聯發科技股份有限公司 filed Critical 聯發科技股份有限公司
Publication of TW202349965A publication Critical patent/TW202349965A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

描述了用於實現高效幾何分區模式(GPM)視頻編解碼的各種方案。裝置接收要編碼為當前塊的像素資料。該裝置還從分區模式候選集中選擇分區模式。該裝置還確定兩個合併候選,每個合併候選對應於由所選擇的分區模式確定的當前塊的相應GPM部分。該裝置還基於所選擇的分區模式和兩個合併候選或當前塊的輔助資料,從混合寬度候選集合中排除一個或多個混合寬度候選。排除後,該裝置還從混合寬度候選集合中選擇混合寬度。該裝置還使用所選擇的分區模式、兩個合併候選和所選擇的混合寬度對當前塊進行編解碼。

Description

高效的幾何分區模式視頻編解碼
本公開一般涉及視頻譯碼,更具體地,涉及用於在視頻編解碼器內有效地用信號發送幾何分區模式(geometric partitioning mode,GPM)的方法和裝置。
除非本文另有說明,否則本節中描述的方法不是下面列出的請求項的現有技術,並且不因包含在本節中而被承認為現有技術。
視頻編碼通常涉及通過編碼器將視頻(即,源視頻)編碼成位元流,將位元流傳輸到解碼器,以及通過解碼器解析和處理位元流從位元流解碼視頻以產生重構視頻。視頻譯碼器(即,編碼器和解碼器)可以在對視頻進行編碼和解碼時採用各種譯碼模式或工具,其目的之一是實現高效的視頻譯碼,其表現為例如高譯碼增益。即,視頻編碼器旨在減少需要從編碼器傳輸到解碼器的位元流的總大小,同時仍然向解碼器提供關於原始視頻的足夠信息,使得令人滿意地忠實於原始視頻的重構視頻可以由解碼器生成。
視頻通常呈現為按時間順序顯示的一系列圖片或幀。許多編碼工具都是基於塊的編碼工具,其中要編碼的圖片或幀被分成許多不重疊的矩形區域,稱為“塊”,視頻編碼器在流水線中一次一個塊地處理視頻序列。即,塊構成由編碼工具處理的基本元素,如在圖像內預測和圖像間預測中常見的那樣,這兩種主要技術通過分別去除源視頻中的空間和時間冗餘而用於視頻編解碼。一般而言,通過在多個已編碼塊中搜索並找到最類似於當前待編碼塊的一個或多個參考塊來去除視頻冗餘。已編碼塊通常存儲在編碼器的重構圖片緩衝器(RPB)以及解碼器的解碼圖片緩衝器(DPB)中,因此可供編碼器和解碼器用於後續處理。找到參考塊後,可以使用參考塊本身以及參考塊和當前塊之間的差異(稱為“殘差”)對當前塊進行編碼或以其他方式表示,從而消除冗餘。圖片內預測利用在當前塊的相同圖片內找到的參考塊來去除冗餘,而圖片間預測利用每個不在當前塊的相同圖片內找到的參考塊,而是在源視頻的另一圖片內找到的參考塊。
對於圖片間預測,參考塊被稱為當前塊(即,正在編碼的直接塊)的“預測子”,而包含參考塊的圖片被稱為當前塊的“參考圖片”。通過運動估計(ME)過程找到預測子,其中具有最小殘差的塊被確定為預測子,因為它最類似於當前塊。因此,當前塊由殘差、預測子(通常由索引指示)以及表示參考塊和當前塊之間的位置偏移的運動矢量(MV)來表示,所有這些都被用信號通知(即,由編碼器編碼到位元流中)。在解碼器側,解析位元流以恢復殘差、指示預測子的索引和MV,隨後基於該殘差通過運動補償(MC)過程重建當前塊。
視頻編碼器採用的這種圖片間預測技術通常被稱為運動補償預測(MCP)。為了進一步增強ME和MC過程的準確性,MCP可以利用分數樣本插值(即,子像素插值),其中參考圖片樣本資料可以***值到子像素分辨率,例如半像素(1 /2-pel)、四分之一像素(1/4-pel)或更精細的分辨率。也就是說,MV可以指向參考圖片中的整數、半樣本、四分之一樣本、或者甚至更精細的位置。此外,MV通常不是被直接編碼,而是被差分編碼為與當前塊的相鄰塊的MV的MV差(MVD)。具體地,MV被表示為MV預測子(MVP)加上MVD,其中MVP可以是相鄰塊的MV之一,或者可以從相鄰塊的多個MV的組合推導出來。也就是說,MVP與相鄰塊的MV相關,並且相關性可以由索引來指示。對MVD和MVP的組合而不是MV本身進行編碼可以進一步減小位元流大小。MV(或者同等地MVD和MVP)通常被稱為當前塊的“運動資料”或“運動信息”。為了對當前塊進行編碼,編碼器將參考ID(即,指示參考塊的索引)、殘差(在變換和量化之後)和運動信息熵編碼到位元流中,而解碼器則解析(即,熵解碼)位元流恢復參考ID、運動信息和殘差,從而重建當前塊。
可以採用本公開中演示的各種技術來增強MCP的效率和性能,尤其是對於包含與塊的邊緣基本上不平行的對象邊界(object boundaries)的塊。本文的技術可以應用於符合諸如高效視頻編碼(HEVC)或通用視頻編碼(VVC)之類的當代視頻編碼標準的編解碼器,並因此擴展或增強其能力。HEVC是由視頻編碼聯合協作組(JCT-VC)制定的國際視頻編碼標準。HEVC基於混合的基於塊的運動補償類DCT(DCT代表離散餘弦變換)變換編碼架構。壓縮的基本單位稱為編碼單位(CU),是一個2Nx2N的像素方形塊,每個CU可以遞歸地分為四個較小的CU,直到達到預定義的最小尺寸。每個CU包含一個或多個預測單元(PU)。多功能視頻編碼(VVC)是一種編解碼器,旨在滿足視頻會議、OTT流媒體、移動電話等方面即將到來的需求。VVC旨在提供多種功能,滿足從低分辨率和低位元率到高分辨率和高位元率、高動態範圍(HDR)、360全向等的所有視頻需求。VVC支持具有4:2:0採樣、每個分量10位元、YCbCr/RGB 4:4:4和YCbCr 4:2:2的YCbCr色彩空間,每個分量的位元深度高達16位元,具有HDR和廣色域顏色,以及用於透明度、深度等的輔助通道。
以下概述僅是說明性的,並不旨在以任何方式進行限制。即,提供以下概述以介紹本文描述的新穎的和非顯而易見的技術的概念、亮點、好處和優勢。在下面的詳細描述中進一步描述了選擇的而不是所有的實施方式。因此,以下概述不旨在識別要求保護的主題的基本特徵,也不旨在用於確定要求保護的主題的範圍。
本公開的目的是提供與高效GPM視頻譯碼有關的方案、概念、設計、技術、方法和裝置。據信,利用本公開中的各種實施例,實現了包括增強的編碼增益、更低的信令開銷和/或降低的硬件成本的益處。
在一個方面,提出了一種用於通過應用候選集大小縮減和/或候選重新排序來執行高效GPM編碼的方法。該方法可以涉及接收當前塊的像素資料以及當前塊的一個或多個相鄰塊的像素資料。在一些實施例中,一個或多個鄰近塊可以包括緊鄰當前塊上方的鄰近塊和/或緊鄰當前塊左側的鄰近塊。該方法還可以涉及從分區模式候選集中選擇分區模式。分區模式候選集可以包括一個或多個分區模式候選,而每個分區模式候選由當前塊內的相應分區邊界來定義或以其他方式表徵。在一些實施例中,分區邊界可以是將當前塊分區成被稱為“GPM部分”的兩個部分的直線。直線分區線可以由角度參數和偏移參數來定義。該方法還可以涉及確定當前塊的兩個合併候選,其中每個合併候選是參考圖片中的參考塊並且對應於兩個GPM部分中的相應一個。可以從具有兩個或更多個合併候選的合併候選集中選擇兩個合併候選。兩個合併候選可能不是相同的參考塊。該方法還可以涉及基於所選擇的分區模式和兩個合併候選或當前塊的輔助資料從混合寬度候選集合確定混合寬度。確定混合寬度的步驟還可以涉及對包括兩個或更多個混合寬度候選的混合寬度候選集執行大小減小。即,編解碼器可以從混合寬度候選集中排除一個或多個混合寬度候選。混合寬度決定了將兩個合併候選混合成一個GPM預測的混合強度。編解碼器可以這樣做,即,基於所選擇的分區模式、兩個合併候選的輔助資料和/或當前塊的輔助資料排除一些混合寬度候選。輔助資料可以包括當前塊的MV、當前塊的一個或多個相鄰塊的MV、兩個GPM部分的樣本值、兩個合併候選的索引、與當前塊相鄰的模板區域的樣本值、和/或與兩個合併候選之一相鄰的模板區域的樣本值。確定混合寬度的步驟還可以涉及從尺寸縮小的混合寬度候選集合中選擇混合寬度,即,在排除一個或多個混合寬度候選之後。最後,該方法還可以涉及使用所選擇的分區模式、所確定的兩個合併候選以及所選擇的混合寬度對當前塊進行編解碼。
在一些實施例中,確定混合寬度的步驟還可以包括在選擇混合寬度之前對已經縮小尺寸的混合寬度候選集進行重新排序。重新排序基於一些猜測成本計算,其計算強度比實際率失真(RD)成本計算少得多。具體地,對於保留在混合寬度候選集中的每個混合寬度候選,計算相關聯的GPM預測的相應猜測成本。猜測成本計算可以採用模板匹配和/或邊界匹配技術。
在一些實施例中,該方法還可以包括構造具有多個GPM候選的GPM候選集合,而每個GPM候選表示分區模式候選之一和合併候選之一的相應組合。在一些實施例中,還可以基於猜測成本計算方法對GPM候選集進行重新排序。
在下面的詳細描述中,通過示例的方式闡述了許多具體細節,以便提供對相關教導的透徹理解。基於本文描述的教導的任何變化、派生和/或擴展都在本公開的保護範圍內。在一些情況下,可以在相對較高的水平上描述與本文公開的一個或多個示例實現有關的眾所周知的方法、處理、組件和/或電路而不詳細,以避免不必要地模糊本公開的教導的方面。
根據本發明的實施方式涉及與高效GPM譯碼有關的各種技術、方法、方案和/或解決方案,包括視頻編解碼器的編碼器與解碼器之間的信令方案。 根據本公開,可以單獨或聯合地實施多種可能的解決方案。 也就是說,雖然下面可以單獨地描述這些可能的解決方案,但是這些可能的解決方案中的兩個或更多個可以以一種組合或另一種組合來實現。 I. 使用合併模式(Merge Mode)的運動補償預測
如上文別處所述,通過將MCP應用於當前塊,當前塊的運動信息被編碼在位元流中。然而,可以採用所謂的“合併模式”來提高MCP的MV編碼效率,其中運動信息是從空間相鄰塊(空間候選)或時間共置塊(時間候選)繼承或以其他方式獲得的。也就是說,在合併模式下,不編碼運動信息。相反,候選索引被選擇並用信號通知以指示合併候選集中的哪個候選用於合併,其中合併候選集包括合併候選列表,該合併候選列表包括空間候選、時間候选和一些附加/導出候選。當前塊可以是PU,因此重用所選候選的MV、預測方向和參考圖片索引。在合併模式下,多個PU可以參考相同的候選,並且多個PU(稱為合併的PU)中的每一個因此從候選繼承相同的MV、預測方向和參考圖片索引。
合併模式的特殊情況被稱為“跳過模式”,其中當前塊的殘差被推斷為零並且不被編碼(即,不被發信號通知)。
第1圖是根據本公開的實施方式的示例設計的圖,其中示出了合併模式的若干運動候選。每個運動候選可以是合併候選集合中的候選。具體地,視頻編解碼器正在對視頻圖片或幀的當前塊100進行編碼或解碼。如圖所示,在運動候選中,從空間鄰居A 0、A 1、B 0和B 1導出最多四個空間MV候選,並且從T BR或T CTR導出一個時間MV候選,其中T BR表示時間坐標的右下鄰居。T CTR表示當前塊100的中心塊,並且T CTR表示時間上共同定位的塊的中心塊。如果T BR可用,則使用T BR作為候選,而如果T BR不可用,則使用T CTR。如果四個空間MV候選中的任何一個不可用,則使用位置B 2來導出MV候選作為替代。在一些實施例中,在四個空間MV候选和一個時間MV候選的推導過程之後,執行“修剪(pruning)”操作,本質上是冗餘檢查,以去除任何冗餘MV候選。在冗餘校驗之後,如果可用MV候選的數量小於預定義數量,例如5,則可以導出三種類型的附加候選並隨後將其添加到合併候選集合。視頻編解碼器的編碼器可以從合併候選集合中選擇一個最終候選以用於在合併模式下對當前塊100進行編碼。例如,編碼器可以使用率失真優化(rate-distortion optimization, RDO)決策來選擇候選。即,編碼器計算由合併候選集中的每個候選預測的當前塊的RD成本。然後選擇具有最低RD成本的候選作為對當前塊進行編碼的最終候選。因此,編碼器向視頻編解碼器的解碼器傳送或以其他方式用信號通知指示最終候選的索引。 II. 幾何分區模式(Geometric Partitioning Mode)
如上所述的合併模式(在下文中被稱為“常規合併模式(regular merge mode)”)旨在通過不顯式地用信號發送MCP運動信息而是使當前塊繼承所選擇的合併候選的運動信息來提高MV編碼效率。常規合併模式對於不包括對象邊界的塊或包括基本上平行於當前塊的一側(即,基本上垂直或水平)的對象邊界(object boundary)的塊效果很好。然而,對於包含相對於背景或相對於其他移動對象移動的自然對象的視頻,自然對象的邊界通常既不是垂直的也不是水平的,而是相對於當前塊的邊傾斜的。由於傾斜,常規合併模式可能無法很好地預測這樣的塊,從而導致次優編碼增益。
為了解決邊界傾斜並因此提高編碼增益,可以使用稱為幾何分區模式(GPM)的特殊合併模式來代替常規合併模式。GPM旨在提供靈活的CU分區,通過沿著分區邊界將當前塊分成兩部分來更緊密地跟踪對象邊界。在一些實施例中,分區邊界可以是比水平或垂直PU邊緣更好地與CU(即,當前塊)的傾斜對象邊界對齊的直分區線。GPM通常會產生比常規合併模式更好的MCP。分區線在下文中可互換地稱為分區邊界,並且由分區邊界分開的CU的兩個部分被稱為CU的兩個GPM部分。兩個GPM部分分別使用其自己的運動信息進行幀間預測,並使用常規合併模式進行編解碼。此外,GPM部分僅允許單向MCP。即,兩個GPM部分中的每一個僅允許一個運動向量和一個參考索引。應用單向預測運動約束以確保與傳統雙向預測相同的存儲器帶寬。即,在GPM下僅對每個CU執行兩個運動補償預測(MCP)。然後,分別使用各自的GPM部分預測的兩個MCP通過混合操作混合為GPM預測,然後從當前塊的原始樣本中減去該預測以生成殘差。
第2圖中示出瞭如上所述的GPM的示例。參照第2圖,其中使用GPM對當前圖片259的當前塊255進行譯碼。如圖所示,當前塊255沿著分區線253被分區成兩個部分250和251,分區線253是穿過當前塊255的直線。分區線253可以基本上與當前塊255中包含的對象邊界對齊。此外,分區線253相對於當前塊255的邊是傾斜的。視頻編解碼器對部分250和251中的每一個執行單向MCP,導致部分250通過MV0從參考圖片209的參考塊205進行幀間預測,並且部分251通過MV1從另一參考圖片219的參考塊215進行幀間預測。也就是說,部分250和251分別以常規合併模式進行幀間預測,這導致合併(參考塊205和215在下文中可互換地稱為合併候選205和215)。隨後,視頻編解碼器執行混合操作以基於合併候選205和215形成GPM預測257。GPM預測257具有與當前塊255以及每個合併候選205和215相同的尺寸(即,寬度和高度)。對混合區域256內沿著或附近的像素樣本執行混合操作即,混合操作通過調整混合區域256內的參考塊205和/或參考塊215的樣本值來將合併候選205和215混合到GPM預測257中。GPM預測257的混合區域256內的樣本可以是參考塊205的一個或多個樣本和參考塊215的一個或多個樣本的加權平均。然後從當前塊255中減去GPM預測257以生成當前塊255的殘差,然後在將殘差編碼成位元流之前對殘差進行變換和量化。
應當注意,在混合過程中可以應用自適應加權,而不是固定加權。例如,在GPM預測257的混合區域256中形成第一樣本時,參考塊205和215的樣本的混合權重可以不同於在GPM預測257的混合區域256中形成第二樣本時使用的混合權重。關於本公開的自適應混合特徵的更多細節在下文別處給出。
GPM可以支持許多不同的分區模式,其中每種分區模式由相應的分區邊界定義。例如,GPM能夠沿著許多不同的分區邊界之一劃分當前塊255,從而形成不同對的GPM部分250和251。對於直線分區邊界,每個分區邊界由角度參數和偏移參數。視頻編碼器可以確定或以其他方式選擇許多不同分區模式中的特定一種來以GPM模式對當前塊進行編碼。例如,編碼器可以在分區模式候選集內執行RDO搜索,即,通過計算每個分區模式候選各自的RD成本,對分區模式候選集中的分區模式候選執行RDO操作,然後指定具有最低RD成本的分區模式作為要對CU進行編碼的所選分區模式。在選擇分區模式之後,可以將指示所選擇的分區模式的索引連同兩個合併索引一起發送給解碼器,每個合併索引指示通過將所選擇的分區模式應用於當前塊而產生的兩個部分之一的參考塊。
對於特定分區模式,當前塊內相應分區線的位置是從角度參數和偏移參數以數學方式導出的,某種程度上類似於使用斜率和截距在x-y平面上定義直線的方式。第3圖是根據本公開的實施方式的示例設計的圖,其中示出了GPM的各種分區線。具體地,在第3圖中,310示出了GPM可以支持的[0,2π)(即0-360度)範圍內的二十個不同角度。分區模式的角度由角度參數定義。具有零偏移的分區線表示具有穿過當前塊的中心位置的分區邊界的分區模式。某些分區模式可能具有非零偏移。也就是說,經過當前塊的中心位置的分區線可能會平行移動由偏移參數指定的偏移量,從而導致當前塊的分區模式不同,儘管角度參數保持相同的值。第3圖的320中示出了具有相同角度參數值和不同偏移值的多組平行分區線,其中每個分區線代表GPM分區模式。如圖所示,每組最多包含四種不同的彼此並行的GPM分區模式。
GPM作為一種合併模式,使用CU級標誌來發信號通知。VVC標準的測試模型有一個GPM,對於每個可能的CU大小 ,支持多達64種不同的分區模式,其中m,n {3,…,6},不包括8x64和64x8的尺寸。為了用信號發送六十四種可能候選分區模式中的GPM分區模式,需要多達6個位元來用信號發送指示所選擇的GPM分區模式的索引。在一些實施例中,視頻編解碼器可以避免使用GPM對細長CU進行譯碼,例如具有大於N比1或小於1比N的寬高比的塊,而N是整數閾值(例如,4、 6、8或10)。與常規合併模式類似,GPM可以具有作為特殊情況的跳過模式,其中當前塊的殘差被推斷為零並且不被編碼(即,不被用信號通知)。 III. GPM 混合寬度
如上文別處所述,執行混合過程以將兩個合併候選(例如,參考塊205和215)混合成GPM預測(例如,GPM預測257)。一般而言,其中樣本值可通過混合過程來調整的混合區域,例如混合區域256,包括沿著分區線(例如,分區線253)具有2θ寬度的條帶,其中分區線位於沿著條紋的中心線。也就是說,在垂直於分區線的方向上,混合區域具有2θ的尺寸,其中1θ在分區線的一側並且1θ在分區線的另一側,如第4圖的410中所例示的。參數θ稱為GPM混合操作的混合寬度參數,以下可互換地稱為“混合寬度”。
混合操作涉及兩個整數混合矩陣W 0和W 1,其分別在第4圖的420和421中示出。GPM混合矩陣W 0和W 1中的權重包含來自由兩個閾值(例如[0, 8])設置的預定義範圍的值,並且基於從樣本位置(例如,位置 411)到GPM分區邊界(例如,第4圖的分區線253)。如第4圖的410所示,樣本位置411被表示為 ,並且位移被表示為 。位移可以被計算為從樣本位置411到GPM分區邊界253的量化距離。
混合矩陣W 0和W 1有時被稱為“混合掩模(blending mask)”,而其中的每個值表示在形成GPM預測257時合併候選205或215的對應樣本的“混合強度”。因此,每個混合矩陣矩陣W 0和W 1具有與當前塊255(以及合併候選205和215)相同的尺寸(即,寬度w和高度h)。在一些實施例中,權重由離散斜坡函數給出,該離散斜坡函數由位移和兩個閾值參數化。例如,兩個閾值可以是0和8,並且混合掩模W 0和W 1之一中的權重值可以由如下斜坡函數給出:
可以基於以下關係容易地計算其他混合掩模的權重值: W 0+ W 1= 8*J w,h,(等式 2) 其中J w,h是大小為 w × h 的矩陣。 因此,GPM預測257計算為 (等式3)
其中P 0表示合併候選205,P 1表示合併候選215,P G表示GPM預測257。
在一些實施例中,任何GPM編碼的CU的混合寬度θ是固定值,無論使用哪種分區模式。例如,θ可以被定義為2像素的固定值。在固定θ=2像素的情況下,方程的斜坡函數等式1可以量化為 (等式4)
然而,θ的固定值可能並非對於所有CU都是最佳的。也就是說,根據CU的內容,θ的固定值對於實現最佳混合可能太大或太小。
在一些實施例中,混合寬度θ的值可以從預定義的一組值中選擇,該組值被稱為“混合寬度候選集”。例如,視頻譯碼器可以從包括以下預定義候選的混合寬度候選集中選擇混合寬度θ:1/2像素、1像素、2像素、4像素和8像素。即,ϴ ϵ {1/2,1,2,4,8},如430所示。一般來說,候選集中的候選數量被稱為候選集的“大小” 因此,混合寬度候選集(其中ϴ ϵ {1/2,1,2,4,8})的大小為5,因為候選集中有五個候選。此外,混合寬度候選集中的每個候選可以由索引來指示或以其他方式表示,並且在一些實施例中,可以將所選擇的混合寬度的索引從編碼器用信號通知給解碼器。可能需要多達3個位元來用信號發送指示從具有五個候選的混合寬度候選集中選擇的θ的索引。為了從混合寬度候選集中選擇混合寬度θ用於GPM編碼,編解碼器可以在混合寬度候選集中執行RDO搜索,即,對混合寬度候選集中的混合寬度候選執行RDO操作。例如,對於混合寬度候選集中的每個混合寬度候選,通過使用相應的混合寬度候選來混合兩個合併候選205和215來生成相應的GPM預測257。隨後,在生成的GPM預測257和當前塊255之間計算相應的RD成本。然後將產生最低RD成本的混合寬度候選指定為當前塊255所用的所選混合寬度。一般來說,如果兩個GPM部分彼此差異很大,則較小的θ值往往會比較大的θ值導致更低的RD成本,因此是優選的。另一方面,如果穿過分區邊界的梯度相當小,則通常優選較大的θ值。 IV. GPM 信令
為了用信號發送GPM編碼的CU,可以從編碼器向解碼器用信號發送若干語法元素。語法元素可以包括:(1)指示兩個合併候選(例如,合併候選205和215)的兩個合併候選索引;(2)指示從具有多個分區模式候選(例如,320所示的各種分區模式)的分區模式候選集合中選擇的分區模式(例如,分區線253)的分區模式索引;(3)混合寬度索引,指示從具有多個混合寬度候選的混合寬度候選集合中選擇的混合寬度θ(例如,ϴ ϵ{1/2,1,2,4,8},如430所示)。如上文別處所述,在分區模式候選集具有64個分區模式候選的情況下,需要多達6個位元來使用固定長度二進制編碼用信號通知所選擇的分區模式。同樣,在混合寬度候選集具有五個混合寬度候選的情況下,需要多達3個位元來用信號通知所選擇的分區混合寬度。另外,兩個合併候選索引可以使用截斷一元(TU)二值化方案來編碼並且需要總共9個位元來用信號通知。顯然,用信號通知GPM編碼的CU所需的許多位元(即,9 + 6 +3 = 18 位)並不是最佳的,因為所需的許多位元會對視頻編解碼器的編碼增益產生負面影響。
與固定長度編碼方案相比,對索引採用可變長度二進制編碼可以幫助減少信令開銷。例如,430列出了用於使用可變長度編碼方案用信號通知θ候選的相應二進制碼字(在“bin”列中)。如圖所示,1位碼字“1”被分配給θ=2,而其他四個θ候選中的每一個都用相應的3位碼字進行編碼。由於θ=2候選是視頻中GPM編碼CU最常選擇的混合寬度,因此用於表示混合寬度θ=2的相應短碼字有助於增強整體編碼增益。
在一些實施例中,對於GPM編碼的CU,視頻編解碼器可以通過執行RDO搜索操作來確定所選擇的分區模式和所選擇的混合寬度θ,該RDO搜索操作要求計算分區模式和混合寬度的每個可能組合的RD成本。例如,利用分區模式候選集中的64個候选和混合寬度候選集中的5個候選,視頻編解碼器的編碼器將在當前CU的64x5=320個可能的分區-θ組合上執行RDO搜索。編碼器可以確定或以其他方式指定具有最低RD成本的組合作為所選分區和所選混合寬度的對。顯然,對於編碼器來說,跨所有分區θ組合的RDO是一項計算量非常大的任務。
如下詳述的各種技術可以被用於GPM以減少編碼器的計算負擔以及信令開銷,從而增強編碼效率而不損害太多(如果有的話)編碼增益。 V. 候選集大小縮減
一方面,本公開提出通過減小混合寬度候選集的大小,即,通過從預定義混合寬度候選中排除不太可能產生令人滿意的編碼增益的一個或多個候選,來提高總體編碼效率。候選集大小縮減的方法具有三個階段或步驟:(i)檢測或以其他方式確定兩個GPM合併候選中的每一個內的對象邊緣;(ii)基於跨兩個GPM合併候選的檢測到的對象邊緣的梯度來計算當前塊的梯度;(iii)基於當前塊的計算梯度排除一個或多個不太可能的候選。使用由所選擇的分區模式(例如,參考塊205和215)產生的兩個合併候選的樣本值和/或輔助資料來執行第(i)和第(ii)步驟。第(iii)步是使用統計模型或查找表(LUT)來執行,其可以是基於歷史的。也就是說,基於計算的梯度和統計模型/LUT,視頻編解碼器可以從混合寬度候選集合中排除不太可能用於對當前塊進行GPM編碼的一個或多個混合寬度候選,從而減少混合寬度候選集的大小。在編碼器側,在候選尺寸縮減之後,可以在縮減尺寸的候選集合內執行基於兩個合併候選或當前塊的輔助資料的RDO搜索或計算,而不是預定義的,全尺寸候選集,用於選擇用於對當前塊進行GPM編碼的混合寬度的最終候選。
第5圖是根據本公開的實施方式的示例設計的圖,其中對參考塊205和255執行邊緣檢測以分別檢測對象邊緣510和520。典型的邊緣檢測算法可用於該任務。例如,塊內樣本強度的突然變化或不連續性可以被檢測為對象邊緣。在參考塊205或255內檢測到的最顯著的不連續性(即,最突然的變化)可以被指定為對象邊緣510或520。在一些實施例中,“模板”區域中的樣本是輔助資料的一部分,也可用於邊緣檢測。塊的模板是指與該塊相鄰的區域,該區域包含已使用幀內預測重建的相鄰塊的幾行和/或幾列樣本,無論有或沒有位置相關的幀內預測組合(position dependent intra prediction combination)。模板的更詳細說明在下文別處給出。如第5圖所示,參考塊205具有模板570,其包括緊鄰塊205上方的幾行相鄰塊。同樣,參考塊215具有模板571,其包括緊鄰塊205上方的幾行相鄰塊。在模板樣本(即,模板570和571中的樣本)可用於編解碼器的情況下(例如,仍然存儲在編碼器的重構圖片緩衝器或解碼器的解碼圖片緩衝器中),當當前塊255正在被編碼時,模板樣本還可以分別與參考塊205和215內的樣本結合使用或代替參考塊205和215內的樣本來用於步驟(i)的邊緣檢測。
在步驟(ii)中,可以基於相應參考塊的樣本值或其一些輔助資料(例如,模板570或571中的樣本)來計算跨檢測到的對象邊緣510和520中的每一個的梯度。例如,可以使用對象邊緣510或520兩側上的某些區域內的平均樣本值來計算梯度。例如,跨對象邊緣510的梯度可以由第一梯度值511表示,其計算為塊205的區域513和514內的平均樣本值之間的差,其中區域513和514是基本上相對於彼此水平定位並且位於對象邊緣510附近的兩個區域。或者,跨對象的梯度邊緣510可以由第二梯度值512表示,其被計算為塊205的區域515和516內的平均樣本值之間的差,其中區域515和516是基本上相對於彼此垂直定位的兩個區域並且類似地,跨過對象邊緣520的梯度可以被計算為水平梯度值521或垂直梯度值522,而梯度值521和522以與梯度類似的方式被計算。在一些實施例中,對象邊緣510的梯度可以通過組合第一梯度值511和第二梯度值512來計算,例如作為其加權平均值。同樣,可以通過將梯度值521和522組合為加權平均值來計算跨對象邊緣520的梯度。計算加權平均值的權重可以分別取決於對象邊緣510和520的傾斜度。例如,對象邊緣510在塊205內基本成對角線,因此在計算加權平均值時梯度值511和512的權重可以基本相同。作為另一示例,對象邊緣520在塊215內成更垂直的角度,並且因此在計算加權平均值時梯度值522可以具有比梯度值521更高的權重。
在一些實施例中,模板570和571中的樣本可以附加地或替代地用於分別計算跨越對象邊緣510和520的梯度。例如,在計算跨越對象邊緣510的梯度時,可以使用模板570中的樣本值計算的水平梯度517來代替水平梯度511。或者,水平梯度517可以直接指定為跨越對象邊緣510的梯度。當使用模板570和571中的樣本值計算梯度時,對象邊緣510和520可以分別外推或以其他方式延伸穿過模板570和571的垂直維度。
此外,在步驟(ii)中,可以基於跨過對象邊緣510的梯度和跨過對象邊緣520的梯度來確定當前塊255的梯度。在一些實施例中,兩個梯度中的較大者可以被指定為當前塊255的梯度。在一些實施例中,可以計算兩個梯度的加權平均值並將其指定為當前塊255的梯度。例如,可以根據參考塊205和當前塊255之間的第一索引差對兩個梯度進行加權,以及參考塊215和當前塊255之間的第二索引差對兩個梯度進行加權。第一和第二索引差中的每一個可以是圖像順序計數(POC)中的當前塊255與相應參考塊205或215的差的指示。權重可以與第一指數差和第二指數差成反比。
在混合寬度候選集大小減小的步驟(iii)中,基於如在步驟(ii)中計算的當前塊255的梯度從候選集排除一個或多個不太可能的候選。一般來說,較大的梯度需要較小的GPM混合寬度θ來實現較高的編碼增益,而較小的梯度在較大的θ值下效果更好。例如,對於具有五個候選的預定義混合寬度候選集,例如,如430所示的ϴ ϵ {1/2,1,2,4,8},在步驟(ii)導致大的情況下跨對象邊緣的梯度值,視頻編解碼器可以從混合寬度候選集中排除θ=4和θ=8,僅留下ϴϵ{1/2, 1, 2} 作為縮小尺寸的候選集。另一方面,如果步驟(ii)產生相當小的梯度值,則視頻編解碼器可以從混合寬度候選集中排除θ=1/2和θ=1,僅留下ϴϵ{2, 4 , 8}作為縮小後的候選集。尺寸縮小的候選集使得能夠使用更短的碼字來用信號通知所選擇的混合寬度。例如,當候選集的大小從五減少到三時,碼字可以從3位元減少到2位元。縮小的候選集還減輕了編解碼器的RDO負擔,從而提高了編碼效率。
如上文別處提到的,步驟(ii)中計算的當前塊的梯度值與步驟(iii)中排除的候選之間的關係可以通過統計模型來建立,該統計模型可以是LUT。在一些實施例中,統計模型/LUT可以是基於歷史的。也就是說,編解碼器可以基於基於成熟的候選集的先前RDO操作的結果來確定在步驟(iii)中要排除哪一個或哪些混合寬度候選。例如,在建立模型/LUT之前,編解碼器可以跳過步驟(iii)並在混合寬度候選集中的每個預定義候選上執行RDO搜索。隨著編解碼器以GPM編碼越來越多的CU,基於編碼CU時耗盡的RDO搜索的結果,編解碼器可以建立並細化統計模型或LUT,以對某些候選混合寬度的可能性進行有根據的猜測相對於某些梯度值。一旦LUT可用,編解碼器就可以使用LUT執行步驟(iii),以基於步驟(ii)中計算的當前塊的梯度值排除一個或多個不太可能的候選。在一些在實施例中,當編解碼器開始對新切片進行編碼時、當檢測到場景變化時、或者當在自然圖像(NI)和屏幕內容圖像(SCI)之間存在過渡時,LUT可以被耗盡並重新建立。
在一些實施例中,編解碼器可以從步驟(iii)中的混合寬度候選中排除一個或多個候選。在一些實施例中,編解碼器可以從預定義混合寬度候選集中排除除一個候選之外的所有候選,使得混合寬度候選集合在步驟(iii)之後僅具有一個混合寬度候選。如果混合寬度候選集中只剩下一個候選,則無需RDO即可自動選擇唯一的候選,並且不需要從編碼器向解碼器發送所選混合寬度的信號,因為它已經在混合寬度上隱式確定了。
在一些實施例中,上述候選集大小縮減方法可以稍微修改,其中步驟(i)修改為:(i-a)檢測或以其他方式確定當前塊內的對象邊緣,步驟(ii)修改為: (ii- a)計算當前塊的跨確定的對象邊緣的梯度,而步驟(iii)保持相同。下面進一步描述修改的方法。
在步驟(i-a)中,確定當前塊內的對象邊緣。在一些實施例中,當前塊255的所選分區模式的分區邊界,例如分區邊界253,可以被指定為當前塊內的對象邊緣。在一些實施例中,當前塊內的對象邊緣可以從步驟(i)中的兩個GPM合併候選內檢測到的對象邊緣導出。如第5圖所示,當前塊255內的對象邊緣530可以從在合併候選205中檢測到的對象邊緣510和在合併候選215中檢測到的對象邊緣520導出。例如,對象邊緣510和520可以被加權。被平均以生成對象邊緣530。在一些實施例中,權重可以與前述的第一索引差和第二索引差成反比,即,參考塊205和當前塊255之間的索引差以及參考塊215和當前塊255之間的索引差。
在步驟(ii-a)中,可以按照與在步驟(ii)中計算跨越對象邊緣510或520的梯度類似的方式來計算在步驟(i-a)中確定的跨越當前塊的對象邊緣的梯度。在一些實施例中,可以附加地或替代地使用其他輔助資料來計算步驟(ii)和步驟(ii-a)中跨對象邊緣510、520或530的梯度,而計算梯度的基本原理保持相同。輔助資料可以包括當前CU中的MV、相鄰塊或子塊(例如,當前CU的一個或多個相鄰塊)的MV或者相鄰MV之間的差、當前CU與相鄰CU之間的MV的差、兩個GPM部分的參考樣本值或參考索引(例如,參考塊205和215的樣本值或索引)或其差、兩個GPM部分的預測模式或類型、維度(例如,當前塊的寬度、高度、面積和/或縱橫比),或者上面列出的兩個或多個項目的組合。也就是說,除瞭如上所述使用參考塊的樣本值來確定跨越對象邊緣的梯度之外或替代於此,任何輔助資料或其組合可用於計算跨越對象邊緣的梯度。
在一些實施例中,輔助資料還可以包括當前CU的模板樣本以及兩個合併候選的模板樣本(例如,塊255、205和215的模板樣本值)。塊的模板是指通常具有L形狀的區域,其與包含已通過幀內預測重建的相鄰塊的幾行和/或幾列樣本的塊相鄰,有或沒有PDPC。在光柵掃描編碼模式中,模板包括緊鄰塊上方和/或左邊的相鄰塊中的樣本。第6圖是根據本公開的實施方式的示例設計的圖,其中針對作為當前塊255、GPM參考塊205或GPM參考塊215的塊示出了模板區域。下面關於以下的描述模板區域以當前塊255為例。模板區域的相同定義應用於參考塊205、255或任何其他塊。不同的實施例不同地定義模板區域,通常取決於所考慮的分區模式。在一些實施例中,當前塊205的模板區域可以包括區域671、區域672,或兩者,而區域671表示緊鄰當前塊205上方的相鄰塊的最後M行重構樣本,並且區域672表示緊鄰當前塊205左邊的相鄰塊的最後N列重構樣本在一些實施例中,模板區域還可以包括由區域673表示的樣本,區域673位於當前塊205在左上方向上緊鄰的塊中。在一些實施例中,M可以等於N,而在一些其他實施例中,M可以不等於N。在一些實施例中,M和/或N可以與當前塊的大小相關。例如,M可以是當前塊205的高度的一定百分比。同樣,N可以是當前塊205的寬度的一定百分比。
因此,在步驟(ii-a)中,可以使用輔助資料來計算當前塊的跨越對象邊緣的梯度。例如,可以使用當前塊255的模板575內的樣本值來計算梯度,而可以通過模板575的垂直維度外推或以其他方式延伸對象邊緣530。作為另一示例,可以計算梯度或否則使用參考塊205和215的索引的差來估計。索引差越大,跨越分區邊界253或對象邊緣530的梯度就越大。作為又一示例,可以使用當前塊255中的MV計算或以其他方式估計梯度,具體地,使用第一組MV和第二組MV之間的差,其中第一組包括當前塊在對象邊緣或分區邊界的一側上的MV,並且第二組包括對象邊緣或分區邊界另一側的當前塊的MV。在一些實施例中,第一組可以附加地或替代地包括在對象邊緣的一側上的當前塊的模板區域的MV,而第二組可以附加地或替代地包括在對象邊緣的另一側上的當前塊的模板區域的MV。在一些實施例中,第一組MV和第二組MV可以附加地或替代地包括相鄰塊的MV。即,第一組可以包括對象邊緣一側上的相鄰塊的MV,而第二組可以包括對象邊緣另一側上的相鄰塊的MV。在一些實施例中,第一組MV和第二組MV可以包括MV差,即當前CU與相鄰塊之間的MV的差。即,第一組可以包括當前CU與對象邊緣一側的相鄰塊之間的MV的差值,而第二組可以包括當前CU與在對象邊緣的另一側相鄰塊之間的MV的差值。
需要說明的是,在執行步驟(iii)時,如上所述,對於不同的使用樣本值或輔助資料進行計算或估計的方式,可能需要建立不同的LUT。
在一方面,本公開提出從預定義混合寬度候選中排除基於任何輔助資料或其組合的一個或多個候選。例如,對於大CU尺寸,僅保留較大的混合寬度(例如,ϴ=2、4和8)。否則,對於較小的CU尺寸,將保留較小的混合寬度(例如,ϴ=1/2、1和2)。 VI. 候選重新排序
在一方面,本公開提出通過對候選集合內的候選進行重新排序來減少信令開銷,其中候選以特定序列或順序排列。例如,候選集內的候選可以在候選集大小已經減小或不減小之後重新排序。也就是說,可以對原始候選集合執行對候選集合中的候選進行重新排序的步驟,而不需要執行減小候選集合的大小的步驟。具體地,視頻編解碼器可以使用當前塊(例如,當前CU 255)的輔助資料、由所選擇的分區模式產生的兩個合併候選(例如,合併候選205和215)的輔助資料,或GPM預測的輔助資料(例如,GPM預測257)來執行猜測成本計算。猜測成本計算給出了實際RD成本的估計或猜測,同時比成熟的RDO搜索操作的計算強度相對較小。編解碼器可以根據計算出的與每個候選相關聯的猜測成本來重新排列候選的順序。具有較低猜測成本的候選將在編碼當前CU時產生更好的預測,因此被放置在序列的前面。也就是說,編解碼器按照猜測成本的升序對候選進行重新排序,其中具有較低猜測成本的候選在序列中被佈置在具有較高猜測成本的另一個候選的前面。此外,通常為佔據序列中前面位置的候選分配比佔據序列中後面位置的另一候選更短(即,使用更少位元表示)的信令碼字。結果,增強了編碼增益,同時減少了信令開銷。
第7圖是根據本公開的實施方式的示例設計的圖,其中模板匹配(TM)技術被用於猜測成本計算。具體地,編解碼器使用當前塊255的模板750、合併候選205的模板700和合併候選215的模板710來進行猜測成本計算。儘管示出為L形區域,但是模板700、710和750中的每一個可以可選地僅具有L形區域的一個或兩個部分,例如區域671、672和673中的一個或兩個但不是全部三個。例如,模板700、710和750中的每一個可以替代地分別包括分別緊接在塊205、215和255上方的相鄰塊的幾個相鄰行。
第7圖的GPM預測257和另一個GPM預測757。第7圖的GPM預測257和757兩者都是GPM預測257和另一個GPM預測757。第7圖表示混合兩個合併候選205和215,而預測257表示具有混合寬度ϴ 1的混合,而預測757表示具有不同於ϴ 1的混合寬度ϴ 2,其中ϴ 1和ϴ 2都是混合寬度候選。兩個預測子的混合區域也分別示為第7圖中的256和756。
視頻編解碼器可以確定預測257和757中的哪一個是用於以GPM對當前塊255進行譯碼的更好候選。編解碼器可以使用模板700、710和750執行猜測成本計算,而不是實際生成兩個預測並在當前塊255與預測257和757中的每一個之間執行RD成本計算。具體地,模板770是模板780是通過在混合區域256沿著分區線253延伸並與模板770重疊的區域內以混合寬度θ 1混合模板700和710而生成的。同樣,通過將模板700和710與模板770混合來生成模板780。混合區域756沿著分區線253延伸並與模板780重疊的區域內的混合寬度θ 2。與混合區域256相似,混合區域756包括沿著分區線253居中的條紋,僅寬度為2*θ 2,而不是2*θ 1。在生成混合模板770和780之後,編解碼器可以使用當前塊255的模板750與混合模板770和780中的每一個之間的模板匹配來執行猜測成本計算。例如,編解碼器可以比較模板750和770並指定兩個模板之間的樣本值差異,以絕對差異之和(SAD)或絕對變換差異之和(SATD)的形式呈現,作為預測257的猜測成本。同樣,編解碼器還可以比較模板750和780,並將其之間的樣本值差指定為預測757的猜測成本。在預測257和757之間,具有較低猜測成本的一個是更好的預測,並且相關聯的混合寬度被佈置在另一個混合寬度的前面,以對混合寬度候選集進行重新排序。如第7圖所示,如果SAD 1>SAD 2,則在混合寬度候選集中將θ 2重新排序在θ 1之前。另一方面,如果SAD 1<SAD 2,則在混合寬度候選集中將θ 1重新排序在θ 2之前。
第7圖是邊界匹配(boundary matching,BM)技術,其可以代替模板匹配用於猜測成本計算以確定預測257和757中的哪一個是用於在GPM中對當前塊255進行編碼的更好候選。具體地,混合模板770和780分別與當前塊255的邊界區域760進行比較。邊界區域760可以包括與模板區域750相鄰的當前塊255的一些行或列。如第6圖所示,邊界區域760可以包括區域661、662和663中的兩個或三個。基本上,邊界區域760的形狀應當與模板區域750的形狀匹配。也就是說,如果模板區域750由區域671組成,並且可能還包括673,則邊界區域760可以由區域661和663組成。如果模板區域包括區域672,並且可能還包括673,則邊界區域760可以由區域662和663組成。如果模板區域由區域671和672組成,並且可能另外由673組成,則邊界區域760可以由區域661、662和663組成。如第6圖所示,區域661、662和663中的每一個可以由m行和/或n列樣本組成,而區域671、672和673中的每一個可以由M行和/或N列樣本組成。不要求M=m或N=n,但通常用於邊界匹配的M=m和N=n。
在如上所述生成混合模板770和780之後,編解碼器可以使用當前塊255的邊界區域760與混合模板770和780中的每一個之間的邊界匹配來執行猜測成本計算。例如,編解碼器可以比較邊界區域760和模板770,並指定SAD或SATD作為預測257的猜測成本。同樣,編解碼器還可以比較邊界區域760和模板780,並指定其之間的樣本值差作為預測757的猜測成本。在預測257和757之間,具有較低猜測成本的預測是更好的預測,並且相關聯的混合寬度在混合寬度候選集重新排序中被佈置在另一混合寬度的前面。如第7圖所示,如果SAD 3>SAD 4,則在混合寬度候選集中將θ 2重新排序在θ 1之前。另一方面,如果SAD 3<SAD 4,則在混合寬度候選集中將θ 1重新排序在θ 2之前。
除了模板匹配和邊界匹配技術之外,還可以使用其他技術來估計每個混合寬度候選的猜測成本並且相應地對混合寬度候選集合重新排序。例如,從輔助資料估計的各種梯度(如上文別處針對候選集大小減小所描述的)也可以用於候選集重新排序。
需要注意的是,混合寬度候選順序是依賴於分區模式的。即,對於不同的分區模式,候選集中的混合寬度候選的順序可以不同。例如,雖然對於某些分區模式,θ 1被重新排序為在θ 2之前,但對於另一分區模式,θ 1可以被重新排序為在θ 2之後。還應當注意的是,上述重新排序方法可以應用於預定義的、成熟的混合寬度候選集,以及已經經歷瞭如別處所述的候選大小減小的尺寸縮小的混合寬度候選集。
在一些實施例中,混合寬度候選的重新排序可以遵循混合寬度候選集的大小減小。即,在排除上述一個或多個不太可能的混合寬度候選之後,編解碼器可以對尺寸縮小的候選集合中的混合寬度候選執行候選重新排序。
在一些實施例中,混合寬度候選集的大小減小可以在混合寬度候選的重新排序之後進行。也就是說,編解碼器可以對預定義混合寬度候選集中的候選進行重新排序,然後執行大小減小以排除一個或多個不可能的混合寬度候選,如上所述。在一些實施例中,候選集大小減小可以基於候選重新排序的結果。例如,在執行候選集大小縮減時,編解碼器可以將前N個候選保留在重新排序的候選集中並排除其餘候選。在一些實施例中,N可以等於1;即,僅保留重新排序的混合寬度候選集中的第一個候選,當前CU利用該第一個候選進行GPM編解碼。
候選重新排序的概念可能不僅限於混合寬度候選集。相反,相同的概念可以應用於GPM的另一候選集。例如,可以使用TM或BM技術以類似的方式對分區模式候選集進行重新排序。此外,合併候選集合也可以類似地重新排序。
一方面,本公開提出通過組合分區模式候選集和合併候選集來構造GPM候選集。隨後,可以跨GPM候選集合中的候選執行如上所述的猜測成本計算,以對GPM候選集合重新排序。具有最低猜測成本的GPM候選用於對GPM中的當前CU進行編碼。即,使用具有最低猜測成本的GPM候選所指示的分區模式-合併候選對組合來對當前CU進行編碼。
具體地,GPM候選集中的每個候選代表分區模式和一對合併候選的可能組合,其中每個合併候選用於兩個GPM部分中的一個。例如,分區模式候選集合可以具有64個不同的分區模式候選,並且合併候選集合可以具有6個不同的合併候選。這導致GPM候選集具有多達64 * P(6,2) = 64*6*(6-1) = 1920個GPM候選。編解碼器隨後可以計算1920個GPM 候選中每一個的猜測成本並相應地對它們重新排序。在一些實施例中,可以通過以與如上文別處描述的如何縮小混合寬度候選集的方式類似的方式排除一些不太可能的候選來執行大小縮小以將GPM候選集縮小到小於1920的數量。重新排序後的GPM候選集中的第一個候選指示共同給出最低猜測成本的分區模式和一對合併候選的組合。該組合是編解碼器用於在GPM中對當前CU進行編碼的組合。
對於重新排序後的GPM候選集合中的一個或多個候選,可以對減少的混合寬度候選集中的混合寬度候選進行重新排序以節省信令位元。例如,對於GPM候選集重新排序後的GPM候選集中的第一候選,如上所述,使用水平和/或垂直梯度對混合權重候選混合寬度候選集中的混合權重候選進行重新排序。也就是說,最多 6x5(合併候選對)* 64(分區模式)* k(混合權重)個候選被重新排序在一起。保留最好的N個GPM候選(即,N組合併候選對、分區模式和混合權重)。索引由RD成本明確確定,以指示最佳N個GPM候選中的最佳GPM候選,並將其發送給解碼器。或者通過選擇具有最小模板匹配成本的GPM候選的索引來隱式地確定索引,而無需信令。 VII. 示例實施
第8圖示出了示例視頻編碼器800,其中可以採用或以其他方式實現上文別處描述的各種實施例和方案。如圖所示,視頻編碼器800從視頻源805接收輸入視頻信號並將該信號編碼為位元流895。視頻編碼器800具有用於對來自視頻源805的信號進行編碼的若干組件或模塊,至少包括選自以下的一些組件:變換模塊810、量化模塊811、逆量化模塊814、逆變換模塊815、幀內估計模塊820、幀內預測模塊825、運動補償模塊830、運動估計模塊835、環路濾波器845、重構圖片緩衝器850、MV緩衝器865、MV預測模塊875和熵編碼器890。運動補償模塊830和運動估計模塊835是幀間預測模塊840的一部分。幀間預測模塊840可以包括被配置為執行整數像素搜索的整數運動估計(IME)內核以及被配置為執行分數像素搜索的分數運動估計(FME)內核。整數像素搜索和分數像素搜索都是運動補償模塊830和運動估計模塊835的基本功能。
在一些實施例中,模塊810-890是由計算設備或電子設備的一個或多個處理單元(例如,處理器)執行的軟體指令模塊。在一些實施例中,模塊810-890是由電子裝置的一個或多個集成電路(IC)實現的硬體電路模塊。儘管模塊810-890被示為單獨的模塊,但是一些模塊可以組合成單個模塊。
視頻源805提供未壓縮的原始視頻信號,其呈現每個視頻幀的像素資料。即,視頻源805提供以時間序列呈現的圖片或幀。減法器808計算視頻源805的原始視頻像素資料與來自運動補償模塊830或幀內預測模塊825的預測像素資料813之間的差異。變換模塊810將差異(或殘差像素資料或殘差信號808)轉換成變換係數(例如,通過執行離散餘弦變換或DCT)。量化模塊811將變換係數量化為量化資料(或量化係數)812,其由熵編碼器890編碼為位元流895。
逆量化模塊814對量化資料(或量化係數)812進行逆量化以獲得變換係數,逆變換模塊815對變換係數進行逆變換以產生重構殘差819。重構殘差819與預測像素資料813相加以產生重構像素資料817。在一些實施例中,重構像素資料817被臨時儲存在行緩衝器(未示出)中用於幀内預測和空間MV預測。重構像素由環路濾波器845過濾並儲存在重構圖片緩衝器850中。在一些實施例中,重構圖片緩衝器850是視頻編碼器800外部的儲存器。在一些實施例中,重構圖片緩衝器850是視頻編碼器800內部的儲存器。
幀内估計模塊820基於重構像素資料817執行幀内預測以產生幀内預測資料。幀內預測資料被提供給熵編碼器890以被編碼成位元流895。幀內預測資料也被幀內預測模塊825用來產生預測像素資料813。
運動估計模塊835通過產生MV以參考儲存在重構圖片緩衝器850中的先前解碼幀的像素資料來執行幀間預測。這些MV被提供給運動補償模塊830以產生預測像素資料。
視頻編碼器800不是在位元流中編碼完整的實際MV,而是使用MV預測來生成預測MV,並且用於運動補償的MV與預測MV之間的差異被編碼為殘差運動資料並儲存在位元流895中。
MV預測模塊875基於為先前編碼視頻幀而生成的參考MV,即用於執行運動補償的運動補償MV,生成預測MV。MV預測模塊875從MV緩衝器865中檢索來自先前視頻幀的參考MV。視頻編碼器800將為當前視頻幀生成的MV儲存在MV緩衝器865中作為用於生成預測MV的參考MV。
MV預測模塊875使用參考MV來創建預測MV。預測MV可以通過空間MV預測或時間MV預測來計算。熵編碼器890將預測MV與當前幀的運動補償MV(MC MV)之間的差異(殘差運動資料)編碼到位元流895中。
熵編碼器890通過使用諸如上下文自適應二進制算術編碼(CABAC)或霍夫曼編碼的熵編碼技術將各種參數和資料編碼到位元流895中。熵編碼器890將各種報頭元素、標誌連同量化變換係數812和殘差運動資料作為語法元素編碼到位元流895中。位元流895又儲存在儲存設備中或通過網絡通信媒介,例如網絡,傳輸到解碼器。
環內濾波器845對重構的像素資料817執行濾波或平滑操作以減少編碼的偽像,特別是在像素塊的邊界處。在一些實施例中,執行的濾波操作包括樣本自適應偏移(SAO)。在一些實施例中,濾波操作包括自適應環路濾波器(ALF)。
第9圖解說了視頻編碼器800的利用本發明中提出的候選集重新排序和大小減小來實現高效GPM譯碼的部分。具體地,該圖示出了視頻編碼器800的幀間預測模塊840的一些組件,其計算各種猜測成本、梯度值和RD成本,以及維護和管理各種候選集。幀間預測模塊840可以包括用於計算匹配成本(例如,第7圖中的猜測成本SAD 1-SAD 4)和梯度(例如,梯度511、512和517)的計算器910。計算器910包括邊緣檢測模塊912,用於使用樣本值或輔助資料來檢測對象邊緣(例如,對象邊緣510、520和530),其中樣本值由重建圖片緩衝器(RPB)850提供和/或直接來自視頻源805以及由模板/邊界檢索器911提供的輔助資料,模板/邊界檢索器911能夠基於來自RPB 850的參考或相鄰塊和來自MV緩衝器865的MV獲取模板區域(例如,區域700、710和750)和邊界區域(例如,區域760)。
幀間預測模塊840可以包括用於管理各種候選集的候選管理器920,候選集包括合併候選集921、分區模式候選集922和混合寬度候選集924。候選管理器920還能夠基於合併候選集合921中的候选和分區模式候選集合922生成GPM候選集合923。GPM候選集合923中的每個候選表示合併候選集合921的合併候选和分區模式候選集922的分區模式的相應組合。候選管理器920可以基於由計算器910提供的計算出的梯度和/或猜測成本,對候選集921-924中的任何一個中的候選重新排序,以及從候選集921-924中的任何一個中排除某些候選。候選管理器920還可以向候選集合921-924中的任意一個中的候選的索引分配碼字,無論相應的候選集合是在大小減小或重新排序之前還是之後。在一些實施例中,候選管理器920可以將所選擇的或剩餘的候選的索引發送到熵編碼器890以用於向解碼器發信號通知。此外,候選管理器920可以將所選擇的候選的索引發送到運動補償模塊830以用於以GPM對當前塊進行編碼。
在一些實施例中,編碼器可以用信號通知(或生成)位元流中的一個或多個語法元素,使得解碼器可以從位元流解析所述一個或多個語法元素。
在一些實施例中,編碼器可以用信號通知(或生成)位元流中的一個或多個語法元素,使得解碼器可以從位元流中解析所述一個或多個語法元素。
第10圖說明實例視頻解碼器1000,其中可以採用或以其他方式實現上文別處描述的各種實施例和方案。如圖所示,視頻解碼器1000是圖像解碼或視頻解碼電路,其接收位元流1095並將位元流的內容解碼成視頻幀的像素資料以供顯示。視頻解碼器1000具有用於解碼位元流1095的若干組件或模塊,包括選自逆量化模塊1011、逆變換模塊1010、幀內預測模塊1025、運動補償模塊1030、環路濾波器1045的一些組件、解碼圖片緩衝器1050、MV緩衝器1065、MV預測模塊1075和解析器1090。運動補償模塊1030是幀間預測模塊1040的一部分。
在一些實施例中,模塊1010-1090是由計算設備的一個或多個處理單元(例如處理器)執行的軟體指令模塊。在一些實施例中,模塊1010-1090是由電子裝置的一個或多個IC實現的硬體電路模塊。儘管模塊1010-1090被示為單獨的模塊,但是一些模塊可以組合成單個模塊。
解析器1090(或熵解碼器)接收位元流1095並根據由視頻編碼或圖像編碼標准定義的語法執行初始解析。解析的語法元素包括各種頭部元素、標誌以及量化資料(或量化係數)1012。解析器1090通過以下方式解析出各種語法元素使用熵編碼技術,例如上下文自適應二進制算術編碼(CABAC)或霍夫曼編碼。
逆量化模塊1011對量化資料(或量化係數)1012進行逆量化得到變換係數,逆變換模塊1010對變換係數1016進行逆變換得到重構殘差信號1019。將重構殘差信號1019與來自幀內預測模塊1025或運動補償模塊1030的預測像素資料1013相加一起產生解碼像素資料1017。解碼像素資料由環內濾波器1045過濾並儲存在解碼圖片緩衝器1050中。如圖所示,在一些實施例中,解碼圖片緩衝器1050是視頻解碼器1000外部的儲存。在一些實施例中,解碼圖片緩衝器1050是視頻解碼器1000內部的儲存。
幀內預測模塊1025從位元流1095接收幀內預測資料,並據此從解碼圖片緩衝器1050中儲存的解碼像素資料1017中生成預測像素資料1013。在一些實施例中,解碼像素資料1017也是儲存在行緩衝器(未示出)中用於幀内預測和空間MV預測。
在一些實施例中,解碼圖片緩衝器1050的內容用於顯示。顯示設備1055或者檢索解碼圖片緩衝器1050的內容以直接顯示,或者檢索解碼圖片緩衝器的內容到顯示緩衝器。在一些實施例中,顯示設備通過像素傳輸從解碼圖片緩衝器1050接收像素值。
運動補償模塊1030根據運動補償MV(MC MV)從儲存在解碼圖片緩衝器1050中的解碼像素資料1017產生預測像素資料1013。通過將從位元流1095接收的殘差運動資料與從MV預測模塊1075接收的預測MV相加來解碼這些運動補償MV。
MV預測模塊1075基於為解碼先前視頻幀而生成的參考MV生成預測MV,例如,用於執行運動補償的運動補償MV。MV預測模塊1075從MV緩衝器1065中檢索先前視頻幀的參考MV。視頻解碼器1000將為解碼當前視頻幀而生成的運動補償MV儲存在MV緩衝器1065中作為用於產生預測MV的參考MV。
環內濾波器1045對解碼像素資料1017執行濾波或平滑操作以減少編碼偽像,特別是在像素塊的邊界處。在一些實施例中,執行的濾波操作包括樣本自適應偏移(SAO)。在一些實施例中,濾波操作包括自適應環路濾波器(ALF)。
第11圖解說了視頻解碼器1000的利用本發明中提出的候選集重新排序和大小減小來實現高效GPM譯碼的部分。具體地,該圖示出視頻解碼器1000的幀間預測模塊1040的一些組件,其計算各種猜測成本、梯度值和RD成本,以及維護和管理各種候選集。幀間預測模塊1040可以包括用於計算匹配成本(例如,第7圖中的猜測成本SAD 1-SAD 4)和梯度(例如,梯度511、512和517)的計算器1110。計算器1110包括邊緣檢測模塊1112,用於使用樣本值或輔助資料來檢測對象邊緣(例如,對象邊緣510、520和530),其中樣本值由解碼圖片緩衝器(DPB)1050提供,並且輔助資料由模板/邊界檢索器1111提供,模板/邊界檢索器1111能夠基於來自DPB 1050的參考或相鄰塊以及來自MV緩衝器1065的MV來檢索模板區域(例如,區域700、710和750)和邊界區域(例如,區域760)。在一些實施例中,計算器1110可以與計算器910相同。
幀間預測模塊1040可以包括用於管理各種候選集的候選管理器1120,所述候選集包括合併候選集1121、分區模式候選集1122和混合寬度候選集1124。候選管理器1120還能夠基於合併候選集合1121中的候选和分區模式候選集合1122生成GPM候選集合1123。GPM候選集合1123中的每個候選表示合併候選集合1121的合併候选和分區模式候選集1122的分區模式的相應組合。候選管理器1120可以對候選集1121-1124中的任何一個中的候選重新排序,以及通過從候選集1121-1124中的任何一個中排除某些候選來減小混合寬度候選集1124的大小,基於計算器1110提供的計算的梯度和/或猜測成本。候選管理器1120還可以向候選集1121-1124中的任何一個中的候選的索引分配碼字,無論相應的候選集是在大小減小之前還是之後或重新排序。在一些實施例中,候選管理器1120可以從熵解碼器1090接收選擇的或剩餘的候選的索引,其是從編碼器800用信號發送的。而且,候選管理器1120可以將選擇的候選的索引發送到運動補償模塊1030,用於解碼GPM中的當前塊。在一些實施例中,候選管理器1120可以與候選管理器920相同。因此,候選集合1121-1124的大小和順序可以分別與候選集合921-924的大小和順序保持同步。 VIII. 說明性過程
第12圖示出了根據本公開的實施方式的示例流程1200。流程1200可以表示實現上述各種提出的設計、概念、方案、系統和方法的方面。更具體地,流程1200可以表示與實現根據本公開的高效GPM譯碼過程有關的所提出的概念和方案的一個方面。流程1200可包括如框1210、1220、1230、1240、1250和1260中的一者或多者所示的一個或多個操作、動作或功能。雖然被示為離散框,但是流程1200的各個框可被劃分為附加框,組合成更少的塊,或者被消除,這取決於所需的實現。此外,流程1200的塊/子塊可以按第12圖中所示的順序、或者,可選擇地以不同的順序執行。此外,流程1200的一個或多個塊/子塊可以重複或迭代地執行。流程1200可以由裝置800或1000及其任何變體實現。僅出於說明性目的並且不限制範圍,下面在裝置800或1000的上下文中描述流程1200。流程1200可以開始於框1210。
在1210,流程1200可以涉及幀間預測模塊840或1040接收當前塊的像素資料。例如,幀間預測模塊840可以從視頻源805或RPB 850接收塊255的像素資料。同樣,幀間預測模塊1040可以從DPB 1050接收塊255的像素資料。流程1200可以從1210進行到1220。
在1220,流程1200可以涉及候選管理器920或1120從分區模式候選集合(例如,分區模式候選集合922或1122)中選擇分區模式(例如,由分區線253定義的分區模式)。分區模式候選集可以包括一個或多個分區模式候選。分區模式候選集中的每個分區模式候選由當前塊內的相應分區邊界(例如,分區線253或320所示的任何分區線)來定義。對於編碼器800,候選管理器920可以通過在分區模式候選集合922內執行RDO搜索來選擇分區模式。對於解碼器1000,候選管理器1120可以基於從編碼器800用信號通知的分區模式索引來選擇分區模式。熵解碼器1090可以解析位元流1095以獲得用信號通知的分區模式索引並將該索引提供給候選管理器1120以進行選擇。流程1200可以從1220進行到1230。
在1230,流程1200可以涉及候選管理器920或1120確定當前塊的兩個合併候選,其中兩個合併候選中的每一個對應於由所選擇的分區模式確定的當前塊的相應GPM部分。例如,由分區線253表示的分區模式將當前塊255劃分為兩個GPM部分250和251。對於編碼器800,候選管理器920可以通過對每個GPM部分250和251執行單向MCP來確定兩個合併候選205和215。對於解碼器1000,候選管理器1120可以通過接收合併候選205和215的索引來確定兩個合併候選205和215,而這些索引是從編碼器800用信號發送的。解析器1090可以解析位元流1095以獲得用信號發送的合併候選索引並將這些索引提供給候選管理器1120以確定兩個合併候選。流程1200可以從1230進行到1235。
在1235,流程1200可以涉及候選管理器920或1120基於兩個合併候選205和215或者當前塊255的輔助資料從混合寬度候選集中確定混合寬度候選。輔助資料可以是當前塊255的MV或者當前塊的一個或多個相鄰塊的MV。輔助資料還可以是兩個GPM部分250和251的樣本值,或者兩個合併候選205和215的索引。步驟1235還可以包括子步驟1240和1250。
在1240處,流程1200可以涉及候選管理器920或1120通過從混合寬度候選集(例如924或1124)中排除一個或多個混合寬度候選、或者對混合寬度候選集進行重新排序來減小混合寬度候選集的大小。而候選集有兩個或多個混合寬度候選。例如,候選管理器920或1120可以基於所選擇的分區模式253以及兩個合併候選205和215或者當前塊255的輔助資料來排除候選。輔助資料可以是當前塊255的MV或當前塊的一個或多個相鄰塊的MV。輔助資料還可以是兩個GPM部分250和251的樣本值,或者兩個合併候選205和215的索引。在一些實施例中,輔助資料可以是當前塊的模板區域的樣本值(例如,模板區域750),或兩個合併候選中的任何一個的模板區域(例如,模板區域700或710)的樣本值。模板區域可以由模板檢索器911或1111確定。候選管理器920或1120可以基於跨越當前塊的對象邊緣的梯度來排除一個或多個不可能的混合寬度候選。對象邊緣(例如,邊緣530)由邊緣檢測模塊912或1112檢測,而梯度由計算器910或1110計算。流程1200可以從1240進行到1250。
在1250處,流程1200可以涉及候選管理器920或1120從混合寬度候選集924或1124中選擇混合寬度。對於編碼器800,候選管理器920可以通過在混合寬度候選集內執行RDO搜索來選擇混合寬度。或者,候選管理器920可以通過對混合寬度候選集中的每個候選執行猜測成本計算來選擇混合寬度。對於解碼器1000,候選管理器1120可以通過接收所選擇的混合寬度候選的索引來選擇混合寬度,而該索引是從編碼器800用信號發送的。熵解碼器1090可以解析位元流1095以獲得用信號發送的索引選定的混合寬度並向候選管理器1120提供索引以用於選擇混合寬度。對於解碼器1000,候選管理器1120還可以根據輔助資料隱式地選擇混合寬度而不用信令。混合寬度的選擇包括將僅有的一個混合寬度候選指定為所選混合寬度。流程1200可以從1250進行到1260。
在1260 處,流程1200可以涉及運動補償模塊830或1130使用所選擇的分區模式、兩個合併候選和所選擇的混合寬度對當前塊進行編碼或解碼。對於編碼器800,運動補償模塊830可以使用所選擇的分區模式253、兩個合併候選205和215以及所選擇的混合寬度θ 1來對當前塊255進行編碼。對於解碼器1000,運動補償模塊1030可以使用所選擇的分區模式253、兩個合併候選205和215以及所選擇的混合寬度θ 1來解碼當前塊255。 IX. 示例電子系統
許多上述特徵和應用被實現為軟體處理,這些軟體處理被指定為記錄在計算機可讀儲存介質(也稱為計算機可讀介質)上的一組指令。當這些指令由一個或多個計算或處理單元(例如,一個或多個處理器、處理器核心或其他處理單元)執行時,它們會導致處理單元執行指令中指示的動作。計算機可讀介質的示例包括但不限於CD-ROM、閃存驅動器、隨機存取儲存器(RAM)芯片、硬盤驅動器、可擦除可編程只讀儲存器(EPROM)、電可擦除可編程只讀儲存器 (EEPROM)等。計算機可讀介質不包括無線或通過有線連接傳遞的載波和電子信號。
在本說明書中,術語“軟體”意味著包括駐留在只讀儲存器中的軔體或儲存在磁儲存器中的應用程序,其可以被讀入儲存器以供處理器處理。此外,在一些實施例中,多個軟體發明可以作為較大程序的子部分來實現,同時保留不同的軟體發明。在一些實施例中,多個軟體發明也可以被實現為單獨的程序。最後,一起實現這裡描述的軟體發明的單獨程序的任何組合都在本公開的範圍內。在一些實施例中,當軟體程序被安裝以在一個或多個電子系統上運行時,定義了一個或多個執行和執行軟體程序的操作的特定機器實現。
第13圖概念性地圖示了實現本公開的一些實施例的電子系統1300。電子系統1300可以是計算機(例如台式計算機、個人計算機、平板計算機等)、電話、PDA或任何其他種類的電子設備。這樣的電子系統包括各種類型的計算機可讀介質和用於各種其他類型的計算機可讀介質的接口。電子系統1300包括總線1305、處理單元1310、圖形處理單元(GPU)1315、系統儲存器1320、網絡1325、只讀儲存器1330、永久儲存設備1335、輸入設備1340和輸出設備1345。
總線1305共同表示通信連接電子系統1300的眾多內部設備的所有系統、外圍設備和芯片組總線。例如,總線1305通信連接處理單元1310和GPU1315,只讀儲存器1330、系統儲存器1320和永久儲存設備1335。
從這些不同的儲存器單元,處理單元1310檢索要執行的指令和要處理的資料以便執行本公開的處理。在不同的實施例中,處理單元可以是單處理器或多核處理器。一些指令被傳遞到GPU1315並由其執行。GPU1315可以卸載各種計算或補充由處理單元1310提供的圖像處理。
只讀儲存器(ROM)1330儲存由處理單元1310和電子系統的其他模塊使用的靜態資料和指令。另一方面,永久儲存設備1335是讀寫儲存設備。該設備是即使在電子系統1300關閉時也儲存指令和資料的非易失性儲存單元。本公開的一些實施例使用大容量儲存設備(例如磁盤或光盤及其相應的磁盤驅動器)作為永久儲存設備1335。
其他實施例使用可移動儲存設備(例如軟盤、閃存設備等及其對應的磁盤驅動器)作為永久儲存設備。與永久儲存設備1335一樣,系統儲存器1320是讀寫儲存設備。然而,與儲存設備1335不同,系統儲存器1320是易失性讀寫儲存器,例如隨機存取儲存器。系統儲存器1320儲存處理器在運行時使用的一些指令和資料。在一些實施例中,根據本公開的處理儲存在系統儲存器1320、永久儲存設備1335和/或只讀儲存器1330中。例如,各種儲存器單元包括用於處理多媒體剪輯的指令 與一些實施例。從這些不同的儲存器單元,處理單元1310檢索要執行的指令和要處理的資料以便執行一些實施例的處理。
總線1305還連接到輸入和輸出設備1340和1345。輸入設備1340使用戶能夠向電子系統傳送信息和選擇命令。輸入設備1340包括字母數字鍵盤和d指點設備(也稱為“光標控制設備”)、相機(例如,網絡攝像頭)、麥克風或用於接收語音命令的類似設備等。輸出設備1345顯示由電子系統生成的圖像或以其他方式輸出資料。輸出設備1345包括打印機和顯示設備,例如陰極射線管(CRT)或液晶顯示器(LCD),以及揚聲器或類似的音頻輸出設備。一些實施例包括同時用作輸入和輸出設備的設備,例如觸摸屏。
最後,如第13圖所示,總線1305還通過網絡適配器(未示出)將電子系統1300耦合到網絡1325。以這種方式,計算機可以是計算機網絡的一部分,例如局域網(“LAN”)、廣域網(“WAN”)或內聯網,或網絡網絡。電子系統1300的任何或所有組件可以結合本公開使用。
一些實施例包括電子元件,例如微處理器、儲存器和儲存器,其將計算機程序指令儲存在機器可讀或計算機可讀介質(或者稱為計算機可讀儲存介質、機器可讀介質或機器可讀儲存介質)中。此類計算機可讀介質的一些示例包括RAM、ROM、只讀光盤 (CD-ROM)、可記錄光盤(CD-R)、可重寫光盤 (CD-RW)、只讀數字多功能光盤(例如DVD-ROM,雙層DVD-ROM),各種可刻錄/可重寫DVD(例如,DVD-RAM,DVD-RW,DVD+RW,等等), 閃存(例如,SD卡,mini-SD卡、微型SD 卡等)、磁性和/或固態硬盤驅動器、只讀和可刻錄Blu-Ray® 光盤、超密度光盤、任何其他光學或磁性介質以及軟盤。計算機可讀介質可以儲存可由至少一個處理單元執行並且包括用於執行各種操作的指令集的計算機程序。計算機程序或計算機代碼的示例包括機器代碼,例如由編譯器生成的機器代碼,以及包括由計算機、電子組件或使用解釋器的微處理器執行的高級代碼的文件。
雖然上述討論主要涉及執行軟體的微處理器或多核處理器,但上述許多功能和應用都是由一個或多個集成電路執行的,例如專用集成電路 (ASIC) 或現場可編程門陣列 ( FPGA)。在一些實施例中,這樣的集成電路執行儲存在電路本身上的指令。此外,一些實施例執行儲存在可編程邏輯設備(PLD)、ROM或RAM設備中的軟體。
如本說明書和本申請的任何請求項中所用,術語“計算機”、“服務器”、“處理器”和“儲存器”均指電子或其他技術設備。 這些術語不包括人或人群。出於說明書的目的,術語顯示或顯示表示在電子設備上顯示。如本說明書和本申請的任何請求項中所使用,術語“計算機可讀介質”、“計算機可讀介質”和“機器可讀介質”完全限於以可讀形式儲存信息的有形物理對象。這些術語不包括任何無線信號、有線下載信號和任何其他臨時信號。
儘管已經參考許多具體細節描述了本公開,但是本領域的普通技術人員將認識到,在不脫離本公開的精神的情況下,可以以其他具體形式來實施本公開。 補充筆記
此處描述的主題有時說明包含在不同的其他組件內或與不同的其他組件連接的不同組件。應當理解,這樣描繪的架構僅僅是示例,並且實際上可以實現實現相同功能的許多其他架構。從概念上講,實現相同功能的組件的任何佈置都被有效地“關聯”,從而實現了所需的功能。因此,本文中的任何兩個組件組合以實現無論架構或中間組件如何,都可以將特定功能視為彼此“關聯”,從而實現所需的功能。同樣,如此關聯的任何兩個組件也可被視為彼此“可操作地連接”或“可操作地耦合”以實現期望的功能,並且能夠如此關聯的任何兩個組件也可被視為“可操作地連接” 耦合”,彼此實現所需的功能。可操作地耦合的具體示例包括但不限於物理上可配合和/或物理上交互的組件和/或無線上可交互和/或無線上交互的組件和/或邏輯上交互和/或邏輯上可交互的組件。
此外,關於本文中基本上任何復數和/或單數術語的使用,本領域技術人員可以根據上下文和/或從復數翻譯成單數和/或從單數翻譯成複數。 應用。為了清楚起見,可以在本文中明確地闡述各種單數/複數排列。
此外,本領域技術人員將理解,一般而言,本文使用的術語,尤其是所附請求項中使用的術語,例如所附請求項的主體,通常意在作為“開放”術語,例如,術語“包含”應解釋為“包括但不限於”、“具有”應解釋為“至少有”。本領域的技術人員將進一步理解,如果意圖引入特定數量的請求項陳述,則該意圖將在請求項中明確地陳述,並且在沒有該陳述的情況下不存在該意圖。例如,為了幫助理解,以下所附請求項可能包含使用介紹性短語“至少一個”和“一個或多個”來介紹請求項的敘述。然而,使用此類短語不應被解釋為暗示通過不定冠詞“一”或“一個”引入的請求項將包含此類引入的請求項的任何特定請求項限制為僅包含一個此類陳述的實現,即使當同一請求項包括介紹性短語“一個或多個”或“至少一個”和不定冠詞如“一個”,應解釋為“至少一個”或“一個或多個”。這同樣適用於使用定冠詞來引入索賠陳述。此外,即使明確引用了引入的請求項記載的具體數目,本領域技術人員將認識到,這種記載應被解釋為至少表示引用的數目,例如,“兩次迭代”的引用,而不包含其他修飾語,表示至少兩次迭代,或者兩次或更多次迭代。此外,在那些約定使用類似於“A、B和C等中的至少一個”的情況下,一般來說,這樣的結構意在本領域技術人員會理解約定的意義上,例如,“具有A、B和C中的至少一個的系統”將包括但不限於這樣的系統:單獨有A,單獨有B,單獨有C,A和B在一起,A和C在一起,B和C 在一起,和/或A、B和C在一起,等等。在那些使用類似於“至少一個A、B或C”的情況下,通常這樣的結構意在本領域技術人員理解約定的意義上,例如,“具有A、B或C中的至少一個的系統”將包括但不限於系統:具有單獨的A、單獨的B、單獨的C、A和B在一起、A和C在一起、B和C在一起和/或A、B和C在一起等。本領域技術人員將進一步理解實際上,無論是在說明書、請求項書還是附圖中,任何出現兩個或更多替代術語的分離詞和/或短語都應該被理解為考慮包括一個術語、一個術語或兩個術語的可能性。例如,短語“A或 B”將被理解為包括“A”或“B”或“A和B”的可能性。
從上文中可以理解,為了說明的目的,本文已經描述了本公開的各種實施方式,並且在不脫離本公開的範圍和精神的情況下可以進行各種修改。因此,本文公開的各種實施方式並非旨在限制,真正的範圍和精神由所附請求項指示。
100、255:當前塊 259:當前圖片 253:分區線 250、251:部分 209、219:參考圖片 205、215:參考塊 205、215:合併候選 257、757:GPM預測 256:混合區域 310、320、410、420、421:圖示標識 411:樣本位置 510、520、530:對象邊緣 570、571:模板 521、522、511、512、521、522、517:梯度值 513、514、515、516:區域 760、661、662、663:邊界區域 750、671、672、673、700、710:模板區域 770、780:模板 756:混合區域 800:視頻編碼器 805:視頻源 895、1095:位元流幀内預測資料 810:變換模塊 811:量化模塊 814、1011:逆量化模塊 815、1010:逆變換模塊 820:幀內估計模塊 825、1025:幀內預測模塊 830、1030:運動補償模塊 835:運動估計模塊 845、1045:環路濾波器 850:重構圖片緩衝器 865、1065:MV緩衝器 875:MV預測模塊 890:熵編碼器 813:預測像素資料 808:殘差信號 812、1012:量化係數 819:重構殘差 813:預測像素資料 817:重構像素資料 910、1110:計算器 912、1112:邊緣檢測模塊 911、1111:模板/邊界檢索器 920、1120:候選管理器 921、1121:合併候選集 922、1122:分區模式候選集 924、1124:混合寬度候選集 923、1123:GPM候選集 1200:流程 1210-1260:步驟 1000:視頻解碼器 1050:解碼圖片緩衝器 1075:MV預測模塊 1090:解析器 1040:幀間預測模塊 1016:變換係數 1019:重構殘差信號 1013:預測像素資料 1017:解碼像素資料 1300:電子系統 1305:總線 1310:處理單元 1315:圖形處理單元(GPU) 1320:系統儲存器 1325:網絡 1330:只讀儲存器 1335:永久儲存設備 1340:輸入設備 1345:輸出設備
所包含的附圖是為了提供對本公開的進一步理解,並且併入並構成本公開的一部分。附圖圖示了本公開的實施方式,並且與描述一起用於解釋本公開的原理。值得注意的是,附圖不一定是按比例繪製的,因為為了清楚地說明本公開的概念,一些組件可能被示出為與實際實施中的尺寸不成比例。 第1圖是根據本公開的實施方式的示例設計的圖。 第2圖是根據本公開的實施方式的示例設計的圖。 第3圖是根據本公開的實施方式的示例設計的圖。 第4圖是根據本公開的實施方式的示例設計的圖。 第5圖是根據本公開的實施方式的示例設計的圖。 第6圖是根據本公開的實施方式的示例設計的圖。 第7圖是根據本公開的實施方式的示例設計的圖。 第8圖是根據本發明的實施方式的示例視頻編碼器的圖。 第9圖是第8圖的示例視頻編碼器的一部分的圖。 第10圖是根據本公開的實施方式的示例視頻解碼器的圖。 第11圖是第10圖的示例視頻解碼器的一部分的圖。 第12圖是根據本公開的實施方式的示例過程的流程圖。 第13圖是根據本公開的實施方式的示例電子系統的圖。
1210-1260:步驟

Claims (20)

  1. 一種視頻編解碼方法,適用於編碼器或解碼器,包括: 接收作為視頻的當前圖片的當前塊的待編碼或解碼的像素資料; 從包括一個或多個分區模式候選的分區模式候選集中選擇分區模式,每個分區模式候選由所述當前塊內的相應分區邊界定義; 確定所述當前塊的兩個合併候選,所述兩個合併候選中的每一個對應於由所選擇的分區模式確定的所述當前塊的相應幾何分區模式(GPM)部分; 基於所選擇的分區模式和兩個合併候選或所述當前塊的輔助資料,從混合寬度候選集中確定混合寬度;以及 使用所選擇的分區模式、兩個合併候選和所選擇的混合寬度對所述當前塊進行編碼或解碼。
  2. 如請求項1所述的方法,其中所述兩個合併候選或所述當前塊的輔助資料包括: 所述當前塊的運動向量(MV); 所述當前塊的一個或多個相鄰塊的MV; 所述兩個GPM部分的樣本值; 所述兩個合併候選的參考索引; 所述當前塊的模板區域的樣本值; 所述兩個合併候選中每一個的模板區域的樣本值;或者 上述兩項或多項的組合。
  3. 如請求項1所述的方法,其中從所述混合寬度候選集中確定所述混合寬度還包括: 基於所選擇的分區模式和兩個合併候選或所述當前塊的輔助資料,從包括兩個或多個混合寬度候選的混合寬度候選集合中排除一個或多個混合寬度候選;以及 在排除步驟之後從所述混合寬度候選中選擇混合寬度。
  4. 如請求項3所述的方法,其中排除所述一個或多個混合寬度候選包括: 基於所述兩個合併候選的輔助資料,確定兩個合併候選中的每一個的相應對象邊緣; 基於所述兩個合併候選的輔助資料,計算所述兩個合併候選中的每一個跨越各自的對象邊緣的各自的梯度; 根據兩個合併候選的梯度,計算所述當前塊的梯度;以及 基於所述當前塊的梯度排除一個或多個混合寬度候選。
  5. 如請求項3所述的方法,其中排除所述一個或多個混合寬度候選包括: 根據選擇的分區模式或者所述當前塊的輔助資料,確定所述當前塊內的對象邊緣; 根據所述當前塊的輔助資料,計算所述當前塊跨越對象邊緣的梯度;以及 基於所述當前塊的梯度排除一個或多個混合寬度候選。
  6. 如請求項5所述的方法,其中所述一個或多個混合寬度候選的排除進一步根據基於歷史的統計模型或查找表(LUT)。
  7. 如請求項1所述的方法,其中從所述混合寬度候選集中確定所述混合寬度還包括: 基於所述兩個合併候選或所述當前塊的輔助資料,重新排序所述混合寬度候選集;以及 在重新排序步驟之後從混合寬度候選中選擇所述混合寬度。
  8. 如請求項7所述的方法,其中對所述混合寬度候選集的重新排序包括針對保留在所述混合寬度候選集中的每個混合寬度候選計算相關聯的GPM預測的相應猜測成本。
  9. 如請求項8所述的方法,其中計算相應猜測成本包括模板匹配(TM)或邊界匹配(BM)。
  10. 如請求項3所述的方法,適用於所述編碼器,其中: 分區模式的選擇包括在分區模式候選集中執行率失真優化(RDO)搜索, 確定兩個合併候選中的每一個包括對所述當前塊的相應GPM部分執行單向運動補償預測(MCP),並且 混合寬度的選擇包括在排除之後在混合寬度候選集合內進行RDO搜索或者對所述混合寬度候選集合中的每個候選進行猜測成本計算,或者混合寬度的選擇是基於所述當前塊或所述當前塊的兩個合併候選的輔助資料進行的。
  11. 如請求項1所述的方法,適用於所述編碼器,還包括: 向所述解碼器發信號通知指示兩個合併候選的索引、指示所選擇的分區模式的索引以及指示所確定的混合寬度的索引。
  12. 如請求項1所述的方法,適用於所述編碼器,還包括: 向所述解碼器發信號通知指示兩個合併候選的索引和指示選擇分區模式而不用信號發送指示所確定的混合寬度的索引。
  13. 如請求項1所述的方法,適用於所述解碼器,其中: 所述分區模式的選擇包括從所述編碼器接收指示所選擇的分區模式的索引, 確定兩個合併候選中的每一個包括從所述編碼器接收指示兩個合併候選之一的相應索引,以及 所述混合寬度的確定包括從所述編碼器接收指示所確定的混合寬度的索引。
  14. 如請求項3所述的方法,適用於所述解碼器,其中: 所述分區模式的選擇包括從所述編碼器接收指示所選擇的分區模式的索引, 所述確定兩個合併候選中的每一個包括從所述編碼器接收指示兩個合併候選之一的相應索引, 所述混合寬度候選集在排除後僅包含一個混合寬度候選,並且 所述混合寬度的選擇包括將僅有的一個混合寬度候選指定為所選混合寬度。
  15. 如請求項1所述的方法,所述分區模式候選集合包括第一數量的所述分區模式候選,所述方法還包括: 基於分區模式候選集和包括第二數量的合併候選的合併候選集,構造包括第三數量的GPM候選的GPM候選集,每個GPM候選表示分區模式候選之一和合併的兩個的相應組合候選;以及 通過計算每個GPM候選各自的猜測成本來重新排序GPM候選集, 其中所述分區模式的選擇和所述兩個合併候選的確定包括選擇或確定由具有最低猜測成本的GPM候選之一指示的分區模式和兩個合併候選。
  16. 如請求項15所述的方法,其中計算相應猜測成本包括模板匹配(TM)或邊界匹配(BM)。
  17. 如請求項15所述的方法,還包括: 對於重排序後的GPM候選集中的一個或多個候選,基於兩個合併候選或所述當前塊的輔助資料,對所述混合寬度候選集進行重排序。
  18. 一種電子設備,包括: 視頻編碼電路被配置為執行包括以下操作的操作: 接收作為視頻的當前圖片的當前塊的待編碼或解碼的像素資料; 從包括一個或多個分區模式候選的分區模式候選集中選擇分區模式,每個分區模式候選由所述當前塊內的相應分區邊界定義; 確定所述當前塊的兩個合併候選,所述兩個合併候選中的每一個對應於由所選擇的分區模式確定的當前塊的相應幾何分區模式(GPM)部分; 基於所選擇的分區模式和兩個合併候選或當前塊的輔助資料,從混合寬度候選集合中確定混合寬度; 以及 使用所選擇的分區模式、兩個合併候選和所選擇的混合寬度對所述當前塊進行編碼或解碼。
  19. 如請求項18所述的裝置,其中確定所述混合寬度的操作還包括: 基於所選擇的分區模式以及兩個合併候選或所述當前塊的輔助資料,從包括兩個或多個混合寬度候選的混合寬度候選集中排除一個或多個混合寬度候選;以及 在排除一個或多個混合寬度候選後,從混合寬度候選集合中選擇混合寬度。
  20. 如請求項18所述的裝置,其中確定所述混合寬度的操作還包括: 基於分區模式候選集和包括一個或多個合併候選的合併候選集,構建包括兩個或多個GPM候選的GPM候選集,每個GPM候選代表分區模式候選之一和合併候選之一的相應組合;以及 通過計算每個GPM候選各自的猜測成本來對GPM候選集重新排序; 其中分區模式的選擇和兩個合併候選的確定包括選擇或確定由具有最低猜測成本的GPM候選之一指示的分區模式和兩個合併候選。
TW112116008A 2022-04-29 2023-04-28 高效的幾何分區模式視頻編解碼 TW202349965A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202263336397P 2022-04-29 2022-04-29
US63/336,397 2022-04-29
PCT/CN2023/091279 WO2023208131A1 (en) 2022-04-29 2023-04-27 Efficient geometric partitioning mode video coding
WOPCT/CN2023/091279 2023-04-27

Publications (1)

Publication Number Publication Date
TW202349965A true TW202349965A (zh) 2023-12-16

Family

ID=88517883

Family Applications (1)

Application Number Title Priority Date Filing Date
TW112116008A TW202349965A (zh) 2022-04-29 2023-04-28 高效的幾何分區模式視頻編解碼

Country Status (2)

Country Link
TW (1) TW202349965A (zh)
WO (1) WO2023208131A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190044533A (ko) * 2017-10-20 2019-04-30 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN112166612A (zh) * 2018-05-23 2021-01-01 株式会社Kt 用于处理视频信号的方法和设备
CN117499638A (zh) * 2018-06-27 2024-02-02 数字洞察力有限公司 对图像进行编码/解码的方法和发送比特流的方法
CA3105339A1 (en) * 2018-06-30 2020-01-02 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Merge mode-based inter-prediction method and apparatus

Also Published As

Publication number Publication date
WO2023208131A1 (en) 2023-11-02

Similar Documents

Publication Publication Date Title
TWI677234B (zh) 二次轉換核心尺寸選擇
TWI711300B (zh) 照度補償方法及相應之視訊處理裝置
CN113455003B (zh) 视频编解码方法及电子设备
TWI706667B (zh) 隱式變換設置
RU2683165C1 (ru) Внутреннее предсказание блочного копирования с асимметричными разделами и схемами поиска на стороне кодера, диапазоны поиска и подходы к разделению
US11095877B2 (en) Local hash-based motion estimation for screen remoting scenarios
JP6719379B2 (ja) オーバーラップエリア内の再構成されたサンプル値のブロックベクトル予測及び推定におけるイノベーション
CN111131822B (zh) 具有从邻域导出的运动信息的重叠块运动补偿
JP2017512026A (ja) イントラブロックコピー予測におけるブロック反転及びスキップモード
CN106688238B (zh) 改进后的深度图帧内编码的参考像素点选择和滤波
TWI790662B (zh) 一種編解碼方法、裝置及其設備
CN102934445A (zh) 基于分段对图像编码和解码的方法和设备
TWI814540B (zh) 視訊編解碼方法及裝置
CN117837145A (zh) 使用模板匹配细化候选选择
TW202349965A (zh) 高效的幾何分區模式視頻編解碼
TWI834269B (zh) 視訊處理方法及裝置
TWI847224B (zh) 視訊編解碼方法及其裝置
TWI826079B (zh) 視訊編解碼方法及裝置
TWI833327B (zh) 視訊編解碼方法及裝置
WO2023125771A1 (en) Cross-component linear model prediction
TWI836792B (zh) 視訊編解碼方法及相關裝置
WO2023116704A1 (en) Multi-model cross-component linear model prediction
WO2022184110A1 (zh) 用于图像编码的方法、电子设备、存储介质和记录介质
TW202402054A (zh) 用於候選清單的相似性閾值
TW202404354A (zh) 利用卷積模型的預測改進