TWI821013B - 視頻編解碼方法及裝置 - Google Patents
視頻編解碼方法及裝置 Download PDFInfo
- Publication number
- TWI821013B TWI821013B TW111143286A TW111143286A TWI821013B TW I821013 B TWI821013 B TW I821013B TW 111143286 A TW111143286 A TW 111143286A TW 111143286 A TW111143286 A TW 111143286A TW I821013 B TWI821013 B TW I821013B
- Authority
- TW
- Taiwan
- Prior art keywords
- inverse
- inverse transform
- unit
- transformation
- transform
- Prior art date
Links
- 230000009466 transformation Effects 0.000 claims abstract description 416
- 238000000034 method Methods 0.000 claims abstract description 192
- 238000011426 transformation method Methods 0.000 claims abstract description 114
- 238000003860 storage Methods 0.000 claims description 49
- 238000013139 quantization Methods 0.000 claims description 48
- 230000015654 memory Effects 0.000 claims description 44
- 238000004891 communication Methods 0.000 claims description 17
- 238000000844 transformation Methods 0.000 claims description 3
- 230000006835 compression Effects 0.000 abstract description 21
- 238000007906 compression Methods 0.000 abstract description 21
- 238000005516 engineering process Methods 0.000 abstract description 10
- 230000001131 transforming effect Effects 0.000 abstract description 4
- 230000000875 corresponding effect Effects 0.000 description 38
- 230000006870 function Effects 0.000 description 30
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 26
- 238000010586 diagram Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 19
- 238000006243 chemical reaction Methods 0.000 description 17
- 238000004364 calculation method Methods 0.000 description 16
- 238000005070 sampling Methods 0.000 description 16
- 238000004590 computer program Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 238000000354 decomposition reaction Methods 0.000 description 9
- 238000001914 filtration Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000000638 solvent extraction Methods 0.000 description 5
- 230000001965 increasing effect Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 241000023320 Luma <angiosperm> Species 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000012141 concentrate Substances 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000012432 intermediate storage Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Liquid Crystal Substances (AREA)
Abstract
本發明公開了一種視頻編解碼方法及裝置,涉及視頻編解碼技術領域,用於為當前編解碼技術提供新的變換方法,該變換方法有助於提升變換的靈活性,基於不同維度採用該變換方法有助於降低計算複雜度,減小硬體設備的計算負擔,降低硬體實現複雜度,提高壓縮性能。該方法包括:對碼流進行熵解碼和反量化得到反變換單元;對反變換單元進行離散小波反變換,得到反變換後的係數。
Description
本發明涉及視頻編解碼技術領域,尤其涉及一種視頻編解碼方法及裝置。
本專利申請要求於2021年11月11日提交的、申請號為202111335612.2的中國專利申請的優先權,該發明的全文以引用的方式併入本文中。
視頻是用戶獲取資訊的重要途徑。在視頻存儲與傳輸過程中,考慮到資訊的品質與所佔用的空間,需要對視頻進行壓縮,平衡資訊完整性與所佔用的空間之間的關係。視頻編碼(Video Coding)技術是實現壓縮的一種方式,視頻編碼主要通過預測、變換、量化和熵編碼的步驟得到碼流。當前變換主要採用的方法是對變換單元在水平方向與垂直方向進行預設的變換方法,其中該預設的變換方法為離散餘弦變換(Discrete Cosine Transform,DCT)或概念上類似的變換(例如,離散正弦變換(Discrete Sine Transform,DST)),而上述方式的靈活性較低,採用上述兩種變換方法計算複雜度高,不便於實現視頻編解碼。
本發明實施例提供一種視頻編解碼方法及裝置,提升變換方法的靈活性,降低計算複雜度,提高壓縮性能。
為達到上述目的,本發明實施例採用如下技術方案:第一方面,本發明實施例提供一種視頻解碼方法,該方法應用於視頻解碼設備或視頻解碼設備中,該方法包括:對碼流進行熵解碼和反量化得到反變換單元;對
反變換單元進行離散小波反變換,得到反變換後的係數。
由於當前的變換方法計算複雜度較高,基於當前較大尺寸的反變換單元在計算過程中需要更多的資源,增加硬體實現上的複雜度。本發明提出採用離散小波反變換方法進行視頻解碼。離散小波反變換能夠去除每個子圖像內部像素之間的相關性,盡可能地將資訊集中到少的反變換係數上去,以便接下來的量化步驟有可能將攜帶資訊較少的係數量化成0,降低對重建圖像品質的影響。採用離散小波反變換大幅度降低計算複雜度,相應地,減小計算存儲負擔,降低硬體實現複雜度。
在一種可能的實現方式中,對反變換單元進行離散小波反變換,得到反變換後的係數,包括:對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行離散小波反變換。
該種可能的實現方式,提供了在水平方向和/或垂直方向進行離散小波反變換的三種方式,其中,只對一個方向進行離散小波反變換時,有助於降低計算複雜度。對兩個方向可以採用相同或不同的反變換方法,提高反變換過程的靈活性,與現有演算法實現相容。
在一種可能的實現方式中,離散小波反變換包括哈爾小波反變換和5/3小波反變換,對反變換單元進行離散小波反變換,得到反變換後的係數,包括:對所述反變換單元在水平方向進行哈爾小波反變換,在垂直方向進行哈爾小波反變換、5/3小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在水平方向進行5/3小波反變換,在垂直方向進行哈爾小波反變換、5/3小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行哈爾小波反變換;或者,對所述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行5/3小波反變換。
該種可能的實現方式,提供了離散小波反變換包括的兩種反變換方法,結合水平方向和垂直方向,提供多種組合方法。根據哈爾小波反變換和5/3小波反變換的平移和伸縮,避免乘法的計算,有助於在處理較大尺寸資料時,能夠減小計算負擔,同時縮減計算過程中所佔用的計算資源。
一種可能的實現方式中,反變換單元的尺寸與編碼單元的尺寸相同;或者,反變換單元的寬度為編碼單元的寬度的一半,所述反變換單元的高度與所述編碼單元的高度相同;或者,所述反變換單元的高度為編碼單元的高度的一半,所述反變換單元的寬度與所述編碼單元的寬度相同。
該種可能的實現方式,提供了反變換單元的尺寸確定方式,並給出反變換單元的尺寸與編碼單元的尺寸之間的關係,進行變換時對編碼單元進一步劃分有助於降低計算複雜度。
一種可能的實現方式,對反變換單元進行離散小波反變換,得到反變換後的係數,包括:基於反變換單元的尺寸,確定對所述反變換單元在水平方向進行第一反變換,在垂直方向進行第二反變換;其中,第一反變換和第二反變換中的至少一種為離散小波反變換。
該種可能的實現方式,提供了基於水平方向和/或垂直方向進行離散小波反變換。當基於一個維度進行反變換時,有助於大幅度降低計算負擔,提升壓縮性能。
一種可能的實現方式,反變換單元的尺寸包括第一尺寸和第二尺寸,基於反變換單元的尺寸,確定對所述反變換單元在水平方向進行第一反變換,在垂直方向進行第二反變換,包括:基於第一尺寸,確定對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換;基於第二尺寸,確定對所述反變換單元在水平方向進行離散小波反變換,在垂直方向不進行反變換。
該種可能的實現方式,提供了基於反變換單元的尺寸進行相應的變換方法的具體實現方式,其中,在垂直方向上可以選擇不進行離散小波變換,從而降低計算負擔。
一種可能的實現方式,對反變換單元進行離散小波反變換,得到反變換後的係數之前,該方法還包括:獲取所述碼流中的變換方法標識位
元,所述變換方法標識位元用於指示所述反變換單元的反變換方法,所述反變換方法包括在水平方向和/或垂直方向進行離散小波反變換。
該種可能的實現方式,提供了基於碼流中的變換方法標識位元確定反變換方法的具體實現方式。通過直接指示的方式有助於提升解碼的效率,同時建立編碼側與解碼側之間的對應關係。
一種可能的實現方式,對反變換單元進行離散小波反變換,得到反變換後的係數之前,該方法還包括:獲取所述碼流中的預測模式標識位元,預測模式標識位元用於指示所述反變換單元進行反變換前,預測單元進行預測的預測模式,所述預測模式包括第一預測模式和第二預測模式;基於第一預測模式,確定對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;基於第二預測模式,確定對所述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行離散小波反變換。
該種可能的實現方式,提供了基於碼流中的預測模式標識位元確定反變換方法的具體實現方式。通過建立預測模式與反變換方法之間的對應關係,根據不同預測模式的效果確定反變換方法,增強反變換的靈活性,提升壓縮效果。根據預定義的關係有助於提升解碼的效率。
一種可能的實現方式,預測模式包括直流分量(Direct Current,DC)預測模式、角度預測模式、平面(Planar)預測模式和塊拷貝模式中的任意一種,角度預測模式包括水平預測模式、垂直預測模式和對角預測模式中的任意一種。
該種可能的實現方式,提供了預測模式的類型,用於與變換方法建立對應關係,提升解碼的效率。
一種可能的實現方式,對反變換單元進行離散小波反變換,得到反變換後的係數,包括:對反變換單元的亮度進行離散小波反變換,對反變換單元的色度進行離散小波反變換、DCT2反變換以及DST7反變換中的任意一種;或者,對反變換單元的亮度進行DCT2反變換以及DST7反變換中的任意一種,對反變換單元的色度進行離散小波反變換。
該種可能的實現方式,提供了基於亮度和色度進行離散小波反變換,其中,基於亮度和色度進行反變換可以結合亮度與色度的尺寸進行,有助於降低計算複雜度,提升壓縮性能。
第二方面,本發明實施例提供一種視頻解碼方法,該方法應用於視頻解碼設備或視頻解碼設備中,該方法包括:對碼流進行熵解碼和反量化得到反變換單元;對反變換單元進行第三反變換,得到反變換後的係數;其中,第三反變換包括在水平方向進行反變換和/或在垂直方向進行反變換,水平方向和垂直方向的反變換方法包括DCT2反變換或DST7反變換。
由於當前的反變換方法計算複雜度較高,基於不同維度採用不同的反變換方法有助於降低計算複雜度,提升壓縮性能。
一種可能的實現方式,所述反變換單元的尺寸與編碼單元的尺寸相同;或者,所述反變換單元的寬度為編碼單元的寬度的一半,所述反變換單元的高度與所述編碼單元的高度相同;或者,所述反變換單元的高度為編碼單元的高度的一半,所述反變換單元的寬度與所述編碼單元的寬度相同。
該種可能的實現方式,提供了反變換單元的尺寸確定方式,並給出反變換單元的尺寸與編碼單元的尺寸之間的關係,進行反變換時對編碼單元進一步劃分有助於降低計算複雜度。
一種可能的實現方式,反變換單元的尺寸包括第三尺寸、第四尺寸、第五尺寸和第六尺寸,對反變換單元進行第三反變換,得到反變換後的係數,包括:基於反變換單元的第三尺寸,對反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行反變換;基於反變換單元的第四尺寸,對反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於反變換單元的第五尺寸,對反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於反變換單元的第六尺寸,對反變換單元在水平方向進行DST7反變換,在垂直方向進行DCT2反變換。
該種可能的實現方式,提供了反變換單元的尺寸與反變換方法的對應關係。當基於一個維度進行反變換時,有助於大幅度降低計算負擔,
提升壓縮性能。
一種可能的實現方式,對反變換單元進行第三反變換,得到反變換後的係數之前,該方法還包括:獲取碼流中的變換方法標識位元,變換方法標識位元用於指示所述反變換單元的反變換方法;根據所述反變換單元的反變換方法確定第三反變換。
該種可能的實現方式,提供了基於碼流中的變換方法標識位元確定反變換方法的具體實現方式。通過直接指示的方式有助於提升解碼的效率,同時建立編碼側與解碼側之間的對應關係。
一種可能的實現方式,對反變換單元進行離散小波反變換,得到反變換後的係數之前,該方法還包括:獲取碼流中的預測模式標識位元,預測模式標識位元用於指示所述反變換單元進行反變換前,預測單元進行預測的預測模式,預測模式包括第三預測模式、第四預測模式、第五預測模式和第六預測模式;基於第三預測模式,確定對所述反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行變換;基於第四預測模式,確定對所述反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於第五預測模式,對所述反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於第六預測模式,對所述反變換單元在水平方向進行DST7反變換,在垂直方向進行DCT2反變換。
該種可能的實現方式,提供了基於碼流中的預測模式標識位元確定反變換方法的具體實現方式。通過建立預測模式與反變換方法之間的對應關係,根據不同預測模式的效果確定反變換方法,增強反變換的靈活性,提升壓縮效果。根據預定義的關係有助於提升解碼的效率。
一種可能的實現方式,預測模式包括DC模式、角度模式、Planar模式和塊拷貝模式中的任意一種,角度模式為水平模式、垂直模式和對角模式中的任意一種。
該種可能的實現方式,提供了預測模式的類型,用於與反變換方法建立對應關係,提升解碼的效率。
一種可能的實現方式,對反變換單元進行第三反變換,得到反
變換後的係數,包括:對反變換單元的亮度進行DCT2反變換或DST7反變換;對反變換單元的色度進行DCT2反變換或DST7反變換,得到反變換後的係數。
該種可能的實現方式,提供了基於亮度和色度分別進行反變換,其中,基於亮度和色度進行反變換可以結合亮度與色度的尺寸進行,有助於降低計算複雜度,提升壓縮性能。
第三方面,本發明實施例提供一種視頻編碼方法,該方法應用於視頻編碼設備或視頻編碼設備中,該方法包括:對變換單元進行離散小波變換,得到變換係數;對變換係數進行量化和熵編碼,得到碼流。
第四方面,本發明實施例提供一種視頻編碼方法,該方法應用於視頻編碼設備或視頻編碼設備中,該方法包括:對變換單元進行第三變換,得到變換係數;其中,第三變換包括在水平方向進行變換和/或在垂直方向進行變換,水平方向和垂直方向的變換方法包括DCT2變換或DST7變換;對所述變換係數進行量化和熵編碼,得到碼流。
第五方面,本發明實施例提供一種視頻解碼裝置,該裝置具有實現上述第一方面中任一項的視頻解碼方法的功能。該功能可以通過硬體實現,也可以通過硬體執行相應的軟體實現。該硬體或軟體包括一個或多個與上述功能相對應的模組。
第六方面,本發明實施例提供一種視頻解碼裝置,該裝置具有實現上述第二方面中任一項的視頻解碼方法的功能。該功能可以通過硬體實現,也可以通過硬體執行相應的軟體實現。該硬體或軟體包括一個或多個與上述功能相對應的模組。
第七方面,本發明實施例提供一種視頻編碼裝置,該裝置具有實現上述第三方面中任一項的視頻編碼方法的功能。該功能可以通過硬體實現,也可以通過硬體執行相應的軟體實現。該硬體或軟體包括一個或多個與上述功能相對應的模組。
第八方面,本發明實施例提供一種視頻編碼裝置,該裝置具有實現上述第四方面中任一項的視頻編碼方法的功能。該功能可以通過硬體實現,也可以通過硬體執行相應的軟體實現。該硬體或軟體包括一個或多個
與上述功能相對應的模組。
第九方面,提供一種視頻解碼裝置,包括:處理器和記憶體;該記憶體用於存儲電腦執行指令,當該視頻解碼裝置運行時,該處理器執行該記憶體存儲的該電腦執行指令,以使該視頻解碼裝置執行如上述第一方面中任一項的視頻解碼方法。
第十方面,提供一種視頻解碼裝置,包括:處理器和記憶體;該記憶體用於存儲電腦執行指令,當該視頻解碼裝置運行時,該處理器執行該記憶體存儲的該電腦執行指令,以使該視頻解碼裝置執行如上述第二方面中任一項的視頻解碼方法。
第十一方面,提供一種視頻編碼裝置,包括:處理器和記憶體;該記憶體用於存儲電腦執行指令,當該視頻編碼裝置運行時,該處理器執行該記憶體存儲的該電腦執行指令,以使該視頻編碼裝置執行如上述第三方面中任一項的視頻編碼方法。
第十二方面,提供一種視頻編碼裝置,包括:處理器和記憶體;該記憶體用於存儲電腦執行指令,當該視頻編碼裝置運行時,該處理器執行該記憶體存儲的該電腦執行指令,以使該視頻編碼裝置執行如上述第四方面中任一項的視頻編碼方法。
第十三方面,提供一種電腦可讀存儲介質,該電腦可讀存儲介質中存儲有指令,當其在電腦上運行時,使得電腦可以執行上述第一方面至第四方面中任一項的視頻編解碼方法。
第十四方面,提供一種包含指令的電腦程式產品,當其在電腦上運行時,使得電腦可以執行上述第一方面至第四方面中任一項的視頻編解碼方法。
第十五方面,提供一種電子設備,電子設備包括視頻解碼裝置,處理電路被配置為執行如上述第一方面和第二方面中任一項的視頻解碼方法。
第十六方面,提供一種電子設備,電子設備包括視頻編碼裝置,處理電路被配置為執行如上述第三方面和第四方面中任一項的視頻編碼方法。
第十七方面,提供一種電子設備,電子設備包括視頻解碼裝置和視頻編碼裝置,處理電路被配置為執行如上述第一方面中任一項的視頻解碼方法和第三方面中任一項的視頻編碼方法。
第十八方面,提供一種電子設備,電子設備包括視頻解碼裝置和視頻編碼裝置,處理電路被配置為執行如上述第二方面中任一項的視頻解碼方法和第四方面中任一項的視頻編碼方法。
第十九方面,提供一種通信系統,通信系統包括上述各個方面中第五方面和第六方面中的視頻解碼裝置以及第七方面和第八方面中的視頻編碼裝置。
第三方面至第十九方面中的任一種實現方式所帶來的技術效果可參見第一方面和第二方面中對應實現方式所帶來的技術效果,此處不再贅述。
1,2:並行編碼單元
110,120:解碼裝置
1101,1201:解碼模組
1103,1203,1303,1403:存儲模組
130,140:編碼裝置
1302,1402:編碼模組
20:源裝置
201:視頻源
202:視頻編碼器
203,213:輸出介面
21:目的裝置
211:顯示裝置
212:視頻解碼器
213:輸入介面
22:鏈路
23:存儲裝置
30:分割模組
301,302,401:求和器
31,41:預測模組
32,1301,1401:變換模組
33:量化模組
34:熵編碼模組
35,42:反量化模組
36,43,1102,1202:反變換模組
37,44:參考圖像記憶體
40:熵解碼模組
50:編解碼裝置
501:處理器
502:記憶體
503:通信介面
504:匯流排
CPU 0,CPU 1:中央處理器
H,h:高
S601,S602,S801,S802,S901,S902,S1001,S1002:步驟
U:第一色度Cb
U0,U2:第一色度
V:第二色度Cr
V4,V6:第二色度
W,w:寬
X:矩陣
Y,Y0,Y1,Y2,Y3,Y4,Y5,Y6,Y7:亮度
圖1a為DC預測模式的示意圖;
圖1b為垂直預測模式的示意圖;
圖1c為Planar預測模式的示意圖;
圖1d為塊拷貝模式的示意圖;
圖2為本發明實施例提供的編解碼系統的系統架構圖;
圖3為本發明實施例提供的視頻編碼器的結構示意圖;
圖4為本發明實施例提供的視頻解碼器的結構示意圖;
圖5為本發明實施例提供的一種視頻編/解碼的流程示意圖;
圖6為本發明實施例提供的視頻解碼器或視頻編碼器的結構示意圖;
圖7為本發明實施例提供的視頻解碼方法的流程圖;
圖8為本發明實施例提供的5/3小波變換方法的示意圖;
圖9為本發明實施例提供的視頻解碼方法的流程圖;
圖10為本發明實施例提供的視頻編碼方法的流程圖;
圖11為本發明實施例提供的視頻編碼方法的流程圖;
圖12為本發明實施例提供的解碼裝置的結構示意圖;
圖13為本發明實施例提供的解碼裝置的結構示意圖;
圖14為本發明實施例提供的編碼裝置的結構示意圖;
圖15為本發明實施例提供的編碼裝置的結構示意圖。
在本發明的描述中,除非另有說明,“/”表示“或”的意思,例如,A/B可以表示A或B。本文中的“和/或”僅僅是一種描述關聯物件的關聯關係,表示可以存在三種關係,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。此外,“至少一個”是指一個或多個,“多個”是指兩個或兩個以上。“第一”、“第二”等字樣並不對數量和執行次序進行限定,並且“第一”、“第二”等字樣也並不限定一定不同。
需要說明的是,本發明中,“示例性的”或者“例如”等詞用於表示作例子、例證或說明。本發明中被描述為“示例性的”或者“例如”的任何實施例或設計方案不應被解釋為比其他實施例或設計方案更優選或更具優勢。確切而言,使用“示例性的”或者“例如”等詞旨在以具體方式呈現相關概念。
首先,對本發明實施例涉及的技術術語進行介紹:
1、視頻編碼技術
視頻序列存在空間冗餘、時間冗餘、視覺冗餘、資訊熵冗餘、結構冗餘、知識冗餘、重要性冗餘等一系列的冗餘資訊。為了盡可能的去除視頻序列中的冗餘資訊,減少表徵視頻的資料量,提出了視頻編碼技術,以達到減小存儲空間和節省傳輸頻寬的效果。視頻編碼技術也稱為視頻壓縮技術。
在國際通用範圍內,視頻壓縮編碼標準,例如:由運動圖像專家組(Motion Picture Experts Group,MPEG)制定的MPEG-2和MPEG-4標準中第10部分的高級視頻編解碼(Advanced Video Coding,AVC),由國際電信聯盟標準化組(International Telecommunication Union-Standardization Sector,ITU-T)制定的H.263、H.264和H.265(又稱高效率視頻編碼(High Efficiency Video Coding standard,HEVC))。
需要說明的是,在基於混合編碼架構的編碼演算法中,上述壓縮編碼方式可以被混合使用。
視頻壓縮編碼過程中的基本處理單位是圖像塊,該圖像塊是編碼端將一幀/幅圖像進行劃分得到的。以HEVC為例,HEVC定義了編碼
樹單元(Coding Tree Unit,CTU)、編碼單元(Coding Unit,CU)、預測單元(Prediction Unit,PU)和變換單元(Transform Unit,TU)。編碼樹單元、編碼單元、預測單元和變換單元均可作為劃分後得到的圖像塊。其中變換單元和變換單元均基於編碼單元進行劃分。
2、視頻採樣
像素為視頻或圖像最小的完整採樣,因此,對圖像塊進行資料處理是以像素為單位。其中,每個像素記錄顏色資訊,一種通過RGB表示顏色,R表示紅色(red),G表示綠色(green),B表示藍色(blue);另一種通過YUV表示顏色,Y表示亮度(luminance),U表示第一色度Cb,V表示第二色度Cr。由於人們對亮度的敏感程度強於對色度的敏感程度,因此,可以通過多存儲亮度,少存儲色度實現減少存儲空間。在一些實施例中,在視頻編解碼中,通常採用YUV格式進行視頻採樣,YUV格式包括420採樣格式、444採樣格式等。該採樣格式基於亮度的取樣數量,確定兩個色度的取樣數量,例如,假設一個編碼單元有4×2個像素,格式如下:
[Y0,U0,V0][Y1,U1,V1][Y2,U2,V2][Y3,U3,V3];
[Y4,U4,V4][Y5,U5,V5][Y6,U6,V6][Y7,U7,V7];
其中,420採樣格式表示YUV以4:2:0的格式進行採樣,即亮度與第一色度或第二色度以4:2的比例進行選取,其中第一色度與第二色度隔行選取。則上述編碼單元採樣選取第一行的亮度Y0-Y3,以及第一色度U0和U2,選取第二行的亮度Y4-Y7,以及第二色度V4和V6。該編碼單元經採樣由亮度編碼單元及色度編碼單元構成,其中,
亮度編碼單元為:
[Y0][Y1][Y2][Y3];
[Y4][Y5][Y6][Y7];
色度編碼單元為:
[U0][U2];
[V4][V6];
類似地,444採樣格式表示YUV以4:4:4的格式進行採樣,即亮度與第一色度和第二色度以4:4:4的比例進行選取。
則上述編碼單元經採樣的亮度編碼單元為:
[Y0][Y1][Y2][Y3];
[Y4][Y5][Y6][Y7];
色度編碼單元為:
[U0,V0][U1,V1][U2,V2][U3,V3];
[U4,V4][U5,V5][U6,V6][U7,V7];
上述經採樣得到的亮度編碼單元與色度編碼單元作為後續進行編碼處理的資料單元。
3、預測
基於視頻序列中時域冗餘、空域冗余等冗餘特性,對圖像塊進行預測。比如,在同一幀圖像中由於相鄰圖像塊之間存在相關性,故而可根據相鄰圖像塊推測(預測)當前圖像塊的值。又如,在不同幀圖像中,對於某一座標位置的圖像塊來說,前一時刻該圖像塊的值與後一時刻該圖像塊的值具有相關性,故而可根據前一時刻該圖像塊的值預測後一時刻該圖像塊的值。其中,進行預測的圖像塊為預測單元(PU)。預測所採用的方式稱為預測模式。基於同一幀圖像中相鄰圖像塊之間的相關性進行預測的預測模式為幀內預測模式。其中,幀內預測模式包括均值(DC)預測模式、角度預測模式和平面(Planar)預測模式。
DC預測模式是通過計算參考像素的平均值作為預測像素。如圖1a所示,計算左側與上側的參考像素的均值作為預測像素。其中,根據整個塊的寬度與高度確定採用左側和/或上側的參考像素進行計算。
角度預測模式也可以稱為方向性預測模式,基於參考像素預測不同方向的像素。其中,角度預測模式包括水平預測模式、垂直預測模式、對角預測模式等等。如圖1b所示的垂直預測模式中,基於參考像素垂直向下的方向預測參考像素所在列的像素。當採用其他方向的預測模式進行預測時,則計算不同方向的投影結合參考像素得到預測像素。
Planar預測模式是通過計算水平行和豎直列的參考像素的加權,得到交叉點的預測像素。如圖1c所示,根據左側和上側的參考像素預測得到水平行右側以及垂直列下側的預測像素,再根據水平行和垂直列兩
端的像素得到預測像素。
另外,預測模式還包括塊拷貝模式。塊拷貝模式也稱為塊複製模式,是指從當前幀已解碼區域尋找最優的重建塊作為匹配塊,並將匹配塊的重建像素作為當前塊的預測像素,如圖1d所示。
本發明提供的編解碼方法適用於視頻編解碼系統。圖2示出了視頻編解碼系統的結構。
如圖2所示,視頻編解碼系統包括源裝置20和目的裝置21。源裝置20產生經過編碼後的視頻資料,源裝置20也可以被稱為視頻編碼裝置或視頻編碼設備,目的裝置21可以對源裝置20產生的經過編碼後的視頻資料進行解碼,目的裝置21也可以被稱為視頻解碼裝置或視頻解碼設備。源裝置20和/或目的裝置21可包括至少一個處理器以及耦合到所述至少一個處理器的記憶體。所述記憶體可包括但不限於唯讀記憶體(Read-Only Memory,ROM)、隨機存取記憶體(Random Access Memory,RAM)、電子可抹除可程式唯讀記憶體(Electrically Erasable Programmable Read-Only Memory,EEPROM)、快閃記憶體或可用於以可由電腦存取的指令或資料結構的形式存儲所要的程式碼的任何其它媒體,本發明對此不作具體限定。
源裝置20和目的裝置21可以包括各種裝置,包括桌上型電腦、移動計算裝置、筆記型(例如,膝上型)電腦、平板電腦、機上盒、例如所謂的“智慧”電話等電話手持機、電視機、相機、顯示裝置、數位媒體播放機、視頻遊戲控制台、車載電腦或其類似者等電子設備。
目的裝置21可經由鏈路22從源裝置20接收經編碼視頻資料。鏈路22可包括能夠將經編碼視頻資料從源裝置20移動到目的裝置21的一個或多個媒體和/或裝置。在一個實例中,鏈路22可包括使得源裝置20能夠即時地將編碼後的視頻資料直接發射到目的裝置21的一個或多個通信媒體。在此實例中,源裝置20可根據通信標準(例如:無線通訊協定)來調製編碼後的視頻資料,並且可以將調製後的視頻資料發射到目的裝置21。上述一個或多個通信媒體可包括無線和/或有線通信媒體,例如:射頻(Radio Frequency,RF)頻譜、一個或多個物理傳輸線。上述一個或多個通信媒體可形成基於分組的網路的一部分,基於分組的網路例如為局域網、廣域網路
或全球網路(例如,網際網路)等。上述一個或多個通信媒體可以包含路由器、交換器、基站,或者實現從源裝置20到目的裝置21的通信的其它設備。
在另一實例中,可將編碼後的視頻資料從輸出介面203輸出到存儲裝置23。類似地,可通過輸入介面213從存儲裝置23存取編碼後的視頻資料。存儲裝置23可包括多種本地存取式資料存儲媒體,例如藍光光碟、數位影音視頻光碟(Digital Video Disc,DVD)、光碟唯讀記憶體(Compact Disc Read-Only Memory,CD-ROM)、快閃記憶體,或用於存儲經編碼視頻資料的其它合適數位存儲媒體。
在另一實例中,存儲裝置23可對應於檔案伺服器或存儲由源裝置20產生的編碼後的視頻資料的另一中間存儲裝置。在此實例中,目的裝置21可經由資料流或下載從存儲裝置23獲取其存儲的視頻資料。檔案伺服器可以為任何類型的能夠存儲經編碼的視頻資料並且將經編碼的視頻資料發射到目的裝置21的伺服器。例如,檔案伺服器可以包括全球廣域網路(World Wide Web,Web)伺服器(例如,用於網站)、檔案傳輸協定(File Transfer Protocol,FTP)伺服器、網路連結儲存(Network Attached Storage,NAS)裝置以及本地磁碟機。
目的裝置21可通過任何標準資料連接(例如,網際網路連接)存取編碼後的視頻資料。資料連接的實例類型包含適合於存取存儲於檔案伺服器上的編碼後的視頻資料的無線通道、有線連接(例如,纜線數據機等),或兩者的組合。編碼後的視頻資料從檔案伺服器發射的方式可為資料流、下載傳輸或兩者的組合。
本發明的解碼方法不限於無線應用場景,示例性的,本發明的編解碼方法可以應用於支援以下多種多媒體應用的視頻編解碼:空中電視廣播、有線電視發射、衛星電視發射、資料流視頻發射(例如,經由網際網路)、存儲於資料存儲媒體上的視頻資料的編碼、存儲於資料存儲媒體上的視頻資料的解碼,或其它應用。在一些實例中,視頻編解碼系統可經配置,以支援單向或雙向視頻發射,以支援例如視頻資料流、視頻播放、視頻廣播及/或視頻電話等應用。
需要說明的是,圖2示出的視頻編解碼系統僅僅是視頻編解碼系統的示例,並不是對本發明中視頻編解碼系統的限定。本發明提供的編解碼方法還可適用於編碼裝置與解碼裝置之間無資料通信的場景。在其它實例中,待編碼視頻資料或編碼後的視頻資料可以從本機存放區器檢索,也可以在網路上資料流等。視頻編碼裝置可對待編碼視頻資料進行編碼並且將編碼後的視頻資料存儲到記憶體,視頻解碼裝置也可從記憶體中獲取編碼後的視頻資料並且對該編碼後的視頻資料進行解碼。
在圖2中,源裝置20包括視頻源201、視頻編碼器202和輸出介面203。在一些實例中,輸出介面203可包括調製器/解調器(數據機)和/或發射器。視頻源201可包括視頻捕獲裝置(例如,攝像機)、含有先前捕獲的視頻資料的視頻存檔、用以從視頻內容提供者接收視頻資料的視頻輸入介面,和/或用於產生視頻資料的電腦圖形系統,或視頻資料的此些來源的組合。
視頻編碼器202可對來自視頻源201的視頻資料進行編碼。在一些實例中,源裝置20經由輸出介面203將編碼後的視頻資料直接發射到目的裝置21。在其它實例中,編碼後的視頻資料還可存儲到存儲裝置23上,供目的裝置21稍後存取來用於解碼和/或播放。
在圖2的實例中,目的裝置21包括顯示裝置211、視頻解碼器212以及輸入介面213。在一些實例中,輸入介面213包括接收器和/或數據機。輸入介面213可經由鏈路22和/或從存儲裝置23接收編碼後的視頻資料。顯示裝置211可與目的裝置21集成或可在目的裝置21外部。一般來說,顯示裝置211顯示解碼後的視頻資料。顯示裝置211可包括多種顯示裝置,例如,液晶顯示器、等離子顯示器、有機發光二極體顯示器或其它類型的顯示裝置。
在一些示例中,視頻編碼器202和視頻解碼器212可各自與音訊編碼器和解碼器集成,且可包括適當的多工器-多路分用器單元或其它硬體和軟體,以處理共同資料流程或單獨資料流程中的音訊和視頻兩者的編碼。
視頻編碼器202和視頻解碼器212可以包括至少一個微處理
器、數位訊號處理器(Digital Signal Processor,DSP)、特殊應用積體電路(Application-Specific Integrated Circuit,ASIC)、現場可程式邏輯閘陣列(Field Programmable Gate Array,FPGA)、離散邏輯、硬體或其任何組合。若本發明提供的編解碼方法採用軟體實現,則可將用於軟體的指令存儲在合適的非易失性電腦可讀存儲媒體中,且可使用至少一個處理器執行所述指令從而實施本發明。
本發明中的視頻編碼器202和視頻解碼器212可以根據視頻壓縮標準(例如HEVC)操作,也可根據其它業界標準操作,本發明對此不作具體限定。
圖3是本發明實施例中視頻編碼器202的一種示意性框圖。視頻編碼器202可以在預測模組31、變換模組32、量化模組33以及熵編碼模組34分別進行預測、變換、量化以及熵編碼的過程。視頻編碼器202中還包括分割模組30、求和器302。對於視頻塊重構建,視頻編碼器202也包括反量化模組35、反變換模組36、求和器301和參考圖像記憶體37。
如圖3中所展示,視頻編碼器202接收視頻資料,分割模組30將視頻資料分割成原始塊。此分割也可包括分割成條帶(slice)、圖像塊或其它較大單元,以及(例如)根據最大編碼單元(Largest Coding Unit,LCU)及編碼單元的四叉樹結構進行視頻塊分割。示例性的,視頻編碼器202編碼在待編碼的視頻條帶內的視頻塊的元件中。一般的,條帶可劃分成多個原始塊(且可能劃分成稱作圖像塊的原始塊的集合)。通常在分割模組30中確定編碼單元CU、變換單元PU以及變換單元TU的尺寸。
預測模組31可將所得經幀內模式預測或塊拷貝模式預測的預測塊提供到求和器302以產生殘差塊,且將該預測塊提供到求和器301經重構得到重建塊,該重建塊用於後續進行預測的參考像素。其中,視頻編碼器202通過原始塊的像素值減去預測塊的像素值來形成像素差值,該像素差值即為殘差塊,該殘差塊中的資料可包括亮度差及色度差。求和器301表示執行此減法運算的一個或多個元件。預測模組31還可將相關的語法元素發送至熵編碼模組34用於合併至碼流。
變換模組32可將殘差塊劃分為一個或多個變換單元TU進行
變換。變換模組32使用DCT或DST將殘差塊經變換得到變換係數。變換模組32可將殘差塊從像素域轉換到變換域(例如,頻域)。當前常用的變換方法有DCT2和DST7。
變換模組32可將所得變換係數發送到量化模組33。量化模組33對變換係數進行量化以進一步減小碼率。量化過程可減少與係數中的一些或全部相關聯的比特深度。可通過調整量化參數來修改量化的程度。在一些可行的實施方式中,量化模組33可接著執行包含經量化變換係數的矩陣的掃描。替代的,熵編碼模組34可執行掃描。
在量化之後,熵編碼模組34可熵編碼量化後的變換係數。例如,熵編碼模組34可執行適應性變動長度編碼法(Context-Adaptive Variable-Length Coding,CAVLC)、前文參考之可適性算術編碼(Context-based Adaptive Binary Arithmetic Coding,CABAC)、基於語法的上下文自我調整性二進位算術解碼(Syntax-Based Context Adaptive Binary Arithmetic Coding,SBAC)、概率區間分割熵(Probability Interval Partitioning Entropy,PIPE)解碼或另一熵編碼方法或技術。在通過熵編碼模組34進行熵編碼之後,可將經編碼碼流傳輸到視頻解碼器212或存檔以供稍後傳輸或由視頻解碼器212檢索。
反量化模組35及反變換模組36分別應用反量化與反變換,求和器301將反變換後的殘差塊和預測模組31預測的預測塊相加以產生重建塊,該重建塊用作對後續原始塊進行預測的參考像素。該重建塊存儲於參考圖像記憶體37中。
圖4是本發明實施例中視頻解碼器212的結構示意圖。如圖4所示,視頻解碼器212包括熵解碼模組40、預測模組41、反量化模組42、反變換模組43、求和器401和參考圖像記憶體44。在一些可行的實施方式中,視頻解碼器212可執行與關於來自圖3的視頻編碼器202描述的編碼流程的示例性地互逆的解碼流程。
在解碼過程期間,視頻解碼器212從視頻編碼器202接收經編碼的視頻的碼流。視頻解碼器212的熵解碼模組40熵解碼該碼流以產生量化係數和語法元素。熵解碼模組40將語法元素轉遞到預測模組41。視頻
解碼器212可在視頻條帶層級和/或視頻塊層級處接收語法元素。
反量化模組42對碼流中所提供且通過熵解碼模組40所解碼的經量化變換係數進行反量化(例如,解量化)。反量化過程可包括使用通過視頻編碼器202針對視頻條帶中的每一視頻塊所計算的量化參數確定量化的程度,且同樣地確定應用的反量化的程度。反變換模組43將反變換(例如,DCT、DST等變換方法)應用於反量化後的變換係數,將反量化後的變換係數按照反變換單元在像素域中產生反變換後的殘差塊,換言之,反量化後的變換係數再進行反變換生成殘差係數。其中,反變換單元的尺寸與變換單元的尺寸相同,反變換方法與變換方法採用同樣的變換方法中相應的正變換與反變換,例如,DCT、DST的反變換為反DCT、反DST或概念上類似的反變換過程。
預測模組41生成預測塊後,視頻解碼器212通過將來自反變換模組43的反變換後的殘差塊與預測塊求和來形成經解碼視頻塊。求和器401表示執行此求和運算的一個或多個元件。在需要時,也可應用解塊濾波器來對經解碼的視頻塊進行濾波以便去除塊效應偽影。給定幀或圖像中的經解碼的視頻塊存儲於參考圖像記憶體44中,作為後續進行預測的參考像素。
本發明提供一種可能的視頻編/解碼實現方式,如圖5所示,圖5為本發明提供的一種視頻編/解碼的流程示意圖,該視頻編/解碼實現方式包括過程至過程,過程至過程可以由上述的源裝置20、視頻編碼器202、目的裝置21或視頻解碼器212中的任意一個或多個執行。
例如,獨立編碼單元的寬為w_lcu,高為h_lcu。若並行編碼單元劃分成一個獨立編碼單元,則獨立編碼單元的尺寸與並行編碼單元完
全相同;否則,則獨立編碼單元的寬應大於高(除非是邊緣區域)。
通常的,獨立編碼單元可為固定的w_lcu×h_lcu,w_lcu和h_lcu均為2的N次方(N0),如獨立編碼單元的尺寸為:128×4,64×4,32×4,16×4,8×4,32×2,16×2或8×2等。
作為一種可能的示例,獨立編碼單元可為固定的128×4。若並行編碼單元的尺寸為256×8,則可將並行編碼單元等分為4個獨立編碼單元;若並行編碼單元的尺寸為288×10,則並行編碼單元可以劃分為:第一/二行包括2個128×4的獨立編碼單元和1個32×4的獨立編碼單元;第三行包括2個128×2的獨立編碼單元和1個32×2的獨立編碼單元。
值得注意的是,獨立編碼單元既可以是包括亮度Y、第一色度Cb、第二色度Cr三個分量,或RGB三個分量,也可以僅包含其中的某一個分量。若獨立編碼單元包含三個分量,則這三個分量的尺寸可以完全一樣,也可以不一樣,具體與圖像的輸入格式相關。
若獨立編碼單元分成多個互相不重疊的編碼單元,則其可行劃分例子有:水平等分(編碼單元的高與獨立編碼單元相同,但寬不同,編碼單元的寬可為獨立編碼單元的寬的1/2、1/4、1/8、1/16等),垂直等分(編碼單元的寬與獨立編碼單元相同,高不同,編碼單元的高可為獨立編碼單元的高的1/2、1/4、1/8、1/16等),水平和垂直等分(四叉樹劃分)等,優選為水平等分。
編碼單元的寬為W,高為H,則其寬應大於高(除非是邊緣區域)。通常的,編碼單元可為固定的W×H,W和H均為2個N次方(N大於等於0),如16x4、8x4、16x2、8x2、8x1、4x1等。
作為一種可能的示例,編碼單元可為固定的16x4。若獨立編碼單元的尺寸為64x4,則可將獨立編碼單元等分為4個編碼單元;若獨立
編碼單元的尺寸為72x4,則編碼單元劃分為:4個16x4和1個8x4。
值得注意的是,編碼單元既可以是包括亮度Y、第一色度Cb、第二色度Cr三個分量(或RGB三分量),也可以僅包含其中的某一個分量。若包含三個分量,幾個分量的尺寸可以完全一樣,也可以不一樣,具體與圖像輸入格式相關。
過程:對於編碼單元,可以將其可再將其分成一個或多個互相不重疊的預測組(Prediction Group,PG),PG也可簡稱為Group,各個預測組按照選定預測模式進行編解碼,得到預測組的預測值,組成整個編碼單元的預測值,基於預測值和編碼單元的原始值,獲得編碼單元的殘差值。
過程:基於編碼單元的殘差值,對編碼單元進行分組,獲得一個或多個相不重疊的殘差小塊(Residual Block,RB),各個殘差小塊的殘差係數按照選定模式進行編解碼,形成殘差係數流。在一些實施例中,可分為對殘差係數進行變換和不進行變換兩類。
其中,過程中殘差係數編解碼方法的選定模式可以包括,但不限於下述任一種:半定長編碼方式、指數哥倫布(Golomb)編碼方法、Golomb-Rice編碼方法、截斷一元碼編碼方法、游程編碼方法、直接編碼原始殘差值等。
例如,視頻編碼器可直接對殘差小塊內的係數進行編碼。
又如,視頻編碼器也可對殘差塊進行變換,如DCT、DST、Hadamard變換等,再對變換後的係數進行編碼。
作為一種可能的示例,當殘差小塊較小時,視頻編碼器可直接對殘差小塊內的各個係數進行統一量化,再進行二值化編碼。若殘差小塊較大,可進一步劃分為多個係數組(Coefficient Group,CG),再對各個係數組進行統一量化,再進行二值化編碼。在本發明的一些實施例中,係數組(CG)和量化組(Quantization Group,QG)可以相同。
下面以半定長編碼方式對殘差係數編碼的部分進行示例性說
明。首先,將一個殘差小塊塊內殘差絕對值的最大值定義為修整最大值(Modified Maximum,MM)。其次,確定該殘差小塊塊內殘差係數的編碼比特數(同一個殘差小塊塊內殘差係數的編碼比特數一致)。例如,若當前殘差小塊的關鍵限值(Critical Limit,CL)為2,當前殘差係數為1,則編碼殘差係數1需要2個比特,表示為01。若當前殘差小塊的關鍵限值為7,則表示編碼8-bit的殘差係數和1-bit的符號位元。關鍵限值的確定是去找滿足當前子塊所有殘差都在[-2^(M-1),2^(M-1)]範圍之內的最小M值。若同時存在-2^(M-1)和2^(M-1)兩個邊界值,則M應增加1,即需要M+1個比特編碼當前殘差小塊的所有殘差;若僅存在-2^(M-1)和2^(M-1)兩個邊界值中的一個,則需要編碼一個Trailing位元來確定該邊界值是-2^(M-1)還是2^(M-1);若所有殘差均不存在-2^(M-1)和2^(M-1)中的任何一個,則無需編碼該Trailing位元。
另外,對於某些特殊的情況,視頻編碼器也可以直接編碼圖像的原始值,而不是殘差值。
上述視頻編碼器202以及視頻解碼器212也可以通過另外一種實現形態來實現,例如,採用通用的數文書處理器系統實現,如圖6所示的編解碼裝置50,該編解碼裝置50可以為上述視頻編碼器202中的部分裝置,也可以為上述視頻解碼器212中的部分裝置。
該編解碼裝置50可以應用於編碼側,也可以應用於解碼側。編解碼裝置50包括處理器501以及記憶體502。所述處理器501與記憶體502相連接(如通過匯流排504相互連接)。在一些示例中,編解碼裝置50還可包括通信介面503,通信介面503連接處理器501和記憶體502,用於接收/發送資料。
記憶體502可以為隨機存儲記憶體(Random Access Memory,RAM)、唯讀記憶體(Read-Only Memory,ROM)、可抹除可程式唯讀記憶體(Erasable Programmable Read Only Memory,EPROM)或光碟唯讀記憶體(Compact Disc Read-Only Memory,CD-ROM)。該記憶體502用於存儲相關程式碼及視頻資料。
處理器501可以是一個或多個中央處理器(Central Processing
Unit,CPU),例如圖6中所示的CPU 0和CPU 1。在處理器501是一個CPU的情況下,該CPU可以是單核CPU,也可以是多核CPU。
該處理器501用於讀取記憶體502中存儲的程式碼,以執行圖7至圖11所對應的任意一個實施方案及其各種可行的實施方式的操作。
以下,結合上述圖2示出的視頻編解碼系統、圖3示出的視頻編碼器202以及圖4示出的視頻解碼器212對本發明提供的編解碼方法進行詳細描述。
如圖7所示,為本發明提供的一種視頻解碼方法的流程圖。該方法包括步驟S601至步驟S602。
步驟S601、視頻解碼器對碼流進行熵解碼和反量化得到反變換單元。
步驟S602、視頻解碼器對反變換單元進行離散小波反變換,得到反變換後的係數。
離散小波變換,離散小波變換的基本思想是平移和伸縮,經過高通濾波和低通濾波後,將信號在不失原有資訊的前提下在尺度和空間上進行分解。小波變換的目的是去除每個子圖像內部像素之間的相關性,盡可能地將資訊集中到少的變換係數上去,以便接下來的量化步驟有可能將攜帶資訊較少的係數量化成0,降低對重建圖像品質的影響。
其中,離散小波變換包括離散小波正變換和離散小波反變換。視頻解碼器根據視頻編碼器所採用的變換方法,確定相應的反變換方法。
圖像塊為二維資料陣列,目前二維離散小波變換通常採用行、列分離處理方式,即水平方向與垂直方向分別進行一維離散小波變換。其中,水平方向和垂直方向的先後次序對結果不影響。
在一些實施例中,視頻解碼器在水平方向和/或垂直方向進行反變換,包括下表1所示的7種離散小波反變換組合。在另一些實施例中,視頻編碼器在水平方向和/或垂直方向進行變換,以類似與下表1所示的7中組合,即以離散小波變換替換離散小波反變換。
以下介紹兩種離散小波變換,分別為哈爾(Haar)小波變換和5/3小波變換。
1、Haar小波變換
Haar小波變換是低通濾波為[1,1],高通濾波為[-1,1]的離散小波變換。變換步驟為:將待變換資料分成連續的像素對,然後計算相鄰像素對的平均值和相鄰像素對的差值的一半,將計算的平均值放在變換係數的前半部分,表示低頻直流部分,將相鄰像素對的差值的一半放在變換係數的後半部分,表示高頻細節部分。
設原始一維資料a=[a 1,a 2,a 3,a 4],Haar低通濾波[1,1],Haar高通濾波[-1,1],則經Haar小波變換為:
,即依次從陣列中取兩個數位,計算它們的和以及差,並將和的一半和差的一半依次保存在陣列的前半部分和後半部分。
在一些示例中,對低頻係數部分進行小波變換,進行二級小波分解,得到:。將c 2,b 3,b 4稱為細節(高頻)係數,將c 1稱為直流(低頻)係數。可以理解的是,小波變換層級越高,資料中變化量不大的元素會趨近於零,配合量化能夠實現壓縮。
對一矩陣X做哈爾小波變換的公式為Y=B.X.A T ,其中X為一個MxN的塊且A和B分別為M點和N點的哈爾小波變換矩陣,而哈
爾小波反變換為X=B T .Y.A。
以下為M或N取值為2、4及8的哈爾小波變換矩陣:
2、5/3小波變換
5/3小波變換的高通濾波係數為Y(2n+1),低通濾波係數為Y(2n)。
Y(2n+1)=-X(2n)/2+X(2n+1)-X(2n+2)/2;
Y(2n)=-X(2n-2)/8+X(2n-1)/4+3*X(2n)/4+X(2n+1)/4-X(2n+2)/8+1/2;
為了避免直接採用上述係數進行變換,所產生的重複計算的過程,Y(2n)可以採用以下方式計算:
Y(2n)=X(2n)+(Y(2n-1)+Y(2n+1)+2)/4;
在一些實施例中,通過先計算高通濾波係數,根據高通濾波係數和相應來源資料計算低通濾波係數。
如圖8所示,假設原始序列為x[0],x[1],......,x[7],序列包含資料的個數為8,其中,當n為0時,計算第一個低通濾波係數時需要用到Y(2n-1),而為了獲取Y(2n-1),需要在高通濾波係數的左側擴展一個資料,為了得到左側擴展的高通濾波係數,則需要在原始序列的左側擴展兩個資料。因此,在x[0]左側擴展兩個資料,其中,x[-1]=x[1],x[-2]=x[2]。類似地,當n為3時,計算低通濾波係數,需要用到Y(2n+1),而為了獲取Y(2n+1),則需要在原始序列的右側擴展一個資料。因此,在x[7]右側擴展一個資料,x[8]=x[6]。根據擴展後的x序列計算高通濾波係數以及低通濾波係數。
如上述示例,X為經過對稱擴展的樣本序列。當原始資料的個數是偶數時,根據演算法的需要,在資料的左端對稱擴展兩個資料,在資料序列的右端對稱擴展一個資料。當原始資料的個數是奇數時,則應在序列左右各對稱擴展兩個資料,其中,向左擴展時,x[n]=x[n+2k],向右擴展時,x[n]=x[n-2k],k為大於零的整數,表示擴展的個數。
需要說明的是,上述介紹兩種離散小波變換方法在一維資料的應用,在二維資料中,可以分別在水平方向和垂直方向進行變換,即基於行、列分別進行計算。其中,行與列的變換順序不影響變換係數。
通過應用上述兩種離散小波變換方法,通過加法和移位的計算完成變換,降低視頻編碼的計算複雜度。相應地,減小計算存儲負擔,降低硬體實現複雜度。
上述表1中的組合1-7中的離散小波反變換可以以哈爾小波反變換和5/3小波反變換中的任意一種替換,如下表2所示。在另一些實施例中,視頻編碼器在水平方向和/或垂直方向進行變換與表2中的反變換類似,即視頻編碼器在水平方向和/或垂直方向進行離散小波變換,其可以採用哈爾小波變換、5/3小波變換、DCT2變換、DST7變換或不進行變換中的任意一種。
其中,表2中的組合1-6均包含兩種方式,因此,上表2共包含16種變換方法的組合。
在上述步驟S601-S602中,通過採用離散小波反變換,縮減計算過程中所佔用的計算資源,通過根據哈爾小波反變換和5/3小波反變換的平移和伸縮,避免了乘法的計算,有助於在處理較大尺寸資料時,能夠減小計算負擔。在使用離散小波反變換的基礎上,本發明還提出了在水平方向和垂直方向中選擇一種進行反變換,通過在一個維度上進行計算,從根本上減少計算複雜度。
與圖7所示的解碼側對應,本發明實施例提供一種編碼方法,應用在編碼裝置中,例如,應用在具有視頻編碼功能的設備中。如圖9所示,該編碼方法包括步驟S801至步驟S802。
步驟S801、視頻編碼器對變換單元進行離散小波變換,得到變換係數。
其中,視頻編碼器在水平方向和/或垂直方向進行離散小波變換,包括類似上述表1所示的7種離散小波變換組合。
在一種示例中,離散小波變換包括哈爾小波變換和5/3小波變換。視頻編碼器在水平方向和/或垂直方向進行離散小波變換,包括類似上述表2所示的16種離散小波變換組合。
步驟S802、視頻編碼器對變換係數進行量化和熵編碼,得到碼流。
在上述步驟S801-S802中,通過採用離散小波變換,縮減計算過程中所佔用的計算資源,通過根據哈爾小波變換和5/3小波變換的平移和伸縮,避免了乘法的計算,有助於在處理較大尺寸資料時,能夠減小計算負擔。在使用離散小波變換的基礎上,本發明還提出了在水平方向和垂直方向中選擇一種進行變換,通過在一個維度上進行計算,從根本上減少計算複雜度。
如圖10所示,為本發明提供的另一種視頻解碼方法的流程圖。
該方法包括步驟S901至步驟S902。
步驟S901、視頻解碼器對碼流進行熵解碼和反量化得到反變換單元。
步驟S902、視頻解碼器對反變換單元進行第三反變換,得到反變換後的係數;其中,第三反變換包括在水平方向進行反變換和/或在垂直方向進行反變換,水平方向和垂直方向的反變換方法包括DCT2反變換或DST7反變換,水平方向和垂直方向的反變換方法不同。
在一些實施例中,視頻解碼器在水平方向和/或垂直方向進行反變換的第三反變換,包括下表3所示的8種反變換組合:
通過上述步驟S901-S902,實現在水平方向和垂直方向進行不同類型的反變換方法,提升視頻解碼的靈活性。其中,只進行一個方向的變換時,有助於降低計算複雜度,提高壓縮性能。
與圖10所示的解碼側對應,本發明實施例提供一種編碼方法,應用在編碼裝置中,例如,應用在具有視頻編碼功能的設備中。如圖11所示,該編碼方法包括步驟S1001至步驟S1002。
步驟S1001、視頻編碼器對變換單元進行第三變換,得到變換係數;其中,第三變換包括在水平方向進行變換和/或在垂直方向進行變換,
水平方向和垂直方向的變換方法包括DCT2變換或DST7變換。
在一些實施例中,視頻解碼器在水平方向和/或垂直方向進行變換的第三變換,包括類似上述表3所示的8種變換組合。
步驟S1002、視頻編碼器對變換係數進行量化和熵編碼,得到碼流。
通過上述步驟S1001-S1002,實現在水平方向和垂直方向進行不同類型的變換方法,提升視頻編碼的靈活性。其中,只進行一個方向的變換時,有助於降低計算複雜度,提高壓縮性能。
基於上述圖7、圖9、圖10和圖11所述的編解碼方法,本發明提供以下可能的實施例。
實施例1、視頻解碼器基於反變換單元的尺寸確定反變換方法。
其中,反變換單元的尺寸可以預設在視頻解碼器中。假設反變換單元的尺寸為M×N,其中,M表示寬度,N表示高度。M×N可以包括4×1、8×1、16×1、4×2、8×2、16×2、4×4、8×4、16×4、8×8、16×8和16×16中的至少一種,本發明對此不作限制。
在一種示例中,反變換單元的尺寸根據編碼單元CU的尺寸確定。其中,反變換單元的尺寸與編碼單元的尺寸相同;或者,反變換單元的寬度為編碼單元的寬度的一半,反變換單元的高度與編碼單元的高度相同;或者,反變換單元的高度為編碼單元的高度的一半,反變換單元的寬度與編碼單元的寬度相同。示例性的,若編碼單元的尺寸為W×H,其中,W為編碼單元的寬度,H為編碼單元的高度,則反變換單元的尺寸為w×h,w為反變換單元的寬度,h為反變換單元的高度。其中,w×h可以為W×H,或者w×h為W/2×H,或者w×h為W×H/2,或者w×h為W/2×H/2。其中,W×H可以為4×1、8×1、16×1、4×2、8×2、16×2、4×4、8×4、16×4、8×8、16×8和16×16中的任意一種。
例如,編碼單元的尺寸為16x4,反變換單元尺寸為16x4;或者,編碼單元的尺寸為16x4,反變換單元的尺寸為8x4;或者,編碼單元的尺寸為16x2,反變換單元的尺寸為16x2;或者,編碼單元的尺寸為16x2,反變換單元的尺寸為8x2。
在一種示例中,反變換單元的尺寸與預測單元PU的尺寸相同,預測單元的尺寸為4×1、8×1、16×1、4×2、8×2、16×2、4×4、8×4、16×4、8×8、16×8和16×16中的任意一種。
視頻解碼器根據反變換單元的尺寸確定反變換方法。當反變換方法包括離散小波反變換時,在一些實施例中,反變換單元的尺寸包括第一尺寸和第二尺寸,基於第一尺寸確定在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換;基於第二尺寸確定在水平方向進行離散小波反變換,在垂直方向進行不進行變換。其中,第一尺寸與第二尺寸可以為上述可選方式中的任意一種,離散小波反變換包括哈爾小波反變換或5/3小波反變換中的任意一種。
需要說明的是,上述第一尺寸、第二尺寸與反變換方法的對應關係僅作為一種示例,離散小波反變換也可以在垂直方向進行,水平方向不進行反變換。
當變換方法包括DCT2變換和DST7變換時,類似地,當反變換方法包括DCT2反變換和DST7反變換時,在一些實施例中,反變換單元的尺寸包括第三尺寸、第四尺寸、第五尺寸和第六尺寸。基於第三尺寸確定反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行反變換;基於第四尺寸確定反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於第五尺寸確定反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於第六尺寸確定反變換單元在水平方向進行DST7反變換,在垂直方向進行DCT2反變換。
需要說明的是,反變換方法還可以包括離散小波反變換、DCT2反變換和DST7反變換的不同組合方式,例如,在水平方向進行離散小波反變換,在垂直方向進行DCT2反變換或DST7反變換等等。
通過上述示例,視頻解碼器確定反變換單元的尺寸,基於反變
換單元的尺寸確定反變換方法,其中針對反變換單元的尺寸的寬度和高度可以對應不同的反變換方法,有助於降低計算複雜度,提高壓縮性能。
需要說明的是,在編碼側,根據變換單元的尺寸確定變換方法的方式與根據反變換單元的尺寸確定反變換方法的方式相同,此處不再贅述。
需要說明的是,當變換單元的尺寸與編碼單元和預測單元的尺寸相關時,編碼單元和預測單元的尺寸為4×1、8×1、16×1、4×2、8×2、16×2、4×4、8×4、16×4、8×8、16×8和16×16中的任意一種。通過上述針對編碼單元和預測單元尺寸的限定,即針對視頻編解碼技術中進行行緩存時硬體所需的高度進行限定,有助於降低硬體實現複雜度。
實施例2、視頻解碼器基於碼流中的變換方法標識位元確定反變換方法。
其中,變換方法標識位元用於指示變換單元的變換方法,對於視頻解碼器而言,該變換方法為視頻解碼器對反變換單元進行反變換所採用的方法。
如下表4所示,為變換方法標識位元的一種示例性的定義方式:
需要說明的是,表4所示的變換方法標識位元能夠表示在水平方向和/或垂直方向進行離散小波變換的幾種示例性實現方法,除此之外還包括在
水平方向或垂直方向進行離散小波變換,在另一個方向進行DCT2變換或DST7變換,該多個變換方法標識位元可以參照表4的方式增加或減少標識位元,從而擴大或減少標識位元指示變換方法的數量。本發明對此不作限制。
如下表5所示,為變換方法標識位元的另一種示例性的定義方式:
需要說明的是,表5所示的變換方法標識位元僅作為示例,可以增加或減少標識位元,以及不同標識位元對應的變換方法,本發明對此不作限制。
在一種示例中,視頻解碼器中預設兩種變換方法,變換方法標識位元用於標識兩種變換方法。如下表6所示,為變換方法標識位元的另一種示例性的定義方式:
其中,變換方法標識位元所標識的變換方法,可以在視頻編碼階段,由視頻編碼器基於率失真(Rate-Distortion Optimized,RDO)代價確定。率失真代價可以用來衡量變換方法的性能,例如可通過以下公式進行計算:J(mode)=D+λ×R;其中,J(mode)表示不同模式的率失真代價,D為量化失真,由重構建的視頻與原圖像差值均方和表示,λ為拉格朗日乘子,R為當前模式編碼所需的實際比特數。如圖3所示,重建塊一部分來自於經反量化與反變換的殘差塊,因此,重建塊能夠體現反變換的變換方法所帶來的影響。率失真代價越大,表示該編碼模式中採用的變換方法性能越差,則視頻編碼器可以選擇性能較好的變換方法,以確定對應的變換方法標識位
元。例如,上述表6示出的兩種方法針對同一尺寸的變換單元進行變換,經計算確定採用5/3小波變換方法的率失真代價較小,則變換方法標識位元為0。
在一種示例中,經過上述率失真代價的計算,性能較好的變換方法通過隱式匯出的方式來表示。仍以上述示例為例,用於表示率失真代價較低的變換方法標識位元通過變換係數的個數的奇偶性匯出。示例性的,變換係數個數為偶數時,匯出變換方法標識位元,該變換方法標識位元包括0和1,分別用於指示表6所示的兩種變換方法的組合。
需要說明的是,表6所示的方法也可以為上述表2和表3中的任意兩種組合,本發明對此不作限制。
通過上述示例,視頻解碼器基於變換方法標識位元確定變換方法,其中變換方法標識位元包括標識預設的任意一種方法的組合,或僅標識性能較好的一種變換方法,該種標識方式能夠節約碼流中佔用的標識位元,同時提升壓縮性能。
需要說明的是,在編碼側,視頻編碼器將變換方法以變換方法標識位元在碼流中表示,其中變換方法標識位元所指示的變換方法與上述解碼側的確定反變換方法相同,此處不再贅述。
實施例3、視頻解碼器基於碼流中的預測模式標識位元確定反變換方法。
其中,預測模式標識位元用於指示反變換單元進行變換前,預測單元進行預測的預測模式,其中,預測模式包括DC預測模式、角度預測模式、Planar預測模式和塊拷貝模式,角度預測模式包括水平預測模式、垂直預測模式和對角預測模式。
如下表7所示,為預測模式標識位元的一種示例性的定義方式:
需要說明的是,預測模式包括多種,以上作為示例僅示出4種,其中包括角度預測模式中的垂直預測模式、DC預測模式、Planar預測模式和塊拷貝模式。預測模式標識位元還可以包括更多或更少的預測模式,本發明對此不作限制。
在一些實施例中,視頻解碼器根據上述預測模式標識位元確定預測模式的同時,確定該預測模式對應的反變換方法。如下表8所示,預測模式與反變換方法的一種示例性的對應關係:
在一種示例中,當預測模式為塊拷貝模式時,經過預測得到的殘差塊不進行反變換,將殘差塊直接進行反量化。
需要說明的是,表8中所示的預測模式與反變換方法的對應關係僅作為示例,還可以包含更多或更少的對應關係。其中,預測模式與反變換方法的對應關係可以預設在視頻解碼器中,或者,與視頻編碼器進行通信獲取,本發明對此不作限制。
在一種示例中,預測模式與反變換方法具有對應關係時,還可以與量化方法建立對應關係。例如,上述表8中垂直預測模式對應的反變換方法為在水平方向進行哈爾小波反變換,在垂直方向進行5/3小波變反換,則量化採用的方法為標量量化。視頻解碼器獲取預測模式標識位元時,還可以確定反量化的方法。
通過上述示例,視頻解碼器基於預測模式標識位元確定反變換方法,其中預測模式標識位元用於標識一種或多種預測模式,根據預測模式確定反變換方法,該種標識方式有助於節約碼流中佔用的標識位元,同時根據不同預測模式的殘差,基於不同變換方法對殘差處理的性能,建立最優
的對應關係,有助於提升壓縮性能。
需要說明的是,在編碼側,視頻編碼器將預測模式以預測模式標識位元在碼流中表示,其中預測模式標識位元所指示的預測模式,以及其對應的變換方法與上述解碼側的確定方式相同或類似,此處不再贅述。
實施例4、視頻解碼器基於亮度和色度對反變換單元進行反變換。
在一些實施例中,反變換單元進行反變換時基於亮度變換單元和色度變換單元分別進行計算。亮度變換單元和色度變換單元是指根據採樣格式得到基於亮度和色度的編碼單元,根據編碼單元的尺寸確定反變換單元的尺寸,其中,該反變換單元包括亮度變換單元和色度變換單元。示例性的,如前文所述視頻採樣中的示例,在420採樣格式下,亮度編碼單元為:
[Y0][Y1][Y2][Y3];
[Y4][Y5][Y6][Y7];
色度編碼單元為:
[U0][U2];
[V4][V6];
當編碼單元的尺寸與反變換單元的尺寸相同時,亮度變換單元與亮度編碼單元相同,色度變換單元與色度編碼單元相同。
視頻解碼器基於亮度變換單元和色度變換單元對反變換單元進行反變換,包括視頻解碼器對亮度變換單元在水平方向和/或垂直方向進行反變換,對色度變換單元在水平方向和/或垂直方向進行反變換。其中,在水平方向和/或垂直方向的反變換方法的組合可以為上述表2和表3中的任意一種。
在一種示例中,視頻解碼器基於採樣格式確定變換方法。如下表9所示,採樣格式與反變換方法的一種示例性的對應關係:
如表9所示,當採用444採樣格式時,對亮度變換單元和色度變換單元在水平方向和垂直方向均進行反變換;當採用420採樣格式時,對亮度變換單元在水平方向和垂直方向進行反變換,對色度變換單元僅在水平方向進行反變換。其中,上述對亮度變換單元和色度變換單元採用的變換方法可以為上述表2和表3中的任意一種組合。
在一種示例中,視頻解碼器基於亮度變換單元和色度變換單元的尺寸確定變換方法。如下表10所示,亮度變換單元和色度變換單元的尺寸與變換方法的一種示例性的對應關係:
如表10所示,亮度變換單元的尺寸與色度變換單元的尺寸相同,對亮度變換單元和色度變換單元在水平方向和垂直方向均進行反變換;或者,對亮度變換單元在水平方向和垂直方向進行反變換,當色度變換單元的高度為1時,對色度變換單元僅在水平方向進行反變換。其中,上述對亮度變換單元和色度變換單元採用的變換方法可以為上述表2和表3中的任意一種組合。
需要說明的是,上述表9和表10僅作為一種示例,不同採樣格式可以對應不同的反變換方法或互逆的變換方法,不同的亮度變換單元與色度變換單元的尺寸對應不同的反變換方法或互逆的變換方法,本發明對此不作限制。
需要說明的是,在編碼側,視頻編碼器基於亮度和色度對變換單元進行變換,其中亮度變換單元和色度變換單元的確定方式在採樣時確定,在水平方向和/或垂直方向分別對亮度變換單元和色度變換單元進行變換的方法與上述解碼側的方法相同或類似,此處不再贅述。
實施例5、視頻解碼器基於碼流中的離散小波變換分解層數。
在一些實施例中,視頻解碼器得到的包括圖像資料的碼流包括序列參數集(Sequence Parameter Set,SPS)、圖像參數集(Picture Parameter Set,PPS)以及條帶頭(Slice Header)或條帶片段頭(Slice Segment Header)等語法元素。其中,序列參數集中包括離散小波變換分解層數。視頻解碼器根據離散小波變換分解層數進行離散小波變換。例如,垂直方向離散小波變換分解層數為L,則將反變換單元在垂直方向進行L層小波垂直分解。其中,反變換單元的高度為N,2LN。該離散小波變換分解層數適用於哈爾小波變換和5/3小波變換。
需要說明的是,在編碼側,視頻編碼器按照預設的離散小波變換分解層數進行變換,將該分解層數寫入序列參數集中,發送至視頻解碼器用於解碼,離散小波變換分解層數的相關描述請參考上文,此處不再贅述。
需要說明的是,上述實施例可應用在步驟S601-S602、S801-S802、S901-S902以及S1001-S1002中。視頻編碼器基於變換單元進行變換的具體實現方式與上述解碼側的實施例為互逆的編碼流程,不再重複描述。
本發明實施例提供一種解碼裝置,該解碼裝置可以為視頻解碼器。解碼裝置用於執行以上解碼方法中的視頻解碼器所執行的步驟。本發明實施例提供的解碼裝置可以包括相應步驟所對應的模組。
本發明實施例可以根據上述方法示例對解碼裝置進行功能模組的劃分,例如,可以對應各個功能劃分各個功能模組,也可以將兩個或兩個以上的功能集成在一個處理模組中。上述集成的模組既可以採用硬體的形式實現,也可以採用軟體功能模組的形式實現。本發明實施例中對模組的劃分是示意性的,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式。
在採用對應各個功能劃分各個功能模組的情況下,圖12示出上述實施例中所涉及的解碼裝置的一種可能的結構示意圖。如圖12所示,解碼裝置110包括解碼模組1101、反變換模組1102和存儲模組1103。
解碼模組1101,用於對碼流進行熵解碼和反量化得到反變換單元,例如上述步驟S601。
反變換模組1102,用於對反變換單元進行離散小波反變換,得到反變換後的係數,例如上述步驟S602。
在一種示例中,反變換模組1102,用於對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行離散小波反變換。
在一種示例中,離散小波反變換包括哈爾小波反變換和5/3小波反變換,反變換模組1102,用於對所述反變換單元在水平方向進行哈爾小波反變換,在垂直方向進行哈爾小波反變換、5/3小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在水平方向進行5/3小波反變換,在垂直方向進行哈爾小波反變換、5/3小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行哈爾小波反變換;或者,對所
述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行5/3小波反變換。
在一種示例中,反變換單元的尺寸與編碼單元的尺寸相同;或者,所述反變換單元的寬度為編碼單元的寬度的一半,所述反變換單元的高度與所述編碼單元的高度相同;或者,所述反變換單元的高度為編碼單元的高度的一半,所述反變換單元的寬度與所述編碼單元的寬度相同。
在一種示例中,反變換模組1102,用於基於反變換單元的尺寸,確定對所述反變換單元在水平方向進行第一反變換,在垂直方向進行第二反變換;其中,第一變換和第二變換中的至少一種為離散小波反變換。
在一種示例中,反變換單元的尺寸包括第一尺寸和第二尺寸,反變換模組1102,用於基於第一尺寸,確定對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換;基於第二尺寸,確定對所述反變換單元在水平方向進行離散小波反變換,在垂直方向不進行反變換。
在一種示例中,解碼模組1101,用於獲取所述碼流中的變換方法標識位元,所述變換方法標識位元用於指示反變換單元的反變換方法,所述反變換方法包括在水平方向和/或垂直方向進行離散小波反變換。
在一種示例中,解碼模組1101,用於獲取所述碼流中的預測模式標識位元,所述預測模式標識位元用於指示所述反變換單元進行反變換前,預測單元進行預測的預測模式,預測模式包括第一預測模式和第二預測模式;基於第一預測模式,確定對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;基於第二預測模式,確定對所述反變換單元在水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在垂直方向進行離散小波反變換。
在一種示例中,預測模式包括DC預測模式、角度預測模式、Planar預測模式和塊拷貝模式中的任意一種,角度預測模式為水平預測模式、垂直預測模式和對角預測模式中的任意一種。
在一種示例中,反變換模組1102,用於對所述反變換單元的
亮度進行離散小波反變換,對所述反變換單元的色度進行離散小波反變換、DCT2反變換以及DST7反變換中的任意一種;或者,對所述反變換單元的亮度進行DCT2反變換以及DST7反變換中的任意一種,對反變換單元的色度進行離散小波反變換。
其中,上述方法實施例涉及的各步驟的所有相關內容均可以援引到對應功能模組的功能描述,在此不再贅述。
當然,本發明實施例提供的解碼裝置包括但不限於上述模組,例如:解碼裝置110還可以包括存儲模組1103。
存儲模組1103可以用於存儲該解碼裝置的程式碼和資料。
在採用對應各個功能劃分各個功能模組的情況下,圖13示出上述實施例中所涉及的解碼裝置的一種可能的結構示意圖。如圖13所示,解碼裝置120包括解碼模組1201、反變換模組1202和存儲模組1203。
解碼模組1201,用於對碼流進行熵解碼和反量化得到反變換單元。例如上述步驟S901。
反變換模組1202,用於對反變換單元進行第三反變換,得到反變換後的係數;其中,第三反變換包括在水平方向進行反變換和/或在垂直方向進行反變換,水平方向和垂直方向的反變換方法包括DCT2反變換或DST7反變換。例如上述步驟S902。
在一種示例中,反變換單元的尺寸與編碼單元的尺寸相同;或者,所述反變換單元的寬度為編碼單元的寬度的一半,所述反變換單元的高度與所述編碼單元的高度相同;或者,所述反變換單元的高度為所述編碼單元的高度的一半,所述反變換單元的寬度與所述編碼單元的寬度相同。
在一種示例中,反變換單元的尺寸包括第三尺寸、第四尺寸、第五尺寸和第六尺寸,反變換模組1202,用於基於所述反變換單元的第三尺寸,對所述反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行反變換;基於反變換單元的第四尺寸,對反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於反變換單元的第五尺寸,對反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於反變換單元的第六尺寸,對反變換單元在水
平方向進行DST7反變換,在垂直方向進行DCT2反變換。
在一種示例中,解碼模組1201,用於獲取碼流中的變換方法標識位元,所述變換方法標識位元用於指示反變換單元的反變換方法;根據所述反變換單元的反變換方法確定第三反變換。
在一種示例中,解碼模組1201,用於獲取碼流中的預測模式標識位元,預測模式標識位元用於指示反變換單元進行反變換前,預測單元進行預測的預測模式,預測模式包括第三預測模式、第四預測模式、第五預測模式和第六預測模式;基於第三預測模式,確定對所述反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行反變換;基於第四預測模式,確定對所述反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於第五預測模式,對反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於第六預測模式,對反變換單元在水平方向進行DST7反變換,在垂直方向進行DCT2反變換。
在一種示例中,預測模式包括DC模式、角度模式、Planar模式和塊拷貝模式中的任意一種,角度模式為水平模式、垂直模式和對角模式中的任意一種。
在一種示例中,反變換模組1202,用於對反變換單元的亮度進行DCT2反變換或DST7反變換;對反變換單元的色度進行DCT2反變換或DST7反變換,得到反變換後的係數。
其中,上述方法實施例涉及的各步驟的所有相關內容均可以援引到對應功能模組的功能描述,在此不再贅述。
當然,本發明實施例提供的解碼裝置包括但不限於上述模組,例如:解碼裝置還可以包括存儲模組1203。
存儲模組1203可以用於存儲該解碼裝置的程式碼和資料。
作為示例,結合圖6,解碼裝置110和解碼裝置120中的解碼模組、反變換模組和存儲模組中的部分或全部實現的功能可以通過圖6中的處理器501執行圖6中的記憶體502中的程式碼實現。
在採用對應各個功能劃分各個功能模組的情況下,圖14示出
上述實施例中所涉及的編碼裝置的一種可能的結構示意圖。如圖14所示,編碼裝置130包括變換模組1301、編碼模組1302和存儲模組1303。
變換模組1301,用於對變換單元進行離散小波變換,得到變換係數。例如上述步驟S801。
編碼模組1302,用於對變換係數進行量化和熵編碼,得到碼流。例如上述步驟S802。
其中,上述方法實施例涉及的各步驟的所有相關內容均可以援引到對應功能模組的功能描述,在此不再贅述。
當然,本發明實施例提供的編碼裝置包括但不限於上述模組,例如:編碼裝置還可以包括存儲模組1303。
存儲模組1303可以用於存儲該編碼裝置的程式碼和資料。
作為示例,結合圖6,編碼裝置130中的變換模組1301、編碼模組1302和存儲模組1303中的部分或全部實現的功能可以通過圖6中的處理器501執行圖6中的記憶體502中的程式碼實現。
在採用對應各個功能劃分各個功能模組的情況下,圖15示出上述實施例中所涉及的編碼裝置的一種可能的結構示意圖。如圖15所示,編碼裝置140包括變換模組1401、編碼模組1402和存儲模組1403。
變換模組1401,用於對變換單元進行第三變換,得到變換係數;其中,第三變換包括在水平方向進行變換和/或在垂直方向進行變換,水平方向和垂直方向的變換方法包括DCT2變換或DST7變換。例如上述步驟S1001。
編碼模組1402,用於對變換係數進行量化和熵編碼,得到碼流。例如上述步驟S1002。
其中,上述方法實施例涉及的各步驟的所有相關內容均可以援引到對應功能模組的功能描述,在此不再贅述。
當然,本發明實施例提供的編碼裝置包括但不限於上述模組,例如:編碼裝置還可以包括存儲模組1403。
存儲模組1403可以用於存儲該編碼裝置的程式碼和資料。
作為示例,結合圖6,編碼裝置140中的變換模組1401、編
碼模組1402和存儲模組1403中的部分或全部實現的功能可以通過圖6中的處理器501執行圖6中的記憶體502中的程式碼實現。
本發明實施例還提供了一種電子設備,該電子設備包括上述解碼裝置110和解碼裝置120,該解碼裝置110和解碼裝置120執行上文提供的任意一種視頻解碼器所執行的方法。
本發明實施例還提供了一種電子設備,該電子設備包括上述編碼裝置130和編碼裝置140,該編碼裝置130和編碼裝置140執行上文提供的任意一種視頻編碼器所執行的方法。
本發明實施例還提供了一種電子設備,該電子設備包括上述解碼裝置110和編碼裝置130,該解碼裝置110和編碼裝置130執行上文提供的任意一種視頻解碼器和視頻編碼器所執行的方法。
本發明實施例還提供了一種電子設備,該電子設備包括上述解碼裝置120和編碼裝置140,該解碼裝置120和編碼裝置140執行上文提供的任意一種視頻解碼器和視頻編碼器所執行的方法。
本發明實施例還提供了一種通信系統,該通信系統包括由上述解碼裝置110、解碼裝置120、編碼裝置130和編碼裝置140構成的電子設備、該解碼裝置110、解碼裝置120、編碼裝置130和編碼裝置140執行上文提供的任意一種視頻解碼器和視頻編碼器所執行的方法。
本發明實施例還提供了一種電腦可讀存儲介質,該電腦可讀存儲介質上存儲有電腦程式,當該電腦程式在電腦上運行時,使得該電腦執行上文提供的任意一種視頻解碼器所執行的方法。
關於上述提供的任一種電腦可讀存儲介質中相關內容的解釋及有益效果的描述,均可以參考上述對應的實施例,此處不再贅述。
本發明實施例還提供了一種處理器。該處理器中集成了用於實現上述解碼裝置110、解碼裝置120、編碼裝置130和編碼裝置140的功能的控制電路和一個或者多個埠。可選的,該處理器支援的功能可以參考上文,此處不再贅述。本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可通過程式來指令相關的硬體完成。所述的程式可以存儲於一種電腦可讀存儲介質中。上述提到的存儲介質可以是唯讀記憶體,隨機接入記
憶體等。上述處理單元或處理器可以是中央處理器,通用處理器、特殊應用積體電路(Application Specific Integrated Circuit,ASIC)、數位信號處理器(Digital Signal Processor,DSP),現場可程式邏輯閘陣列(Field Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、電晶體邏輯器件、硬體部件或者其任意組合。
本發明實施例還提供了一種包含指令的電腦程式產品,當該指令在電腦上運行時,使得電腦執行上述實施例中的任意一種方法。該電腦程式產品包括一個或多個電腦指令。在電腦上載入和執行電腦程式指令時,全部或部分地產生按照本發明實施例的流程或功能。電腦可以是通用電腦、專用電腦、電腦網路、或者其他可程式設計裝置。電腦指令可以存儲在電腦可讀存儲介質中,或者從一個電腦可讀存儲介質向另一個電腦可讀存儲介質傳輸,例如,電腦指令可以從一個網站網站、電腦、伺服器或者資料中心通過有線(例如同軸電纜、光纖、數位用戶線(Digital Subscriber Line,DSL))或無線(例如紅外、無線、微波等)方式向另一個網站網站、電腦、伺服器或資料中心進行傳輸。電腦可讀存儲介質可以是電腦能夠存取的任何可用介質或者是包含一個或多個可以用介質集成的伺服器、資料中心等資料存放裝置。可用介質可以是磁性介質(例如,磁片、硬碟、磁帶),光介質(例如,DVD)、或者半導體介質(例如SSD)等。
應注意,本發明實施例提供的上述用於存儲電腦指令或者電腦程式的器件,例如但不限於,上述記憶體、電腦可讀存儲介質和通信設備等,均具有非易失性(non-transitory)。
在上述實施例中,可以全部或部分地通過軟體、硬體、韌體或者其任意組合來實現。當使用軟體程式實現時,可以全部或部分地以電腦程式產品的形式來實現。該電腦程式產品包括一個或多個電腦指令。在電腦上載入和執行電腦程式指令時,全部或部分地產生按照本發明實施例的流程或功能。電腦可以是通用電腦、專用電腦、電腦網路、或者其他可程式設計裝置。電腦指令可以存儲在電腦可讀存儲介質中,或者從一個電腦可讀存儲介質向另一個電腦可讀存儲介質傳輸,例如,電腦指令可以從一個網站網站、電腦、伺服器或者資料中心通過有線(例如同軸電纜、光纖、數位用戶線路
(Digital Subscriber Line,DSL))或無線(例如紅外、無線、微波等)方式向另一個網站網站、電腦、伺服器或資料中心進行傳輸。電腦可讀存儲介質可以是電腦能夠存取的任何可用介質或者是包含一個或多個可以用介質集成的伺服器、資料中心等資料存放裝置。可用介質可以是磁性介質(例如,磁片、硬碟、磁帶),光介質(例如,DVD)、或者半導體介質(例如固態硬碟(Solid State Disk,SSD))等。
儘管在此結合各實施例對本發明進行了描述,然而,在實施所要求保護的本發明過程中,本領域技術人員通過查看圖式、發明內容、以及所附申請專利範圍,可理解並實現公開實施例的其他變化。在請求項中,“包括”(comprising)一詞不排除其他組成部分或步驟,“一”或“一個”不排除多個的情況。單個處理器或其他單元可以實現請求項中列舉的若干項功能。相互不同的從屬請求項中記載了某些措施,但這並不表示這些措施不能組合起來產生良好的效果。
儘管結合具體特徵及其實施例對本發明進行了描述,顯而易見的,在不脫離本發明的精神和範圍的情況下,可對其進行各種修改和組合。相應地,本說明書和圖式僅僅是所附請求項所界定的本發明的示例性說明,且視為已覆蓋本發明範圍內的任意和所有修改、變化、組合或等同物。顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和範圍。這樣,倘若本發明的這些修改和變型屬於本發明請求項及其等同技術的範圍之內,則本發明也意圖包含這些改動和變型在內。
S601,S602:步驟
Claims (20)
- 一種視頻解碼方法,包括:對碼流進行熵解碼和反量化得到反變換單元;對所述反變換單元進行離散小波反變換,得到反變換後的係數;其中,對所述反變換單元進行離散小波反變換,得到反變換後的係數,包括:對所述反變換單元的亮度進行離散小波反變換,對所述反變換單元的色度進行離散小波反變換、DCT2反變換以及DST7反變換中的任意一種;或者,對所述反變換單元的亮度進行DCT2反變換以及DST7反變換中的任意一種,對所述反變換單元的色度進行離散小波反變換。
- 如請求項1所述的方法,其中,對所述反變換單元進行離散小波反變換,得到反變換後的係數,包括:對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在所述水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在所述垂直方向進行離散小波反變換。
- 如請求項2所述的方法,其中,所述離散小波反變換包括哈爾小波反變換和5/3小波反變換,對所述反變換單元進行離散小波反變換,得到反變換後的係數,包括:對所述反變換單元在所述水平方向進行反哈爾小波變換,在所述垂直方向進行哈爾小波反變換、5/3小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者,對所述反變換單元在所述水平方向進行5/3小波反變換,在所述垂直方向進行哈爾小波反變換、5/3小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;或者, 對所述反變換單元在所述水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在所述垂直方向進行哈爾小波反變換;或者,對所述反變換單元在所述水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在所述垂直方向進行5/3小波反變換。
- 如請求項1所述的方法,其中,所述反變換單元的尺寸與編碼單元的尺寸相同;或者,所述反變換單元的寬度為編碼單元的寬度的一半,所述反變換單元的高度與所述編碼單元的高度相同;或者,所述反變換單元的高度為編碼單元的高度的一半,所述反變換單元的寬度與所述編碼單元的寬度相同。
- 如請求項1所述的方法,其中,對所述反變換單元進行離散小波反變換,得到反變換後的係數,包括:基於所述反變換單元的尺寸,確定對所述反變換單元在水平方向進行第一反變換,在垂直方向進行第二反變換;其中,所述第一反變換和所述第二反變換中的至少一種為離散小波反變換。
- 如請求項5所述的方法,其中,所述反變換單元的尺寸包括第一尺寸和第二尺寸,基於所述反變換單元的尺寸,確定對所述反變換單元在水平方向進行第一反變換,在垂直方向進行第二反變換,包括:基於所述第一尺寸,確定對所述反變換單元在所述水平方向進行離散小波反變換,在所述垂直方向進行離散小波反變換;基於所述第二尺寸,確定對所述反變換單元在所述水平方向進行離散小波反變換,在所述垂直方向不進行反變換。
- 如請求項1所述的方法,其中,對所述碼流進行熵解碼和反量化得到反變換單元,包括:獲取所述碼流中的變換方法標識位元,所述變換方法標識位元用於指示所述反變換單元的反變換方法,所述反變換方法包括對所述反變換單元 在水平方向和/或垂直方向進行離散小波反變換。
- 如請求項1所述的方法,其中,對所述碼流進行熵解碼和反量化得到反變換單元,包括:獲取所述碼流中的預測模式標識位元,所述預測模式標識位元用於指示所述反變換單元進行反變換前,預測單元進行預測的預測模式,所述預測模式包括第一預測模式和第二預測模式;基於所述第一預測模式,確定對所述反變換單元在水平方向進行離散小波反變換,在垂直方向進行離散小波反變換、DCT2反變換、DST7反變換以及不進行反變換中的任意一種;基於所述第二預測模式,確定對所述反變換單元在所述水平方向進行DCT2反變換、DST7反變換以及不進行反變換中的任意一種,在所述垂直方向進行離散小波反變換。
- 如請求項8所述的方法,其中,所述預測模式包括DC預測模式、角度預測模式、Planar預測模式和塊拷貝模式中的任意一種,所述角度預測模式包括水平預測模式、垂直預測模式和對角預測模式中的任意一種。
- 一種視頻解碼方法,包括:對碼流進行熵解碼和反量化得到反變換單元;對所述反變換單元進行第三反變換,得到反變換後的係數;其中,所述第三反變換包括對所述反變換單元在水平方向進行反變換和/或在垂直方向進行反變換,所述水平方向和所述垂直方向的反變換方法包括DCT2反變換或DST7反變換;其中,對所述碼流進行熵解碼和反量化得到反變換單元,包括:獲取所述碼流中的預測模式標識位元,所述預測模式標識位元用於指示反變換單元進行反變換前,預測單元進行預測的預測模式,所述預測模式包括第三預測模式、第四預測模式、第五預測模式和第六預測模式;基於所述第三預測模式,確定對所述反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行反變換; 基於所述第四預測模式,確定對所述反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於所述第五預測模式,對所述反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於所述第六預測模式,對所述反變換單元在水平方向進行DST7反變換,在垂直方向進行DCT2反變換。
- 如請求項10所述的方法,其中,所述反變換單元的尺寸與編碼單元的尺寸相同;或者,所述反變換單元的寬度為編碼單元的寬度的一半,所述反變換單元的高度與所述編碼單元的高度相同;或者,所述反變換單元的高度為編碼單元的高度的一半,所述反變換單元的寬度與所述編碼單元的寬度相同。
- 如請求項11所述的方法,其中,所述反變換單元的尺寸包括第三尺寸、第四尺寸、第五尺寸和第六尺寸,對所述反變換單元進行第三反變換,得到反變換後的係數,包括:基於所述反變換單元的第三尺寸,對所述反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行反變換;基於所述反變換單元的第四尺寸,對所述反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於所述反變換單元的第五尺寸,對所述反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於所述反變換單元的第六尺寸,對所述反變換單元在水平方向進行DST7反變換,在垂直方向進行DCT2反變換。
- 如請求項10所述的方法,其中,對所述碼流進行熵解碼和反量化得到反變換單元,包括:獲取所述碼流中的變換方法標識位元,所述變換方法標識位元用於指示所述反變換單元的反變換方法;根據所述反變換單元的反變換方法確定所述第三反變換。
- 如請求項10所述的方法,其中,所述預測模式包括DC模式、角度模式、Planar模式和塊拷貝模式中的任意一種,所述角度模式為水平模式、垂直模式和對角模式中的任意一種。
- 如請求項10所述的方法,其中,所述對所述反變換單元進行第三反變換,得到反變換後的係數,包括:對所述反變換單元的亮度進行DCT2反變換或DST7反變換;對所述反變換單元的色度進行DCT2反變換或DST7反變換,得到反變換後的係數。
- 一種視頻解碼裝置,包括:解碼模組,用於對碼流進行熵編碼和反量化得到反變換單元;反變換模組,用於對所述反變換單元進行離散小波反變換,得到反變換後的係數;其中,對所述反變換單元進行離散小波反變換,得到反變換後的係數,包括:對所述反變換單元的亮度進行離散小波反變換,對所述反變換單元的色度進行離散小波反變換、DCT2反變換以及DST7反變換中的任意一種;或者,對所述反變換單元的亮度進行DCT2反變換以及DST7反變換中的任意一種,對所述反變換單元的色度進行離散小波反變換。
- 一種視頻解碼裝置,包括:解碼模組,用於對碼流進行熵編碼和反量化得到反變換單元;其中,對所述碼流進行熵解碼和反量化得到反變換單元,包括:獲取所述碼流中的預測模式標識位元,所述預測模式標識位元用於指示反變換單元進行反變換前,預測單元進行預測的預測模式,所述預測模式包括第三預測模式、第四預測模式、第五預測模式和第六預測模式;基於所述第三預測模式,確定對所述反變換單元在水平方向進行DCT2反變換或DST7反變換,在垂直方向不進行反變換;基於所述第四預測模式,確定對所述反變換單元在水平方向不進行反變換,在垂直方向進行DCT2反變換或DST7反變換;基於所述第五預測模式,對所述反變換單元在水平方向進行DCT2反變換,在垂直方向進行DST7反變換;基於所述第六預測模式,對所述反變換單元在水平方向進行DST7反變換,在垂直方向進行DCT2反變換; 反變換模組,對所述反變換單元進行第三反變換,得到反變換後的係數;其中,所述第三反變換包括在水平方向進行變換和/或在垂直方向進行反變換,所述水平方向和所述垂直方向的變換方法包括DCT2反變換或DST7反變換。
- 一種視頻解碼器,所述視頻解碼器用於執行如請求項1至15任一項所述的方法。
- 一種電子設備,包括如請求項18所述的視頻解碼器,記憶體以及通信介面,所述視頻解碼器執行上述請求項1至9中任一項所述的方法,或上述請求項10至15中任一項所述的方法。
- 一種電腦可讀存儲介質,所述電腦可讀存儲介質中存儲有程式,當所述程式在所述電腦上運行時,使得所述電腦執行如請求項1至15中任一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111335612.2A CN116112689A (zh) | 2021-11-11 | 2021-11-11 | 视频编解码方法及装置 |
CN202111335612.2 | 2021-11-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202327364A TW202327364A (zh) | 2023-07-01 |
TWI821013B true TWI821013B (zh) | 2023-11-01 |
Family
ID=86253309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111143286A TWI821013B (zh) | 2021-11-11 | 2022-11-11 | 視頻編解碼方法及裝置 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN116112689A (zh) |
TW (1) | TWI821013B (zh) |
WO (1) | WO2023083263A1 (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000244742A (ja) * | 1999-02-19 | 2000-09-08 | Canon Inc | 画像処理装置及び方法 |
CN103905831A (zh) * | 2014-04-18 | 2014-07-02 | 西安电子科技大学 | 基于图形处理器的条带波变换图像压缩方法 |
US20200021852A1 (en) * | 2018-07-16 | 2020-01-16 | Qualcomm Incorporated | Transform variations of multiple separable transform selection |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105530518B (zh) * | 2014-09-30 | 2019-04-26 | 联想(北京)有限公司 | 一种视频编码、解码方法及装置 |
US10516885B1 (en) * | 2018-07-11 | 2019-12-24 | Tencent America LLC | Method and apparatus for video coding |
KR102509578B1 (ko) * | 2018-08-08 | 2023-03-14 | 엘지전자 주식회사 | 영상의 부호화/복호화 방법 및 이를 위한 장치 |
US10986339B2 (en) * | 2019-02-08 | 2021-04-20 | Tencent America LLC | Method and apparatus for harmonization between transform skip mode and multiple transform selection |
KR102657540B1 (ko) * | 2019-03-03 | 2024-04-12 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 변환 프로세스를 위해 사용되는 인코더, 디코더 및 대응하는 방법 |
CN112637607A (zh) * | 2020-12-21 | 2021-04-09 | 维沃移动通信有限公司 | 图像编码方法及装置 |
-
2021
- 2021-11-11 CN CN202111335612.2A patent/CN116112689A/zh active Pending
-
2022
- 2022-11-10 WO PCT/CN2022/131167 patent/WO2023083263A1/zh unknown
- 2022-11-11 TW TW111143286A patent/TWI821013B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000244742A (ja) * | 1999-02-19 | 2000-09-08 | Canon Inc | 画像処理装置及び方法 |
CN103905831A (zh) * | 2014-04-18 | 2014-07-02 | 西安电子科技大学 | 基于图形处理器的条带波变换图像压缩方法 |
US20200021852A1 (en) * | 2018-07-16 | 2020-01-16 | Qualcomm Incorporated | Transform variations of multiple separable transform selection |
Also Published As
Publication number | Publication date |
---|---|
WO2023083263A1 (zh) | 2023-05-19 |
TW202327364A (zh) | 2023-07-01 |
CN116112689A (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI728220B (zh) | 用於視訊寫碼之多種類型樹架構 | |
US20230016033A1 (en) | Video intra prediction using hybrid recursive filters | |
TWI666920B (zh) | 用於視訊寫碼之具有執行長度碼之調色盤預測器信令 | |
JP6710755B2 (ja) | 非4:4:4クロマサブサンプリングのディスプレイストリーム圧縮(dsc)のためのエントロピーコーディング技法 | |
KR102229045B1 (ko) | 디스플레이 스트림 압축 (dsc) 을 위한 엔트로피 코딩 기법들 | |
TWI827606B (zh) | 網格寫碼之量化係數寫碼 | |
WO2020220884A1 (zh) | 视频序列的帧内预测方法及装置 | |
TW202110189A (zh) | 用於視訊寫碼的環繞運動補償 | |
JP2018531556A6 (ja) | 非4:4:4クロマサブサンプリングのディスプレイストリーム圧縮(dsc)のためのエントロピーコーディング技法 | |
WO2023231866A1 (zh) | 一种视频译码方法、装置及存储介质 | |
CN116684609A (zh) | 图像编解码方法、装置及存储介质 | |
TWI847806B (zh) | 視訊圖像解碼方法、編碼方法、裝置及存儲介質 | |
JP2023554264A (ja) | 高ビット深度ビデオコーディング用のriceパラメータ導出のための低複雑度履歴の使用 | |
WO2024022359A1 (zh) | 一种图像编解码方法及装置 | |
WO2024022367A1 (zh) | 图像解码方法、编码方法及装置 | |
WO2023138562A1 (zh) | 图像解码方法、图像编码方法及相应的装置 | |
TW202333496A (zh) | 用於視訊譯碼的上下文自我調整二進位算術譯碼(cabac)概率估計 | |
TWI821013B (zh) | 視頻編解碼方法及裝置 | |
CN116156167A (zh) | 一种残差跳过编解码方法及装置 | |
TWI829424B (zh) | 解碼方法、編碼方法及裝置 | |
WO2023138532A1 (zh) | 一种视频解码方法、装置、视频解码器及存储介质 | |
CN116366847B (zh) | 一种视频图像解码方法、装置及存储介质 | |
WO2022193389A1 (zh) | 视频编解码方法与系统、及视频编解码器 |