TWI830337B - 用於視頻編解碼系統中硬件友好模板匹配的方法和裝置 - Google Patents
用於視頻編解碼系統中硬件友好模板匹配的方法和裝置 Download PDFInfo
- Publication number
- TWI830337B TWI830337B TW111131310A TW111131310A TWI830337B TW I830337 B TWI830337 B TW I830337B TW 111131310 A TW111131310 A TW 111131310A TW 111131310 A TW111131310 A TW 111131310A TW I830337 B TWI830337 B TW I830337B
- Authority
- TW
- Taiwan
- Prior art keywords
- template
- current
- determined
- block
- current block
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/57—Motion estimation characterised by a search window with variable size or shape
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
公開了用於確定的區域進行模板匹配的方法和裝置。根據該方法,接收當前塊的包括當前塊的上側、當前塊的左側或其組合的當前相鄰像素的當前模板。然後確定參考圖片中的區域,其中參考圖片對應於先前編碼的圖片。然後確定參考塊的受限參考模板與當前模板的匹配結果,其中受限參考模板是僅使用確定區域內的參考模板的相鄰參考像素生成的,參考模板具有與當前模板相同的形狀,參考模板的位置是根據來自當前模板的目標運動矢量(MV)確定的。
Description
本發明涉及視頻編解碼系統。特別地,本發明涉及視頻編解碼系統中模板匹配編碼工具的有效硬體實現。
多功能視頻編碼(VVC)是由ITU-T視頻編碼專家組(VCEG)和ISO/IEC運動圖片專家組(MPEG)的聯合視頻專家組(JVET)開發的最新國際視頻編碼標準。該標準已作為ISO標準發布:ISO/IEC 23090-3:2021,信息技術-沉浸式媒體的編碼表示-第3部分:多功能視頻編碼,2021年2月發布。VVC是基於其前身HEVC(High Efficiency Video Coding)通過添加更多的編碼工具來提高編碼效率並處理包括3維(3D)視頻信號在內的各種類型的視頻源。
第1A圖圖示了結合循環處理的示例性自適應幀間/幀內視頻編碼系統。對於幀內預測110,預測資料是基於當前圖片中先前編碼的視頻資料得出的。對於幀間預測112,在編碼器側執行運動估計(ME)並且基於ME的結果執行運動補償(MC)以提供從其他圖片和運動資料導出的預測資料。開關114選擇幀內預測110或幀間預測112,並且選擇的預測資料被提供給加法器116以形成預測誤差,也稱為殘差。然後由變換(T)118接著量化(Q)120處理預測誤差。然後由熵編
碼器122對變換和量化的殘差進行編碼以包括在對應於壓縮視頻資料的視頻位元流中。然後,與變換係數相關聯的位元流與諸如與幀內預測和幀間預測相關聯的運動和編碼模式等輔助信息以及與應用於底層圖片區域的環路濾波器相關聯的參數等其他信息打包。如第1A圖所示,與幀內預測110、幀間預測112和環路濾波器130相關聯的邊信息被提供給熵編碼器122。當使用幀間預測模式時,參考圖片也必須在編碼器端重建。因此,變換和量化的殘差由反量化(IQ)124和反變換(IT)126處理以恢復殘差。然後在重建(REC)128將殘差加回到預測資料136以重建視頻資料。重構的視頻資料可以存儲在參考圖片緩衝器134中並且用於其他幀的預測。
如第1A圖所示,輸入視頻資料在編碼系統中經歷一系列處理。由於一系列處理,來自REC 128的重建視頻資料可能會受到各種損害。因此,在將重構視頻資料存儲在參考圖片緩衝器134中之前,經常將環路濾波器130應用於重構視頻資料,以提高視頻質量。例如,可以使用去塊濾波器(DF)、樣本自適應偏移(SAO)和自適應環路濾波器(ALF)。可能需要將環路濾波器信息合併到位元流中,以便解碼器可以正確地恢復所需的信息。因此,環路濾波器信息也被提供給熵編碼器122以結合到位元流中。在第1A圖中,在將重構樣本存儲在參考圖片緩衝器134中之前,將環路濾波器130應用於重構視頻。第1A圖中的系統旨在說明典型視頻編碼器的示例性結構。它可以對應於高效視頻編碼(HEVC)系統、VP8、VP9、H.264或VVC。
如第1A圖、第1B圖所示,解碼器可以使用與編碼器相似或部分相同的功能塊,除了變換118和量化120之外,因為解碼器只需要反量化124和反變換126。如圖所示,代替熵編碼器122,解碼器使用熵解碼器140將視頻位元流
解碼為量化的變換係數和所需的編碼信息(例如,ILPF信息、幀內預測信息和幀間預測信息)。解碼器側的幀內預測150不需要執行模式搜索。相反,解碼器只需要根據從熵解碼器140接收到的幀內預測信息來生成幀內預測。此外,對於幀間預測,解碼器只需要根據從熵解碼器140接收到的幀內預測信息執行運動補償(MC 152)無需運動估計。輸出信號
根據VVC,類似於HEVC,輸入圖片被劃分為稱為CTU(編碼樹單元)的非重疊方形塊區域。每個CTU可以劃分為一個或多個較小尺寸的視頻單元(CU)。生成的CU分區可以是正方形或矩形。此外,VVC將CTU劃分為預測單元(PU)作為一個單元來應用預測過程,例如幀間預測、幀內預測等。
VVC標準結合了各種新的編碼工具,以進一步提高HEVC標準的編碼效率。在各種新的編碼工具中,有些已經被標准採用,有些沒有。在新的編碼工具中,公開了一種名為模板匹配(Template Matching)的技術,用於導出當前塊的運動矢量(MV)。模板匹配簡要回顧如下。
模板匹配(TM)
在JVET-J0021(Yi-Wen Chen,et al.,“Description of SDR,HDR and 360° video coding technology proposal by Qualcomm and Technicolor-low and high complex versions”,ITU-T SG 16 WP 3和ISO/IEC JTC 1/SC 29/WG 11聯合視頻探索小組(JVET),第10次會議:美國聖地亞哥,2018年4月10日至20日,文件:JVET-J0021),模板匹配是一種解碼器端的MV推導方法,通過找到當前圖片中的模板(即當前CU的上方和/或左側相鄰塊)與如第2圖中所示的參考圖片。在第2圖中,當前圖片210中當前塊上方的行214的像素和當前塊212左側的列216的像素被選擇為模板。搜索從參考圖片中的初始位置(由初始MV 230標識)
開始。如第2圖所示,在參考圖片220中參考塊222上方的對應行的像素224和參考塊222左側的列226的像素被識別。在搜索期間,在不同位置的相同的“L”形參考像素(即224和226)與當前塊周圍模板中的相應像素進行比較。在搜索之後確定具有最小匹配失真(matching distortion)的位置。在該位置,選擇具有最佳「L」形像素作為其上方和左側鄰居(即最小失真)的塊作為當前塊的參考塊。
由於在編碼器側和解碼器側都執行基於模板匹配的細化過程,因此解碼器可以在不需要來自編碼器側的信號信息的情況下導出MV。在參考圖片局部搜索區域內的,搜索範圍為[-8,8]整數像素精度,模板匹配過程通過找到當前圖片中的當前模板(當前塊的上方和/或左側相鄰塊)與參考模板(與當前模板大小相同)之間的最佳匹配來導出當前塊的運動信息。
在確定細化MV後,在編碼器端和解碼器端執行運動補償。根據細化的MV生成運動補償預測器(或預測塊),如果細化的MV不具有整數像素值,則可能需要進行一些插值。然後,編碼器將使用此運動補償預測器生成預測殘差塊,解碼器將使用此運動補償預測器生成重構塊。
在AMVP(高級運動矢量預測(Advanced Motion Vector Prediction)或適應性運動矢量預測(Adaptive Motion Vector Prediction))模式下應用TM時,根據初始模板匹配誤差確定MVP(運動矢量預測)候選者,以選取與當前塊模板和參考塊模板之間的差值達到最小的候選者。然後TM僅針對這個特定的MVP候選者進行MV細化(即,圍繞初始MVP候選者進行局部搜索)。TM通過使用迭代菱形搜索,從[-8,+8]像素搜索範圍內的全像素運動矢量差異(Motion Vector Difference,MVD)精度(或4像素AMVR模式的4像素)開始細化這個MVP候選者。AMVP候選者可以通過使用具有全像素MVD精度
(或4像素用於4像素AMVR模式)的交叉搜索來進一步細化,然後根據表1中指定的AMVR模式依次進行半像素和四分之一像素搜索。這個搜索過程保證了MVP候選在TM過程之後仍然保持與AMVR模式指示的相同的MV精度。
在合併模式中,相似的搜索方法被應用於由合併索引指示的合併候選。如表1所示,TM可以一直執行到1/8像素MVD精度或跳過超過半像素MVD精度的那些,這取決於是否根據合併運動信息(如AltIF所示)使用替代插值濾波器(當AMVR為半像素模式時使用)。此外,當啟用TM模式時,模板匹配可以作為一個獨立的過程,也可以作為基於塊和基於子塊的雙邊匹配(bilateral matching,BM)方法之間的一個額外的MV細化過程,這取決於是否可以基於條件檢查啟用BM。當BM和TM都為CU啟用時,TM的搜索過程停止在半像素MVD精度,並且使用相同的基於模型的MVD推導方法進一步在DMVR(解碼器端運動矢量細化,Decoder-Side Motion Vector Refinement)中細化結果MV。
基本資料結構
在VVC中,還引入了一些新的資料結構。圖片被劃分為非重疊的正方形編碼樹單元(CTU)。每個CTU包含一個亮度編碼樹塊(CTB)和兩個色度CTB。使用帶有嵌套多類型樹(MTT)的四叉樹(QT),可以將每個CTU視為一個或進一步劃分為多個編碼單元(CU)。CU分區對應一個編碼樹葉子節點,其中一個CU在一棵樹中包含一個亮度編碼塊(CB)和兩個色度CB(亮度和色度的編碼樹)。一個CB(Coding Block)包含一個亮度CB或兩個色度CB的雙叉樹,即由一棵亮度編碼樹和另一棵色度編碼樹組成的顏色分離樹(CST)。
除了一些CU模式或尺寸外,CU也被用作預測和變換的基本單位。最大亮度變換大小為64或32。當當前變換塊(TB)的大小在寬度或高度上大於最大變換大小時,推斷TB在水平或垂直方向上進一步均勻分割。例如,當最大亮度變換大小為64且大小為128x128亮度CB時,亮度CB被推斷為劃分為四個64x64亮度TB。
多類型樹(MTT)包括以下分割,如第3圖所示:
.水平二叉樹(BT)分割(320)
.垂直BT分割(310)
.水平三叉樹(TT)分割(340)
.垂直TT分割(330)
從概念上講,從CTU開始,每個編碼樹節點可以通過QT分割或四個MTT分割之一進一步分割。如果QT分割應用於父節點,則允許對其父節點的子節點進行QT、BT和TT分割(如果BT、TT或QT應用於父節點,則為兩個、三個或四個)子節點。一旦將MTT分割應用於父節點,QT分割將對
其所有後代節點禁用(MTT深度>0),並且後代節點僅允許BT和TT。
非對稱二叉樹分區
JVET-V0083中建議了四種新的非對稱二叉樹分割模式(F.Le Léannec等人,「EE2相關:VVC之上的非對稱二叉樹分割」,ITU-T SG 16的聯合視頻探索小組(JVET)WP 3和ISO/IEC JTC 1/SC 29/WG 11,第22次會議,電話會議,2021年4月20-28日,文件:JVET-V0083)和JVET-V0097(Kai Zhang等,「AHG12:不對稱視頻編碼中的分區方法」,ITU-T SG 16 WP 3和ISO/IEC JTC 1/SC 29/WG 11聯合視頻探索小組(JVET),第22次會議,電話會議,2021年4月20-28日,文件:JVET-V0097)。建議在VVC的多類型樹結構中添加4種不對稱分割模式,以允許新的分割配置(即UBT-H1 410、UBT-H2 420、UBT-V1 430和UBT-V2 440)。這些添加的分割模式如第4圖所示。
UBT-H1和UBT-H2將一個維度為W×H的CU分成兩個維度為{W×H/4,W×3H/4}和{W×3H/4,W×H/4}的子CU,分別。UBT-V1和UBT-V2將一個維度為W×H的CU分別分成兩個維度為{W/4×H,3W/4×H}和{3W/4×H,W/4×H}的子CU。對於UBT,CU或TU的寬度或高度可能是非二元數(不是2N的形式)。一些編碼工具,例如ISP(幀內子分區)模式、MIP(基於矩陣的幀內預測)模式和SBT(子塊變換)模式應在這些CU中禁用(在JVET-V0097中提出)。此外,還應引入6點、12點、24點和48點變換/逆變換來對具有非二元維度的殘差塊進行編解碼。
不對稱四叉樹(UQT)分區
JVET-V0097中提出了四種類型的UQT(即UQT-H1 510、UQT-H2 520、UQT-V1 530和UQT-V2 540),如第5圖所示。UQT-H1和UQT-H2
分割了一個CU尺寸為W×H的四個子CU,尺寸分別為{W×H/8,W×H/2,W×H/4,W×H/8}和{W×H/8,W×H/4,W×H/2,W×H/8}。UQT-V1和UQT-V2將一個維度為W×H的CU分成四個維度為{W/8×H,W/2×H,W/4×H,W/8×H}和{W/8×H,W/4×H,W/2×H,W/8×H}子CU。
具有CU級權重的雙向預測(BCW)
BCW允許L0參考圖片列表和L1參考圖片列表在雙向預測中有不同的權重
-雙預測是用一個為編碼單元信號通知的加權參數生成的,其中P0對應於L0的預測,P1對應於L1的預測,w是加權因子:P 雙預測 =((8-w)*P 0+w*P 1+4)≫3
-低延遲圖片的五個w選項:{-2,3,4,5,10}。
-非低延遲圖片的三個w選項:{3,4,5}。
-權重索引是針對幀間模式明確發出信號的。
-對於合併模式,BCW索引繼承自所選的合併候選者或設置為默認值,表示權重相等
一個SPS(序列參數集)標誌用於指示啟用或禁用此工具:
-sps_bcw_enabled_flag
上面提到的模板匹配搜索需要訪問額外的參考資料來執行TM搜索。參考資料通常存儲在外部存儲器中,例如DRAM(動態隨機存取存儲器奧里)。因此,TM搜索會導致系統帶寬增加。此外,TM搜索和運動補償將增加系統的複雜性。期望開發方法和裝置來減少額外的帶寬和/或減少TM的計算複雜度。
公開了一種用於利用與根據本發明確定的區域進行模板匹配的視頻編解碼系統的方法和裝置。視頻編解碼系統可對應於視頻編碼器或視頻解碼器。根據該方法,接收與當前畫面中的視頻單元的當前塊相關聯的輸入資料。當前塊可以對應於CU。視頻單元可以對應於CTU。確定當前塊的當前模板,當前模板包括當前塊上方、當前塊左側或其組合的當前相鄰像素。確定參考圖片中的區域,其中參考圖片對應於先前編碼的圖片。確定參考塊的受限參考模板與當前模板的匹配結果,受限參考模板是僅使用確定區域內的參考模板的相鄰參考像素生成的,參考模板的形狀與當前模板相同,參考模板的位置根據來自當前模板的目標運動矢量(MV)確定。
在一個實施例中,所確定的區域還被應用於運動補償過程以使用由細化的MV指示的參考圖片的參考像素來生成預測塊,並且其中預測塊僅使用所確定的區域中的參考像素。
在一個實施例中,匹配結果基於參考模板和當前模板之間的逐像素差異。在一個實施例中,確定匹配結果的步驟是針對包括初始MV的多個目標MV進行的,並且選擇達到最佳匹配的目標MV作為細化MV。所確定的區域的位置可以基於當前塊MV來確定。
在一個實施例中,所確定的區域等於用於初始MV的當前塊的運動補償區域。在另一個實施例中,所確定的區域大於當前塊的運動補償區域。此外,所確定的區域可以比當前塊的運動補償區域大預定尺寸。
在一個實施例中,使用填充技術來為所確定的區域之外的相鄰參考像素生成資料。填充技術可以對應於重複填充或鏡像填充。
在一個實施例中,首先計算部分參考模板的部分匹配結果,然後通過根據部分參考模板的大小對部分匹配結果進行歸一化,將部分匹配結果縮放為匹配結果。例如,部分參考模板可以對應於所確定區域內的參考模板。
在一個實施例中,當目標運動矢量被四捨五入為整數運動矢量並且整數運動矢量的參考模板在確定的區域內時,所述確定的匹配結果的確定使用在確定區域內的整數運動矢量的參考模板。
110:幀內預測
112:幀間預測
114:開關
116:加法器
118:變換(T)
120:量化(Q)
122:熵編碼器
130:環路濾波器
124:反量化(IQ)
126:反變換(IT)
128:重建(REC)
136:預測資料
134:參考圖片緩衝器
140:熵解碼器
150:幀內預測
152:運動補償
210:圖片
214、224:上方的行的像素
212:當前塊
216、226:左側的列的像素
220:參考圖片
222:參考塊
320:水平二叉樹(BT)分割
310:垂直BT分割
340:水平三叉樹(TT)分割
330:垂直TT分割
410:UBT-H1
420:UBT-H2
430:UBT-V1
440:UBT-V2
510:UQT-H1
520:UQT-H2
530:UQT-V1
540:UQT-V2
610:當前圖片
614、624:像素行
616、626:像素列
630:初始MV
620:參考圖片
622:參考塊
640:搜索範圍
660、650:邊界框
710、730:CU
720:子分區
740、742、744、746:相鄰像素
810-840:步驟
第1A圖圖示了結合循環處理的示例性自適應幀間/幀內視頻編碼系統。
第1B圖圖示了用於第1A圖中的編碼器的對應解碼器。
第2圖圖示了模板匹配的示例,其中選擇當前塊和參考塊上方的像素行以及當前塊和參考塊左側的像素列作為模板。
第3圖說明了多類型樹(MTT)分割,包括水平二叉樹、垂直二叉樹、水平三叉樹和垂直三叉樹。
第4圖說明了一種新型的分區-非對稱二叉樹分區。
第5圖說明了另一種新型分區-非對稱四叉樹分區。
第6圖圖示了根據本發明的實施例的邊界框的示例。
第7圖圖示了根據本發明的實施例的基於子分區的模板匹配的示例。
第8圖圖示了根據本發明實施例的利用與邊界框的模板匹配的示例性視頻編碼系統的流程圖。
很容易理解,本發明的組件,如本文附圖中一般描述和圖示的,
可以以多種不同的配置佈置和設計。因此,如附圖中所表示的本發明的系統和方法的實施例的以下更詳細的描述並不旨在限制所要求保護的本發明的範圍,而僅代表本發明的選定實施例。在整個說明書中對「一個實施例」、「一實施例」或類似語言的引用意味著結合該實施例描述的特定特徵、結構或特性可以包括在本發明的至少一個實施例中。因此,在整個說明書的各個地方出現的短語「在一個實施例中」或「在一實施例中」不一定都指代相同的實施例。
此外,所描述的特徵、結構或特性可以在一個或多個實施例中以任何合適的方式組合。然而,相關領域的技術人員將認識到,本發明可以在沒有一個或多個具體細節的情況下,或使用其他方法、組件等來實踐。在其他情況下,未示出或未示出眾所周知的結構或操作。詳細描述以避免模糊本發明的方面。通過參考附圖將最好地理解本發明的所示實施例,其中相同的部件自始至終由相同的數字表示。以下描述僅作為示例,並且簡單地說明了與如本文所要求保護的本發明一致的設備和方法的某些選定實施例。
如前所述,TM優化過程需要訪問模板的參考資料。此外,在細化過程中,必須從不同位置多次訪問模板的參考資料。因此,TM細化過程可能會消耗大量內存帶寬。為了解決這個問題,下面公開了一種帶寬受限的TM搜索算法。
帶寬限制TM搜索技術
為了減少MC和TM搜索的外部帶寬,提出了一種帶寬受限的TM搜索方法。為TM搜索和MC定義了一個區域(例如,一個邊界框(boundingBox))。根據本發明,TM搜索區域和MC過濾都被限制在邊界框內。在這種情況下,參考資料被限制在TM搜索過程以及運動補償(MC)過程的邊界
框內。邊界框外的任何參考資料都不會用於TM搜索過程或MC過程。邊界框的位置可以基於當前MV,並且邊界框的位置可以對應於邊界框的起始位置(例如,左上角位置)。在一些其他實施例中,為TM搜索和/或MC定義的區域可以是基於當前MV定義/確定的其他形狀,本公開不應對此進行限制。
第6圖圖示了根據本發明的實施例的邊界框的示例。在第6圖中,當前圖片610(僅示出了部分圖片區域)中當前塊上方的像素行614和當前塊612左側的像素列616被選擇為模板。搜索從參考圖片中的初始位置(由初始MV 630標識)開始。參考圖片620(僅顯示部分圖片區域)中參考塊622上方的對應像素行624和參考塊622左側的像素列626被識別為如第6圖所示。[-8,+8]像素搜索範圍640由虛線方塊指示。
如第6圖所示,對於給定的MV,例如初始MV,邊界框可以等於當前CU的MC區域(用粗線650標記)。MC區域(也稱為當前CU的MC區域)對應於給定MV對當前CU執行運動補償所需的參考像素區域。在另一個實施例中,邊界框可以比當前CU的MC區域更大(例如,預定義的大小),並且根據該實施例的邊界框在第6圖中被示為點劃線框660。
關於如何處理邊界框外的TM或MC所需的像素,有幾個實施例。在一個實施例中,MC不限於TM的邊界框。換句話說,MC進程可能會使用邊界框之外的參考資料。在另一個實施例中,TM的邊界框僅約束TM,不約束MC。換句話說,TM搜索只能使用邊界框內的參考資料,而MC過程可能使用邊界框外的參考資料。
在第6圖所示的邊界框示例中,我們可以將TM搜索範圍從(-8;+8)縮小到(-4;+4),並且我們使用初始MV來獲得MC塊(粗線塊650)、點
劃線塊660在粗線塊650周圍增加了一個小區域(例如+/-1或+/-2)。在一個實施例中,模板和最終MC僅通過使用粗線標記的塊650內或點劃線標記的塊660內的樣本生成。對於這兩個塊中的任何一個或兩個塊之外的參考像素,可以使用資料填充來生成所需的參考像素。
在一個實施例中,當TM搜索所需的模板的一些像素在邊界框之外時,可以使用填充技術來生成所需的像素。在一個實施例中,填充對應於重複填充,其中重複相同的像素值以生成需要的像素。在另一個實施例中,使用鏡像填充,其中填充像素對應於跨越邊界的內部像素的鏡像圖像。在又一個實施例中,首先計算部分L-匹配結果,然後使用縮放來補償使用的區域。例如,如果只有50%的像素在邊界框內,則TM可以使用可用像素與模板的當前L形部分匹配,然後根據用於TM的區域對計算的匹配成本進行歸一化(在本例中,需要乘以2倍)。
在一個實施例中,如果MV的舍入(例如,舍入到整數像素精度)導致L形模板完全適合邊界框,則使用對應於舍入後的MV的L形。在一種情況下,插值區域最左邊的像素列(即包含L形模板的插值像素的區域)位於邊界框之外;如果我們將初始MV舍入為整數精度,則整數像素L形模板將完全位於邊界框內。在這種情況下,將使用與整數像素MV對應的L形模板來代替根據一個實施例的原始L形模板。
基於預取(Pre-Fetch)的TM區域
為了減少TM過程的延遲,可以使用更積極的預取方法。預取TM參考資料區域工作的假設是,在大多數視頻中,相鄰的CU具有非常相似的MV,並且MV通常遵循某種趨勢。這種相似性可用於減少TM延遲。在所提
出方法的一個實施例中,可以根據先前CU的已解碼MV定義TM搜索區域和/或最終MC的邊界框。使用前一個CU的已解碼MV而不是當前MV,可以更早地從外部存儲器檢索參考像素。前一個CU的已解碼MV可以是原始MV(來自MV重建階段),也可以是細化(refine)後的MV。
例如,我們可以將之前CU的MV記錄為(mvx,mvy),然後我們可以為當前CU定義邊界框,如下所示:邊界框端點的水平位置:CU_x+mvx’-N1:CU_x+CU_寬度+mvx’+N2,邊界框端點的垂直位置:CU_y+mvy’-N3:CU_y+CU_高度+mvy’+N4.
這裡mvx',mvy'可以分別對應mvx,mvy;N1~N4是用於定義邊界框的預定義常量。
在一個實施例中,如果TM搜索和/或MC需要使用邊界框外的像素,則TM搜索和/或MC可以使用填充像素或取消TM候選。
在另一個實施例中,對於切片(slice)/片段(tile)中的第一個CTU中的CU,或者對於整個CTU行中的第一個CU,或者對於一個CTU內的第一個CU,可以禁用TM以避免第一個CU的TM。在另一個實施例中,在這種情況下檢查預定義的MV(例如,零MV)。在另一個實施例中,在這種情況下檢查來自基於歷史的表的候選MV(即,包含以前使用過的MV)。
基於子分區的TM
在真實的硬件解碼器中,如果將TM應用於大CU(例如128x128CU),硬件解碼器可能無法處理這種情況,因為用於緩衝參考模板的內部SRAM會太大。下面,提出一種使硬件實現更容易的方法。
在一個實施例中,建議將大CU劃分為幾個較小的CU(例如32x32),並對每個較小的CU(例如32x32)分別執行TM。每個子分區都可以使用其頂部或左側鄰居進行TM搜索。在某些情況下,子分區可能沒有相鄰的鄰居,例如第7圖中的子分區「D」。在第7圖中,CU 710被劃分為4個較小的子分區720(A、B、C和D)。當前大CU的水平相鄰或垂直相鄰像素分別表示為730和732。在這種情況下,每個子分區可以使用當前大CU的對應的水平相鄰或垂直相鄰像素(如第7圖所示)。例如,子分區A可以使用相鄰像素740和742,子分區B可以使用相鄰像素744和742,子分區C可以使用相鄰像素740和746,子分區D可以使用相鄰像素744和746。此外,對於內部塊(即本例中的子分區D),一種建議的方法是使用上/左/左頂塊的MV繼承並使用「外部模板」。
在另一個實施例中,僅針對較小CU的選定子集(subset)執行TM(例如,在第7圖中僅選擇較小的CU A)並為其餘較小的CU繼承MV細化(例如,例如第7圖中的CU B、C、D繼承MV細化)。在另一個實施例中,其餘較小CU的MV細化是基於所選子集定義的(例如,作為所選子集的線性組合或平均值)。
信令MVP指數
在該方法中,建議發送一個索引以通知解碼器要細化哪個合併候選者。在JVET-U100(Yao-Jen Chang等人,「超越VVC的壓縮效率方法」,ITU-T SG 16 WP 3和ISO/IEC JTC 1/SC 29/WG 11的聯合視頻探索小組(JVET),第21次會議,通過電話會議,2021年1月6日至15日,文件:JVET-U0100),公開了使用TM尋找最佳候選的方法。因此,解碼器需要檢查候選列表,這可能導致解碼器側的帶寬大且複雜度高。為了降低複雜度並在解碼器處實現TM,我們提出了一種通過將編碼器導出的最佳候選的索引發送到解碼器來降低解碼
器複雜度的方法。如本領域所知,可以使用語法發送索引。在這種情況下,解碼器只需要細化與接收到的索引對應的一個候選。
TM的簡化整數搜索
在這個提議的方法中,我們將誤差曲面(Error Surface)方法合併到TM中。誤差曲面方法是一種基於插值的方法,根據兩個相鄰的整數搜索位置獲得小數搜索位置的失真結果。使用誤差曲面方法,無需計算小數位置TM匹配的失真。相反,失真是針對整數位置TM計算的,並且整數位置失真用於在小數位置處插入失真。
根據所提出方法的一個實施例,我們只搜索整數位置的所有候選,並使用整數位置的元素來形成TM模板。執行TM搜索後,我們可以得出所有(或部分)整數像素搜索位置的失真。為了推導分數MV部分,我們只需要識別小數位置周圍的整數位置失真,並使用誤差曲面方法在小數搜索位置插入新的失真。
在另一個實施例中,我們首先執行整數像素位置搜索,然後直接通過原始MV的小數MV部分調整細化的MV。例如,初始MV[3.75,-4.25]可以四捨五入為整數MV[4;-4]小數MV部分為[+0.25;+0.25]。經過TM細化後,找到的最佳整數MV是[5,-6]。因此,根據[-0.25;-0.25]修改最佳整數MV,最終MV變為[4.75,-6.25]。
自適應搜索範圍
在這個提議的方法中,SR(搜索範圍,Search Range)取決於當前CU的某些條件。
在一個實施例中,如果當前CU的MV在垂直方向上更多樣化
(即,垂直方向上的MV差異較大),則我們將水平方向的SR分配為低於垂直方向。在另一個實施例中,如果當前CU的MV在垂直方向上多樣化程度低(即,垂直方向上的MV差異較小),則我們將水平方向的SR分配為大於垂直方向。
在另一個實施例中,如果當前CU的MV在水平方向上更加多樣化(即,MV在水平方向上的差異較大),則我們為垂直方向分配的SR低於水平方向。在另一個實施例中,如果當前CU的MV在水平方向上多樣化程度低(即,MV在水平方向上的差異很小),則我們將垂直方向的SR分配為大於水平方向。
在一個實施例中,如果周圍的CU(例如,上方、左側、左上方等)MV在垂直方向上更加多樣化,則我們將水平方向的SR指定為低於垂直方向(或者,在另一個實施例中,情況相反)。
對於另一個實施例,如果周圍的CU(例如上方、左側、左上方等)MV在水平方向上更加多樣化,那麼我們將垂直方向的SR指定為低於水平方向(或者,在另一個實施例中,情況相反)。
在另一實施例中,較大CU的SR將較大。
在另一個實施例中,當前CU的SR可以取決於相鄰CU的搜索結果。例如,如果上/左鄰居TM模式在搜索後顯示出較大的MVD,則可能會增加當前CU的SR。
在另一實施例中,如果參考圖片距當前圖片更遠(根據參考圖片與當前圖片的POC(圖片順序計數,Picture Order Count)距離),則SR將增加。
通過POC距離約束TM候選者
在所提出的方法中,建議禁用TM搜索一些POC(圖片順序計
數)距離大於閾值的參考圖片。在一個實施例中,一些語法元素可以被包括在圖片頭或切片頭中以通知解碼器關於哪個參考圖片將被禁用用於TM搜索。當當前CU的MV的參考索引與禁止圖片匹配時,隱式關閉對當前MV的TM搜索。在另一個實施例中,POC距離的預定義閾值可以在報頭元素中用信號發送(例如,在切片報頭或圖片報頭或片段報頭或序列報頭中),並且解碼器將計算POC距離(即,當前CU和參考圖片之間的POC距離),如果POC距離大於預定義的閾值,則TM模式將被隱式關閉。
模板匹配可以用作幀間預測技術來導出MV。模板匹配也可用於優化初始MV。因此,模板匹配過程被認為是幀間預測的一部分。因此,可以在編碼器和/或解碼器中實現前述提出的與模板匹配有關的方法。例如,所提出的方法可以在編碼器的幀間編碼模塊(例如,第1A圖中的幀間預測112)和/或解碼器的幀間模塊(例如,第1B圖中的MC 152)中實現。
第8圖示出了利用與根據本發明實施例確定的區域進行模板匹配的示例性視頻編解碼系統的流程圖。視頻編解碼系統可對應於視頻編碼器或視頻解碼器。流程圖中所示的步驟可以實現為可在編碼器側的一個或多個處理器(例如,一個或多個CPU)上執行的程序代碼。流程圖中所示的步驟也可以基於硬件來實現,諸如被佈置為執行流程圖中的步驟的一個或多個電子設備或處理器。根據該方法,在步驟810中接收與當前畫面中的視頻單元的當前塊相關聯的輸入資料。當前塊可以對應於CU。視頻單元可以對應於CTU。在步驟820中確定當前塊的當前模板,其中當前模板包括當前塊上方、當前塊左側或其組合的當前相鄰像素。在步驟830中確定參考圖片中的區域,其中參考圖片對應於先前編碼的圖片。在步驟840中確定參考塊的受限參考模板與當前模板之間的匹配結果,其
中受限參考模板是僅使用確定區域內的參考模板的相鄰參考像素生成的,參考模板與當前模板具有相同的形狀,參考模板的位置根據來自當前模板的目標運動矢量(MV)確定。
所示流程圖旨在說明根據本發明的視頻編碼的示例。本領域技術人員在不脫離本發明的精神的情況下,可以修改每個步驟、重新排列步驟、分割步驟或組合步驟來實施本發明。在本公開中,已經使用特定的句法和語義來說明示例以實現本發明的實施例。技術人員可以通過用等效的句法和語義代替句法和語義來實踐本發明,而不背離本發明的精神。
呈現以上描述是為了使本領域普通技術人員能夠實踐在特定應用及其要求的上下文中提供的本發明。對所描述的實施例的各種修改對於本領域技術人員來說將是顯而易見的,並且本文定義的一般原理可以應用於其他實施例。因此,本發明不旨在限於所示和描述的特定實施例,而是要符合與本文公開的原理和新穎特徵相一致的最寬範圍。在以上詳細描述中,為了提供對本發明的透徹理解,說明了各種具體細節。然而,本領域的技術人員將理解,可以實踐本發明。
如上所述的本發明的實施例可以以各種硬件、軟件代碼或兩者的組合來實現。例如,本發明的一個實施例可以是集成到視頻壓縮芯片中的一個或多個電路電路或集成到視頻壓縮軟件中以執行本文描述的處理的程序代碼。本發明的實施例還可以是要在數字信號處理器(DSP)上執行以執行這裡描述的處理的程序代碼。本發明還可以涉及由計算機處理器、數字信號處理器、微處理器或現場可編程門陣列(FPGA)執行的許多功能。這些處理器可以被配置為通過執行定義本發明所體現的特定方法的機器可讀軟件代碼或固件代碼來執行根
據本發明的特定任務。軟件代碼或固件代碼可以以不同的編程語言和不同的格式或樣式開發。軟件代碼也可以針對不同的目標平台進行編譯。然而,軟件代碼的不同代碼格式、風格和語言以及配置代碼以執行根據本發明的任務的其他方式將不脫離本發明的精神和範圍。
本發明可以在不背離其精神或基本特徵的情況下以其他特定形式體現。所描述的示例在所有方面都僅被認為是說明性的而不是限制性的。因此,本發明的範圍由所附請求保護範圍而不是由前述描述指示。在請求保護範圍的等效含義和範圍內的所有變化都應包含在其範圍內。
810-840:步驟
Claims (12)
- 一種視頻編解碼方法,該方法包括:接收與當前圖片中的視頻單元的當前塊相關聯的輸入資料;確定該當前塊的當前模板,其中,該當前模板包括該當前塊的上方、當前塊的左側或其組合的當前相鄰像素;確定參考圖片中的區域,其中該參考圖片對應於先前編碼的圖片;以及確定參考塊的受限參考模板與該當前模板之間的匹配結果,其中該受限參考模板是僅使用確定區域內的參考模板的相鄰參考像素生成的,參考模板與該當前模板是具有相同的形狀的模板,該參考模板的位置根據來自該當前模板的目標運動矢量(MV)確定;其中所確定的區域大於或等於該當前塊的運動補償區域。
- 如請求項1所述的方法,其中,所確定的區域還被應用於運動補償過程以生成預測塊,該預測塊是使用由細化的MV指示的參考圖片的參考像素生成的,並且其中該預測塊僅使用該確定的區域中的參考像素。
- 如請求項1所述的方法,其中,該匹配結果基於該參考模板和該當前模板之間的逐像素差異。
- 如請求項1所述的方法,其中,該確定匹配結果是針對包括初始MV的多個目標MV進行的,並且選擇達到最佳匹配的目標MV作為細化MV。
- 如請求項4所述的方法,其中,所確定的區域的位置是基於該當前塊MV來確定的。
- 如請求項1所述的方法,其中,所確定的區域比該當前塊的運動補償區域大預定尺寸。
- 如請求項1所述的方法,其中使用填充技術來為所確定的區 域之外的相鄰參考像素生成資料。
- 如請求項7所述的方法,其中,所述填充技術對應於重複填充或鏡像填充。
- 如請求項1所述的方法,其中,首先計算部分參考模板的部分匹配結果,然後通過根據該部分參考模板的大小歸一化部分匹配結果,將該部分匹配結果縮放到匹配結果。
- 如請求項9所述的方法,其中,該部分參考模板對應於所確定區域內的參考模板。
- 如請求項1所述的方法,其中,當該目標MV被四捨五入為整數MV且該整數MV的參考模板在所確定的區域內時,該整數MV在所述確定區域內的參考模板被用於所述確定匹配結果。
- 一種視頻編解碼設備,該設備包括一個或多個電子電路或處理器,用於:接收與當前圖片中的視頻單元的當前塊相關聯的輸入資料;為該當前塊確定當前模板,其中該當前模板包括該當前塊的上方、該當前塊的左側或其組合的當前相鄰像素;確定參考圖片中的區域,其中該參考圖片對應於先前編碼的圖片;和確定參考塊的受限參考模板與該當前模板之間的匹配結果,其中該受限參考模板是僅使用所述確定區域內的參考模板的相鄰參考像素生成的,該參考模板與該當前模板具有相同的形狀,該參考模板的位置根據來自該當前模板的目標運動矢量(MV)確定;其中所確定的區域大於或等於該當前塊的運動補償區域。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202163234739P | 2021-08-19 | 2021-08-19 | |
| US63/234,739 | 2021-08-19 | ||
| PCT/CN2022/113410 WO2023020591A1 (en) | 2021-08-19 | 2022-08-18 | Method and apparatus for hardware-friendly template matching in video coding system |
| WOPCT/CN2022/113410 | 2022-08-18 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202316858A TW202316858A (zh) | 2023-04-16 |
| TWI830337B true TWI830337B (zh) | 2024-01-21 |
Family
ID=85239548
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW111131310A TWI830337B (zh) | 2021-08-19 | 2022-08-19 | 用於視頻編解碼系統中硬件友好模板匹配的方法和裝置 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US12432373B2 (zh) |
| EP (1) | EP4388745A4 (zh) |
| CN (1) | CN117917077A (zh) |
| TW (1) | TWI830337B (zh) |
| WO (1) | WO2023020591A1 (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117121486A (zh) * | 2021-03-02 | 2023-11-24 | 抖音视界有限公司 | 非二元块的帧间预测 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW426835B (en) * | 1997-11-07 | 2001-03-21 | Gen Instrument Corp | View offset estimation for stereoscopic video coding |
| TW201817235A (zh) * | 2016-10-27 | 2018-05-01 | 聯發科技股份有限公司 | 預拼接圖像的視頻編碼方法、視頻解碼方法和相關的裝置 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US1043285A (en) | 1912-02-17 | 1912-11-05 | Joseph T Zika | Tenon-machine gage. |
| US20190082192A1 (en) | 2016-03-16 | 2019-03-14 | Mediatek Inc. | Method and apparatus of pattern-based motion vector derivation for video coding |
| GB2563943B (en) * | 2017-06-30 | 2021-02-24 | Canon Kk | Method and apparatus for encoding or decoding video data in FRUC mode with reduced memory accesses |
| US20200154124A1 (en) | 2017-07-04 | 2020-05-14 | Lg Electronics Inc. | Image decoding method based on inter prediction and image decoding apparatus therefor |
| EP3682635A1 (en) | 2017-10-09 | 2020-07-22 | Huawei Technologies Co., Ltd. | Memory access window for sub prediction block motion vector derivation |
| CN119324983A (zh) * | 2018-03-30 | 2025-01-17 | 英迪股份有限公司 | 图像编码/解码方法以及存储介质 |
| EP3769529B1 (en) | 2018-04-18 | 2025-09-17 | Mediatek Inc. | Candidate reorganizing with advanced control in video coding |
| WO2019228660A1 (en) * | 2018-06-01 | 2019-12-05 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Video codec using template matching prediction |
-
2022
- 2022-08-18 WO PCT/CN2022/113410 patent/WO2023020591A1/en not_active Ceased
- 2022-08-18 US US18/684,787 patent/US12432373B2/en active Active
- 2022-08-18 EP EP22857900.9A patent/EP4388745A4/en active Pending
- 2022-08-18 CN CN202280060772.7A patent/CN117917077A/zh active Pending
- 2022-08-19 TW TW111131310A patent/TWI830337B/zh active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW426835B (en) * | 1997-11-07 | 2001-03-21 | Gen Instrument Corp | View offset estimation for stereoscopic video coding |
| TW201817235A (zh) * | 2016-10-27 | 2018-05-01 | 聯發科技股份有限公司 | 預拼接圖像的視頻編碼方法、視頻解碼方法和相關的裝置 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2023020591A1 (en) | 2023-02-23 |
| US12432373B2 (en) | 2025-09-30 |
| TW202316858A (zh) | 2023-04-16 |
| US20240357153A1 (en) | 2024-10-24 |
| CN117917077A (zh) | 2024-04-19 |
| EP4388745A4 (en) | 2025-07-02 |
| EP4388745A1 (en) | 2024-06-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN113853794B (zh) | 视频解码方法与相关电子装置 | |
| CN113475072B (zh) | 视频处理中滤波信息的信令 | |
| TWI731362B (zh) | 擴展Merge模式與其他視頻編碼工具之間的交互 | |
| CN110326296B (zh) | 用于对运动信息进行编码和解码的方法和装置 | |
| CN113545049A (zh) | 视频处理中对基于模型的整形的约束 | |
| TWI830334B (zh) | 視頻編解碼系統中低延遲模板匹配的方法和裝置 | |
| CN115516863A (zh) | 用于分割语法的熵编解码 | |
| CN116896640A (zh) | 视频编解码方法及相关装置 | |
| TWI830337B (zh) | 用於視頻編解碼系統中硬件友好模板匹配的方法和裝置 | |
| TWI836563B (zh) | 視訊編解碼方法和裝置 | |
| CN121002845A (zh) | 用于视频编解码中解码器侧运动细化的优先初始运动矢量的方法和装置 | |
| CN112997496B (zh) | 仿射预测模式的改进 | |
| WO2026008046A1 (en) | Methods and apparatus of temporal partition prediction with reference picture resampling | |
| TW202439820A (zh) | 視訊編解碼方法與裝置 | |
| TW202516932A (zh) | 視訊編解碼方法和裝置 | |
| TW202446062A (zh) | 視訊編解碼方法及相關裝置 | |
| TW202444103A (zh) | 視訊編解碼方法和裝置 | |
| CN121844560A (zh) | 透过模型衍生改善影片编解码的方法与装置 | |
| CN121986479A (zh) | 用于视频编码和解码的方法、装置和计算机程序产品 | |
| HK40063053B (zh) | 视频处理中对基於模型的整形的约束 |
