TWI739393B - 用次要變換編解碼視訊資料的方法以及裝置 - Google Patents

用次要變換編解碼視訊資料的方法以及裝置 Download PDF

Info

Publication number
TWI739393B
TWI739393B TW109112747A TW109112747A TWI739393B TW I739393 B TWI739393 B TW I739393B TW 109112747 A TW109112747 A TW 109112747A TW 109112747 A TW109112747 A TW 109112747A TW I739393 B TWI739393 B TW I739393B
Authority
TW
Taiwan
Prior art keywords
current block
transform
transformation
video
block
Prior art date
Application number
TW109112747A
Other languages
English (en)
Other versions
TW202044843A (zh
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 TW202044843A publication Critical patent/TW202044843A/zh
Application granted granted Critical
Publication of TWI739393B publication Critical patent/TWI739393B/zh

Links

Images

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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/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/18Methods 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 set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods 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
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data

Abstract

視訊編碼或解碼系統中的視訊處理方法以及裝置,用於將變換塊的殘差變換成最終變換係數或者將最終變換係數逆變換成殘差。為了解決延遲問題,示例性的實施例檢查一編解碼塊的一寬度或高度是否大於一預定閾值,以及如果該編解碼塊的該寬度或高度大於該預定閾值,禁用次要變換或逆次要變換用於該編解碼塊幀內的任何變換塊。另一個實施例檢查一編解碼塊中是否有多個變換塊,以及如果該編解碼塊包含多個變換塊,禁用次要變換或逆次要變換。

Description

用次要變換編解碼視訊資料的方法以及裝置
本發明涉及視訊編解碼系統中編碼或解碼視訊資料的視訊處理方法或裝置。具體地,本發明涉及用適應性應用於變換或逆變換操作中的次要變換(secondary transform)或逆次要變換(inverse secondary transform)的編碼或解碼。
高效視訊編解碼(HEVC)標準是由來自ITU-T研究小組的視訊編解碼專家的聯合視訊編解碼小組(JCT-VC)開發的最新視訊編解碼標準。HEVC標準依賴於基於塊的編解碼結構,其將每一視訊圖像拆分成非重疊的正方形編碼樹單元(CTU)。視訊圖像或條帶(slice)中每一單個CTU以光柵掃描次序(raster scanning order)進行處理。在HEVC主規格中,CTU的最大以及最小尺寸由序列參數集(SPS)中發信的語法元素指定。編解碼圖像可以由條帶的集合表示,以及每一條帶包括整數數目的CTU。雙向預測(B)條帶可以使用幀內預測或幀間預測預測B條帶中每一塊的樣本值來進行解碼,幀間預測使用最多兩個運動向量以及參考索引。預測(P)條帶使用幀內預測或幀間預測預測P條帶中每一塊的樣本值來進行解碼,幀間預測使用至多一個運動向量以及參考索引。幀內(I)條帶僅使用幀內預測來進行解碼。
每一CTU使用四叉樹(quadtree,QT)拆分結構進一步被遞迴地拆分成一個或多個非重疊編碼單元(CU)來適應各種局部特性。在QT拆分結構的每一拆分深度上,N×N塊是單個葉CU(leaf CU)或者用於相等的N/2×N/2尺寸拆分成四個更小的塊。尺寸M×M的CTU像素樣本是四叉樹編碼樹的根節點(root node),以及四個M/2×M/2塊是從根節點拆分的子四叉樹節點。每一四個M/2×M/2塊可以成為由另一個QT拆分來分割的父節點(parent node)來生成四個子節點(child node),尺寸在每一空間維度上減少一半。如果編碼樹節點不被進一步拆分,其稱為葉CU。葉CU尺寸被限制與大於或等於最小允許的CU尺寸,其也在SPS中指定。在第1圖中示出了遞迴四叉樹拆分結構的示例,其中實線指示CTU 10中的CU邊界。
一旦CTU被拆分成多個葉CU,每一葉CU根據HEVC標準的用於預測的PU拆分類型被進一步拆分成一個或多個預測單元(PU)。不像CU的遞迴四叉樹拆分,每一葉CU可以僅被拆分一次來形成一個或多個PU。因為相同的預測進程被應用於PU中的所有像素樣本,PU與相關CU語法作為共用預測資訊的基礎代表塊。預測資訊在PU基礎上被傳達給解碼器。在獲得由基於PU拆分類型的預測進程生成的殘差後,根據殘差四叉樹(Residual Quadtree,RQT)拆分結構,屬於葉CU的殘差被分割成一個或多個變換單元(TU)用於將殘差變換成變換係數(transform coefficient)。第1圖總虛線指示CTU 10中的TU邊界。TU是用於將變換以及量化應用於殘差數據或變換係數的基礎代表塊。對於每一TU,具有與TU相同尺寸的變換矩陣被應用於殘差來生成變換係數,以及這些變換係數在TU的基礎上被量化並被傳達給解碼器。
術語編碼樹塊(CTB)、編碼塊(CB)、預測塊(PB)以及變換塊(TB)被定義為分別指定與CTU、CU、PU以及TU相關的一個色彩分量的二維(2-D)樣本陣列。例如,TU由4:2:0格式編碼的圖像的一個亮度(luma)TB、兩個色度 (chroma)TB以及其相關的語法元素組成。類似的關係也適用於CTU、CU以及PU。在HEVC系統中,除非達到色度塊的最小尺寸,相同的四叉樹拆分結構通常被應用於亮度以及色度分量兩者。
ITU-T SG16 WP3以及ISO/IEC JTC1/SC29/WG11的聯合視訊專家組(JVET)目前正在建立下一代視訊編解碼標準通用視訊編解碼(Versatile Video Coding,VVC)。各種有希望的工具被開發並在即將到來的新興VVC中被採用,例如變換跳過模式以及減少的次要變換。
變換跳過模式 變換跳過模式(Transform Skip Mode,TSM)是在不經過變換操作的情況下藉由熵編解碼來處理已量化殘差訊號的編解碼工具。TSM中編解碼的塊的已量化殘差訊號在樣本域(sample domain)中被直接地編碼而不是被變換到頻率域。TSM被發現對螢幕內容編解碼(screen content coding)尤其有效,尤其是對具有銳利邊緣以及簡單色彩的區域。在VVC工作草案中,TSM由高層級語法控制,例如,啟用旗標可以用於選擇開啟或關閉TSM,以及語法元素可以用於發信應用TSM的尺寸約束。例如,TSM被允許應用於寬度或高度大於或等於32亮度樣本的變換塊。當TSM被啟用時,變換塊層級旗標被發信來指示TSM是否被應用於當前變換塊。當TSM被用於變換塊時,依賴量化(dependent quantization)以及符號資料隱藏都被禁用。TSM中編解碼的殘差由單獨的解析進程來處理。
減少的次要變換 減少的次要變換(Reduced Secondary Transform,RST)是VVC中提出的新編解碼工具來進一步改善編解碼效率。RST在一些提案中也被稱為低頻率不可分變換(Low Frequency Non-Separable Transform,LFNST)。RST僅被應用於幀內編解碼的塊。RST的主要概念是將N維向量映射成不同空間中的R維向量,其中R小於N以及R/N是減少因數。RST矩陣TR×N是R×N矩陣,如下:
Figure 109112747-A0305-02-0006-1
其中變換的R列(row)是N維空間的R基。RST的逆變換矩形是正向變換矩陣的轉置。在第2圖中描繪了正向以及逆RST操作。
有兩個RST類型,包括RST 8×8類型以及RST 4×4類型,根據當前變換塊的塊尺寸來選擇。當寬度以及高度的最小值大於或等於8時(其意味著變換塊的寬度(W)以及高度(H)兩者都大於4),選擇RST 8×8類型,以及當寬度或高度小於或等於4時,選擇RST 4×4類型。在具有減少因數4(即,1/4尺寸)的RST 8×8類型的示例中,在編碼器側使用16×64 RST矩陣,以及在解碼器側使用64×16逆RST矩陣。16x64 RST矩陣的輸入是8×8左上區域的主要(primary)變換係數以及矩陣的輸出是16個次要變換係數,其中主要變換係數表示經過主要變換的係數,次要變換係數表示經過次要變換的係數。正向RST 8×8類型應用16×64矩陣(或8×64矩陣)來作用在給定的左上8×8區域,並在左上4×4區域中生成非0係數。換言之,在應用次要變換後,除了左上4×4區域之外的左上8×8區域將僅具有0係數。在RST 8×8類型的另一個示例中,在編碼器側使用16×48 RST矩陣,以及在解碼器側使用48×16逆RST矩陣。16×48 RST矩陣的輸入是左上8×8區域的首先48個變換係數,其可以是首先3個4×4子塊,以及矩陣的輸出是16個次要變換係數。正向RST 8×8類型應用16×48矩陣(或8×48矩陣)來作用在左上4×4區域(或首先8個係數,其在左上4x4區域或在整個變換塊中可以是使用對角線掃描的順序)生成非0係數。換言之,在應用次要變換後,除了左上4×4區域之外的左上8×8區域將僅具有0係數。對於每一塊選擇的RST 4×4類型,應用16×16矩陣(或8×16矩陣)對左上4×4區域直接的變換係數做矩陣乘法。如果變換塊的寬度(W)以及高度(H)都大於4,那麼RST 8×8類型被應用 於變換塊的左上8×8區域的主要變換係數。否則,如果變換塊的寬度(W)以及高度(H)的最小值等於4,RST 4×4類型被應用於變換塊的左上4×4區域的主要變換係數。否則,如果變換塊的寬度(W)以及高度(H)的最小值小於4,RST不被應用於變換塊。
當滿足後續兩個條件時,逆RST被條件地應用。當塊尺寸大於或等於給定閾值時滿足第一條件,例如,當寬度大於或等於4以及高度大於或等於4時。當變換跳過模式旗標等於0時滿足第二條件。
RST索引等於0指示RST不被應用於當前CU,否則RST索引指示哪一個次要變換要點(kernel)被選擇用於當前CU。RST被應用於幀內以及幀間條帶兩者中的幀內CU。在當雙樹(dual tree)被啟用的情況下,亮度以及色度分量的RST索引被分別發信。在當雙樹被禁用的情況下,對於幀間條帶中的每一幀內CU,單個RST索引被發信並用於亮度或色度分量。
幀內子分割(Intra Sub-Partition,ISP)模式是VVC中提出的新的幀內預測模式。ISP模式的描述如下。ISP根據它們的塊尺寸垂直或水平地將亮度幀內預測塊拆分成2或4個子分割。對於每一子分割,藉由將殘差信號添加到預測信號獲得重構樣本。這裡,藉由如熵解碼、逆量化以及逆變換的進程生成殘差信號。因此,每一子分割的重構樣本值是可用的來生成下一子分割的預測,以及每一子分割被重複地處理。此外,待處理的第一子分割是包含CU的左上樣本然後繼續向下(水平拆分)或者向右(垂直拆分)的子分割。結果,用於生成子分割預測信號的參考樣本僅位於分割線的左邊以及上側。所有子分割共用相同的幀內預測模式。RST被禁用或者被條件地應用於ISP編解碼的塊。當次要變換對ISP模式是禁用的時,RST索引不被發信。對ISP預測的殘差禁用RST可以減少編碼複雜度。
RST選擇 根據塊尺寸與/或幀內CU的幀內預測模式,首先從四 個變換集合中選擇用於幀內CU的次要變換集合(set)。每一變換集合由兩個變換矩陣(也稱為要點(kernel))所組成,當RST索引大於0時,RST索引用於從所選變換集合中選擇一個變換矩陣。當在CU層級發信的RST索引等於1時,選擇所選變換集合中的要點1,以及當在CU層級發信的RST索引等於2時,選擇所選變換集合中的要點2。如果色度分量的三個交錯分量線性模型(Cross Component Linear Model,CCLM)模式之一被指示,用於亮度分量的對應的幀內預測模式被用於選擇變換集合。如表1所示,基於幀內預測模式選擇變換集合。
Figure 109112747-A0305-02-0008-2
表1中的索引IntraPredMode是當前CU的幀內預測模式編號,其具有[-14,83]的範圍,表1中包括常規(regular)幀內方向模式(比方說編號0表示planar,編號1表示DC,編號2到66表示65個directional預測模式)以及廣角幀內預測(wide angle intra prediction,WAIP)模式。
RST的簡化 簡化方法限制每一樣本乘法的較差情況數目為小於或等於8。例如,當所有TU由4×4 TU或8×8 TU組成時,發生RST 8×8和RST 4×4類型的乘法計數方面的較差情況。頂部8×64以及8×16矩陣,換言之,來自每一矩陣(16×64矩陣(屬於8×8RST),16×16矩陣(屬於4×4RST))頂部的首先8個變換基礎向量,被分別應於8×8 TU以及4×4 TU。在TU大於8×8的情況下,較差情況不發生以致一個16×64矩陣(即,RST 8×8類型)被應用於TU的左上8×8 區域。對於8×4或4×8 TU,一個16×16矩陣(即,RST 4×4)僅被應用於左上4×4區域,排除其他左上8×8區域中的其他4×4區域來避免較差情況發生。在處理4×N或N×4 TU的情況下(其中N大於或等於16),RST 4×4類型被應用於兩個相鄰頂部左上4×4塊的其中的一個(左上角的一個)或每一個。根據前述提到的簡化,乘法計數的較差情況數目變成每一樣本8乘法器。
減少維度的RST矩陣 為了減少儲存需求以及計算複雜度,具有減少維度的RST矩陣(如16×48矩陣)被應用而不是具有相同變換集合配置的16×64矩陣。每一16×48矩陣取來自左上8×8區域中三個4×4區域(排除右下4×4區域)的主要係數。第3圖示出了應用主要以及次要變換到M×N變換塊的示例。M×N殘差塊32由2D正向主要變換處理來生成M×N主要係數34,其中在這一示例中,N以及M大於8。M×N主要係數34的左上8×8區域中的首先三個4×4區域由正向次要變換使用16×48要點進一步處理。除了所生成塊36的左上8×8區域中的第一子塊362,所生成塊36中的係數用0填充。16×48要點的16個輸出第二係數被存儲於左上4×4子塊362,而這一變換塊中其他子塊的係數在次要變換後被重設為0。根據減少的維度設計,用於存儲所有RST矩陣的儲存使用從10KB減少到8KB,並有一個合理的性能下降。結果,16×48與8×48變換矩陣被採用用於RST 8×8類型以及16×16與8×16變換矩陣被採用用於RST 4×4類型。因為有4個變換集合以及每一變換集合包含2個變換矩陣,8個不同的16×48矩陣以及8個不同的16×16矩陣對次要變換是可用的。每一8×48矩陣由對應的16×48矩陣來導出,以及類似地,每一8×16矩陣由對應的16×16矩陣來導出。例如,8×8矩陣僅是對應16×48矩陣的頂部8列(row)。例如,8×16矩陣僅是對應16×16矩陣的頂部8列。8×48矩陣用於8×8TB的次要變換以及8×16矩陣用於4×4TB的次要變換。在當TB尺寸等於8×4或4×8的情況下,16×16矩陣僅被應用於左上4×4子塊,以致次要變換忽略其他4×4子塊。在當TB尺寸 是4×N或N×4的情況下,其中N大於或等於16,16×16矩陣被應用於首先一個或兩個相鄰4×4子塊。對於寬度或高度都大於或等於8的其他TB,16×48矩陣被應用於左上8×8區域。
RST信令 如前述描述的,RST索引用於指示是否應用次要變換以及從對應的變換集合中選擇次要變換矩陣。在發信TU語法後,在CU層級發信RST索引。在RST的示例中,具有16列變換(即,R=16)的正向RST 8×8使用16×64或16×48矩陣來僅在給定左上8x8區域內的左上4x4區域中生成非0係數。換言之,如果應用RST,除了左上4x8區域之外的該8x8區域僅包含0係數。結果,當在左上8×8塊區域而不是左上4×4區域中檢測到任何非0係數時,因為其暗示不應用RST,RST索引不被發信或被解析。如果未被發信,RST索引被推斷為0。第4圖示出了針對非0係數掃描變換塊的8×8區域中的第64位置到第17位置以檢測RST是否被應用於該變換塊。在RST的另一個示例中,具有16列變換(即,R=16)的正向RST 8×8使用16×64或16×48矩陣來僅在左上4x4區域中生成非0係數。換言之,如果應用RST,除了左上4×4區域,變換塊僅包含0係數。結果,當在變換塊內而不是左上4×4區域內檢測到任何非0係數時,因為其暗示RST不被應用,RST索引不被發信或解析。如果未被發信,RST索引被推斷為0。
在發信一個CU內屬於每一TU的語法後,次要變換語法(如RST索引)在CU層級被發信。每一TU的語法可以包括表示該TU中最後有效係數(last significant coefficient)位置的信令以及TU中每一編解碼組(coding group)的有效旗標(significant flag)的信令,當一編解碼組的有效旗標為1表示該編解碼組中有有效係數。對於最後有效係數所位於的一編解碼組,用於該編解碼組的有效旗標不需要被發信,而是被隱式地推斷為真。對於亮度分量,當ISP被選擇時,編解碼組可以是一個TU中的4×4子塊或者可以是更小的子塊。對於色度分量, 對於幀內條帶,編解碼組可以是4×4子塊;以及對於幀間條帶,編解碼組可以是2×4/4×2/4×4子塊。
目前,僅對亮度或色度分量的幀內塊執行次要變換。次要變換索引的值是從0到n,例如,n是2。次要變換索引等於0指示次要變換不被應用。RST索引用截斷一元碼(truncated unary code)來發信。例如,第一二進位數字(bin)是上下文編解碼的以及第二二進位數字是旁路(bypass)編解碼的。又例如,第一以及第二二進位數字是上下文編解碼的。
用於編碼視訊圖像中視訊資料的視訊編碼系統中的視訊處理方法以及裝置,包括接收與一當前視訊圖像中一當前塊相關的輸入資料,藉由預測該當前塊生成該當前塊的殘差,決定該當前塊的一寬度或高度是否大於一預定閾值,決定以及應用一變換操作用於該當前塊來生成最終變換係數,以及編碼該當前塊。該變換操作不包括次要變換。在當該當前塊的寬度以及高度小於或等於該預定閾值的情況下,該視訊編碼系統決定是否應用次要變換到該塊,以及相應地應用主要變換或主要與次要變換兩者到該塊的殘差來生成最終變換係數。在生成該最終變換係數後,根據該當前塊的該最終變換係數編碼當前塊。根據一些實施例,該當前塊由幀內預測來預測,因為次要變換對非幀內編解碼的塊是禁用的。視訊編碼系統的一些實施例僅應用次要變換到幀內編解碼塊中的TU,因為次要變換對非幀內編解碼的塊是禁用的。
根據一實施例,一索引被發信用於該當前塊,指示次要變換是否被應用於該當前塊,當該當前塊的該寬度以及高度小於或等於該預定閾值時,用於該當前塊的該索引被強制為0。在本發明的一些實施例中,該當前塊是CU,在本發明的一些實施例中,該視訊編碼系統基於該當前塊中的TU的數目進一步 決定該變換操作不包括次要變換,例如,當該當前塊中TU的數目大於1,指示該當前塊中有多個TU時,該變換操作不包括次要變換。
在一些特定的實施例中,該視訊編碼系統僅應用次要變換到該當前塊內的一個所選TU,當該當前塊的寬度或高度大於預定閾值或者當該當前塊中有多個TU時,跳過該當前塊內所有其他TU的次要變換。例如,該視訊編碼系統決定一變換操作用於其他TU以及一輔助變換操作用於一個所選的TU。其中該變換操作僅包括主要變換以及該輔助變換操作包含主要與次要變換兩者。根據一實施例,該所選TU是該當前塊內的一最後TU。
預定閾值的一些示例包括16、32、64、128以及256亮度樣本。該當前塊是CU、CB、TU或TB,以及一些實施例的預定閾值根據一最大TU尺寸或最大TB尺寸來設置,該最大TU尺寸或最大TB尺寸由一編解碼標準來指定,如64亮度樣本,或者該最大TU尺寸在序列參數集(SPS)、圖像參數集(PPS)、圖塊、圖塊組或條帶層級中指定,例如,在SPS中,發信一旗標,當旗標為1表示最大TB尺寸為64亮度樣本,當旗標為0表示最大TB尺寸為32亮度樣本。
在視訊編碼系統的一實施例中,僅當塊的寬度以及高度都小於或等於預定閾值時,發信一次要變換索引指示是否將次要變換應用於該當前塊。換言之,因為當前塊的寬度或高度大於該預定閾值,這一次要變換索引不被發信用於該當前塊。當該次要變換索引未被發信時,該次要變換被隱式地推斷為禁用的(即,次要變換索引被設置為0)。在一可選實施例中,當前塊的寬度或高度大於該預定閾值時,該視訊編碼系統發信一次要變換索引用於該當前塊,然而,該次要變換索引被強制為0。
在另一個實施例中,一約束被設置來限制該幀內或幀間CU的尺寸,因此該CU的寬度以及高度都不大於該預定閾值。例如,CU的寬度以及高 度被限制為小於或等於該預定閾值,為了使該CU由次要變換處理。如果塊的寬度以及高度大於該預定閾值,該塊被強制拆分成寬度以及高度小於或等於該預定閾值的多個CU。該視訊編碼系統決定對從該塊拆分而來的每一CU內的TU執行變換操作以及編碼從該當前塊拆分的每一CU。
視訊解碼系統的實施例包括接收與一當前視訊圖像中一當前塊相關的輸入資料,解碼該輸入資料來決定該當前塊的最終變換係數,決定該當前塊的一寬度或高度是否大於一預定閾值,決定以及應用一逆變換操作到該最終變換係數來恢復該當前塊的殘差,以及基於該殘差解碼該當前塊。該當前塊的一寬度或高度大於一預定閾值時,用於該當前塊的該逆變換操作不包括逆次要變換。
根據一些實施例,因為次要變換對非幀內編解碼的塊總是禁用的,該當前塊由幀內預測來編解碼。因為該當前塊的寬度或高度大於該預定閾值,該當前塊的一次要變換索引被隱式地推斷為0。在一些實施例中,該當前塊是一CU,以及基於該當前塊中的TU的數目,該逆變換操作排除逆次要變換。例如,當該當前塊中TU的數目大於1時,指示在該當前塊中有多個TU,該變換操作不包括次要變換。在一個實施例中,該視訊解碼系統解析與該當前塊有關的一次要變換索引,然而,該次要變換索引被強制為0。
在一個實施例中,該視訊解碼系統應用逆次要變換以及逆主要變換到該當前塊內的一個所選TU以及僅應用逆主要變換到該當前塊內的所有其他TU。例如,該視訊解碼系統為所有其他TU決定一逆變換操作以及為一個所選TU決定一輔助逆變換操作,其中該逆變換操作僅包括逆主要變換以及該輔助變換操作包括逆次要變換以及逆主要變換兩者。根據一實施例,該所選TU是解碼次序中該當前塊內的一最後TU。
預定閾值的一些示例包括16,32,64,128以及256亮度樣本。在 一些實施例中,根據一最大TU尺寸或一最大TB尺寸設置該預定閾值,例如,由一編解碼標準指定該最大TU尺寸或最大TB尺寸,或者在一SPS、PPS、圖塊、圖塊組或條帶層級中指定該最大TU尺寸。例如,在SPS中,發信一旗標,當旗標為1表示最大TB尺寸為64亮度樣本,當旗標為0表示最大TB尺寸為32亮度樣本。
在一個實施例中,該視訊解碼系統僅解析一次要變換索引,指示如果塊的寬度以及高度小於或等於該預定閾值,是否需要應用逆次要變換。因為該當前塊的寬度或高度大於該預定閾值,該當前塊的該次要變換索引被推斷為0。在另一個實施例中,該視訊解碼系統解析一次要變換索引而不管塊的寬度以及高度,然而,如果塊的寬度或高度大於該預定閾值,所解析的該次要變換索引等於0。
在另一個實施例中,如果次要變換被應用於每一CU中的TU,一約束被設置來限制每一CU的尺寸。在這一實施例中,如果塊的寬度或高度大於預定閾值,該塊被拆分成寬度以及高度小於或等於該預定閾值的多個CU。該視訊解碼系統解析一次要變換索引,決定以及應用一逆變換操作用於每一CU中的TU來恢復殘差,以及然後基於所恢復的殘差解碼每一CU。
本發明的一方面進一步提供了實施視訊編碼系統或視訊解碼系統的一裝置,以及如果一當前塊的一寬度或高度大於一預定閾值,該裝置禁用次要變換或逆次要變換。在一些實施例中,如果該當前塊的該寬度或高度大於該預定閾值,該當前塊的一次要變換索引不由該視訊編碼系統發信以及由該視訊解碼系統推斷為0。在一可選實施例中,即使該寬度或高度大於該預定閾值,該當前塊的該次要變換索引仍被發信於視訊位元流或者從該視訊位元流中解析,但該次要變換索引被強制為0。在閱讀特定實施例的後續描述後,本發明的其他方面以及特徵對本領域具有通常知識者將是顯而易見的。
10:CTU
32:殘差塊
34:主要係數
36:塊
362~366:子塊
S502~S518、S602~S618:步驟
800:視訊編碼器
810、912:塊結構分割模組
812、914:幀內預測模組
814、916:幀間預測模組
816、918:開關
818:加法器
820:變換模組
822:量化模組
824、922:逆量化模組
826、924:逆變換模組
828、920:重構模組
830、926:環路處理濾波器
832、928:參考圖像緩衝器
834:熵編碼器
900:視訊解碼器
910:熵解碼器
以示例提出的本發明的各種實施例將參考後續附圖進一步描述,其中相同的參考數字指示相同的元件,以及其中:第1圖示出了根據四叉樹拆分將編碼樹單元(CTU)拆分成編碼單元(CU)以及將每一CU拆分成一個或多個變換單元的示例性編碼樹。
第2圖示出了次要變換以及逆次要變換操作的簡化框圖
第3圖示出了應用正向主要變換以及次要變換到M×N變換塊的殘差來生成最終變換係數。
第4圖示出了針對任何非0元素掃描變換塊第64位置到第17位置的示例。
第5圖示出了根據本發明實施例的設置一約束用於應用次要變換來編碼當前塊的視訊編碼方法的流程圖。
第6圖示出了根據本發明實施例的設置一約束用於應用逆次要變換用於解碼當前塊的視訊解碼方法的流程圖。
第7圖示出了16×16 CU內的16×16變換塊,用於說明應用次要變換到16×16變換塊的一些實施例。
第8圖示出了根據本發明實施例的合併視訊處理方法的視訊編碼系統的示例性系統框圖。
第9圖示出了根據本發明實施例的合併視訊處理方法的視訊解碼系統的示例性系統框圖。
第10圖示出了16x16變換塊的處理次序的示例。
將容易理解,如本文圖式所描述以及示出的本發明的元件可以以 各種不同的配置來排列以及設計。因此,如圖式所呈現的,本發明的系統以及方法的實施例的後續更詳細描述不旨在限制本發明的範圍,如所要求保護的,僅是本發明所選擇實施例的表示。
本發明中描述的各種方法旨在改善次要變換信令的效率或減少解碼延遲。在編碼器側,由預測操作首先預測當前塊(如CU)來生成預測子(predictor)。根據該預測子生成當前塊的殘差。變換操作(包括主要變換(如,DCT-II)以及次要變換的一個或兩者)被應用來決定最終變換係數。在熵編碼到視訊位元流之前,量化進程然後被應用於最終變換係數。在主要變換後的殘差被稱為臨時變換參數係數或者主要變換係數,以及臨時變換係數由次要變換處理來生成當前塊的最終變換係數。如果次要變換不被應用於當前塊,該臨時變換係數被指定為該當前塊的最終變換係數。如果主要變換不被應用,由次要變換處理的殘差是該當前塊的最終變換參數。在解碼器側,視訊位元流被解碼來導出與當前塊有關的係數層級(coefficient level),以及該係數層級被逆量化來生成最終變換係數。如果與當前塊有關的次要變換索引大於0以及滿足應用次要變換的條件(如當前變換塊的寬度以及高度大於或等於4),逆次要變換被首先應用於最終變換係數來決定臨時變換係數。然後逆主要變換被應用於該臨時變換係數來恢復殘差。如果與該當前塊有關的次要變換索引等於0或不滿足應用次要變換的條件,僅逆主要變換被應用於當前塊。然後根據該殘差以及當前塊對應的預測子獲得重構塊。
設置約束來應用次要變換 根據最近的次要變換信令設計,視訊解碼器僅可以在一個CU中所有TB的係數被解析後決定次要變換索引,如RST索引或LFNST索引。開發的視訊編解碼標準旨在支援64×64管線處理,因此在處理尺寸大於64×64樣本的CU時將發生的因為次要變換而產生的的延遲問題。本發明的各種實施例設置一約束來處理由次要變換信令造成的延遲問題。 在最近的發展中,次要變換僅被應用於幀內編解碼塊,因此後續實施例中的當前塊是幀內編解碼塊。然而,如果次要變換可以被啟用用於非幀內預測塊,後續實施例中的當前塊可以不需要是幀內編解碼塊。為了避免由次要變換信令造成的不期望的延遲問題,當CU的寬度或高度大於預定閾值時,次要變換不被應用於CU中的變換塊。在一些實施例中,以CU內亮度CB中亮度樣本的數目測量CU的寬度或高度。預定閾值的一些示例是16、32、64、128以及256亮度樣本。例如,如果當前塊的任一寬度或高度大於64樣本,當前塊的殘差不由次要變換處理,因此尺寸大於64×64的任何塊不由次要變換處理。在一個實施例中,根據視訊編解碼標準中指定的最大TU尺寸或最大TB尺寸(即,MaxTbSizeY)設置預定閾值,例如,正開發的視訊編碼解標準中的最大TB尺寸是64亮度樣本。在又一實施例中,根據最大TU尺寸或最大TB尺寸適應性決定預定閾值,其從序列參數集(SPS)、圖像參數集(PPS)、圖塊(tile)、圖塊組或條帶層級中發信的值來導出。例如,最大TB尺寸(MaxTbSizeY)被設置為1<<sps_max_luma_transform_size_64_flag(在SPS發信)。在一個實施例中,當當前塊的寬度或高度大於預定閾值時,當前塊的次要變換索引被設置為0,這一次要變換索引由編碼器發信以及由解碼器解析,或者在可選的實施例中這一次要變換索引不由編碼器發信以及由解碼器推斷為0。例如,視訊編碼器發信每一幀內編解碼CU的次要變換索引來指示是否應用次要變換,如果應用次要變換,次要變換索引也指示哪一矩陣是由編碼器所選擇的矩陣。這一實施例中的對應的解碼器解析每一幀內編解碼CU的次要變換索引來決定逆次要變換是否需要被應用。因為當幀內編解碼CU的寬度或高度大於預定閾值時,任何幀內編解碼CU的次要變換索引需要為0,視訊解碼器可以用預定閾值檢查每一幀內編解碼CU的寬度或高度用於位元流一致性(bitstream conformance)。在可選的實施例中,對於CU寬度或高度大於預定閾值的任何幀內編解碼的CU,次要變換索引在編碼 器側不被發信,以及該次要變換索引在解碼器側被推斷為0。在上述實施例中,當前塊是當前CU。該當前塊可以是包含一個或多個亮度TB的亮度編碼塊(CB)。當前塊可以是包含一個或多個色度TB的色度CB。當前塊可以是亮度或色度TB。該當前塊可以是TU。
在一些實施例中,基於當前CU中TU的數目,用於當前CU中一個或多個TU的變換操作或逆變換操作排除次要變換或逆次要變換。例如,當該當前CU中TU的數目大於1時,變換操作排除次要變換,以及當該當前CU中TU的數目大於1時,該逆變換操作排除逆次要變換。換言之,當當前CU中存在多個TU時(其意味著當前CU/CB的寬度或高度大於最大TU/TB尺寸),次要變換對當前CU是禁用的。當當前CU被拆分成多個TU時,當前CU的次要變換索引被強制為0或推斷為0。例如,當CU可以由次要變換處理時,次要變換索引被發信而不管這一CU是否被進一步拆分成多個TU。對應的解碼器解析CU的次要變換索引,但是如果這一CU被拆分成多個TU,強制該次要變換索引為0。在另一個示例中,當CU被拆分成多個TU時,次要變換索引不被發信,以及因此解碼器不解析次要變換索引以及直接推斷該次要變換索引為0。例外是應用ISP的亮度CB(在亮度拆分樹中,也稱為CU)可以被拆分成多個亮度TB(在亮度拆分樹中,也稱為TU),即使亮度CB的寬度以及高度不大於最大TB尺寸。這種情況下,當CU中存在多個TU時,可以使用次要變換。在另一個實施例中,次要變換不可以被應用於寬度或高度大於預定閾值的任何CU或者被拆分成多個TU的任何CU。例如,當這一當前CU被拆分成多個TU時,或者當TU寬度大於最大TU寬度與/或CU高度大於最大TU高度時,當前CU的次要變換索引仍被發信或解析但強制為0。或者,當當前CU被拆分成多個TU或者當前CU寬度或CU高度大於預定閾值時,次要變換索引在編碼器側不被發信,以及這一當前CU的該次要變換索引在解碼器側被推斷為0。
例如,設置一約束,在CU被拆分成多個TU時,跳過發信次要變換索引。當以下至少一個為真時,CU被強制拆分成多個TU。CU寬度大於最大TU寬度(或最大TU或TB尺寸)、CU高度大於最大TU高度(或最大TU或TB尺寸)、或CU尺寸大於SPS、PPS、圖塊、圖塊組或條帶層級中指定的最大TU或TB尺寸。因此,當當前CU將被拆分成多個TU時,次要變換索引不被發信或不被解析用於當前CU。當當前CU將被拆分成多個TU時,當前CU的次要變換索引被簡單地推斷為0。
在本發明的一些其他實施例中,當當前CU的寬度或高度大於預定閾值時或者當當前CU包含多個TU時,一約束限制應用次要變換或逆次要變換到當前CU內僅一個所選TU。即,當當前CU包含多個TU時,當前CU內僅一個所選TU可以由次要變換處理。用於所選TU的變換操作(包括次要變換)或逆變換操作(包括逆次要變換)可以遵循當前設計。例如,在編碼器側,僅包括主要變換的變換操作被應用於當前CU中的所有其他TU,其中包括主要變換以及次要變換兩者的輔助變換操作被應用於所選TU。在解碼器側,包括逆主要變換操作的逆變換操作被應用於當前CU的所有其他TU,而包含逆次要變換以及逆主要變換兩者的輔助變換操作被應用於所選TU。預定閾值的一些示例根據視訊編解碼標準中指定的最大TU尺寸來設置或者在SPS、PPS、圖塊、圖塊組或條帶層級中適應性決定。在實施這一約束的實施例中,根據解碼次序,所選TU是當前CU內的最後一個TU。相比於應用次要變換到一個其他TU,對最後一個TU應用次要變換導致較少延遲。
一些其他實施例設置約束來限制幀內或幀間CU的寬度、高度或尺寸。例如,為了應用次要變換到幀內編解碼的CU,每一幀內編解碼的CU的寬度或高度不超過預定閾值。預定閾值可以是16、32、64、128或256樣本,在一個實施例中,根據對應標準中指定的最大TU尺寸設置預定閾值,如64亮 度樣本,以及在另一個實施例中,根據SPS、PPS、圖塊、圖塊組或條帶層級中指定的最大TU尺寸適應性決定預定閾值。藉由實施這一約束,因為所有幀內CU的寬度或高度小於或等於最大TU尺寸,每一幀內編解碼的CU僅包含一個TU。
解碼器中實施的任何前述提到的方法可以根據塊寬度、塊高度或塊面積隱式決定是否禁用次要變換,或者由CU、CTU、條帶、圖塊、圖塊組、SPS或PPS層級發信的次要變換旗標來顯式決定。
約束次要變換的實施例的示例性流程圖 第5圖是實施一約束用於在視訊編碼系統中應用次要變換的視訊編碼方法的示例性實施例。這一示例性實施例中視訊編碼系統由變換操作處理與當前塊相關的殘差,其中與該當前塊相關的該殘差被拆分成一個或多個變換單元(TU),以及每一TU由亮度以及色度變換(TB)塊組成。在這一示例性實施例中,次要變換塊被應用於幀內塊的亮度與/或色度分量。在步驟S502,視訊編碼系統的示例性實施例首先接收與當前視訊圖像中當前塊有關的輸入資料,以及在步驟S504決定該當前塊是否由幀內預測來編碼。如果在步驟S504中該當前塊被決定為由幀內預測來編碼,在步驟S506,該視訊編碼系統在應用幀內預測後生成該當前塊的殘差。如果該當前塊在步驟S504被決定為由非幀內預測來編碼,在步驟S508,該視訊編碼系統在應用非幀內預測後生成該當前塊的殘差。非幀內預測的一些示例包括合併預測、跳過預測、仿射運動補償預測以及基於子塊的時間運動向量預測。在該當前塊由跳過模式編碼的情況下,沒有與該當前塊有關的殘差需要被進一步處理。在這一實施例中,次要變換可以僅對由幀內預測編解碼的當前塊啟用;然而,如果次要變換可以被應用於由其他預測方法編解碼的塊,步驟S504、S506以及508可以被跳過或者修正。在步驟S508後,因為次要變換對非幀內預測的塊不啟用,在步驟S512中,當前塊的殘差由主要變換處理來生成最終變換係數。在步驟 S506中獲得當前塊的殘差後,在步驟S510中,將該當前塊的寬度以及高度的一個或兩者與預定閾值進行比較,以及如果當前塊的寬度或高度大於預定閾值,在步驟S512中,該視訊編碼系統應用主要變換到該當前塊的殘差來生成最終變換係數。如果該當前塊的寬度以及高度小於或等於預定閾值,在步驟S514,該視訊編碼系統進一步決定次要變換是否需要用於該當前塊,如果應用了次要變換,在步驟S516,該視訊編碼系統對該當前塊的殘差執行包括主要變換以及次要變換的變換操作來生成最終變換係數,否則,在步驟S512,該視訊編碼系統對該當前塊的殘差執行僅包括主要變換的變換操作。在本發明的一些實施例中,預定閾值被設置為等於最大TU尺寸,如64亮度樣本。在步驟S510的一個實施例中,視訊編碼系統也檢查當前塊中是否有多個TU,以及如果寬度或高度大於預定閾值或者當前塊具有多個TU,前進到S512。在一些其他實施例中,藉由檢查當前塊中是否由多個TU,替換步驟S510。在步驟S512或S516中獲得最終變換係數後,在步驟S518,視訊編碼系統根據該最終變換係數編碼該當前塊。在當前變換跳過模式(TSM)被啟用以及被當前塊選擇的情況下,主要變換以及次要變換都被禁用,因為在步驟S518中當前塊的殘差在樣本域中被直接編碼而不變換到頻率域中,因此步驟S510、S512、S514以及S516被跳過。
第6圖是視訊解碼系統中實施的對應的視訊解碼方法的示例性實施例的流程圖。在步驟S602,接收與當前視訊圖像中當前塊相關的輸入資料。在步驟S604,該視訊解碼器系統決定該當前塊的預測模式是否是幀內預測,以及如果是,在步驟S606,解碼該當前塊的最終變換係數;否則,在步驟S608解析並解碼該當前塊的最終變換係數。在這一實施例中,因為次要變換對以非幀內預測編解碼的CU是禁用的,在步驟S612,視訊解碼系統對最終變換係數執行僅包括逆主要變換的逆變換操作來恢復該當前塊的殘差。在步驟S606之後,在步驟S610,視訊解碼系統將該當前塊的寬度與高度的一個或兩者與預定 閾值進行比較,以及如果該當前塊的寬度或高度大於預定閾值前進到步驟S612,或者如果該寬度與高度小於或等於預定閾值,前進到步驟S614。在另一個實施例中,視訊解碼系統在步驟S610中檢查該當前塊中是否有多個TU而不是比較寬度與高度。在一個實施例中,視訊解碼系統檢查兩者,以及如果寬度或高度大於預定閾值或者該當前塊具有多個TU,前進到步驟S612。在步驟S612,對該最終變換係數執行包括逆主要變換的逆變換操作來恢復該當前塊的殘差。在該寬度與高度小於或等於預定閾值的情況下,該視訊解碼系統解析與該當前塊有關的次要變換索引以及在步驟S614中檢查這一次要變換索引是否等於0。如果該次要變換索引不等於0,例如,該次要變換索引等於1或2,指示次要變換在編碼器側被應用於該當前塊,在步驟S616中,該視訊解碼系統對該最終變換係數應用逆次要變換然後是逆主要變換來恢復該當前塊的殘差。如果該次要變換索引等於0,指示次要變換在編碼器側不被應用於該當前塊,在步驟S612該視訊解碼系統對該最終變換係數僅應用逆主要變換來恢復殘差。在步驟S612或者步驟S616中恢復殘差後,基於該當前塊的殘差解碼該當前視訊圖像中的當前塊。當步驟S610的檢查結果為真時,第6圖中示出的示例性實施例推斷次要變換索引為0。根據各種實施例,當當前CU的寬度或高度大於預定閾值或者當該當前CU中有多個TU時,在對應的視訊編碼器中,與當前CU有關的次要變換索引可以在視訊位元流中被發信或不被發信。如果次要變換索引總是被發信用於所有幀內編解碼的CU,視訊解碼器可以總是解析該次要變換索引來決定應用哪一變換進程,以及步驟S610可以再次檢測所解析次要變換索引的有效性。
用於次要變換的信令修正 為了解決由次要變換信令的傳統設計造成的延遲問題,本發明的一些實施例修正當前次要變換信令設計。在一些實施例中,在TU層級而不是在CU層級發信次要變換語法,如RST索引或者 LFNST索引。例如,根據一實施例,在TU的最後發信次要變換索引。在另一個實施例中,在在TB層級發信最後有效係數後,發信TU的次要變換索引,以及然後發信這一TU的語法元素,如每一TB中每一編解碼組的有效旗標被發信。換言之,在掃描次序中下一TU的語法元素之前,在TU層級發信該次要變換語法。在又一實施例中,在重構係數用於每一係數組之前,發信次要變換索引。在當前CU中有多個TU的情況下,在至少一個TU中發信該當前CU的次要變換索引。例如,在該當前CU的第一TU中發信該次要變換索引。根據一個實施例,因為次要變換在當前CU的後續TU中不被允許,次要變換可以僅被應用於當前CU的第一TU。在另一個實施例中,所發信的次要變換索引與該當前CU中的所有TU共用。例如,根據在第一TU中發信的共用的次要變換索引,變換操作或逆變換操作被應用於後續TU。在另一個示例中,每一TU中的非0係數的數目與閾值進行比較,以及如果非0係數的數目大於閾值,根據共用的次要變換索引,TU可以僅應用次要變換或者逆次要變換。在可選的實施例中,在當前CU的首先N個TU的每一者發信次要變換索引,其中N從中1到當前CU中TU的總數目中來選擇。在又一實施例中,因為相比於對任何其他TU執行次要變換,對最後的TU執行次要變換導致更少的延遲,次要變換索引在該當前CU內的最後TU中被發信。
在次要變換索引信令的一些實施例中,在TB層級發信最後有效係數後,發信次要變換的語法元素,如次要變換索引。TB的剩餘語法元素被發信,如TB中每一編解碼組的有效旗標。視訊編碼器的一個實施例在TB層級發信最後有效係數之後,在TB層級發信次要變換索引,以及然後發信TB的剩餘語法元素。在一個實施例中,在TB層級發信最後有效係數之後,在TU層級發信次要變換語法,以及然後發信TU的語法,如每一TB中每一編解碼組的有效旗標。例如,編解碼組包含4×4樣本。在另一個實施例中,在TU層發信最後有 效係數之後,在CU層級發信次要變換語法,以及然後發信TU的語法,如TU中每一編解碼組的有效旗標的信令。
在一實施例中,在當前CU的第一可用TU中發信當前CU的次要變換語法,如RST索引或LFNST索引。在這一實施例中,如果用於次要變換信令的約束被滿足以及次要變換允許用於當前CU,當前CU具有一第一可用TU。次要變換信令的約束的示例取決於TU的最後有效係數的位置。在另一示例中,當變換係數中非DC值的數目大於預定數目時,次要變換信令的約束僅發信次要變換語法。次要變換信令的約束的一些其他示例將在後續節段中進行描述。允許次要變換的示例是當當前CU是幀內編解碼的CU時。根據一個實施例,對於當前CU內的每一剩餘TU而不是第一可用TU,次要變換語法不被發信以及被推斷為與該第一可用TU的次要變換語法相同。即,剩餘的TU與該第一可用TU共用次要變換語法。在這一實施例中,如果次要變換語法的約束在當前塊的任何剩餘TU中不被滿足,次要變換或逆次要變換將不被應用於這一剩餘TU而不管該當前塊中第一可用TU的次要變換語法。在一個示例中,如果在當前CU中不能找到第一可用TU用於次要變換,次要變換將不被應用於該當前CU中的任何TU。在另一個實施例中,次要變換或逆次要變換僅被應用於當前CU內的第一可用TU以及不被應用於該當前CU內的剩餘TU。
在一些實施例中,在當前CU的每一TU檢查該約束,以及滿足該約束的每一TU共用相同的次要變換語法。例如,如果所有TU滿足次要變換信令的約束,次要變換或逆次要變換可以被應用於當前CU中的所有TU。在另一個實施例中,約束也可以在當前CU內的每一TU中檢查,但是如果所有TU滿足該約束,次要變換或逆次要變換僅被應用於該當前CU中的一個或多個TU。如果當前塊中的任何CU對次要變換不可用,因為次要變換信令的約束未被滿足,次要變換或者逆次要變換不可用被應用於當前CU中的TU。
基於最後有效係數的次要變換信令 根據本發明的一些實施例,在各種先前所描述實施例中提到的次要變換信令的約束可以根據一個或多個變換塊的一個或多個最後有效係數來設置。次要變換信令的約束的實施例與一個或多個變換塊的最後有效係數的一個或多個位置有關。編碼器發信與每一變換塊的最後有效係數位置相關的語法,指示變換塊中最後有效係數的位置。藉由解析與每一變換塊的最後有效係數位置有關的語法,解碼器決定每一變換塊中最後有效係數的位置。例如,與最後有效係數位置有關的語法包括last_sig_coeff_x_prefix、last_sig_coeff_y_prefix、last_sig_coeff_x_suffix以及last_sig_coeff_y_suffix。
在傳統的RST信令設計中,編碼器或解碼器檢查在次要變換的歸零區域(zero-out)內是否有任何非0係數,其意味著係數在次要變換之後或者逆次要變換變換之前是0,以及如果在次要變換的歸零區域中找到至少一個非0係數,跳過發信或解析次要變換索引。藉由僅檢查每一所考慮TB的TB層級語法元素,本發明的實施例簡化次要變換信令的這一檢查進程。第7圖示出了16×16 CU內的16×16 TU,用於說明根據在TB層級發信的最後有效係數的次要變換信令的各種實施例。第7圖示出了16×16 TU的亮度(luma)變換塊(TB),其中出於簡便未示出16×16 TU的兩個色度(chroma)TB。在次要變換信令的一些實施例中,根據當前塊中每一TB中最後有效係數的位置適應性發信次要變換索引用於當前塊,如RST索引或者LFNST索引。例如,當前塊是包含一個或多個亮度TB的亮度CB或者當前塊是包含一個或多個色度TB的色度CB,以及根據多個亮度或色度TB中最後有效係數的一個或多個位置條件地發信次要變換索引。又例如,根據一個或多個亮度TB中最後有效係數的位置適應性地發信次要變換索引用於當前CU中的一個或多個亮度TB,以及這一次要變換索引由當前CU中的多個亮度以及色度TB共用。在另一個示例中,當前塊是包括一個或多 個亮度TB以及一個或多個色度TB的CU,以及根據亮度或色度TB的一個或兩者中最後有效係數的一個或多個位置條件地發信次要變換索引。次要變換僅被應用於一個或多個亮度或色度TB。在後續實施例中,假定在CU層級或者在解析當前塊的所有TB後發信次要變換索引,然而,這些實施例也可以用在TB層級(在解析當前TB中的係數後發信或者在解析當前TB中最後有效係數位置後發信)或TU層級(或在解析當前TU內的多個TB後)發信的次要變換索引來實施。例如在當前CU的所有TB後,在CU層級發信當前CU的次要變換索引。在當次要變換被應用於這一16×16 CU的情況下,使用一所選次要變換要點,16×48矩陣乘法被應用於16×16 CU內的16×16變換塊。這些實施例中每一編解碼組是變換塊中的4×4子塊。該變換塊的左上8×8區域的第一、第二、第三以及第四編解碼組被標記為CG 0、CG 1、CG 2以及CG 3。用於CG 0、CG 1、CG 2以及CG 3的對應有效旗標被分別標記為SigFlagCG0、SigFlagCG1、SigFlagCG2以及SigFlagCG3。當一編解碼組的有效旗標為真,表示該編解碼組具有非零係數。在視訊編碼器中,16×16 TU首先由主要變換處理來生成主要變換係數,以及首先三個編解碼組CG 0、CG 1、CG 2中的48個主要變換係數是次要變換的輸入。該48個主要變換係數與所選的16×48矩陣相乘來生成16個次要變換係數。根據一個實施例,在應用次要變換後,該第一編解碼組CG 0中的係數被設置為等於所生成的16個次要變換係數,而該變換塊中所有剩餘係數被設置為0。在次要變換未被應用的情況下,該第二、第三以及第三編解碼組CG 1、CG 2、CG3與/或該變換塊中的剩餘區域可以包含非0係數。在次要變換後所有變換係數被設置為0的區域被稱為次要變換的歸零區域。
取代搜索次要變換的歸零區域內的非0係數,本發明的實施例檢查每一所考慮變換塊的最後有效係數的位置。根據當前CU內一個或多個所考慮TB中最後有效係數的位置,適應性地發信次要變換係數用於當前CU。所考慮 TU的一些示例是當前CU中的所有TB,僅當前CU中的亮度TB、僅當前CU的色度TB、僅當前CU中具有有效係數的TB、當前塊中預定子集合的TB或者除了不允許次要變換的TB之外所有TB。不允許次要變換的TB包括TB寬度或TB高度小於4樣本的任何TB或者由變換跳過處理的任何TB。如果當前塊中沒有所考慮的TB,次要變換不被應用於當前塊中的任何TB。例如,在這一實施例中,如果任何所考慮TB中最後有效數的位置在預定區域內(如,次要變換的歸零區域,其中在次要變換後所有係數被設置為0),視訊編碼器跳過發信次要變換索引。當當前塊CU內任何所考慮TB中最後有效係數的位置位於預定區域時,視訊解碼器推斷次要變換不被應用於當前CU。在一個實施例中,該預定區域包括當前變換塊的CG 1、CG 2或CG 3。當當前CU內任何所考慮變換塊中有效係數的位置在CG 1、CG 2或CG 3中時,因為CU1、CG2以及CG3中所有係數在次要變換後被設置為0,視訊解碼器因此推斷次要變換不被應用於當前CU。在另一個實施例中,該預定區域包括除了左上4x4子塊之外的整個TB,或者該預定區域包括TB中位置索引大於15的這些係數位置,假設位置索引範圍從0開始並且整個TB的處理次序是對角線掃描。在另一個實施例中,預定區域包括除了首先8個係數位置之外的整個TB,或者預定區域包括TB中位置索引大於7的係數位置,假定位置索引從0開始以及整個TB的處理次序是對角線掃描。在本發明的優選實施例中,根據每一所考慮TB中最後有效係數的位置,在沒有任何語法信令的情況下次要變換被推斷為被禁用,其意味著次要變換索引在編碼器將不被發信以及該次要變換索引在解碼器將不被解析。例如,當該當前CU內任何所考慮變換塊的最後有效係數的位置在該變換塊中次要變換的預定區域中時,視訊解碼器推斷當前CU的對應的次要變換索引為0而不從視訊位元流中解析該次要變換索引。
在一個實施例中,左上8×8區域的第二、第三以及第四編解碼組 CG1、CG2以及CG3中的係數在次要變換後被設置為0。在另一個實施例中,除了左上4×4子塊之外的所有變換係數在次要變換後被設置為0。在另一個實施例中,當預定區域指次要變換的歸零區域時,預定區域根據TB寬度或TB高度變化。例如,如果TB寬度等於TB高度且TB寬度等於4或8,則如所引入的將N=16、48或64的RST 8xN應用於TB,以及如果TB中的位置索引大於7,那麼在次要變換之後的係數為零。在這一示例中,預定區域包括TB中位置索引大於7的這些係數位置,假定位置索引從0開始以及整個TB的處理次序是對角線掃描。在另一個示例中,如果如所引入的將N=16、48或64的RST 16×N應用於TB,以及如果TB中位置索引大於15,那麼在次要變換後的係數為0。在這一示例中,預定區域包括TB中位置索引大於15的這些係數位置,假定位置索引從0開始以及整個TB的處理次序是對角線掃描。根據這些實施例,當任何所考慮變換塊的最後有效係數的位置在該變換塊的左上8×8區域的任何第二、第三以及第四編解碼組CG 1CG 2以及CG 3中時、或當任何所考慮變換塊的最後有效係數的位置不在左上8×8區域的第一編解碼組CG 0時,或者任何所考慮塊的最後有效係數的位置在預定區域時,次要變換不被應用。在解碼器中,在解析當前CU中每一所考慮變換塊的最後有效係數位置後,當任何所考慮變換塊的最後有效係數的位置在除了第一編解碼組CG 0之外的左上8×8區域、除了第一編解碼組CG 0之外的整個變換塊或者預定區域時,次要變換索引被推斷為0。在這一實施例中,編碼器根據當前CU內每一所考慮TB的最後有效係數的位置以及預定位置適應性跳過發信當前CU的次要變換索引,以及根據當前CU內所考慮TB的最後有效係數的位置以及預定位置,解碼器推斷逆次要變換對當前CU是禁用的。例如,當任何所考慮TB的最後有效係數的位置落入預定區域(如除了TB中第一編解碼組的編解碼組)時,藉由推斷當前CU的次要變換索引為0,逆次要變換是禁用的。當所考慮變換塊的最後有效係數的所有位置不在預 定區域時,如果其它次變換發信條件也滿足,一個實施例的編碼器可以發信次要變換索引。類似地,當所考慮變換塊中最後有效係數的位置不在預定區域時,如果其它次變換發信條件也滿足,在這一實施例中,解碼器可以解析次要變換索引,否則該解碼器推斷逆次要變換對整個塊或整個CU是禁用的。藉由在TB層級解析最後有效係數位置,解碼器決定變換塊中最後有效係數的位置。
在上述一些實施例中,當次要變換被應用於變換塊時,與變換塊中一些預定編解碼組的殘差編解碼相關的一個或多個語法元素不需要被發信。例如,當次要變換被應用於變換塊時,在當前塊被解析後與一個或多個變換塊中一些預定編解碼組的殘差編解碼相關的這些語法元素總是被設置為0,因此,當次要變換索引大於0時,與殘差編解碼相關的這些語法元素在視訊位元流不被發信或者不從視訊位元流來解析。在應用次要變換後,一些編解碼組中的係數都被設置為0。其暗示著與殘差編解碼相關的一些特定語法元素不需要被發信,如這些編解碼組的有效旗標。在一個示例中,第二、第三以及第四編解碼組CG 1、CG 2以及CG 3以及左上8×8區域外的區域的係數在次要變換後被設置為0。第5圖示出了16×16 CU內的16×16變換塊的示例。16×16變換塊中每一4×4子塊是編解碼組。左上8×8區域內編解碼組被標記為CG 0、CG 1、CG 2以及CG 3,以及這些編解碼組的對應的有效旗標被標記為SigFlagCG0、SigFlagCG1、SigFlagCG2以及SigFlagCG3。如果次要變換被應用,16×48矩陣在次要變換操作中被選擇來將這一16×16變換塊中左上8×8區域的首先48個變換係數變換成16個次要變換係數。根據一個實施例,在次要變換後,除了第一編解碼組CG 0之外的變換塊中的係數被設置為0,因此根據這一實施例,CG 1、CG 2以及CG 3的有效旗標SigFlagCG1、SigFlagCG2以及SigFlagCG3以及左上區域外的區域的有效旗標在編碼器側不被發信以及在解碼器側被推斷為假。
次要變換信令取決於將最後有效係數位置與閾值比較 在本發明 的一些實施例中,根據來自CU內一個或多個變換塊(TB)的一個或多個比較結果,在視訊位元流中條件地發信次要變換語法。一個比較包括將TB在最後有效係數的位置與預定位置進行比較。在一些實施例中,在視訊位元流中條件地發信次要變換語法僅取決於從當前CU內所考慮TB的比較結果。例如,當前CU中的所有TB是所考慮的TB。在另一個示例中,僅當前CU中的亮度TB是所考慮的TB。在另一個示例中,僅當前CU中具有有效係數的TB是所考慮的TB。在另一個示例中,所考慮的TB可以是當前CU中TB的任何子集合。在另一個示例中,在當前CU中,除了不允許次要變換的這些TB之外,TB是所考慮的TB。例如,如果TB寬度或TB高度小於4,TB不允許次要變換,或者如果TB由變換跳過處理,TB不允許次要變換。當所有所考慮TB的比較結果不滿足次要變換的信令條件時,次要變換被推斷為對當前CU是禁用的,以及次要變換索引在視訊位元流不被發信。其中在當前CU內沒有所考慮的TB,因為次要變換對當前CU是禁用的,次要變換索引不被發信。設置次要變換的信令條件的示例是當TB的最後有效係數的位置大於預定位置時。如果當前CU中所有所考慮TB的最後有效係數的位置小於或等於預定位置,當前CU的次要變換索引不被發信。第7圖中示出的僅包含一個16×16變換塊的16×16 CU可以用於說明根據16×16變換塊中最後有效係數的位置,決定是否發信次要變換索引的一些示例。假定這一16x16變換塊是當前CU中所考慮的TB。在後續實施例中,在CU層級或者在發信當前CU中所有TB的殘差編解碼語法後發信次要變換索引,然而在一些其他實施例中可以在TU、TB層級或者在發信殘差編解碼語法後發信次要變換索引,該殘差編解碼語法包括當前CU中一個或多個TB的最後有效係數的位置,以及如果在TU、TB層級或者在發信包括於當前CU的一個或多個TB的最後有效係數的位置的殘差編解碼語法後發信該次要變換,此時,所考慮的TB在當前TU內,當前TB,或在當前TB之前發信的TB。在其他實施例中, 當前CU的次要變換索引在當前CU的一個或多個亮度TB後被發信,或者在當前CU中的第一非0 TB後被發信,或者在當前CU中第一TB後被發信。
解碼器從視訊位元流解析CU的每一TB的最後有效係數位置語法,以及基於所解析的最後有效係數位置語法決定每一TB的最後有效係數的位置。例如,最後有效係數位置語法包括last_sig_coeff_x_prefix,last_sig_coeff_y_prefix,last_sig_coeff_x_suffix以及last_sig_coeff_y_suffix。最後有效係數的位置與預定位置進行比較,如(0,0),以及如果最後有效係數的位置等於(0,0),解碼器推斷次要變換索引為0。
各自的次要變換索引可以被發信用於亮度以及色度CB/CU。在這一實施例中,對於各自拆分樹中編解碼的一個亮度CB以及兩個色度CB,一個次要變換索引被條件地發信用於亮度CB取決於亮度CB中的一個或多個亮度TB以及另一個次要變換索引被條件地發信用於色CB取決於色度CB中的一個或多個色度TB。在可選的實施例中,僅一個次要變換索引被發信用於每一CU,以及亮度以及色度TB的一個或兩個使用該次要變換索引,例如,根據每一亮度TB或任何亮度TB的子集中的最後有效係數的位置,次要變換係數被條件第發信用於一個或多個亮度TB,以及色度TB再用該次要變換索引。在另一個示例中,根據亮度以及色度TB中最後有效係數的位置,該次要變換索引被條件地發信用於一個或多個亮度TB。在這一實施例中,對於共用拆分樹中編解碼的當前CU,一個次要變換索引被條件地發信用於當前CU,以及根據該次要變換索引,該次要變換或逆次要變換被應用於亮度以及色度TB的一個或兩者。例如,如果次要變換僅被應用於亮度TB,根據當前CU中的亮度以及色度TB,該當前CU的次要變換索引被條件地發信。在一個實施例中,如果次要變換被應用於16×16 CU內的16×16 TU,次要變換索引大於0,以及如果次要變換不被應用於16×16 TU,該次要變換索引被設置為0。在後續實施例中,根據來自CU中所考慮TB 的比較結果,編碼器適應性地跳過發信次要變換索引。類似地,根據來自CU中所考慮TB的比較結果,解碼器適應性地推斷次要變換不被應用於變換塊。
如第7圖所示,在16×16變換塊的左上8×8區域有四個4×4編解碼組,包括第一編解碼組CG 0、第二編解碼組CG 1、第三編解碼組CG 2以及第三編解碼組CG 3。用於CG 0、CG 1、CG 2以及CG 3的對應的有效旗標被標記為SigFlagCG0,SigFlagCG1,SigFlagCG2以及SigFlagCG3。如果次要變換被應用於這一16×16變換塊,16×48矩陣被用於將該16×16變換塊中左上8×8區域的48個主要變換係數變換成16個次要變換係數。該16個次要變換係數替代該16×16變換塊中左上8×8區域的第一編解碼組CG 0中的主要變換係數。CG 1以及CG 2中的係數或者CG 1、CG 2以及CG 3或者除了CG 0(首先16個次要變換係數)之外的TB中的係數在次要變換後被設置為0。在次要變換後所有變換係數被設置為0的區域被表示為次要變換的歸零區域。如果有任何有效係數位於在次要變換的歸零區域,次要變換被推斷為被禁用。描述中的術語係數或變換係數指在編碼器被遞送給量化進程的最終係數或者在解碼器在去量化進程後接收的最終係數。在一些實施例中,如果當前CU的所考慮TB的最後有效係數的位置小於或等於處理次序中的預定位置,當前CU的次要變換索引在編碼器不被發信以及當前CU的逆次要變換在解碼器被推斷為被禁用。編碼器將當前CU中所考慮TB中最後有效係數的位置與處理次序中的預定位置進行比較。如果所考慮TB的最後有效係數的位置小於或等於處理次序中的預定位置,編碼器跳過發信當前CU的次要變換索引,否者,該編碼器基於其他現有條件發信次要變換索引。解碼器也將當前CU的所考慮TB的最後有效係數的位置與處理次序中的預定位置進行比較。如果至少一個所考慮變換塊中最後有效係數的位置大於該預定位置,解碼器解析該次要變換索引;否則,該逆次要變換被推斷為對該變換塊是禁用的。在這一實施例中,處理次序可以對角線掃描次序用於變換塊, 在每一編解碼組內,與/或跨過變換塊中的所有編解碼組。16×16變換塊的處理次序的示例是從左上8×8區域、左下8×8區域、右上8×8區域到右下8×8區域,以及在16×16變換塊的每一8×8區域內,處理次序是從左上編解碼組、左下編解碼組、右上編解碼組到右下編解碼組,以及在每一編解碼組內,處理次序是對角線掃描次序。16×16變換塊的處理次序的另一個示例是從左上係數到左下係數,如第10圖所示。
在上述實施例中,預定位置的示例是變換塊中的第一位置,其包含變換塊中的DC值,如位置0。在這一實施例中,因為如果僅由DC值在當前塊的所有所考慮變換塊內(其意味著所有所考慮TB的最後有效係數的位置是TB中的第一位置)次要變換不可用被應用,次要變換索引不被發信用於當前塊。當前塊是CU、CB或TU。僅當至少一個所考慮TB的最後有效係數的位置不等於該變換塊的第一位置時發信次要變換索引,其暗示在至少一個所考慮變換塊中有至少一個非DC值。對於包含一個TB的CU的示例,如第7圖所示,如果最後有效係數的位置在位置C,其在第一編解碼組CG 0內但是大於CG 0中的第一位置,編碼器發信次要變換索引用於16×16 CU以及解碼器從視訊位元流解析該次要變換索引。在另一個示例中,如第7圖所示,如果最後有效係數的位置是位置D,其是第一編解碼組CG 0中的第一位置,編碼器跳過發信16×16 CU的次要變換索引以及解碼器推斷逆次要變換不被應用於16×16CU內的TU。在這一示例中,在變換塊中僅有一個DC值以及將這一次要變換應用於這一變換塊將不會帶來額外的編解碼增益,因此次要變換被禁用以及次要變換索引不被發信。預定位置的另一個示例是左上8×8區域的第一編解碼組的固定位置(x,y),其中x以及y可以是從0,1,2,3...到(最大編解碼組尺寸-1)中選擇的整數。例如。固定位置(x,y)是該變換塊內左上8×8區域的第一編解碼組CG 0中的(0,1)、(1,0)或(1,1)。CG 0中預定位置的另一個示例由一固定掃描次序決定,例如,根據一 固定掃描次序,從第一編解碼組CG 0中的第一、第二、第三、第四到(最大編解碼組尺寸-1)位置。固定掃描次序的示例是對角線掃描次序。
本發明的一些實施例也檢查變換塊中第一編解碼組CG 0中非0係數的數目是否大於預定數目,當CG 0中非0係數的數目大於預定數目時,編碼器或解碼器僅發信或解析次要變換索引。如果CG 0中非0係數的數目小於或等於預定數目,根據這一實施例,次要變換不被應用於變換塊。當當前CU內變換塊的CG 0中非0係數的數目小於或等於預定數目時,編碼器跳過發信當前CU的次要變換索引。預定數目的一些示例是1、2、3以及4。在一個實施例中,如果最後有效係數的位置大於預定位置或者左上8×8區域的第一編解碼組中非0係數的數目大於預定數目以及該最後有效係數的位置在該第一編解碼組內,編碼器發信該次要變換索引,否則該編碼器跳過發信該次要變換索引。預定位置的一些示例是第64位置以及第48位置,以及預定數目的示例是1。在啟用次要變換用於包含多個TU的當前CU的實施例中,僅當所有TU的CG 0中的非0係數的數目大於預定數目時應用次要變換。例如,如果當前CU中每一變換塊包含小於或等於一個非0係數,次要變換索引不被發信或解析。
在一些實施例中,決定CU內所考慮變換塊中非DC值的數目以及與預定數目進行比較來決定次要變換信令,例如,僅當在CU內的至少一個所考慮變換塊中有至少一個非0變換值時應用次要變換。在這一實施例中,當在CU內的至少一個所考慮變換塊中有至少一個非DC變換值時,次要變換索引在編碼器被發信。類似地,當CU內的至少一個所考慮變換塊中有至少一個非DC變換值時,解碼器僅解析次要變換索引。當當前CU中所有所考慮TB僅包含一個DC係數(如,最後有效係數為DC係數)時,藉由推斷次要變換索引為0而不解析次要變換索引,解碼器禁用逆次要變換用於當前CU內的TB。在一個實施例中,如果用於CU內至少一個所考慮變換塊的最後有效係數的位置大於預定位 置或者如果CU內至少一個所考慮變換塊的非DC值的數目大於預定數目與/或最後有效係數的位置在CU內每一所考慮變換塊中左上8×8區域的第一編解碼組CG 0內,該次要變換索引被發信或解析。預定數目的示例是0以及預定位置的一些示例是變換塊中的第一位置。在設置預定數目為0的實施例中,非DC值的數目也從最後有效係數的位置或者所考慮TB的最後有效係數位置語法來導出,即,如果用於至少一個所考慮TB的最後有效係數的位置大於該變換塊的第一位置,非DC值的數目大於預定數目(如,等於0)。這一實施例等同於當用於至少一個所考慮TB的最後有效係數的位置大於預定位置,或者當用於至少一個所考慮TB的最後有效係數的位置在出該第一編解碼組的第一位置之外的第一編解碼組內時,發信或解析該次要變換索引。
示例性系統框圖 先前所描述視訊處理方法的實施例在視訊編碼器、視訊解碼器或視訊編碼器與解碼器兩者中實施。例如,視訊處理方法在視訊編碼器的熵編碼模組或者在視訊解碼器的熵解碼模組中來實施。或者,視訊處理方法被實施為被整合到視訊編碼器或視訊解碼器中熵編解碼模組的電路。第8圖示出了實施視訊處理方法各種實施例的視訊編碼器800的示例性系統框圖。視訊編碼器800中的塊結構分割模組810接收視訊圖像的輸入資料以及決定一塊封結構用於待編碼的每一視訊圖像。當前視訊圖像中的每一葉編解碼塊由幀內預測模組812中的幀內預測或者幀間預測模組814中的幀間預測預測來移除空間冗餘或時間冗餘。幀內預測模組812基於當前視訊圖像的重構視訊資料提供葉編解碼塊的幀內預測子。幀間預測模組814基於來自一個或多個其他視訊圖像的視訊資料執行運動估計(MC)以及運動補償(ME)來提供葉編解碼塊的幀間預測子。開關816選擇幀內預測模組812或幀間預測模組814來提供預測子到加法器818來形成預測誤差,也稱殘差。當前視訊圖像中每一葉編解碼塊中的殘差被拆分成一個或多個變換塊。變換(T)模組820決定每一變換塊的變換 操作,以及該變換操作包括主要變換與次要變換的一個或兩者。如果變換塊的寬度或高度大於預定閾值,本發明的一些實施例禁用次要變換用於變換塊。每一變換塊的殘差由變換(T)模組820緊接著量化(Q)模組822處理來生成由熵編碼器834待編碼的變換係數層級。熵編碼器834也編碼預測資訊以及濾波資訊來形成視訊位元流。該視訊位元流然後與輔助資訊(side information)一起被打包。該當前變換塊的變換係數層級由逆量化(IQ)模組824以及逆變換(IT)模組826處理來恢復該當前變換塊的殘差。如第8圖所示,藉由在重構(REC)模組828將殘差添加到所選預測子來恢復視訊資料。重構視訊資料可以被存儲與參考圖像緩衝器(Ref.Pict.Buffer)832並由其他圖像預測的幀間預測模組814來使用。由於編碼處理,來自重構模組828的重構視訊資料可能受到各種損害,因此,在存儲待參考圖像緩衝器832之前,環路處理濾波器830被應用於重構視訊資料來進一步增強圖像品質。
第9圖中示出了解碼由第8圖的視訊編碼器800生成的視訊位元流的對應的視訊解碼器900。視訊解碼器900的輸入由熵解碼器910進行解碼來解析以及恢復每一變換塊的變換係數層級以及其他系統資訊。塊結構分割模組912決定每一視訊圖像的塊分割結果。解碼器900的解碼進程類似於在編碼器800的重構回路,除了解碼器900僅需要幀間預測模組916的運動補償預測。視訊圖像中每一葉編解碼塊由幀內預測模組914或幀間預測模組916進行解碼,以及開關918根據所解碼的模式資訊選擇幀內預測子或幀間預測子。與每一變換塊有關的變換係數層級然後由逆量化(IQ)模組922恢復來生成最終變換係數。逆變換(IT)模組924對最終變換係數應用變換操作來恢復殘差。該逆變換操作包括逆次要變換以及逆主要變換的一個或兩個。如果當前CU的寬度或高度大於預定閾值,本發明的一些實施例跳過當前CU中變換塊的逆次要變換。如果變換塊的寬度以及高度小於或等於預定閾值,根據從視訊位元流中解析的次要變 換索引,逆變換(IT)模組執行一逆變換操作。藉由在重構(REC)模組920中添加回預測子來重構所恢復的殘差來生成重構視訊。該重構視訊進一步由環路處理濾波器(濾波器)926處理來生成最終解碼視訊。如果當前解碼視訊是參考圖像,當前解碼視訊圖像的重構視訊也被存儲與參考圖像緩衝器928中用於解碼次序中的後續圖像。
第8圖以及第9圖中視訊編碼器800以及視訊解碼器900的各種元件可以由硬體元件、用於執行存儲與記憶體中程式指令的一個或多個處理器或硬體與處理器的組合來實施。例如,處理器執行程式指令來控制應用變換操作或逆變換操作。該處理器配備有單個或多個處理核心。在一些實施例中,處理器執行程式指令來執行編碼器800以及解碼器900中一些元件的功能,以及電性地耦合於處理器的記憶體用於存儲程式指令、對應於重構資料的資訊與/或編碼或解碼進程中的中間資料。一些實施例中記憶體包括非暫態計算可讀媒介,如半導體或固態記憶體、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、硬碟、光碟或者其他合適的儲存媒介。記憶體也可以是以上列出的兩個或多個非暫態電腦可讀媒介的組合。如第8圖以及第9圖所示,編碼器800以及解碼器900可以在相同的電子裝置中實施,因此如果在相同的電子裝置中實施,編碼器800與解碼器900的各種功能元件可以共用。本發明的任何實施例可以在編碼器800的變換模組820、與/或解碼器900的逆變換模組924中實施。或者,任何實施例可以被實施為耦合與編碼器800的變換模組820與/或解碼器900的逆變換模組924的電路,以致提供變換模組820或逆變換模組924所需要的資訊。
視訊處理方法的實施例適應性地啟用次要變換可以在整合到視訊壓縮晶片的電路或者整合到視訊壓縮軟體的程式碼中實施來執行以上描述的處理。例如,應用變換操作或逆變換操作可以在將在電腦處理器、數位訊號處理器(DSP)、微處理器或現場可程式閘陣列(FPGA)上執行的程式碼中實現。這些 處理器可以用於執行根據本發明的具體任務,藉由執行定義由本發明呈現的特定方法的機器可讀軟體代碼或者韌體代碼。
遍及本說明中對“一實施例”、“一些實施例”或類似語言的引用意味著結合實施例描述的特定特徵、結果或特性可以被包括於本發明的至少一個實施例中。因此,遍及本說明書中各個地方出現的短語“在一實施例中”或“在一些實施例中”不一定都指相同的實施例,這些實施例可以單獨地或者結合一個或多個其他實施例來實施。此外,所描述的特徵、機構或特性在一個或多個實施例中以任何合適的方式來組合。相關領域的通常知識者將意識到,然而,本發明可以沒有一個或多個具體細節或者用其他方法、元件等來實施。在其他情況下,公知的結構或操作未被詳細描述以避免混淆本發明的方面。
本發明可以以其他具體形式呈現而不背離其精神或基本特性。所描述的示例在所有方面僅被認為是說明性的而非限制性的。因此,本發明的範圍由所附申請專利範圍而非前述的描述來指示。與申請專利範圍的等同物的含義以及範圍一致的所有變化都在其範圍內。
S502~S518:步驟

Claims (23)

  1. 一種視訊編解碼系統中編碼視訊資料的方法,該方法包括:接收與一當前視訊圖像中一當前塊相關的輸入資料;藉由預測該當前塊生成該當前塊的殘差;決定該當前塊的一寬度或高度是否大於預定閾值;如果該當前塊的該寬度或高度大於該預定閾值,決定該當前塊的一變換操作,其中該變換操作不包括次要變換;應用該變換操作到該當前塊的該殘差來生成最終變換係數;以及根據該當前塊的該最終變換係數編碼該視訊圖像中的該當前塊;其中該當前塊是一編碼單元(CU)以及根據一最大變換單元(TU)尺寸或一最大變換塊(TB)尺寸設置該預定閾值。
  2. 如請求項1所述之視訊編解碼系統中編碼視訊資料的方法,進一步包括發信一次要變換索引用於該當前塊,指示該次要變換是否被應用於該當前塊,其中當該當前塊的該寬度或高度大於該預定閾值時,該次要變換索引被強制為0。
  3. 如請求項1所述之視訊編解碼系統中編碼視訊資料的方法,決定該變換操作的步驟進一步包括基於該當前塊中TU的數目決定該變換操作不包括該次要變換。
  4. 如請求項3所述之視訊編解碼系統中編碼視訊資料的方法,其中當該當前塊中TU的該數目大於1時,決定該變換操作不包括該次要變換。
  5. 如請求項3所述之視訊編解碼系統中編碼視訊資料的方法,其中決定該變換操作的步驟進一步包括決定一輔助變換操作用於該當前塊中的一個所選TU以及決定該變換操作用於所有其他TU,其中該輔助變換操作包括 主要變換與該次要變換兩者,以及該變換操作僅包括主要變換。
  6. 如請求項5所述之視訊編解碼系統中編碼視訊資料的方法,其中該當前塊內的該所選TU是該當前塊內的一最後TU。
  7. 如請求項1所述之視訊編解碼系統中編碼視訊資料的方法,其中該預定閾值是16、32、64、128以及256亮度樣本之一。
  8. 如請求項1所述之視訊編解碼系統中編碼視訊資料的方法,其中該最大變換單元尺寸或該最大變換塊尺寸由一編解碼標準指定或者在序列參數集(SPS)、圖像參數集(PPS)、圖塊、圖塊組或條帶層級中指定。
  9. 如請求項1所述之視訊編解碼系統中編碼視訊資料的方法,進一步包括當該當前塊的該寬度以及高度小於或等於該預定閾值時,發信一次要變換索引指示應用該次要變換。
  10. 如請求項1所述之視訊編解碼系統中編碼視訊資料的方法,其中該當前塊由幀內預測進行預測以及該次要變換對非幀內編解碼塊是禁用的。
  11. 一種視訊編解碼系統中解碼視訊資料的方法,該方法包括:接收攜帶與一當前視訊圖像中一當前塊有關的輸入資料的一視訊位元流;解碼與該當前塊有關的該輸入資料來決定該當前塊的最終變換係數;決定該當前塊的一寬度或高度是否大於一預定閾值;如果該當前塊的該寬度或高度大於該預定閾值,決定該當前塊的一逆變換操作,其中該逆變換操作不包括逆次要變換;應用該逆變換操作到該最終變換係數來恢復該當前塊的殘差;以及基於該當前塊的該殘差解碼該視訊圖像中的該當前塊;其中該當前塊是一編碼單元(CU)以及根據一最大變換單元(TU)尺寸或一最大變換塊(TB)尺寸設置該預定閾值。
  12. 如請求項11所述之視訊編解碼系統中解碼視訊資料的方法,進一步包括發信一次要變換索引用於該當前塊,指示逆次要變換是否應用於當前塊,其中當該當前塊的該寬度或高度大於該預定閾值時,該當前塊的該次要變換索引被推斷為0。
  13. 如請求項11所述之視訊編解碼系統中解碼視訊資料的方法,決定該逆變換操作的步驟進一步包括基於該當前塊中TU的數目決定該逆變換操作不包括該逆次要變換。
  14. 如請求項13所述之視訊編解碼系統中解碼視訊資料的方法,其中當該當前塊中TU的該數目大於1時,決定該逆變換操作不包括該逆次要變換。
  15. 如請求項13所述之視訊編解碼系統中解碼視訊資料的方法,其中決定該逆變換操作的該步驟進一步包括決定一輔助逆變換操作用於該當前塊內的一個所選TU並決定該逆變換操作用於所有其他TU,其中該輔助逆變換操作包括逆次要變換以及逆主要變換,以及該逆變操作僅包括逆主要變換。
  16. 如請求項15所述之視訊編解碼系統中解碼視訊資料的方法,其中該當前塊中該所選TU是該當前塊內的一最後TU。
  17. 如請求項11所述之視訊編解碼系統中解碼視訊資料的方法,其中該預定閾值是16、32、64、128以及256樣本之一。
  18. 如請求項11所述之視訊編解碼系統中解碼視訊資料的方法,其中該最大TU尺寸或最大TB尺寸由一編解碼標準指定,或者該最大TU尺寸或最大TB尺寸在一序列參數集(SPS)、圖像參數集(PPS)、圖塊、圖塊層或條帶層級中指定。
  19. 如請求項11所述之視訊編解碼系統中解碼視訊資料的方法,進一步包括僅當一塊的該寬度與高度小於或等於該預定閾值時解析一次要變換 索引,其中當該當前塊的該寬度或高度大於該預定閾值時,該當前塊的次要變換索引被推斷為0。
  20. 如請求項11所述之視訊編解碼系統中解碼視訊資料的方法,進一步包括解析一次要變換索引但不強制該次要變換索引為0。
  21. 如請求項11所述之視訊編解碼系統中解碼視訊資料的方法,其中該當前塊由幀內預測進行編解碼以及該逆次要變換對非幀內編解碼的塊是禁用的。
  22. 一種用於執行視訊編碼的裝置,包括一記憶體以及一個或多個處理器,該一個或多個記憶體執行存儲於該存儲器之程式指令,使得該裝置執行編碼視訊資料之方法,該方法包括:接收與一當前視訊圖像中一當前塊相關的輸入資料;藉由預測該當前塊生成該當前塊的殘差;決定該當前塊的一寬度或高度是否大於一預定閾值;如果該當前塊的該寬度或高度大於該預定閾值,決定該當前塊的一變換操作,其中該變換操作不包括次要變換;應用該變換操作到該當前塊的該殘差來生成最終變換係數;以及根據該當前塊的該最終變換係數編碼該視訊圖像中的該當前塊;其中該當前塊是一編碼單元(CU)以及根據一最大變換單元(TU)尺寸或一最大變換塊(TB)尺寸設置該預定閾值。
  23. 一種用於執行視訊解碼的裝置,包括一記憶體以及一個或多個處理器,該一個或多個記憶體執行存儲於該存儲器之程式指令,使得該裝置執行解碼視訊資料之方法,該方法包括:接收攜帶與一當前視訊圖像中一當前塊有關的輸入資料的一視訊位元流;解碼與該當前塊有關的該輸入資料來決定該當前塊的最終變換係數; 決定該當前塊的一寬度或高度是否大於一預定閾值;如果該當前塊的該寬度或高度大於該預定閾值,決定該當前塊的一逆變換操作,其中該逆變換操作不包括逆次要變換;應用該逆變換操作到該最終變換係數來恢復該當前塊的殘差;以及基於該當前塊的該殘差解碼該視訊圖像中的該當前塊;其中該當前塊是一編碼單元(CU)以及根據一最大變換單元(TU)尺寸或一最大變換塊(TB)尺寸設置該預定閾值。
TW109112747A 2019-04-16 2020-04-16 用次要變換編解碼視訊資料的方法以及裝置 TWI739393B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201962834487P 2019-04-16 2019-04-16
US62/834,487 2019-04-16
US201962868023P 2019-06-28 2019-06-28
US62/868,023 2019-06-28
WOPCT/CN2020/084898 2020-04-15
PCT/CN2020/084898 WO2020211777A1 (en) 2019-04-16 2020-04-15 Methods and apparatuses for coding video data with secondary transform

Publications (2)

Publication Number Publication Date
TW202044843A TW202044843A (zh) 2020-12-01
TWI739393B true TWI739393B (zh) 2021-09-11

Family

ID=72837019

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109112747A TWI739393B (zh) 2019-04-16 2020-04-16 用次要變換編解碼視訊資料的方法以及裝置

Country Status (5)

Country Link
US (1) US20220201335A1 (zh)
EP (1) EP3949423A4 (zh)
CN (1) CN114223207B (zh)
TW (1) TWI739393B (zh)
WO (1) WO2020211777A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11172211B2 (en) * 2019-04-04 2021-11-09 Tencent America LLC Method and apparatus for video coding
WO2020216303A1 (en) * 2019-04-23 2020-10-29 Beijing Bytedance Network Technology Co., Ltd. Selective use of secondary transform in coded video
CN117336484A (zh) * 2019-06-06 2024-01-02 Lg电子株式会社 图像解码和编码设备及发送比特流的设备
CN114342393A (zh) * 2019-07-12 2022-04-12 Lg 电子株式会社 基于变换的图像编译方法及其设备
KR20220050967A (ko) * 2019-10-04 2022-04-25 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
US20220150518A1 (en) * 2020-11-11 2022-05-12 Tencent America LLC Method and apparatus for video coding
JP2024516358A (ja) * 2021-04-12 2024-04-15 オッポ広東移動通信有限公司 係数符号化・復号化方法、符号器、復号器及びコンピュータ記憶媒体

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017058615A1 (en) * 2015-09-29 2017-04-06 Qualcomm Incorporated Non-separable secondary transform for video coding with reorganizing
WO2017191782A1 (en) * 2016-05-04 2017-11-09 Sharp Kabushiki Kaisha Systems and methods for coding transform data

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113411579B (zh) * 2016-05-13 2024-01-23 夏普株式会社 图像解码装置及其方法、图像编码装置及其方法
EP3454559A4 (en) * 2016-05-13 2019-03-13 Sony Corporation IMAGE PROCESSING DEVICE AND METHOD
US11095893B2 (en) * 2016-10-12 2021-08-17 Qualcomm Incorporated Primary transform and secondary transform in video coding
CN110546952A (zh) * 2017-03-21 2019-12-06 Lg电子株式会社 图像编码系统中的变换方法和用于该变换方法的设备
US10855997B2 (en) * 2017-04-14 2020-12-01 Mediatek Inc. Secondary transform kernel size selection
CN108322745B (zh) * 2018-02-28 2019-12-03 中南大学 一种基于不可分二次变换模式的帧内快速选择方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017058615A1 (en) * 2015-09-29 2017-04-06 Qualcomm Incorporated Non-separable secondary transform for video coding with reorganizing
WO2017191782A1 (en) * 2016-05-04 2017-11-09 Sharp Kabushiki Kaisha Systems and methods for coding transform data

Also Published As

Publication number Publication date
TW202044843A (zh) 2020-12-01
EP3949423A4 (en) 2023-04-12
US20220201335A1 (en) 2022-06-23
CN114223207B (zh) 2023-09-22
EP3949423A1 (en) 2022-02-09
WO2020211777A1 (en) 2020-10-22
CN114223207A (zh) 2022-03-22

Similar Documents

Publication Publication Date Title
TW202046723A (zh) 用適應性次要變換信令編解碼視訊資料的方法以及裝置
TWI739393B (zh) 用次要變換編解碼視訊資料的方法以及裝置
CN108028919B (zh) 一种视频或者图像编解码的方法及装置
TWI720584B (zh) 視訊處理系統中色度量化參數導出的方法以及裝置
US11659174B2 (en) Image encoding method/device, image decoding method/device and recording medium having bitstream stored therein
US11792388B2 (en) Methods and apparatuses for transform skip mode information signaling
CN114205630B (zh) 边界强制分区的改进
KR20170115529A (ko) 팔레트 모드 코딩을 위한 이스케이프 픽셀들 코딩
CN114009015A (zh) 转换省略块的传讯编码技术
US20220368901A1 (en) Image encoding method/device, image decoding method/device and recording medium having bitstream stored therein
US11601647B2 (en) Methods and apparatuses of inter coding for pictures partitioned into subpictures in video coding systems
TW202123707A (zh) 具有bdpcm尺寸約束的視訊處理方法以及裝置
CN114598873B (zh) 量化参数的解码方法和装置
TWI761166B (zh) 圖像和視訊編解碼中發信切片分割資訊之方法和裝置