TWI753585B - 一種視訊編解碼方法及裝置 - Google Patents
一種視訊編解碼方法及裝置 Download PDFInfo
- Publication number
- TWI753585B TWI753585B TW109133059A TW109133059A TWI753585B TW I753585 B TWI753585 B TW I753585B TW 109133059 A TW109133059 A TW 109133059A TW 109133059 A TW109133059 A TW 109133059A TW I753585 B TWI753585 B TW I753585B
- Authority
- TW
- Taiwan
- Prior art keywords
- scaling
- matrix
- list
- scaling matrix
- matrices
- Prior art date
Links
Images
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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/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
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/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/186—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 a colour or a chrominance component
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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/46—Embedding additional information in the video signal during the compression process
-
- 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/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本發明提供一種用於發送縮放矩陣以進行變換係數量化的方法。解碼器從位元流接收資料,該資料被解碼為視訊的當前圖像,該當前圖像藉由使用多個縮放矩陣來解碼。解碼器接收多個縮放矩陣的第一縮放矩陣的參考索引偏移。解碼器將參考索引偏移應用於第一索引,該第一索引被用於識別第一縮放矩陣以導出第二索引,該第二索引被用於識別多個縮放矩陣的第二縮放矩陣。第二縮放矩陣被預先重構。解碼器藉由參考第二縮放矩陣來重構第一縮放矩陣。解碼器藉由使用多個縮放矩陣對當前圖像的變換塊的變換係數進行去量化,並且藉由使用去量化的變換係數來對當前圖像進行重構。
Description
本公開總體上涉及視訊編解碼。具體的是,本公開涉及發送和處理量化矩陣的方法。
除非本文另外指出,否則本節中描述的方法不是下面列出的申請專利範圍的習知技術,並且不被包括在本節中而被承認為習知技術。
量化矩陣(quantization matrix,簡稱QM)已經在各種視訊編解碼標準中被使用。隱含殘差訊號的變換編解碼的基於塊的混合視訊編解碼方案使用頻率相關縮放來控制量化失真在變換單元(transform unit,簡稱TU)中跨不同頻率的分佈。為了在空間頻率上實現感知上均勻的量化,根據在其相關頻率範圍上的感知靈敏度,量化矩陣對與變換係數關聯的每個頻道進行加權,以使與變換塊中的較高頻率係數相比,變換塊中的較低頻率係數可以更細化的量化步長進行量化。在解碼器處,相應的量化矩陣對每個頻道的去量化變換係數進行反加權。量化矩陣已成功地用於各種視訊編解碼標準中,例如H.264/高級視訊編解碼(Advanced Video Coding,簡稱AVC)和H.265/高效視訊編解碼(High Efficiency Video Coding,簡稱HEVC)以及眾多商業產品,以提高視訊內容的主觀品質。
對於H.265/HEVC,根據變換塊的大小和類型,以下量化矩陣被支援。亮度:幀內4x4,幀間4x4,幀內8x8,幀間8x8,幀內16x16,幀間16x16,
幀內32x32,幀間32x32。Cb:幀內4x4,幀間4x4,幀內8x8,幀間8x8,幀內16x16,幀間16x16。Cr:幀內4x4,幀間4x4,幀內8x8,幀間8x8,幀內16x16,幀間16x16。
以下發明內容僅是說明性的,而無意於以任何方式進行限制。即,以下概述被提供以介紹本文所述的新穎和非顯而易見的技術的概念、重點、益處和優點。選擇而非全部實現在下面的詳細描述中進一步被描述。因此,以下發明內容既不旨在標識所要求保護的主題的必要特徵,也不旨在用於確定所要求保護的主題的範圍。
本公開的一些實施例提供了一種用於發送縮放矩陣以進行變換係數量化的方法。解碼器從待解碼的位元流中接收資料作為視訊的當前圖像,該當前圖像藉由使用多個縮放矩陣來解碼。解碼器接收用於多個縮放矩陣的第一縮放矩陣的參考索引偏移。解碼器將參考索引偏移應用於識別第一縮放矩陣的第一索引,以導出用於識別多個縮放矩陣的第二縮放矩陣的第二索引。第二縮放矩陣被預先重構。解碼器藉由參考第二縮放矩陣來重構第一縮放矩陣。解碼器藉由使用多個縮放矩陣對當前圖像的變換塊的變換係數進行去量化,並且藉由使用去量化的變換係數來重構當前圖像。
在一些實施例中,當位元流中的第一標誌指示第一縮放矩陣和第二縮放矩陣的對應元素相同時,藉由將第二縮放矩陣的元素複製為第一縮放矩陣的元素,第一縮放矩陣被確定。在一些實施例中,當位元流中的第一標誌指示第一縮放矩陣和第二縮放矩陣的多個對應元素不相同時,位元流中的第二標誌指示第一縮放矩陣是否藉由(i)將一組差量值添加於第二縮放矩陣的多個元素中作為第一縮放矩陣的多個元素來確定,或藉由(ii)在位元流中的顯式發送第一縮放矩陣的多個元素來確定。
在一些實施例中,根據一維索引方案,第一索引和第二索引分別被分配給第一縮放矩陣和第二縮放矩陣,其中該一維索引方案根據索引的顏色分量、塊大小和預測類型,將索引配置給縮放矩陣。在一些實施例中,根據一維索引方案,用於編解碼幀內預測類型的色度分量的2x2變換塊的縮放矩陣沒有被分配索引。在一些實施例中,當沒有其他縮放矩陣具有與先前發送的當前圖像的第一縮放矩陣相同的特定大小時,參考索引偏移不在位元流中發送,並且藉由參考默認量化矩陣,第一縮放矩陣被確定。在一些實施例中,當第一索引大於閾值時,縮放矩陣的塊大小是64。
在一些實施例中,位元流包括:第一語法元素,其指定第一縮放矩陣中的兩個連續縮放矩陣係數之間的差值;以及第二語法元素,其指定第一縮放矩陣的DC係數。第一和第二語法元素被限制在-128到127之間(包含-128和127)。
210:8x8量化矩陣
220:16x16量化矩陣
230:32x32量化矩陣
600:視訊編碼器
605:視訊源
608:減法器
610:變換模組
611:量化模組
612:量化係數
614:逆量化模組
615:逆變換模組
616:變換係數
617:重構像素資料
619:重構殘差
620:圖像內估計模組
625:圖像內預測模組
630:運動補償模組
640:幀間預測模組
645:環內濾波器
650:重構圖像緩衝器
665:MV緩衝器
675:MV預測模組
690:熵編碼器
695:位元流
710:縮放矩陣生成器
720:基本縮放矩陣
730:QM生成器
800:過程
810、820、830、840、850、860:步驟
900:視訊解碼器
910:逆變換模組
911:逆量化模組
912:量化係數
913:預測像素資料
916:變換係數
917:解碼像素資料
919:重構的殘差
925:圖像內預測模組
930:運動補償模組
940:幀間預測模組
950:解碼圖像緩衝器
955:顯示裝置
965:MV緩衝器
975:MV預測
990:解析器
995:位元流
1010:縮放矩陣生成器
1020:基本縮放矩陣
1030:QM生成器
1100:過程
1110、1120、1130、1140、1150、1160:步驟
1200:電子系統
1205:匯流排
1210:處理單元
1215:GPU
1220:系統記憶體
1225:網路
1230:唯讀記憶體
1235:永久存放裝置
1240:輸入裝置
1245:輸出裝置
下列圖示用以提供本發明的進一步理解,並被納入且構成本發明的一部分。這些圖示說明了本發明的實施方式,並與說明書一起用以解釋本發明的原理。為了清楚地說明本發明的概念,與實際實施方式中的尺寸相比一些元素可以不按照比例被示出,這些圖示無需按照比例繪製。
第1圖示出具有默认值的尺寸为4×4和8×8的默认量化矩阵的內容。
第2圖示出對基本縮放矩陣(8x8量化矩陣)進行上-採樣以得出較大塊的量化矩陣。
第3圖示出一維索引方案的示例,該一維索引方案被用於識別不同大小、不同顏色分量和不同預測模式的縮放矩陣。
第4圖示出一維索引方案,該一維索引方案被用於識別不同大小、不同顏色分量
和不同預測模式的縮放矩陣,其中2x2色度從一維縮放矩陣索引中被去除。
第5圖在概念上說明縮放矩陣(或縮放列表或量化矩陣),其藉由參考先前編解碼或發送的縮放矩陣來確定。
第6圖說明視訊編碼器的示例。
第7圖說明視訊編碼器視訊編碼器實施縮放矩陣的發送的部分。
第8圖在概念上說明發送縮放矩陣以編碼視訊圖像的過程。
第9圖說明視訊解碼器的示例。
第10圖說明視訊解碼器的處理縮放矩陣的發送的部分。
第11圖在概念上說明用於重構縮放矩陣以對視訊圖像進行解碼的過程。
第12圖在概念上說明實現本公開的一些實施例的電子系統。
在下面詳細的說明書中,為了透徹理解相關教示內容,藉由舉例的方式進行說明大量具體的細節。基於本文所描述的教示內容的任何改變、推導和/或拓展均在本發明的保護範圍內。在一些例子中,為了避免不必要地混淆本發明的教示內容的各方面,於此處所公開的一個或者多個示例性實施方式的已知的方法、程式、元件和/或電路是以相對上位的方式描述而無細節上描述。
I.量化矩陣
本公開的一些實施例提供了發送或表示量化矩陣的方法。量化矩陣用於實現頻率相關的縮放。因此,量化矩陣(quantization matrix,簡稱QM)也可被稱為縮放矩陣,縮放列表或縮放列表矩陣。對於HEVC,藉由在序列參數集合(sequence parameter set,簡稱SPS)中使用語法元素scaleing_list_enabled_flag,頻率相關的縮放被啟用。此標誌被啟用後,SPS和圖像參數集合(picture parameter set,簡稱PPS)中的其他標誌將控制使用默認量
化矩陣還是非默認量化矩陣。對於一些實施例,第1圖示出具有默認值的尺寸為4×4和8×8的默認量化矩陣的內容。在一些實施例中,非默認量化矩陣可選地在SPS或PPS中的位元流中傳輸。
為了減少存儲量化矩陣所需的記憶體,8×8矩陣被用來導出較大的變換塊(例如16x16、32x32、64x64等)的量化矩陣。因此,8×8默認量化矩陣被稱為基本縮放矩陣。例如,藉由使用複製進行上-採樣,大小為16x16和32x32的變換塊的量化矩陣從相同類型的8x8基本縮放矩陣中獲得。
第2圖示出對基本縮放矩陣(8×8量化矩陣)進行上-採樣以導出較大塊的量化矩陣。如圖所示,8x8量化矩陣210的1x1區域被上-採樣到16x16量化矩陣220中的2x2區域和32x32量化矩陣230中的4x4區域。
A小塊的量化矩陣
在一些實施例中,2x2TU的縮放列表被禁用。在一些實施例中,默認矩陣(即,平面矩陣)總是被用於2×2TU。在一些實施例中,用於2x2 TU的縮放列表可以從其他縮放列表(例如,用於4x4或8x8TU的縮放列表)導出。例如,藉由下-採樣,2x2的縮放列表可從4x4縮放列表中獲得,也可直接使用4x4縮放列表中左上的2x2。在上述情況下,2x2縮放列表不會被發送。
對於一些視訊編解碼標準,最小的色度CB為2x2。該最小的CB由子塊變換(sub-block transform,簡稱SBT)生成,並且可能導致較低的硬體處理輸送量。對於一些實施例,為了去除2×2塊,一些約束被應用於SBT。在一些實施例中,SBT的最大亮度CB大小被約束為例如64×64或32×32。在一些實施例中,對於小CB,僅當CB寬度或高度大於或等於8(例如,8×4亮度CB被允許用於SBT)時,SBT才被約束為啟用。當垂直分割被應用時,4x4亮度CB以及2x2色度CB被生成。在一些實施例中,對於小塊,僅當亮度CB寬度和高度均大於8時,SBT才可被應用。在一些實施例中,僅當亮度CB大小大於64時,SBT才可被應用。
在一些實施例中,如果在將SBT應用於一個CU後,TB大小變為4x4,則SBT被禁止。
在一實施例中,用於色度的2x2幀間縮放列表被發送,而用於色度的2x2幀內縮放列表不被發送。對於4x4到32x32的大小,幀間/幀內和亮度/色度的不同組合的縮放列表被發送。
B.縮放矩陣的一維索引
在一些實施例中,當發送縮放矩陣時,在二維方案中,矩陣大小的識別字(sizeId)和矩陣本身的識別字(matrixId)獨立地被發送。在一些其他實施例中,一維(one-dimensional,簡稱1D)索引方案用於指定縮放矩陣。例如,在一些實施例中,索引的線性序列被分配給不同類型的縮放矩陣,例如,從較小的TB大小到較大的TB大小。此外,對於每個TB大小,不同預測模式(例如,幀間模式、幀內模式、幀內塊複製模式等),不同顏色分量(Y,U,V)的縮放矩陣以交錯的順序被分配索引。
第3圖示出了用於識別不同大小、不同顏色分量和不同預測模式的縮放矩陣的示例性1D索引方案。在所示的1D索引方案中,對於sizeId=2的亮度塊,縮放矩陣沒有被編解碼。下面的表1示出了用於基於1D索引方案來發送視訊圖像或序列的縮放列表的示例語法。
根據1D索引方案,變量“scalingListId”是發送的縮放列表或縮放矩陣的索引(也被稱為當前或目標縮放列表或矩陣)。
語法元素scaling_list_copy_mode_flag[scalingListId]為1指定縮放列表的值與參考縮放列表的值相同。參考縮放列表是藉由使用語法元素scaling_list_pred_scaling_list_id_delta[scalingListId]來指定的。語法元素scaling_list_copy_mode_flag[scalingListId]為0指定縮放列表的值被顯示地發送。
語法元素scaling_list_prediction_mode_flag[scalingListId]為1指定可以從參考縮放列表中預測縮放列表的值。參考縮放列表由
scale_list_pred_scaling_list_id_delta[scaleListId]指定。語法元素scaling_list_prediction_mode_flag[scalingListId]為0指定縮放列表的值被顯示地發送。如果不存在,則scale_list_prediction_mode_flag[scalingListId]的值被推斷為等於0。
語法元素scaling_list_pred_scaling_list_id_delta[scalingListId]被用於指定或識別用於導出當前縮放列表ScalingList[scalingListId]的參考縮放列表。參考縮放列表的索引(表示為refScalingListId)使用當前縮放列表scalingListId和scaling_list_pred_scaling_list_id_delta的索引來導出。例如,參考縮放列表的索引可以根據以下方式設置:refScalingListId=scalingListId-scaling_list_pred_scaling_list_id_delta[scalingListId]。
換句話說,scaling_list_predi_scaling_list_id_delta[scalingListId]是從當前縮放列表的索引到參考縮放列表的索引的偏移。該偏移也被稱為當前縮放列表的參考索引偏移。
在一些實施例中,當scalingListId小於4時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值在0到scalingListId的範圍內,包括端值;當scalingListId在4至9的範圍內時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值在0至scalingListId-4的範圍內,包括端值;當scalingListId大於9時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值在0到scalingListId-10的範圍內,包括端值。
在一些實施例中,當scaling_list_copy_mode_flag[scalingListId]等於1時(或者當scaling_list_pred_mode_flag[scalilngListId]等於0時),ScalingMatrix[sizeId][matrixId][x][y]根據以下內容:
其中x=0..(1<<matrixSize)-1,y=0..(1<<matrixSize)-1,如果scaling_list_pred_scaling_list_id_delta[matrixId]等於0,則ScalingMatrix[sizeId][matrixId][x][y]被推斷為16。
否則,縮放列表ScalingMatrix[sizeId][matrixId][x][y]從參考縮放列表ScalingMatrix[refSizeId][refMatrxId][refMatrxId][x][y]被推斷(比如設置等於)。
在一些實施例中,具有與當前縮放矩陣不同的基本大小的縮放矩陣不能被用作參考縮放矩陣。例如,當當前縮放矩陣的scalingListId等於0、4或10(它們是每個基本大小中的第一縮放矩陣,如第3圖所示)時,默認量化矩陣(如第1圖所示))被推斷為參考矩陣,而語法元素scale_list_pred_scaling_list_id_delta被跳過。
此外,由於每個縮放列表矩陣僅被允許參考具有相同基本大小的矩陣,所以值約束可被應用於偏移scaling_list_pred_scaling_list_id_delta。例如,當scalingListId小於4時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值被約束在0到scalingListId的範圍內,包括端值。當scalingListId在4到9的範圍內時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值被約束在0到scalingListId-4的範圍內,包括端值。當scalingListId大於9時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值被約束在0到scalesListId-10的範圍內,包括端值。因此,例如,除了參考默認縮放列表之外,具有在大於9的範圍內的Id=13的縮放列表可以參考從Id=10到Id=12的先前解碼的縮放列表。
對於目標縮放列表索引(在1D方案中為scaleingListID),大小索引和矩陣索引(在2D方案中為sizeId和matrixId)可藉由查閱資料表或公式導出。sizeId和matrixId的值是基於表2的scalingListId導出的。refSizeId和refMatrixId的值也可使用表2基於refScalingListId來得出。
表3A示出了基於量化矩陣/縮放列表的大小的sizeId的規範。
表3B示出根據預測模式和顏色分量的matrixId規範。
語法元素scaling_list_dc_coef[scalingListId]+predDC指定ScalingFactorDC[sizeId][matrixId]的值(由scalingListId標識的縮放列表的DC值)。在一些實施例中,ScalingFactorDC[sizeId][matrixId]的值被約束在1至255的範圍內,包括端值。如果scaling_list_prediction_mode_flag[scalingListId]等於1,並且scaling_list_pred_scaling_list_id_delta[scalingListId]等於0,則predDC等於16;否則,如果scale_list_prediction_mode_flag[matrixId]等於1,則predDC等於ScalingMatrix[refSizeId][refMatrixId][0][0];否則,predDC等於8。如果scaling_list_copy_mode_flag[scalingListId]等於1,scaleingListId大於15,並且scaleing_list_pred_scaling_list_id_delta[scalingListId]等於0,則ScalingFactorDC[sizeId][matrixId]的值被設置為16。如果scaling_list_copy_mode_flag[scalingListId]等於1,scaleingListId大於15,並且scaleing_list_pred_scaling_list_id_delta[scalingListId]不等於0,則ScalingFactorDC[sizeId][matrixId]的值被設置為等於ScalingFactorDC[refSizeId][refMatrixId]。
當scaling_list_copy_mode_flag[scalingListId]等於0時,語法元素scaling_list_delta_coef指定當前矩陣係數ScalingList[scalingListId][i]和先前矩陣係數ScalingList[scalingListId][i-1]之間的差值。在一些實施例中,scaling_list_delta_coef的值必須被限制在-128到127範圍內,包括端值。ScalingList[scalingListId][i]的值應大於0。當scaling_list_copy_mode_flag[scalingListId]等於0並且scaleing_list_delta_coef不存在時,ScalingList[scalingListId][i]的值被推斷為0。
如果scaling_list_copy_mode_flag[scalingListId]等於0,則陣列ScalingMatrix[scalingListId](或ScalingMatrix[sizeId][matrixId])可推導如下:ScalingMatrix[sizeId][matrixId][i][j]=ScalingList[scalingListId][k]
+(scaling_list_prediction_mode_flag[scalingListId])?
((scaling_list_pred_scaling_list_id_delta[scalingListId]==0)?16:ScalingList[refScalingListId][i]):0
其中k=0..(matrixSize* matrixSize-1),i=diagScanOrder[sizeId][sizeId][k][0],以及j=diagScanOrder[sizeId][sizeId][k][1]。
當ChromaArrayType等於3時,大小為64x64的色度量化矩陣的元素(ScalingMatrix[6][6][matrixId][x][y],x=0..7,y=0..7,並且matrixId=1,2,4和5)可推導如下:ScalingMatrix[6][6][matrixId][x][y]=ScalingMatrix[5][5][matrixId][i][j]其中i=x以及j=y。
變量ScalingFactor是五維(five-dimensional)陣列。具體來說,ScalingFactor[wId][hId][matrixId][x][y]根據以下各項指定縮放因數陣列:(變量matrixId在表3B中指定的):對於x範圍從0到(1<<wId)-1,y範圍從0到(1<<hId)-1,wId=0..6,hId=0..6,ScalingFactor[wId][hId][matrixId][x][y]=ScalingMatrix[sizeLId][matrixId][i][j]
如果wId不等於hId,則sizeLId=max(wId,hId),i=(x<<(((sizeLId>3)?3:sizeLId)>>wId),j=(y<<(((sizeLId>3)?3:sizeLId)>>hId)
否則(wId等於hId),sizeLId=wId,i=x,j=y
如果max(wId,hId)大於3,則適用以下條件。
ScalingFactor[wId][hId][matrixId][0][0]=
ScalingFactorDC[max(wId,hId)][matrixId]
在一些實施例中,幀內2x2色度(縮放)矩陣可被刪除(從1D索引方案中)。第4圖示出用於識別不同大小,不同顏色分量和不同預測模式的縮放矩陣的1D索引方案,其中2×2色度被從1D縮放矩陣索引中刪除。如圖所示,第一索引(索引0)對應於2×2色度間分量的縮放列表,而2×2色度幀內分量從該索引方案中被省略。
下面的表4示出了當從1D索引方案中省略2x2內色度的縮放列表時發送視訊圖像或序列的縮放列表的語法。
當幀內2x2色度從1D索引方案中被刪除時,語法元素scale_list_pred_scaling_list_id_delta[scaledId]被定義且與幀內2x2色度在1D索引方案中時不同。具體地,當scalingListId小於2時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值在0到scalingListId的範圍內,包括端值。當scalingListId在2到7的範圍內時,scaling_list_pred_scaling_list_id_delta[scalingListId]的值在0到scalingListId-2的範圍內,包括端值。當scalingListId大於7時,scaling_list_pred_scaling_list_id_delta
[scalingListId]的值在0到scalingListId-8的範圍內,包括端值。
C.縮放列表預測子
一個值可被用來預測縮放列表中的第一係數(被稱為起點預測子)。在一實施例中,起點預測子可以是預定值,例如0、8或16。在另一實施例中,起點預測子可以是取決於矩陣預測模式的值,例如複製模式(正在發送的當前縮放矩陣與先前發送的縮放矩陣完全相同),DPCM模式(直接發送縮放列表中的每個係數)或預測子模式(先前發送的縮放列表被用作預測子或參考;預測子和當前縮放矩陣之間的差值,以及預測子的索引需要被發送)。在另一實施例中,起點預測子可以是取決於內部位元深度的值。在另一實施例中,起點預測子可是取決於顏色成分的值,例如,Y,Cb或Cr。在另一實施例中,起點預測子可是取決於預測模式的值,例如,幀間,幀內,IBC。
預測子模式(或矩陣預測模式)還可參考默認縮放列表(例如,第1圖的默認量化矩陣,或具有均勻或平坦值的矩陣)來執行預測。在一些實施例中,參考矩陣索引(在1D方案中用於辨識預測子/參考縮放矩陣的索引)可被用於指示默認縮放列表是否被用於預測當前縮放列表。如果參考矩陣索引等於當前矩陣索引(在1D方案中用於辨識當前縮放列表的索引),則默認縮放列表被用作預測子,以預測當前縮放列表。在一些實施例中,用於指示是否應用預測子模式的標誌可被省略。在一些實施例中,僅複製模式和預測子模式被用於對縮放列表進行編解碼或發送,並且參考矩陣索引被用於指示默認縮放列表是否被用於預測當前縮放列表。DPCM可被應用於對預測子(參考縮放矩陣)和當前縮放列表之間的差值進行編解碼或發送。
在表1和表4中,scaling_list_copy_mode_flag和scaleing_list_prediction_mode_flag(在下面的表6中,scaleing_list_pred_mode_flag和scaleing_list_predictor_mode_flag)被用於指示當前縮放矩陣是否從參考縮放矩
陣複製,或者當前縮放矩陣是否可從具有額外的元素間(element-to-element)差值的先前解碼的或默認的參考縮放矩陣中預測。如果當前縮放矩陣是從已經發送或編解碼的參考縮放矩陣複製或預測的,則語法元素scaled_list_pred_scaling_list_id_delta被發送以指示哪個縮放矩陣被使用。
在一些實施例中,大於閾值或小於閾值的scalingListId指示當前縮放列表是相對於64x64/64xN/Nx64塊大小的。在一些實施例中,閾值為27。在一些實施例中,閾值為23。在一些實施例中,由於係數歸零,當前縮放列表的右下-採樣未被發送。
D.替代缩放列表語法
在一些實施例中,不同的語法元素集合被用來發送1D索引方案中的縮放列表(縮放矩陣或量化矩陣)。例如,語法元素“scaling_list_copy_mode_flag”可以由“scaling_list_pred_mode_flag”代替,以發送當前縮放列表的值是否與參考縮放列表的值相同;語法元素“scaling_list_prediction_mode_flag”可由“scaling_list_predictor_mode_flag”代替,以發送當前縮放列表的值是從參考縮放列表中預測還是顯示地發出。下面的表6示出語法的示例,該語法使用替代語法基於1D索引方案發送視訊圖像或序列的縮放列表。
語法元素scaling_list_pred_mode_flag[scalingListId]為0指示縮放列表的值與參考縮放列表的值相同。參考縮放列表由scale_list_pred_scaling_list_id_delta[scaleListId]指定。語法元素scaling_list_pred_mode_flag[scalingListId]為1表示縮放列表的值被顯示地發送。
語法元素scaling_list_predictor_mode_flag[scalingListId]為1表示縮放列表的值可從由scaling_list_pred_scaling_list_id_delta[scalingListId]指定的參考縮放列表中預測。語法元素scale_list_predictor_mode_flag[scaleingListId]為0表示縮放列表的值被顯式地發送。如果不存在,則scale_list_predictor_mode_flag
[scaleingListId]的值被推斷為等於0。
語法元素scaling_list_dc_coef_minus8[scalingListId]加8+predDC指定了待確定的當前縮放列表的DC值,表示為ScalingFactorDC[sizeId][matrixId]或ScalingFactorDC[scalingListId]。在一些實施例中,scaling_list_dc_coef_minus8[scalingListId]的值被約束在-7到247的範圍內,包括端值。如果scaling_list_predictor_mode_flag[scalingListId]等於1,並且scaling_list_pred_scaling_list_id_delta[scalingListId]等於0,則predDC等於16;否則,如果scale_list_predictor_mode_flag[matrixId]等於1,則predDC等於ScalingMatrix[refSizeId][refMatrixId][0][0];否則predDC等於0。如果scaling_list_pred_mode_flag[scalingListId]等於0,scaleingListId大於15,並且scaling_list_pred_scaling_list_id_delta[scalingListId]等於0,則ScalingFactorDC[sizeId][matrixId]的值被設置為16。否則,如果scaling_list_pred_mode_flag[scalingListId]等於0,scaleingListId大於15,並且scaleing_list_pred_scaling_list_id_delta[scaleListId]不等於0,則ScalingFactorDC[sizeId]的值][matrixId]被設置為等於ScalingFactorDC[refSizeId][refMatrixId]。
當scaling_list_pred_mode_flag[scalingListId]等於1時,語法元素scaling_list_delta_coef指定當前矩陣係數ScalingList[scalingListId][i]與先前矩陣係數ScalingList[scalingListId][i-1]之間的差值。scale_list_delta_coef的值被約束在-128到127範圍內,包含端點。ScalingList[scalingListId][i]的值大於0。當scaling_list_pred_mode_flag[scalingListId]等於1並且scaleing_list_delta_coef不存在時,ScalingList[scalingListId][i]的值被推斷為0。
如果scaling_list_pred_mode_flag[scalingListId]等於1,則陣列ScalingMatrix[scalingListId]可推導如下:ScalingMatrix[sizeId][matrixId][i][j]=ScalingList[scalingListId][k]+
(scaling_list_predictor_mode_flag[scalingListId])?
((scaling_list_pred_scaling_list_id_delta[scalingListId]==0)?16:ScalingList[refScalingListId][i]):0
其中k=0..coefNum_1,i=diagScanOrder[log2(coefNum)/2][log2(coefNum)/2][k][0],以及j=diagScanOrder[log2(coefNum)/2][log2(coefNum)/2][k][1]
在一些實施例中,當ChromaArrayType等於3時,大小為64x64的色度量化矩陣的元素,ScalingFactor[6][6][matrixId][x][y],x=0..63,y=0..63,並且matrixId=1,2,4和5的推導如下:ScalingFactor[6][6][matrixId][x][y]=ScalingFactor[5][5][matrixId][i][j],其中i=x和j=y。
表7示出用於基於1D索引方案發送視訊圖像或序列的縮放列表的另一種替代語法,其中語法元素“scalingListId”被簡稱為“id”,並且定義用於縮放列表索引的範圍被修改。
語法元素scale_matrix_for_lfnst_disabled_flag為1指示縮放矩陣不被應用於以LFNST編解碼的塊,為0指示縮放矩陣可被應用於以LFNST編解碼的塊。
語法元素scale_list_copy_mode_flag[id]為1指示縮放列表的值與參考縮放列表的值相同。參考縮放列表由scale_list_pred_id_delta[id]指定。語法元素scale_list_copy_mode_flag[id]為0指示存在scale_list_pred_mode_flag。
語法元素scale_list_pred_mode_flag[id]為1指示可以從參考縮放列表中預測縮放列表的值。參考縮放列表由scale_list_pred_id_delta[id]指定。scale_list_pred_mode_flag[id]為0指示縮放列表的值被顯式地發送。如果不存在,則scale_list_pred_mode_flag[id]的值被推斷為等於0。
語法元素scaling_list_pred_id_delta[id]指定用於導出預測縮放矩陣ScalingMatrixPred[id]的參考縮放列表。如果不存在,則scaling_list_pred_id_delta[id]被推斷為0。scaling_list_pred_id_delta[id]的值被約束在0到maxIdDelta的範圍
內,其中maxIdDelta取決於id,如下所示:maxIdDelta=(id<2)?id:((id<8)?(id-2):(id-8))。
變量refId和matrixSize可導出如下:refId=id-scale_list_pred_id_delta[id]
matrixSize=(id<2)?2:((id<8)?4:8)。
(matrixSize)x(matrixSize)陣列ScalingMatrixPred[x][y],其中x=0..matrixSize-1,y=0..matrixSize-1。
變量ScalingMatrixDCPred的導出方式如下:當scaling_list_copy_mode_flag[id]和scaling_list_pred_mode_flag[id]都等於0時,ScalingMatrixPred的所有元素均被設置為8,而ScalingMatrixDCPred的值被設置為8。否則,當scaling_list_pred_id_delta[id]等於0,ScalingMatrixPred的所有元素均被設置為16,以及ScalingMatrixDCPred被設置為16。否則(scaling_list_copy_mode_flag[id]或scaling_list_pred_mode_flag[id]等於1且scale_list_pred_id_delta[id]大於0),ScalingMatrixPred被設置為等於ScalingMatrix[refId]。如果refId大於13,則ScalingMatrixDCPred被設置為等於ScalingMatrixDC[refId-14]。否則(refId小於或等於13),ScalingMatrixDCPred被設置為等於ScalingMatrixPred[0][0]。
當id大於13時,語法元素scaling_list_dc_coef[id-14]被用於導出變量ScalingMatrixDC[id-14]的值:ScalingMatrixDC[id-14]=ScalingMatrixDCPred+scaling_list_dc_coef[id-14]+256,或ScalingMatrixDC[id-14]=(ScalingMatrixDCPred+scaling_list_dc_coef[id-14]+256)%256
在一些實施例中,scaling_list_dc_coef[id-14]的值被約束在-254至
254的範圍內,包括端值。如果不存在,則scale_list_dc_coef[id-14]的值被推斷為等於0。在一些實施例中,ScalingMatrixDC[id-14]的值被約束在1至255的範圍內,包括端值。在另一些實施例中,scaling_list_dc_coef[id-14]的值被約束在-128至-127的範圍內,包括端值。如果不存在,則scale_list_dc_coef[id-14]的值被推斷為等於0。在一些實施例中,ScalingMatrixDC[id-14]的值被約束為大於0。
當scaling_list_copy_mode_flag[id]等於0時,語法元素scaling_list_delta_coef指定當前矩陣係數ScalingList[id][i]和先前矩陣係數ScalingList[id][i-1]之間的差值。在一些實施例中,scaling_list_delta_coef的值被約束在-511至511的範圍內,包括端值。在一些實施例中,scaling_list_delta_coef的值被約束在-128至127的範圍內,包括端值。當scaling_list_copy_mode_flag[id]等於1時,ScalingList[id]的所有元素都被設置為等於0。
ScalingMatrix[id]是一(matrixSize)x(matrixSize)陣列,可導出如下:ScalingMatrix[id][x][y]=ScalingMatrixPred[x][y]+ScalingList[id][k],其中k=0..(matrixSize * matrixSize-1),或ScalingMatrix[id][x][y]=(ScalingMatrixPred[x][y]+ScalingList[id][k]+256)%256,其中k=0..(matrixSize * matrixSize-1),x=DiagScanOrder[Log2(matrixSize)][Log2(matrixSize)][k][0],y=DiagScanOrder[Log2(matrixSize)][Log2(matrixSize)][k][1],ScalingMatrix[id][x][y]的值應在1到255之間的範圍內(包括1和255)。在一些其他實施例中,ScalingMatrix[id][x][y]的值應大於零。
在一些實施例中,如果scaling_list_delta_coef和scaling_list_dc_coef被作為預測子和原始資料之間的差值發送,則基於預測子的位元深度或預定義的範圍(例如,[-255,255],[-254,254],[-128,128],[-255,254],[-512,
511]或[-511,511],scaling_list_delta_coef和scaling_list_dc_coef的範圍可被指定。在一些實施例中,scaling_list_delta_coef和scaling_list_dc_coef的範圍可藉由模數運算來約束。例如,如果預測子的值為8,則scale_list_delta_coef和scale_list_dc_coef的範圍被設置為[-7,247];否則,如果預測子的值為16,則scale_list_delta_coef和scale_list_dc_coef的範圍被設置為[-15,239];否則,如果預測子的值的位元深度為8位,則scale_list_delta_coef和scale_list_dc_coef的範圍設置為[-512,511]。
在一些實施例中,scaling_list_delta_coef和scaling_list_dc_coef的預定義範圍可被用於導出最終縮放矩陣係數的範圍。在一些實施例中,scaling_list_delta_coef和scaling_list_dc_coef的範圍可以在序列級別,圖像級別或片段級別被顯式地發送給解碼器。在一些實施例中,與預定義範圍(比如8位元,10位元或內部位元深度)相比,如果最終縮放矩陣中的係數溢出,在發送之前溢出係數被設置為預定義的默認值,例如16,8。在一些實施例中,與預定義範圍(比如8位元,10位元或內部位元深度)相比,如果最終縮放矩陣中的係數溢出,在發送之前相應的縮放矩陣將被設置為具有預定默認值(例如16,8)的全平面縮放矩陣。
在一些實施例中,如果scaling_list_delta_coef和scaling_list_dc_coef被作為預測子和原始資料之間的差值發送,則scaleing_list_delta_coef和scaling_list_dc_coef的範圍可進一步被限制在預定義範圍內,例如[-255,255],[-254,254],[-127,127],[-128,127],[-256,255],[-512,511]或[-511,511]。在一些實施例中,scaling_list_delta_coef和scaling_list_dc_coef的範圍可藉由模數運算來約束。在一些實施例中,中間參數的範圍,例如nextCoef,可進一步藉由模數運算(例如,模數為256)來約束,以確保最終縮放矩陣係數的位元深度在預定義範圍內。在一些實施例中,scaling_list_delta_coef,scaling_list_dc_coef和
nextCoef的範圍可藉由模數運算(例如,模數為256)來約束。這樣,已發送的scaling_list_delta_coef和scaling_list_dc_coef被約束在較小的範圍內,例如[-128,127][-127,127]。在一些實施例中,scaling_list_delta_coef和scaling_list_dc_coef的預定義範圍或中間參數,例如nextCoei可被用於導出最終縮放矩陣係數的位元深度。
E.發送縮放矩陣
第5圖在概念上示出了縮放矩陣(或縮放列表或量化矩陣),其藉由參考先前編解碼或已發送的縮放矩陣來確定。該圖示出了被用於量化或解量化視訊圖像的變換係數的示例縮放矩陣QM0至QM27。不同的縮放矩陣被指定用於不同類型的變換塊,例如,不同的塊大小(2,4,8,16,32,64),不同的顏色分量(亮度和色度)和/或不同的預測模式(幀間/幀內)。
縮放矩陣QM0至QM27也被稱為基本或基本縮放矩陣,因為它們在位元流中發送,並被用作導出用於對變換塊進行量化或反量化的實際量化矩陣的基礎(例如,藉由上-採樣或下-採樣)。
該圖示出了縮放矩陣QM0至QM27的發送。編碼器提供對位元流中的縮放矩陣QM0到QM27進行編碼的訊號。解碼器從位元流接收訊號,並基於接收到的訊號重構每個縮放矩陣。在該示例中,縮放矩陣QM0至QM15已經被發送或重構,而縮放矩陣QM16至QM27尚未被發送或被重構。
視訊編碼器(或解碼器)可藉由將先前發送的(或重構的)的縮放矩陣作為預測子來發送(或解碼器可重構)縮放矩陣的內容。在該示例中,視訊編碼器(或解碼器)藉由參考縮放矩陣QM14的內容來發送(或解碼器可重構)縮放矩陣QM16的內容。在一些實施例中,縮放矩陣QM14是縮放矩陣QM16的理想預測子,使得視訊編碼器(或解碼器)可藉由複製或重複QM14的元素而不使用差量值來發送(或者視訊解碼器可重構)QM16。如果QM14並不是QM16
的理想預測子,則視訊編碼器可能會在QM14和QM16的相應元素之間發送其他差量值。
在一些實施例中,解碼器可藉由將參考索引偏移應用於正在重構的縮放矩陣的索引來識別參考或預測子縮放矩陣。參考索引偏移可以是位元流中的語法元素(例如,scaling_list_pred_scaling_list_id_delta)。在第5圖的示例中,正在重構的縮放矩陣的索引是16(QM16),並且正在參考的縮放矩陣的索引是14(QM14)。對於QM16,參考索引偏移的值為“2”,該值被用於從QM16的索引中導出QM14的索引。
在此示例中,參考縮放矩陣QM14具有與待編碼的縮放矩陣QM16相同的大小。在一些實施例中,當參考先前編解碼或發送的縮放矩陣作為用於確定當前待編碼的縮放矩陣的預測子時,所引用的縮放矩陣必須與當前縮放矩陣具有相同的大小。因此,對於第5圖的例子,QM16可參考QM15和QM14(大小16x16),但不能參考QM13(大小8x8)。此外,當根據1D索引方案發送第一待發送的縮放矩陣時(例如,QM14是待發送的大小為16x16的第一縮放矩陣),先前編解碼的縮放矩陣(例如QM13)不能被用作參考(因為它們有不同大小),以及參考索引偏移始終為0。
任一上述提出的方法可以各種硬體,編碼器和/或解碼器的軟體或它們的組合來實現。例如,本發明的實施例可以是集成到視訊壓縮晶片中的一個或多個電路或集成到視訊壓縮軟體中的程式碼以執行本文所述的處理。例如,任一提出的方法可被實現為耦合到編碼器的量化模組和逆量化模組的電路,並且可被實現為耦合到解碼器的逆量化模組的電路。在一實施例中,任一所提出的方法都可在編碼器的量化模組和逆量化模組中實現,並且可以在解碼器的逆量化模組中實現。
II.視訊編碼器的示例
第6圖示出示例性視訊編碼器600。如圖所示,視訊編碼器600從視訊源605接收輸入視訊訊號,並將該訊號編碼為位元流695。視訊編碼器600具有用於對來自視訊源605的訊號進行編碼的若干元件或模組,至少包括從變換模組610,量化模組611,逆量化模組614,逆變換模組615,圖像內估計模組620,圖像內預測模組625,運動補償模組630,運動估計模組635,環內濾波器645,重構圖像緩衝器650,MV緩衝器665和MV預測模組675以及熵編碼器690中選擇的一些元件。運動補償模組630和運動估計模組635是幀間預測模組640的一部分。
在一些實施例中,模組610-690是由計算設備或電子裝置的一個或多個處理單元(例如,處理器)執行的軟體指令的模組。在一些實施例中,模組610-690是由電子裝置的一個或多個積體電路(integrated circuit,簡稱IC)實現的硬體電路的模組。儘管模組610-690被示為單獨的模組,但是其中一些模組可被組合成單個模組。
視訊源605提供原始視訊訊號,該原始視訊訊號無需壓縮即可呈現每個視訊幀的像素資料。減法器608計算視訊源605的原始視訊像素資料與來自運動補償模組630或圖像內預測模組625的預測像素資料613之間的差值。變換模組610轉換該差值(或殘差像素資料或殘差訊號609)為變換係數(例如,藉由執行離散余弦變換或DCT(Discrete Cosine Transform,簡稱))。量化模組611將變換係數量化為量化資料(或量化係數)612,該量化資料由熵編碼器690編碼為位元流695。
逆量化模組614對量化資料(或量化係數)612進行去量化以獲得變換係數,並且逆變換模組615對變換係數執行逆變換以產生重構殘差619。重構殘差619被添加至預測像素資料613以產生重構像素資料617。在一些實施例中,重構像素資料617被臨時存儲在用於圖像內預測和空間MV預測的行緩衝器(未示出)中。重構像素由環內濾波器645濾波,並存儲在重構圖像緩衝器650
中。在一些實施例中,重構圖像緩衝器650是視訊編碼器600外部的記憶體。在一些實施例中,重構圖像緩衝器650是視訊編碼器600的內部記憶體。
圖像內估計模組620基於重構的像素資料617執行幀內預測以產生幀內預測資料。幀內預測資料被提供給熵編碼器690以被編碼為位元流695。幀內預測資料還被圖像內預測模組625用來生成預測像素資料613。
運動估計模組635藉由產生MV以參考存儲在重構圖像緩衝器650中的先前解碼的幀的像素資料執行幀間預測。這些MV被提供給運動補償模組630以產生預測像素資料。
代替在位元流中編碼完整的實際MV,視訊編碼器600使用MV預測來生成預測MV,並且用於運動補償的MV與預測MV之間的差值被編碼為殘差運動資料並存儲在位元流695中。
基於為了對先前的視訊幀進行編碼而生成的參考MV(即,用於執行運動補償的運動補償MV),MV預測模組675生成預測MV 。MV預測模組675從MV緩衝器665中的先前視訊幀檢索參考MV。視訊編碼器600將當前視訊幀的MV存儲在MV緩衝器665中,作為用於生成預測MV的參考MV。
MV預測模組675使用參考MV來創建預測的MV。藉由空間MV預測或時間MV預測,預測的MV被計算。藉由熵編碼器690,當前幀(殘差運動資料)的預測MV和運動補償MV(MC MV)之間的差值被編碼到位元流695中。
藉由使用諸如上下文適應性二進位算術編解碼(contex-adaptive binary arithmetic coding,簡稱CABAC)或霍夫曼編碼(Huffman encoding)的熵編碼技術,熵編碼器690將各種參數和資料編碼到位元流695中。熵編碼器690將各種報頭元素,標誌以及量化的變換係數612和殘差運動資料作為語法元素編碼到位流695中。位元流695又被存儲在存放裝置中,或藉由通訊媒介(例如網路)發送到解碼器。
環內濾波器645對重構的像素資料617執行濾波或平滑操作,以減少編解碼的偽像,特別是在像素塊的邊界處。在一些實施例中,執行的濾波操作包括樣本適應性偏移(sample adaptive offset,SAO)。在一些實施例中,濾波操作包括適應性環路濾波器(adaptive loop filter,簡稱ALF)。
第7圖說明視訊編碼器600的實施縮放矩陣的發送的部分。如圖所示,量化模組611使用量化矩陣來量化變換係數616。量化矩陣由量化矩陣生成器730提供。基於基本縮放矩陣集合720,量化矩陣生成器730生成當前變換塊的量化矩陣,例如,藉由選擇基本縮放矩陣並對所選擇的基本縮放矩陣執行下-採樣或上-採樣以生成與當前變換塊的大小匹配的量化矩陣。
基本縮放矩陣集合720由縮放矩陣生成器710對當前圖像或當前圖像序列,相對於不同大小,不同顏色分量和不同預測模式的變換塊來確定或構建的。縮放矩陣生成器710還向熵編碼器690提供可用於構建縮放矩陣的訊號,以將其包括在位元流695中。
縮放矩陣生成器710生成基本縮放矩陣集合720。縮放矩陣生成器710在生成縮放矩陣的係數時可以參考默認縮放矩陣。縮放矩陣生成器710還可藉由預測或複製來生成縮放矩陣。具體地,縮放矩陣生成器710可藉由向熵編碼器690提供參考索引偏移(例如,scale_list_pred_scald_scaling_list_id_delta)來發送參考縮放矩陣(或預測子,例如,第5圖中參考QM14的QM16),參考索引偏移可被用於辨識先前編解碼或發送的縮放矩陣作為該參考或預測子縮放矩陣。縮放矩陣生成器710還可將指示預測子縮放矩陣是將被複製還是被用作預測的基礎的標誌,以及預測子縮放矩陣與當前縮放矩陣之間的差量值,提供給熵編碼器690。
第8圖概念性地示出發送用於對視訊圖像進行編碼的縮放矩陣的過程800。在一些實施例中,計算設備的一個或多個處理單元(例如,處理器)
實現了編碼器600,其藉由執行存儲在電腦可讀介質中的指令來執行過程800。在一些實施例中,實現編碼器600的電子設備執行過程800。
在塊810處,編碼器從位元流接收資料,該資料將被編碼為視訊的當前圖像。當前圖像將藉由使用多個縮放矩陣進行編碼。
在塊820處,編碼器藉由參考先前發送的多個縮放矩陣的第二縮放矩陣來發送多個縮放矩陣的第一縮放矩陣。在一些實施例中,當位元流中的第一標誌(例如,scaling_list_copy_mode_flag)指示第一縮放矩陣和第二縮放矩陣的對應元素相同時,藉由將第二縮放矩陣的元素複製為第一縮放矩陣的元素,第一縮放矩陣被確定。在一些實施例中,當位元流中的第一標誌指示第一縮放矩陣和第二縮放矩陣的多個對應元素不相同時,位元流中的第二標誌(例如,scaleing_list_prediction_mode_flag)指示第一縮放矩陣是否藉由(i)將一組差量值加到第二縮放矩陣的多個元素作為第一縮放矩陣的多個元素來確定,或者藉由(ii)在位元流中的顯式發送第一縮放矩陣的多個元素來確定。
在塊830處,編碼器確定辨識第一縮放矩陣的第一索引和辨識第二縮放矩陣的第二索引之間的參考索引偏移(例如,scaling_list_pred_scaling_list_id_delta)。在塊840處,編碼器發送確定的參考索引偏移。在一些實施例中,根據一維索引方案,第一索引和第二索引分別被分配給第一縮放矩陣和第二縮放矩陣,該一維索引方案根據索引的顏色分量,塊大小和預測類型將索引配置給縮放矩陣。在一些實施例中,根據一維索引方案,用於編解碼幀內預測類型的色度分量的2x2變換塊的縮放矩陣沒有被分配索引。在一些實施例中,當沒有其他縮放矩陣具有與先前編解碼的當前圖像的第一縮放矩陣相同的特定大小時(例如,當在第3圖的方案中第一縮放矩陣的索引為0、4或10時或在第4圖的方案中第一縮放矩陣的索引為2、8、14時),參考索引偏移沒有在位元流中發送,並且第一縮放矩陣藉由參考默認量化矩陣來確
定。在一些實施例中,當第一索引大於閾值時,縮放矩陣的塊大小是64。
在塊850處,編碼器對當前圖像進行編碼作為變換塊的變換係數。在塊860處,編碼器藉由使用多個縮放矩陣來量化變換係數。
在一些實施例中,位元流包括:第一語法元素(例如,scaling_list_delta_coef),其指定第一縮放矩陣中的兩個連續的縮放矩陣係數之間的差值;以及第二語法元素(例如,scaling_list_dc_coef),其指定第一縮放矩陣中的DC係數。第一和第二語法元素被約束在-128到127的範圍內,包括端值。
III.視訊解碼器示例
第9圖示出示例視訊解碼器900。如圖所示,視訊解碼器900是圖像解碼或視訊解碼電路,其接收位元流995並將位元流的內容解碼為視訊幀的像素資料以供顯示。視訊解碼器900具有用於解碼位元流995的若干元件或模組,包括選自逆量化模組911,逆變換模組910,圖像內預測模組925,運動補償模組930,環內濾波器945,解碼圖像緩衝器950,MV緩衝器965,MV預測模組975和解析器990中的一些元件。運動補償模組930是幀間預測模組940的一部分。
在一些實施例中,模組910-990是由計算設備的一個或多個處理單元(例如,處理器)執行的軟體指令的模組。在一些實施例中,模組910-990是由電子裝置的一個或多個IC實現的硬體電路的模組。儘管模組910-990被圖示為單獨的模組,但是一些模組可以組合成單個模組。
解析器990(或熵解碼器)接收位元流995,並根據由視訊編解碼或圖像編解碼標準定義的語法執行初始解析。解析的語法元素包括各種報頭元素,標誌以及量化的資料(或量化的係數)912。解析器990藉由使用諸如上下文適應性二進位算術編解碼(context-adaptive binary arithmetic coding,簡稱CABAC)或霍夫曼編碼的熵編碼技術來解析各種語法元素。
逆量化模組911對量化資料(或量化係數)912進行去量化以獲得
變換係數,並且逆變換模組910對變換係數916執行逆變換以產生重構殘差訊號919。重構殘差訊號919與來自圖像內預測模組925或運動補償模組930的預測像素資料913相加,以產生解碼像素資料917。解碼像素資料由環內濾波器945濾波並被存儲在解碼圖像緩衝器950中。在一些實施例中,解碼圖像緩衝器950是視訊解碼器900外部的記憶體。在一些實施例中,解碼圖像緩衝器950是視訊解碼器900內部的記憶體。
圖像內預測模組925從位元流995接收幀內預測資料,並據此從存儲在解碼圖像緩衝器950中的解碼像素資料917中生成預測像素資料913。在一些實施例中,解碼像素資料917還被存儲在用於圖像內預測和空間MV預測的行緩衝器(未示出)中。
在一些實施例中,解碼圖像緩衝器950的內容被用於顯示。顯示裝置955或者檢索解碼圖像緩衝器950的內容以直接顯示,或者將解碼圖像緩衝器950的內容檢索到顯示緩衝器。在一些實施例中,顯示設備藉由像素傳輸從解碼圖像緩衝器950接收像素值。
根據運動補償MV(MC MV),運動補償模組930從存儲在解碼圖像緩衝器950中的解碼像素資料917中生成預測像素資料913。藉由將從位元流995接收到的殘差運動資料與從MV預測模組975接收到的預測MV相加,這些運動補償MV被解碼。
基於以解碼先前的視訊幀而生成的參考MV(例如,用於執行運動補償的運動補償MV),MV預測模組975生成預測的MV。MV預測模組975從MV緩衝器965檢索先前視訊幀的參考MV。視訊解碼器900將以解碼當前視訊幀而生成的運動補償MV存儲在MV緩衝器965中,作為用於產生預測MV的參考MV。
環內濾波器945對解碼的像素資料917執行濾波或平滑操作,以減少編碼的偽像,特別是在像素塊的邊界處。在一些實施例中,執行的濾波操作
包括樣本適應性偏移(sample adaptive offset,簡稱SAO)。在一些實施例中,濾波操作包括適應性環路濾波器(adaptive loop filter,簡稱ALF)。
第10圖說明視訊解碼器900的處理縮放矩陣的發送的部分。如圖所示,去量化模組911使用量化矩陣來對變換係數916進行去量化。量化矩陣由量化矩陣生成器1030提供。基於基本縮放矩陣集合1020,量化矩陣生成器1030生成當前變換塊的量化矩陣,例如,藉由選擇基本縮放矩陣並在所選擇的基本縮放矩陣上執行下-採樣或上-採樣以生成與當前變換塊的大小匹配的量化矩陣。
基本縮放矩陣集合由縮放矩陣生成器1010確定或構建用於當前圖像或圖像的當前序列的不同大小、不同顏色分量和不同預測模式的變換塊。縮放矩陣生成器1010從位元流995接收與由熵解碼器990解析的縮放矩陣有關的訊號。
縮放矩陣生成器1010生成縮放矩陣1020。縮放矩陣生成器1010在生成縮放矩陣的係數時可參考默認縮放矩陣。縮放矩陣生成器1010還可藉由預測或複製來產生縮放矩陣。具體地,縮放矩陣生成器1010可藉由從熵解碼器990接收參考索引偏移(例如,scale_list_pred_scald_scaling_list_id_delta)來識別參考縮放矩陣(或預測子,例如,第5圖中參考QM14的QM16),該參考索引偏移可辨識先前編解碼或發送的縮放矩陣作為參考或預測縮放矩陣。矩陣生成器1090還可從熵解碼器990接收標誌以及預測子縮放矩陣與當前縮放矩陣之間的差量值,該標誌指示預測子縮放矩陣是將被複製還是被用作預測的基礎。
第11圖概念性地示出了用於重構縮放矩陣以對視訊圖像進行解碼的過程1100。在一些實施例中,計算設備的一個或多個處理單元(例如,處理器)實現了解碼器900,其藉由執行存儲在電腦可讀介質中的指令來執行過程1100。在一些實施例中,實現解碼器900的電子設備執行過程1100。
在塊1110處,解碼器從位元流資料,該資料將被解碼為視訊的當
前圖像。當前圖像將藉由使用多個縮放矩陣進行解碼。
在塊1120處,解碼器接收多個縮放矩陣的第一縮放矩陣的參考索引偏移(例如,scaling_list_pred_scaling_list_id_delta)。在塊1130處,解碼器將參考索引偏移應用於識別第一縮放矩陣的第一索引,以導出識別多個縮放矩陣的第二縮放矩陣的第二索引。第二縮放矩陣被預先重構。在一些實施例中,根據一維索引方案,第一索引和第二索引被配置給第一縮放矩陣和第二縮放矩陣,所述一維索引方案根據索引的顏色分量、塊大小和預測類型將索引配置給縮放矩陣。在一些實施例中,根據一維索引方案,用於編解碼幀內預測類型的色度分量的2x2變換塊的縮放矩陣沒有被分配索引。在一些實施例中,當沒有其他縮放矩陣具有與先前發送的當前圖像的第一縮放矩陣相同的特定大小時(例如,當在第3圖的方案中第一縮放矩陣的索引為0、4或10時或在第4圖的方案中第一縮放矩陣的索引為2、8、14時),參考索引偏移沒有在位元流中發送,並且第一縮放矩陣藉由參考默認量化矩陣來確定。在一些實施例中,當第一索引大於閾值時,縮放矩陣的塊大小是64。
在塊1140,解碼器藉由參考第二縮放矩陣來重構第一縮放矩陣。在一些實施例中,當位元流中的第一標誌(例如,scaling_list_copy_mode_flag)指示第一縮放矩陣和第二縮放矩陣的對應元素相同時,藉由將第二縮放矩陣的元素複製為第一縮放矩陣的元素,第一縮放矩陣被確定。在一些實施例中,當位元流中的第一標誌指示第一縮放矩陣和第二縮放矩陣的多個對應元素不相同時,位元流中的第二標誌(例如,scaleing_list_prediction_mode_flag)指示第一縮放矩陣藉由(i)將一組差量值添加到第二縮放矩陣的多個元素作為第一縮放矩陣的多個元素來確定,或者藉由(ii)在位元流中的顯式發送第一縮放矩陣的多個元素來確定。
在塊1150處,解碼器藉由使用多個縮放矩陣對當前圖像的變換塊
的變換係數進行去量化。在塊1160處,解碼器藉由使用去量化的變換係數來重構當前圖像。
在一些實施例中,位元流包括:第一語法元素(例如,scaling_list_delta_coef),其指定第一縮放矩陣中的兩個連續的縮放矩陣係數之間的差值;以及第二語法元素(例如,scaling_list_dc_coef),其指定所述第一縮放矩陣的DC係數。第一和第二語法元素被約束在-128到127的範圍內,包含端點。
IV.電子系統示例
許多上述特徵和應用被實現為被指定為記錄在電腦可讀存儲介質(也稱為電腦可讀介質)上的一組指令的軟體過程。當這些指令由一個或多個計算或處理單元(例如,一個或多個處理器,處理器的核心或其他處理單元)執行時,他們使處理單元執行指令中指示的動作。電腦可讀介質的示例包括但不限於唯讀光碟驅動器(compact disc read-only memory,簡稱CD-ROM),快閃記憶體驅動器,隨機存取記憶體(random-access memory,簡稱RAM)晶片,硬碟驅動器,可擦可程式設計唯讀記憶體(erasable programmable read only memory,簡稱EPROM),電可擦可程式設計唯讀記憶體(electrically erasable programmable read-only menory,簡稱EEPROM)等。電腦可讀介質不包括無線或藉由有線連接傳遞的載波和電訊號。
在本說明書中,術語“軟體”意味著包括唯讀記憶體中的韌體或者存儲在磁存儲裝置中的應用程式,該應用程式可以被讀入到記憶體中以用於處理器進行處理。同時,在一些實施例中,複數個軟體發明可以作為更大程式的子部分來實現,而保留不同的軟體發明。在一些實施例中,複數個軟體發明可以作為獨立的程式來實現。最後,一起實現此處所描述的軟體發明的獨立的程式的任何結合是在本發明的範圍內。在一些實施例中,當軟體程式被安裝以在一個或者複數個電子系統上進行操作時,軟體程式定義了一個或者複數個特
定的機器實現方式,該機器實現方式執行和實施該軟體程式的操作。
第12圖概念性地示出實現本公開的一些實施例的電子系統1200。電子系統1200可以是電腦(例如,臺式電腦,個人電腦,平板電腦等),電話,個人數位助理(personal digital assistant,簡稱PDA)或任一其他種類的電子設備。這種電子系統包括各種類型的電腦可讀介質以及用於各種其他類型的電腦可讀介質的介面。電子系統1200包括匯流排1205,處理單元1210,圖形處理單元(graphics-processing unit,簡稱GPU)1215,系統記憶體1220,網路1225,唯讀記憶體1230,永久存放裝置1235,輸入裝置1240,以及輸出裝置1245。
匯流排1205集體表示與電子系統1200通訊連接的眾多內部裝置的所有系統匯流排,外圍裝置匯流排和晶片組匯流排。例如,匯流排1205藉由GPU1215通信連接,唯讀記憶體1230,系統記憶體1220和永久存放裝置1235與處理單元1210通訊連接。
從這些各種記憶體單元,處理單元1210取回要執行的指令和要處理的資料,以便執行本公開的處理。在不同實施例中,處理單元1210可以是單個處理器或多核處理器。一些指令被傳遞到GPU 1215並由GPU 1215執行。GPU 1215可以卸載各種計算或補充由處理單元1210提供的圖像處理。
唯讀記憶體1230存儲處理單元1210和電子系統的其他模組所需的靜態資料和指令。另一方面,永久存放裝置1235是讀寫記憶裝置。該裝置是非揮發性記憶體單元,即使在電子系統1200關閉時也存儲指令和資料。本公開的一些實施例使用大容量記憶裝置(諸如磁片或光碟及其相應的磁碟機)作為永久存放裝置1235。
實施例使用卸除式存放裝置(例如軟碟,快閃記憶體裝置等,及其相應的磁碟機)作為永久存放裝置。與永久存放裝置1235類似,系統記憶體1220是讀寫記憶體裝置。然而,與永久存放裝置1235不同的是,系統記憶體1220
是揮發性(volatile)讀寫記憶體,例如隨機存取記憶體。系統記憶體1220存儲處理器在運行時需要的一些指令和資料。在一些實施例中,根據本公開的過程存儲在系統記憶體1220,永久存放裝置1235和/或唯讀記憶體1230中。例如,各種記憶體單元包括用於根據處理多媒體剪輯的指令。在一些實施例中。從這些各種記憶體單元,處理單元1210取回要執行的指令和要處理的資料,用以執行一些實施例的過程。
匯流排1205還連接到輸入裝置1240和輸出裝置1245。輸入裝置1240使使用者能夠向電子系統傳送資訊和選擇命令。輸入裝置1240包括字母數位鍵盤和指示裝置(也被稱為“游標控制裝置”),相機(例如,網路攝像頭),麥克風或用於接收語音命令等的類似裝置。輸出裝置1245顯示由電子系統生成的圖像或否則輸出資料。輸出裝置1245包括印表機和顯示裝置,例如陰極射線管(cathod ray tube,簡稱CRT)或液晶顯示器(liquid crystal display,簡稱LCD),以及揚聲器或類似的音訊輸出裝置。一些實施例包括諸如同時用作輸入裝置和輸出裝置的觸控式螢幕等裝置。
最後,如第12圖所示,匯流排1205還通過網路介面卡(未示出)將電子系統1200耦合到網路1225。以這種方式,電腦可以是電腦網路的一部分(例如局域網(local area network,簡稱LAN),廣域網路(wide area network,簡稱WAN)或內聯網),或多個網路中的一個網路,比如說網際網路。電子系統1200的任一或所有元件可以與本公開結合使用。
一些實施例包括電子元件,例如,微處理器、存儲裝置和記憶體,其將電腦程式指令存儲到機器可讀介質或者電腦可讀介質(可選地被稱為電腦可讀存儲介質、機器可讀介質或者機器可讀存儲介質)。電腦可讀介質的一些示例包括RAM、ROM、唯讀光碟(read-only compact disc,CD-ROM),可燒錄光碟(recordable compact disc,CD-R)、可讀寫光碟(rewritable compact disc,
CD-RW)、唯讀數位通用光碟(read-only digital versatile disc)(例如,DVD-ROM,雙層DVD-ROM)、各種可記錄/可讀寫DVD(例如DVD RAM、DVD-RW、DVD+RW等)、快閃記憶體(如SD卡、迷你SD卡,微SD卡等)、磁性和/或固態硬碟、唯讀和可燒錄藍光®(Blu-Ray®)盤、超高密度光碟和其他任何光學介質或磁介質,以及軟碟。電腦可讀介質可以存儲由至少一個處理單元執行的電腦程式,並且包括用於執行各種操作的指令集。電腦程式或電腦代碼的示例包括機器代碼,例如編譯器產生的機器代碼,以及包含由電腦、電子元件或微處理器使用注釋器(interpreter)而執行的高級代碼的文檔。
當以上討論主要是指執行軟體的微處理器或多核處理器時,很多上述的功能和應用程式由一個或複數個積體電路執行,如特定應用的積體電路(application specific integrated circuit,ASIC)或現場可程式設計閘陣列(field programmable gate array,FPGA)。在一些實施例中,這種積體電路執行存儲在該電路本身上的指令。此外,一些實施例執行存儲在可程式設計邏輯器件(programmable logic device,PLD),ROM或RAM裝置中的軟體。
如本發明的說明書和任一申請專利範圍所使用,術語“電腦”、“伺服器”、“處理器”和“記憶體”均指電子裝置或其他技術裝置。這些術語不包括人或群體。出於說明的目的,術語顯示或顯示裝置指在電子裝置上進行顯示。如本發明的說明書和任一申請專利範圍中所使用,術語“電腦可讀介質”、“電腦可讀媒質”和“機器可讀介質”完全局限於有形的、實體的物體,其以電腦可讀的形式存儲資訊。這些術語不包括任何無線訊號、有線下載訊號和其他任何短暫訊號。
在結合許多具體細節的情況下描述了本發明時,本領域通常知識者將認識到,本發明可以以其他具體形式而被實施,而不脫離本發明的精神。此外,大量的圖(包括第8圖和第11圖)概念性示出了處理過程。這些過程的具
體操作可以不以所示及所描述的確切順序來被執行。這些具體操作可以不在一個連續的操作系列中被執行,並且不同的具體操作可以在不同的實施例中被執行。另外,該處理可使用幾個子處理而被實現,或者作為更大的巨集處理的一部分。因此,本領域通常知識者將能理解的是,本發明不受前述說明性細節的限制,而是由申請專利範圍加以界定。
本文所描述的主題有時表示不同的元件,其包含在或者連接到其他不同的元件。可以理解的是,所描述的結構僅是示例,實際上可以由許多其他結構來實施,以實現相同的功能,從概念上講,任何實現相同功能的組件的排列實際上是“相關聯的”,以便實現所需功能。因此,不論結構或中間部件,為實現特定的功能而組合的任何兩個元件被視為“相互關聯”,以實現所需的功能。同樣,任何兩個相關聯的元件被看作是相互“可操作連接”或“可操作耦接”,以實現特定功能。能相互關聯的任何兩個組件也被視為相互“可操作地耦接”,以實現特定功能。能相互關聯的任何兩個組件也被視為相互“可操作地耦合”以實現特定功能。可操作連接的具體例子包括但不限於物理可配對和/或物理上相互作用的元件,和/或無線可交互和/或無線上相互作用的元件,和/或邏輯上相互作用和/或邏輯上可交互的元件。
此外,關於基本上任何複數和/或單數術語的使用,本領域的技術人員可以根據上下文和/或應用從複數轉換為單數和/或從單數到複數。為清楚起見,本發明明確闡述了不同的單數/複數排列。
此外,本領的通常知識者可以理解,通常,本發明所使用的術語特別是申請專利範圍中的,如申請專利範圍的主題,通常用作“開放”術語,例如,“包括”應解釋為“包括但不限於”,“有”應理解為“至少有”“包括”應解釋為“包括但不限於”等。本領域的通常知識者可以進一步理解,若
計畫介紹特定數量的申請專利範圍內容,將在申請專利範圍內明確表示,並且,在沒有這類內容時將不顯示。例如,為幫助理解,下面申請專利範圍可能包含短語“至少一個”和“一個或複數個”,以介紹申請專利範圍的內容。然而,這些短語的使用不應理解為暗示使用不定冠詞“一個”或“一種”介紹申請專利範圍內容,而限制了任何特定神專利範圍。甚至當相同的申請專利範圍包括介紹性短語“一個或複數個”或“至少有一個”,不定冠詞,例如“一個”或“一種”,則應被解釋為表示至少一個或者更多,對於用於介紹申請專利範圍的明確描述的使用而言,同樣成立。此外,即使明確引用特定數量的介紹性內容,本領域通常知識者可以認識到,這樣的內容應被解釋為表示所引用的數量,例如,沒有其他修改的“兩個引用”,意味著至少兩個引用,或兩個或兩個以上的引用。此外,在使用類似於“A、B和C中的至少一個”的表述的情況下,通常如此表述是為了本領域通常知識者可以理解該表述,例如,“系統包括A、B和C中的至少一個”將包括但不限於單獨具有A的系統,單獨具有B的系統,單獨具有C的系統,具有A和B的系統,具有A和C的系統,具有B和C的系統,和/或具有A、B和C的系統,等。本領域通常知識者進一步可理解,無論在說明書中,申請專利範圍中或者附圖中,由兩個或兩個以上的替代術語所表現的任何分隔的單詞和/或短語應理解為,包括這些術語中的一個,其中一個,或者這兩個術語的可能性。例如,“A或B”應理解為,“A”,或者“B”,或者“A和B”的可能性。
從前述可知,出於說明目的,本發明已描述了各種實施方案,並且在不偏離本發明的範圍和精神的情況下,可以進行各種變形。因此,此處所公開的各種實施方式不用於限制,真實的範圍和申請由申請專利範圍表示。
1100:過程
1110、1120、1130、1140、1150、1160:步驟
Claims (12)
- 一種視訊解碼方法,包括:從一位元流接收資料,該資料將被解碼作為一視訊的一當前圖像,該當前圖像將藉由使用多個縮放矩陣進行解碼;接收一參考索引偏移用於該多個縮放矩陣的一第一縮放矩陣;將該參考索引偏移應用於一第一索引,該第一索引用於辨識該第一縮放矩陣以導出用於辨識該多個縮放矩陣的一第二縮放矩陣的一第二索引,其中該第二縮放矩陣被預先重構;藉由參考第二縮放矩陣對該第一縮放矩陣進行重構;藉由使用該多個縮放矩陣對該當前圖像的多個變換塊的多個變換係數進行去量化;以及藉由使用多個去量化的變換係數對該當前圖像進行重構,其中,當該位元流中的一第一標誌指示該第一和第二縮放矩陣的多個相應元素是不同的,該位元流中一第二標誌指示該第一縮放矩陣是否藉由(i)將一組差量值添加於該第二縮放矩陣的該多個元素中作為該第一縮放矩陣的該多個元素來確定,或藉由(ii)在該位元流中的顯式發送該第一縮放矩陣的該多個元素來確定。
- 如請求項1所述之視訊解碼方法,其中,根據一一維索引方案,該第一索引和該第二索引分別被分配該第一和第二縮放矩陣,其中根據多個索引的色彩分量、塊大小以及預測類型,該一維索引方案將該多個索引分配給多個縮放矩陣。
- 如請求項2所述之視訊解碼方法,其中,根據該一維索引方案,用於編解碼幀內預測類型的多個色彩分量的多個2x2變換塊的多個縮放矩陣沒有分配索引。
- 如請求項2所述之視訊解碼方法,其中,當該第一索引大於一閾值,該第一縮放矩陣具有一塊大小為64。
- 如請求項1所述之視訊解碼方法,其中,當該位元流中的該第一標誌指示該第一和第二縮放矩陣的該多個相應元素是相同的,藉由將該第二縮放矩陣的該多個元素複製為該第一縮放矩陣的該多個元素,該第一縮放矩陣被確定。
- 如請求項1所述之視訊解碼方法,其中,當沒有其他縮放矩陣具有與先前編解碼的該當前圖像的該第一縮放矩陣相同的一特定大小時,該參考索引偏移不在該位元流中發送。
- 如請求項6所述之視訊解碼方法,其中,藉由參考一默認量化矩陣,該第一縮放矩陣被確定。
- 如請求項1所述之視訊解碼方法,其中,當該第一索引為0,4或10時,該參考索引偏移不在該位元流中發送。
- 如請求項1所述之視訊解碼方法,其中,當該第一索引為2,8或14時,該參考索引偏移不在該位元流中發送。
- 如請求項1所述之視訊解碼方法,其中,該位元流包括一第一語法元素和一第二語法元素,該第一語法元素指定該第一縮放矩陣中的兩個連續縮放矩陣係數之間的差值,該第二語法元素指定該第一縮放矩陣的一直流係數,該第一語法元素和該第二語法元素被約束在-128和127的範圍內,包括端值。
- 一種電子裝置,包括:一視訊解碼器電路被配置為執行多個操作,該多個操作包括:從一位元流接收資料,該資料將被解碼作為一視訊的一當前圖像,該當前圖像將藉由使用多個縮放矩陣進行解碼;接收一參考索引偏移用於該多個縮放矩陣的一第一縮放矩陣; 將該參考索引偏移應用於一第一索引,該第一索引用於辨識該第一縮放矩陣以導出用於辨識該多個縮放矩陣的一第二縮放矩陣的一第二索引,其中該第二縮放矩陣被預先重構;藉由參考第二縮放矩陣對該第一縮放矩陣進行重構;藉由使用該多個縮放矩陣對該當前圖像的多個變換塊的多個變換係數進行去量化;以及藉由使用多個去量化的變換係數對該當前圖像進行重構,其中,當該位元流中的一第一標誌指示該第一和第二縮放矩陣的多個相應元素是不同的,該位元流中一第二標誌指示該第一縮放矩陣是否藉由(i)將一組差量值添加於該第二縮放矩陣的該多個元素中作為該第一縮放矩陣的該多個元素來確定,或藉由(ii)在該位元流中的顯式發送該第一縮放矩陣的該多個元素來確定。
- 一種視訊編碼方法,包括:接收將被編碼作為一視訊的一當前圖像的資料,該當前圖像將藉由使用多個縮放矩陣進行解碼;藉由參考先前發送的該多個縮放矩陣中的一第二縮放矩陣,發送該多個縮放矩陣中的一第一縮放矩陣;確定一第一索引和一第二索引之間的一參考索引偏移,該第一索引用於辨識該第一縮放矩陣以及該第二索引用於辨識該第二縮放矩陣;發送確定的該參考索引偏移;將該當前圖像編碼為多個變換塊的多個變換係數;以及使用該多個縮放矩陣對該多個變換係數進行量化,其中,當該位元流中的一第一標誌指示該第一和第二縮放矩陣的多個相應元素是不同的,該位元流中一第二標誌指示該第一縮放矩陣是否藉由(i)將一 組差量值添加於該第二縮放矩陣的該多個元素中作為該第一縮放矩陣的該多個元素來確定,或藉由(ii)在該位元流中的顯式發送該第一縮放矩陣的該多個元素來確定。
Applications Claiming Priority (10)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962904717P | 2019-09-24 | 2019-09-24 | |
| US62/904,717 | 2019-09-24 | ||
| US201962912538P | 2019-10-08 | 2019-10-08 | |
| US62/912,538 | 2019-10-08 | ||
| US201962913103P | 2019-10-09 | 2019-10-09 | |
| US62/913,103 | 2019-10-09 | ||
| US201962925267P | 2019-10-24 | 2019-10-24 | |
| US62/925,267 | 2019-10-24 | ||
| US17/029,239 | 2020-09-23 | ||
| US17/029,239 US11206395B2 (en) | 2019-09-24 | 2020-09-23 | Signaling quantization matrix |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202118295A TW202118295A (zh) | 2021-05-01 |
| TWI753585B true TWI753585B (zh) | 2022-01-21 |
Family
ID=74880205
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW109133059A TWI753585B (zh) | 2019-09-24 | 2020-09-24 | 一種視訊編解碼方法及裝置 |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US11206395B2 (zh) |
| EP (1) | EP4029269A4 (zh) |
| KR (1) | KR20220063268A (zh) |
| CN (1) | CN114731433B (zh) |
| MX (1) | MX2022003526A (zh) |
| TW (1) | TWI753585B (zh) |
| WO (1) | WO2021057842A1 (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU2019201649A1 (en) * | 2019-03-11 | 2020-10-01 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding a tree of blocks of video samples |
| US12052414B2 (en) * | 2019-09-23 | 2024-07-30 | Lg Electronics Inc. | Image encoding/decoding method and apparatus using quantization matrix, and method for transmitting bitstream |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW201141238A (en) * | 2009-10-30 | 2011-11-16 | Panasonic Corp | Image decoding method, image encoding method, image decoding device, image encoding device, programs, and integrated circuits |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8369638B2 (en) * | 2008-05-27 | 2013-02-05 | Microsoft Corporation | Reducing DC leakage in HD photo transform |
| FR2944936A1 (fr) | 2009-04-23 | 2010-10-29 | Thomson Licensing | Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes |
| KR102154968B1 (ko) * | 2012-02-29 | 2020-09-10 | 소니 주식회사 | 화상 처리 장치 및 방법, 및 기록 매체 |
| CN103974076B (zh) | 2014-05-19 | 2018-01-12 | 华为技术有限公司 | 图像编解码方法和设备、系统 |
| WO2017196128A1 (ko) * | 2016-05-12 | 2017-11-16 | 엘지전자(주) | 계수 유도 복원을 이용하여 비디오 신호를 처리하는 방법 및 장치 |
| CN109314790A (zh) * | 2016-05-23 | 2019-02-05 | 佳稳电子有限公司 | 影像处理方法、利用其的影像解码及编码方法 |
| WO2018149995A1 (en) * | 2017-02-16 | 2018-08-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Filter apparatus and methods |
| EP3484151A1 (en) * | 2017-11-13 | 2019-05-15 | Thomson Licensing | Method and apparatus for generating quantization matrices in video encoding and decoding |
| US10812797B2 (en) * | 2018-02-05 | 2020-10-20 | Tencent America LLC | Method, apparatus and medium for decoding or encoding using a low-complexity transform |
-
2020
- 2020-09-23 US US17/029,239 patent/US11206395B2/en active Active
- 2020-09-24 WO PCT/CN2020/117397 patent/WO2021057842A1/en not_active Ceased
- 2020-09-24 CN CN202080067443.6A patent/CN114731433B/zh active Active
- 2020-09-24 EP EP20869957.9A patent/EP4029269A4/en active Pending
- 2020-09-24 TW TW109133059A patent/TWI753585B/zh active
- 2020-09-24 MX MX2022003526A patent/MX2022003526A/es unknown
- 2020-09-24 KR KR1020227013479A patent/KR20220063268A/ko not_active Ceased
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW201141238A (en) * | 2009-10-30 | 2011-11-16 | Panasonic Corp | Image decoding method, image encoding method, image decoding device, image encoding device, programs, and integrated circuits |
Non-Patent Citations (1)
| Title |
|---|
| "Non-CE7: Quantization matrices with single identifier and prediction from larger ones" Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 15th Meeting: Gothenburg, SE, 3–12 July 2019 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US11206395B2 (en) | 2021-12-21 |
| WO2021057842A1 (en) | 2021-04-01 |
| EP4029269A4 (en) | 2023-07-05 |
| KR20220063268A (ko) | 2022-05-17 |
| TW202118295A (zh) | 2021-05-01 |
| EP4029269A1 (en) | 2022-07-20 |
| CN114731433A (zh) | 2022-07-08 |
| US20210092361A1 (en) | 2021-03-25 |
| CN114731433B (zh) | 2023-11-28 |
| MX2022003526A (es) | 2022-07-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI751771B (zh) | 視訊和影像編解碼中之高階信息發信 | |
| TWI770681B (zh) | 視訊編碼或解碼系統中的視訊處理方法和裝置 | |
| TWI830629B (zh) | 轉換省略區塊之傳訊編碼技術 | |
| TWI750624B (zh) | 編解碼變換係數的方法及裝置 | |
| TWI792149B (zh) | 量化相關參數之傳訊技術 | |
| TWI797560B (zh) | 跨層參考限制條件 | |
| TWI785502B (zh) | 在分塊中指明切片之切片組塊的視訊編解碼方法及電子裝置 | |
| CN112042194A (zh) | 自适应性隐式转换设定 | |
| TW202333495A (zh) | 轉換係數符號的熵編碼 | |
| TWI753585B (zh) | 一種視訊編解碼方法及裝置 | |
| US11394973B2 (en) | Signaling of quantization matrices | |
| TW202349954A (zh) | 自適應編解碼的圖像以及視訊資料 | |
| TWI750802B (zh) | 視訊編解碼方法及裝置 |