TWI806650B - 解碼方法、編碼方法、裝置、設備及存儲介質 - Google Patents
解碼方法、編碼方法、裝置、設備及存儲介質 Download PDFInfo
- Publication number
- TWI806650B TWI806650B TW111121315A TW111121315A TWI806650B TW I806650 B TWI806650 B TW I806650B TW 111121315 A TW111121315 A TW 111121315A TW 111121315 A TW111121315 A TW 111121315A TW I806650 B TWI806650 B TW I806650B
- Authority
- TW
- Taiwan
- Prior art keywords
- prediction
- motion information
- mode
- motion vector
- coding unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 109
- 239000013598 vector Substances 0.000 claims abstract description 280
- 230000002123 temporal effect Effects 0.000 claims description 52
- 238000010276 construction Methods 0.000 claims description 6
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 5
- 230000002708 enhancing effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 15
- 238000005516 engineering process Methods 0.000 description 8
- 230000009466 transformation Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000001131 transforming effect Effects 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Peptides Or Proteins (AREA)
- Steroid Compounds (AREA)
- Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
Abstract
本發明提供一種解碼方法、編碼方法、裝置、設備及機器可讀存儲介質。該解碼方法的一個例子,對於接收到的碼流,通過解析當前編碼單元的跳過模式或直接模式的運動資訊索引值,可構建跳過模式或直接模式的候選清單,並確定當前編碼單元的預測模式,從而可根據從當前編碼單元的預測模式獲取的當前編碼單元的運動資訊對當前編碼單元進行運動補償。其中,當前編碼單元的跳過模式或直接模式的運動資訊索引值是根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數解析得到的。
Description
本發明涉及視頻編解碼技術,尤其涉及一種解碼方法、編碼方法、裝置、設備及機器可讀存儲介質。
完整的視頻編碼一般包括預測、變換、量化、熵編碼、濾波等操作。預測可以分為幀內預測和幀間預測,幀內預測是利用周圍已編碼單元作為參考對當前未編碼單元進行預測,有效去除空域上的冗餘。幀間預測是使用鄰近已編碼圖像對當前圖像進行預測,有效去除時域上的冗餘。
有鑑於此,本發明提供一種解碼方法、編碼方法、裝置、設備及機器可讀存儲介質。
根據本發明實施例的第一方面,提供一種解碼方法,包括:接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值;構建跳過模式或直接模式的候選清單;根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式;根據當前編碼單元的預測模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償;其中,所述解析當前編碼單元的跳過模式或直接模式的運動資訊索引值,包括:獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定所述當前編碼單元的跳過模式或
直接模式的運動資訊索引值。
根據本發明實施例的第二方面,提供一種編碼方法,包括:構建跳過模式或直接模式的候選清單:按順序遍歷預測模式候選清單中的每一種預測模式,對於每一種預測模式,獲取當前編碼單元的運動資訊和當前編碼單元的跳過模式或直接模式的運動資訊索引值;根據當前編碼單元的運動資訊,對當前編碼單元進行運動補償;計算該預測模式對應的率失真代價值,並將該率失真代價值與其他候選預測模式的代價值進行比較,選擇最小的率失真代價值所對應的預測模式;將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,傳送給解碼端;其中,所述將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,包括:獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對所述當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,並攜帶進碼流。
根據本發明實施例的協力廠商面,提供一種解碼裝置,包括:解碼模組,用於接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值;構建模組,用於構建跳過模式或直接模式的候選清單;確定模組,用於根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式;補償模組,用於根據當前編碼單元的預測模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償;其中,所述解碼模組,具體用於獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
根據本發明實施例的第四方面,提供一種編碼裝置,包括:構建模組,用於構建跳過模式或直接模式的候選清單:按順序遍歷預測模式候選清單中的每一種預測模式,對於每一種預測模式,獲取當前編碼單元的運動資訊和當前編碼單元的跳過模式或直接模式的運動資訊索引值;
補償模組,用於根據當前編碼單元的運動資訊,對當前編碼單元進行運動補償;確定模組,用於計算該預測模式對應的率失真代價值,並將該率失真代價值與其他候選預測模式的代價值進行比較,選擇最小的率失真代價值所對應的預測模式;編碼模組,用於將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,傳送給解碼端;其中,所述編碼模組,具體用於獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對所述當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,並攜帶進碼流。
根據本發明實施例的第五方面,提供一種解碼端設備,包括處理器和機器可讀存儲介質,所述機器可讀存儲介質存儲有能夠被所述處理器執行的機器可執行指令,所述處理器用於執行機器可執行指令,以實現第一方面提供的解碼方法。
根據本發明實施例的第六方面,提供一種編碼端設備,包括處理器和機器可讀存儲介質,所述機器可讀存儲介質存儲有能夠被所述處理器執行的機器可執行指令,所述處理器用於執行機器可執行指令,以實現第二方面提供的編碼方法。
根據本發明實施例的第七方面,提供一種機器可讀存儲介質,所述機器可讀存儲介質內存儲有機器可執行指令,所述機器可執行指令被處理器執行時實現如第一方面或第二方面所述的方法。
本發明實施例的編碼方法,通過接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值,構建跳過模式或直接模式的候選清單,根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式,並根據當前編碼單元的預測模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償,在解析當前編碼單元的跳過模式或直接模式的運動資訊索引值時,通過獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,並根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,
確定當前編碼單元的跳過模式或直接模式的運動資訊索引值,提高了跳過模式或直接模式的運動資訊索引值確定的靈活性,提升了編解碼性能。
0:水平
1:垂直
1110:解碼模組
1120,1210:構建模組
1130,1230:確定模組
1140,1220:補償模組
1240:編碼模組
1301,1401:處理器
1302,1402:存儲有機器可執行指令的機器可讀存儲介質
1303,1403:系統匯流排
2:水平偏上
3:水平偏下
4:垂直偏右
S700,S701,S702,S710,S730,S740,S900,S910,S920,S930,S931,S932:步驟
圖1a和圖1b是本發明一示例性實施例示出的一種編解碼方法的示意圖;
圖2是本發明一示例性實施例示出的一種SBTMVP模式的塊劃分示意圖;
圖3是本發明一示例性實施例示出的一種Skip和Direct模式的空域相鄰塊位置示意圖;
圖4是本發明一示例性實施例示出的一種MVAP模式下的模式索引與模式的對應關係示意圖;
圖5是本發明一示例性實施例示出的一種運動向量角度預測樣本的位置示意圖;
圖6是本發明一示例性實施例示出的一種HMVP方法的解碼流程圖;
圖7是本發明一示例性實施例示出的一種解碼方法的流程示意圖;
圖8是本發明一示例性實施例示出的另一種解碼方法的流程示意圖;
圖9是本發明一示例性實施例示出的一種編碼方法的流程示意圖;
圖10是本發明一示例性實施例示出的另一種編碼方法的流程示意圖;
圖11是本發明一示例性實施例示出的一種解碼裝置的結構示意圖;
圖12是本發明一示例性實施例示出的一種編碼裝置的結構示意圖;
圖13是本發明一示例性實施例示出的一種解碼端設備的硬體結構示意圖;
圖14是本發明一示例性實施例示出的一種編碼端設備的硬體結構示意圖。
這裡將詳細地對示例性實施例進行說明,其示例表示在圖式中。下面的描述涉及圖式時,除非另有表示,不同圖式中的相同數字表示相同或相似的要素。以下示例性實施例中所描述的實施方式並不代表與本發明相一致的所有實施方式。相反,它們僅是與如所附請求項書中所詳述的、本發明的一些方面相一致的裝置和方法的例子。
在本發明使用的術語是僅僅出於描述特定實施例的目的,而非旨在限制本發明。在本發明和所附請求項書中所使用的單數形式的“一種”、
“所述”和“該”也旨在包括多數形式,除非上下文清楚地表示其他含義。
為了使本領域技術人員更好地理解本發明實施例提供的技術方案,下面先對本發明實施例涉及的部分技術術語以及現有視頻編解碼的主要流程進行簡單說明。
為了使本領域技術人員更好地理解本發明實施例提供的技術方案,下面先對先對本發明實施例涉及的部分技術術語進行簡單說明。
一、技術術語:
1、幀間預測(Inter Prediction):幀間預測是指利用視頻時域的相關性,由於視頻序列通常包含有較強的時域相關性,使用鄰近已編碼圖像像素預測當前圖像的像素,可以達到有效去除視頻時域冗餘的目的。
2、預測像素(Prediction Signal):指從已經編解碼的像素中匯出的像素值,通過原始像素與預測像素之差獲得殘差,進而進行殘差變換量化以及係數編碼。
示例性的,幀間的預測像素指的是當前圖像塊從參考幀(重建像素幀)匯出的像素值,由於像素位置離散,需要通過插值運算來獲取最終的預測像素。預測像素與原始像素越接近,兩者相減得到的殘差能量越小,編碼壓縮性能越高。
3、運動向量(Motion Vector,簡稱MV):在幀間編碼中,用MV表示當前編碼塊與其參考圖像中的最佳匹配塊之間的相對位移。每個劃分的塊(可以稱為子塊)都有相應的運動向量需要傳送到解碼端。若對每個子塊的MV進行獨立編碼和傳輸,特別是劃分成小尺寸的子塊,需要消耗相當多的比特。為了降低用於編碼MV的比特數,視頻編碼中會利用相鄰圖像塊之間的空間相關性,根據相鄰已編碼塊的MV對當前待編碼塊的MV進行預測,然後對預測差進行編碼。這樣可以有效地降低表示MV的比特數。基於此,在對當前圖像塊的MV編碼過程中,一般首先使用相鄰已編碼塊的MV預測當前圖像塊的MV,然後對MV的預測值(Motion Vector Prediction,簡稱MVP)與運動向量的真正估值之間的差值,即運動向量殘差(MotionVector Difference,簡稱MVD)進行編碼,從而有效降低
MV的編碼比特數。
4、運動資訊(Motion Information):由於MV表示當前圖像塊與某個參考圖像中的最佳匹配塊之間的相對位移,為了準確獲取指向圖像塊的資訊,除了MV資訊,還需要通過參考圖像的索引資訊來表示使用了哪個參考圖像。對於當前圖像,通常會基於一定的原則,建立一個參考圖像清單,參考圖像索引資訊則表示當前圖像塊採用了參考圖像清單中的第幾個參考圖像。此外,很多編碼技術還支援多個參考圖像清單,因此還需要一個索引值表示使用了哪一個參考圖像清單,該索引值可以稱為參考方向。視頻編碼中,MV、參考幀索引、參考方向等與運動相關的編碼資訊統稱為運動資訊。
5、跳過(Skip)模式:Skip模式是一種幀間預測中的跳過模式,它不需要傳輸殘差資訊,也不需要傳輸MVD,只需要傳輸運動資訊的索引即可,解碼端通過解析索引即可推導編碼單元的運動資訊,獲取運動資訊後將預測值直接作為重建值即可。
6、直接(Direct)模式:Direct模式是一種幀間預測中的直接模式,它需要傳輸殘差資訊,但不需要傳輸MVD,只需要傳輸運動資訊的索引即可,解碼端通過解析索引即可推導編碼單元的運動資訊,獲取運動資訊後將預測值加上殘差值得到重建值。
7、截斷一元碼的二值化與反二值化方法:synElVal與二元符號串的關係可以如表1所示:
編碼端可以由maxVal和需要編碼的數值synElVal查表1得到需要編碼的二元符號串,解碼端可以由二元符號串和maxVal根據表1唯一得到synElVal的值。
8、率失真原則(Rate-Distortion Optimized,簡稱RDO):評價編碼效率的指標包括:碼率和峰值信噪比(Peak Signal to Noise Ratio,簡稱PSNR)。碼率越小,則壓縮率越大;PSNR越大,重建圖像品質越好。在模式選擇的時候,判別公式實質上也就是對二者的綜合評價。
模式對應的代價:J(mode)=D+λ*R。其中,D表示失真(Distortion),通常使用SSE(差值均方和)指標來衡量,SSE是指重建塊與源圖像塊的差值均方和;λ是拉格朗日乘子;R就是該模式下圖像塊編碼所需的實際比特數,包括編碼模式資訊、運動資訊、殘差等所需的比特總和。
在模式選擇時,若使用RDO原則對編碼模式做比較,通常可保證編碼性能最佳。
二、下面再對視頻編解碼的主要流程進行簡單說明。
請參考圖1a,以視頻編碼為例,視頻編碼一般包括預測、變換、量化、熵編碼等過程,進一步地,編碼過程還可以按照圖1b的框架來實現。
其中,預測可以分為幀內預測和幀間預測,幀內預測是利用周圍已編碼塊作為參考對當前未編碼塊進行預測,有效去除空域上的冗餘。幀間預測是使用鄰近已編碼圖像對當前圖像進行預測,有效去除時域上的冗餘。
變換是指將圖像從空間域轉換至變換域,利用變換係數對圖像加以表示。絕大多數圖像都含有較多平坦區域和緩慢變化的區域,適當
的變換可以使圖像由在空間域的分散分佈轉換為在變換域的相對集中分佈,去除信號之間的頻域相關性,配合量化過程,可以有效壓縮碼流。
熵編碼是一種無損編碼方式,可以把一系列元素符號轉變為一個用來傳輸或存儲的二進位碼流,輸入的符號可能包括量化後的變換係數、運動向量資訊、預測模式資訊,變換量化相關語法等。熵編碼可以有效地去除視頻元素符號的冗餘。
上述是以編碼為例進行介紹,視頻解碼與視頻編碼的過程是相對的,即視頻解碼通常包括熵解碼、預測、反量化、反變換、濾波等過程,各個過程的實現原理與熵編碼相同或相似。
三、下面再分別對時域運動向量預測模式(Temporal Motion Vector Prediction,簡稱TMVP)/子塊時域運動資訊預測(Sub-Block Temporal Motion Vector Prediction,簡稱SBTMVP)、MHBSKIP、運動向量角度預測(Motion Vector Angle Prediction,簡稱MVAP)、基於歷史資訊的運動向量預測(History-based Motion Vector Prediction,簡稱HMVP),以及增強時域運動向量預測(Enhanced Temporal Motion Vector Prediction,ETMVP)技術的實現進行簡單說明。
3.1、TMVP/SBTMVP
在AVS3中,TMVP和SBTMVP技術目前已經採納到標準中。若當前塊的寬度和高度均大於等於16,則當前塊的時域運動資訊為SBTMVP產生的運動資訊,否則當前塊的時域運動資訊為TMVP產生的運動資訊。
TMVP:首先找到時域參考幀中與當前編碼單元預設位置相同位置的運動資訊,然後經過縮放後作為當前塊的時域運動資訊,其中對於P圖像,時域參考幀為list0的第一幀,對於B圖像,時域參考幀為list1的第一幀。
SBTMVP:設當前塊的尺寸為2Mx2N,示意圖可以如圖2所示,首先找到時域參考幀中與當前編碼單元位置相同的區域,然後將該區域劃分成4個大小為MxN的子塊,獲取每個子塊在時域參考幀對應位置的運動資訊,經過縮放後作為當前塊對應位置子塊的運動資訊,最後每個子
塊的運動資訊進行運動補償得到預測值。
3.2、MHBSKIP
MHBSKIP是AVS中Skip和Direct模式下的一種預測模式,其利用當前編碼單元的空域相鄰塊的運動資訊來預測當前編碼單元的運動資訊。
MHBSKIP模式通過當前編碼單元空域相鄰塊構建雙向、後向和前向三個運動資訊來給當前編碼單元進行預測。
示例性的,Skip和Direct模式的空域相鄰塊位置可以如圖3所示。
3.3、MVAP
在AVS3中,MVAP技術目前已經採納到標準中,MVAP技術是將當前編碼單元分成子塊,然後利用最多5種預測角度,將每個子塊按照預先設置的角度從周圍空域相鄰塊拷貝運動資訊。這樣,就可以達到不用劃分編碼單元,即可為當前編碼單元內部提供更多運動資訊,從而提升編碼性能。
示例性的,MVAP技術中,模式索引與模式的對應關係可以分別參見表2和圖4。
具體步驟為:
3.3.1、匯出有效運動向量角度預測模式數(ValidMvapModeNum)。
令W和H是當前解碼單元的寬度和高度,m和n的分別是
W/4和H/4,(x,y)是當前解碼單元左上角的像素座標。A0,A1,...,Am-1是當前塊左下角位置的4×4塊,Am,Am+1,...,Am+n-1是當前塊左側位置所在的4×4塊,Am+n是當前塊左上角位置所在的4×4塊,Am+n+1,Am+n+2,...,A2m+n是當前塊上邊位置所在的4×4塊,A2m+n+1,A2m+n+1,...,A2m+2n是當前塊右上角位置所在的4×4塊。
示例性的,運動向量角度預測樣本的位置示意圖可以如圖5所示。
示例性的,若i的取值範圍是0~m+n,則Ai的座標分別是(x-1,y+H+W-4×i-1);如果i的取值範圍是m+n+1~2m+2n,則Ai的座標分別為(x+4×i-W-H-1,y-1)。
按以下步驟匯出ValidMvapModeNum和ValidMvapModeFlag[s](s=0~4):
3.3.1.1、將ValidMvapModeNum初始化為0,ValidMvapModeFlag[s]初始化為0(s=0~4);
3.3.1.2、若滿足以下條件之一,則ValidMvapModeNum等於0,ValidMvapModeFlag[s]等於0(s=0~4):
3.3.1.2.1、EtmvpMvapEnableFlag的值為0。
3.3.1.2.2、W小於8,或H小於8,或W和H均等於8。
3.3.1.3、否則,按下列步驟更新ValidMvapModeNum和ValidMvapModeFlag[s]的值:
3.3.1.3.1、若Am-1+H/8與Am+n-1塊均採用幀間預測模式且運動資訊不同,則ValidMvapModeFlag[0]等於1,並將ValidMvapModeNum的值加1;
3.3.1.3.2、若Am+n+1+W/8與Am+n+1塊均採用幀間預測模式且運動資訊不同,則ValidMvapModeFlag[1]等於1,並將ValidMvapModeNum的值加1;
3.3.1.3.3、若Am+n-1與Am+n塊均採用幀間預測模式且運動資訊不同,或Am+n和Am+n+1塊均採用幀間預測模式且運動資訊不同,則ValidMvapModeFlag[2]等於1,並將ValidMvapModeNum的值加1;
3.3.1.3.4、若AW/8-1與Am-1塊均採用幀間預測模式且運動資訊不同,或Am-1與Am-1+H/8塊均採用幀間預測模式且運動資訊不同,則ValidMvapModeFlag[3]等於1,並將ValidMvapModeNum的值加1;
3.3.1.3.5、若Am+n+1+W/8與A2m+n+1塊均採用幀間預測模式且運動資訊不同,或A2m+n+1與A2m+n+1+H/8塊均採用幀間預測模式且運動資訊不同,則ValidMvapModeFlag[4]等於1,並將ValidMvapModeNum的值加1。
3.3.2、填充參考運動資訊清單neighborMotions[i](i=0~2m+2n)。
令neighborMotions[i]是參考運動資訊清單中的第i個運動資訊(interPredRefMode,mvE0,mvE1,refIndexL0,refIndexL1),其中i的取值範圍是0~2m+2n。
若Ai位置空域存儲單元的運動資訊“可用”,則Ai位置存儲單元的運動資訊記為motionInfoAi(i=0~2m+2n)。
3.3.2.1、填充neighborMotions[0]
3.3.2.1.1、若A0位置空域存儲單元的運動資訊“不可用”,neighborMotions[0]的預測參考模式interPredRefMode設為“PRED_List0”,neighborMotions[0]的mvE0設為零向量,neighborMotions[0]的refIndexL0設為0;
3.3.2.1.2、否則,neighborMotions[0]設為motionInfoA0。
3.3.2.2、按以下步驟從小到大依次遍歷Ai,填充neighborMotions[i]。
3.3.2.2.1、如果Ai位置空域存儲單元的運動資訊“可用”,neighborMotions[i]為motionInfoAi;
3.3.2.2.2、否則,neighborMotions[i]等於neighborMotions[i-1]。
3.3.3、匯出運動資訊陣列MotionArray。
根據curMvapMode和neighborMotions確定當前編碼單元內部子塊的運動資訊陣列MotionArray[i][j](interPredRefMode,MvE0,MvE1,
fIndexL0,RefIndexL1),其中i=0~(W>>3)-1,j=0~(H>>3)-1,(i,j)為當前編碼單元內的8×8子塊的索引,i為子塊的水準索引值,j為子塊的垂直索引值。對每個子塊進行遍歷,匯出運動向量角度預測的子塊運動資訊陣列MotionArray,並將BgcFlag和BgcIndex置零。
3.4、HMVP
基於歷史資訊的運動向量預測方法是新一代視頻編碼標準AVS3中採納的技術,其原理是利用先前的編碼塊的運動資訊來預測當前編碼單元的運動資訊。通過建立一個HMVP的Table來保存先前編碼單元的運動資訊,當解碼一個塊後,去更新該HMVP的Table。因此,對於當前編碼單元,始終有HMVP的Table中的運動資訊可以利用,提高了預測精度。
示例性的,HMVP方法的解碼流程圖可以如圖6所示。
3.5、ETMVP
在AVS3中,ETMVP技術目前已經採納到標準中,首先找到時域參考幀中與當前編碼單元位置相同的區域,然後該區域內的每個8x8塊所在的時域運動資訊存儲單元中運動向量縮放值作為第一個候選;然後對該區域進行左右上下偏移8個亮度樣本作為後續的候選,在得到各個候選之後,需要對候選進行查重,然後放入候選運動向量清單,其中對於P圖像,時域參考幀為list0的第一幀,對於B圖像,時域參考幀為list1的第一幀。最後對列表中的每個候選獲取8x8子塊的運動資訊進行運動補償得到預測值。
相關技術中,skip/direct模式的清單構建順序為:時域+MHBSKIP+MVAP+HMVP,即按照時域、MHBSKIP、MVAP和HMVP的順序構建skip/direct模式的候選清單。
若當前圖像為P圖像,時域會產生1個候選運動資訊,MHBSKIP會產生1個候選的運動資訊,MVAP和HMVP一共會產生8個候選的運動資訊,清單的長度為1+1+8=10。
若當前圖像為B圖像,時域會產生1個候選運動資訊,MHBSKIP會產生3個候選的運動資訊,MVAP和HMVP一共會產生8個候選的運動資訊,清單的長度為1+3+8=12。
其中,MVAP和HMVP一共產生8個候選的運動資訊,例如MVAP產生ValidMvapModeNum個候選的運動資訊,HMVP產生剩下的8-ValidMvapModeNum個候選的運動資訊,ValidMvapModeNum取值範圍為0~5。
為了表示每個不同的候選運動資訊,需要使用當前編碼單元的skip模式或direct模式的運動資訊索引值cu_subtype_index來進行標識。目前cu_subtype_index的取值範圍為0~11,採用截斷一元碼進行二值化編碼,maxVal等於11。
然而實際上,由於P圖像和B圖像會產生不同長度的候選列表,並且HMVP和MVAP允許產生的最大候選運動資訊的個數也不固定,
cu_subtype_index的取值範圍也不固定,若固定使用maxVal等於11來編碼cu_subtype_index會造成比特開銷的冗餘。
為了提高索引值確定的靈活性,減少編碼冗餘從而提升編解碼性能,本發明實施例的優化方案可以包括以下部分或全部:
首先,獲取高層語法,得到運動向量角度預測候選運動資訊個數(NumOfMvapCand)和幀間預測候選歷史運動資訊個數(NumOfHmvpCand),獲取當前圖像的框架類型。
然後,根據當前圖像的框架類型和NumOfMvapCand以及NumOfHmvpCand來解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index。
最後,獲取ValidMvapModeNum,根據cu_subtype_index和ValidMvapModeNum來確定當前編碼單元類型是MVAP模式還是HMVP模式。
為了使本發明實施例的上述目的、特徵和優點能夠更加明顯易懂,下面結合圖式對本發明實施例中技術方案作進一步詳細的說明。
請參見圖7,為本發明實施例提供的一種解碼方法的流程示意圖,其中,該解碼方法可以應用於解碼端設備,如圖7所示,該解碼方法可以包括以下步驟:
步驟S700、接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值。
步驟S710、構建跳過模式或直接模式的候選清單。
步驟S720、根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式。
步驟S730、根據當前編碼單元的預測模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償。
如圖8所示,步驟S700中,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值,可以通過以下步驟實現:
步驟S701、獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數。
步驟S702、根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定當前編碼單元的跳過模式或直接模式的運動資訊索引值。
本發明實施例中,考慮到HMVP和MVAP允許產生的最大候選運動資訊的個數並不固定,跳過模式或直接模式的運動資訊索引值的取值範圍也並不固定,因而,為了提高跳過模式或直接模式的運動資訊索引值確定的靈活性,最大索引值(即maxVal)不再固定為11,而是可以根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數確定。
示例性的,當解碼端設備接收到碼流時,可以獲取運動向量角度預測候選運動資訊個數(即NumOfMvapCand)和幀間預測候選歷史運動資訊個數(即NumOfHmvpCand)。
在一些實施例中,解碼端設備可以通過解析序列級高層語法,獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數。
解碼端設備獲取到運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數時,可以根據獲取到的運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數確定當前編碼單元的跳過模式或直接模式的運動資訊索引值。
在一個示例中,上述通過解析序列級高層語法,獲取所述運動向量角度預測候選運動資訊個數和所述幀間預測候選歷史運動資訊個數,可以包括:解析增強時域運動向量預測和運動向量角度預測允許標誌,根據增強時域運動向量預測和運動向量角度預測允許標誌的取值,確定運動向量角度預測候選運動資訊個數;以及,解析幀間預測候選歷史運動資訊個數索引,根據所述幀間預測候選歷史運動資訊個數索引的取值,確定幀間預測候選歷史運動資訊個數。
示例性的,可以通過序列級高層語法,分別使用增強時域運動向量預測和運動向量角度預測允許標誌(etmvp_mvap_enable_flag)和幀間預測候選歷史運動資訊個數索引(num_of_hmvp_cand)來確定運動向量
角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數。
示例性的,增強時域運動向量預測和運動向量角度預測允許標誌用於指示同時開啟增強時域運動向量預測模式和運動向量角度預測模式,或,同時關閉增強時域運動向量預測模式和運動向量角度預測模式。
示例性的,etmvp_mvap_enable_flag的取值範圍為0~1,num_of_hmvp_cand的取值範圍為0~8。
示例性的,解碼端設備可以分別通過解析etmvp_mvap_enable_flag的取值,確定NumOfMvapCand;以及,通過解析num_of_hmvp_cand的取值,確定NumOfHmvpCand。
例如,解碼端設備可以依據etmvp_mvap_enable_flag的取值,按照以下方式確定NumOfMvapCand:
NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0
其中,當etmvp_mvap_enable_flag取值為1時,NumOfMvapCand的取值為5;當etmvp_mvap_enable_flag取值不為1時,NumOfMvapCand的取值為0。
即當增強時域運動向量預測和運動向量角度預測允許標誌的取值為1時,確定所述運動向量角度預測候選運動資訊個數為5;其中,增強時域運動向量預測和運動向量角度預測允許標誌的取值為1,表示當前編碼單元可使用增強時域運動向量預測和運動向量角度預測,即當前編碼單元同時使能增強時域運動向量預測和運動向量角度預測。
當增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,確定運動向量角度預測候選運動資訊個數為0;其中,增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,或,碼流中不存在所述增強時域運動向量預測和運動向量角度預測允許標誌,表示當前編碼單元不應使用增強時域運動向量預測和運動向量角度預測,即當前編碼單元同時不使能增強時域運動向量預測和運動向量角度預測。
示例性的,解碼端設備可以將num_of_hmvp_cand的取值作為NumOfHmvpCand。
在一個示例中,上述根據運動向量角度預測候選運動資訊個
數和幀間預測候選歷史運動資訊個數,確定當前編碼單元的跳過模式或直接模式的運動資訊索引值,可以包括:根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定最大索引值;根據最大索引值,採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值。
示例性的,當按照上述方式確定了NumOfMvapCand和NumOfHmvpCand時,解碼端設備可以根據所確定的NnmOfMvapCand和NumOfHmvpCand,確定最大索引值(即maxVal),並根據該maxVal,採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值。示例性的,根據所確定的NumOfMvapCand和NumOfHmvpCand確定的maxVal小於等於11。
作為一種示例,根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定最大索引值,可以包括:確定運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數中的最大值;將該最大值與3二者之和,確定為最大索引值。示例性的,考慮到時域候選運動資訊和MHBSKIP的候選運動資訊的最大數量為4,而maxVal的取值為列表長度-1,因而,可以依據NumOfMvapCand和NumOfHmvpCand中的最大值,與3二者之和,確定maxVal。
示例性的,解碼端設備可以依據以下方式確定maxVal:
maxVal=(3+Max(NumOfMvapCand,NumOfHmvpCand))。
其中,由於Max(NumOfMvapCand,NumOfHmvpCand)8,因此,按照上述方式確定的maxVal11,根據該maxVal,採用截斷一元碼的二值化方式編碼跳過模式或直接模式的運動資訊索引值時,需要的比特數會小於或等於maxVal=11的情況下需要的比特數,從而,利用本發明實施例提供的方式可以較大概率地減少編碼跳過模式或直接模式的運動資訊索引值所需比特數,減少編解碼開銷,提高編解碼性能。
在一些實施例中,步驟S702中、根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定當前編碼單元的跳過模式或直接模式的運動資訊索引值,可包括:根據運動向量角度預測候
選運動資訊個數、幀間預測候選歷史運動資訊個數以及當前圖像的框架類型,確定當前編碼單元的跳過模式或直接模式的運動資訊索引值。
示例性的,考慮到不同框架類型對應的MHBSKIP的候選運動資訊的數量可以不同,例如,對於P圖像,MHBSKIP的候選運動資訊的數量為1個;對於B圖像,MHBSKIP的候選運動資訊的數量為3個。因而,為了提高跳過模式或直接模式的運動資訊索引值確定的靈活性,在確定跳過模式或直接模式的運動資訊索引值時,還可以考慮框架類型,即解碼端設備可以根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定當前編碼單元的跳過模式或直接模式的運動資訊索引值。
在一個示例中,上述根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定當前編碼單元的跳過模式或直接模式的運動資訊索引值,可包括:根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值;根據最大索引值,採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值。
示例性的,解碼端設備除了可以按照上述實施例中描述的方式獲取NumOfMvapCand和NumOfHmvpCand之外,還可以獲取當前編碼單元所屬視頻圖像(本文中稱為當前圖像)的框架類型。示例性的,框架類型可以包括但不限於B圖像或P圖像。
示例性的,解碼端設備可以根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值。
作為一種示例,上述根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值,可以包括:確定運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數中的最大值;若當前圖像的框架類型為P圖像,則將該最大值與1二者之和,確定為最大索引值;若當前圖像的框架類型
為B圖像,則將該最大值與3二者之和,確定為最大索引值。
示例性的,考慮到對於P圖像,MHBSKIP的候選運動資訊的數量為1個;對於B圖像,MHBSKIP的候選運動資訊的數量為3個。因而,在當前圖像的框架類型為P圖像的情況下,可以將NumOfMvapCand和NumOfHmvpCand中的最大值,與1二者之和,確定為maxVal。在當前圖像的框架類型為B圖像的情況下,可以將NumOfMvapCand和NumOfHmvpCand中的最大值,與3二者之和,確定為maxVal。
由於對於框架類型為P圖像的情況,MHBSKIP的候選運動資訊的數量取值為1,與不考慮框架類型,而直接將MHBSKIP的候選運動資訊的數量設置為3的實現方案相比,所確定的maxVal的取值會降低,從而,可以節省採用截斷一元碼的二值化方式對跳過模式或直接模式的運動資訊索引值進行編碼時的比特開銷,提高編解碼性能。
示例性的,當解碼端設備按照上述方式確定了maxVal時,可以根據所確定的maxVal,採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值。示例性的,maxVal與跳過模式或直接模式的運動資訊索引值的對應關係可以參見表1所記載的相關資訊。
在一些實施例中,步驟S720中,根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式,可以包括:根據有效角度預測模式數,以及跳過模式或直接模式的運動資訊索引值,確定當前編碼單元的預測模式。
示例性的,當解碼端設備按照上述方式確定了當前編碼單元的跳過模式或直接模式的運動資訊索引值時,可以根據有效角度預測模式數(ValidMvapModeNum),以及跳過模式或直接模式的運動資訊索引值,確定當前編碼單元的預測模式。
在一個示例中,根據有效角度預測模式數,以及跳過模式或直接模式的運動資訊索引值,確定當前編碼單元的預測模式,可以包括:若跳過模式或直接模式的運動資訊索引值大於或等於N,則當有效角度預測模式數大於0,且跳過模式或直接模式的運動資訊索引值小於N與有效
角度預測模式數二者之和時,確定當前編碼單元的預測模式為運動向量角度預測模式;當有效角度預測模式數等於0,或,跳過模式或直接模式的運動資訊索引值大於或等於N與有效角度預測模式數二者之和時,確定當前編碼單元的預測模式為基於歷史資訊的運動向量預測模式。
示例性的,解碼端設備按照上述方式確定跳過模式或直接模式的運動資訊索引值時,可確定跳過模式或直接模式的運動資訊索引值是否大於N。示例性的,N為正整數。
示例性的,N可以為候選列表中時域候選運動資訊與MHBSKIP產生的候選運動資訊的總和。示例性的,N的取值可以根據當前圖像的框架類型確定。
作為一種示例,若當前圖像的框架類型為P圖像,則N=2;若當前圖像的框架類型為B圖像,則N=4。
示例性的,當解碼端設備確定了跳過模式或直接模式的運動資訊索引值大於或等於N時,解碼端設備還可以確定ValidMvapModeNum是否大於0,以及跳過模式或直接模式的運動資訊索引值是否小於N與ValidMvapModeNum二者之和。
當ValidMvapModeNum大於0,且跳過模式或直接模式的運動資訊索引值小於N與ValidMvapModeNum二者之和,即運動向量角度預測模式產生了候選運動資訊,且跳過模式或直接模式的運動資訊索引值對應的候選運動資訊指向運動向量角度預測模式產生的候選運動資訊時,解碼端設備可以確定當前編碼單元的預測模式為運動向量角度預測模式。
當ValidMvapModeNum等於0,或,跳過模式或直接模式的運動資訊索引值大於或等於N與有效角度預測模式數二者之和,即運動向量角度預測模式未產生候選運動資訊,且跳過模式或直接模式的運動資訊索引值對應的候選運動資訊指向基於歷史資訊的運動向量預測模式產生的候選運動資訊時,解碼端設備可以確定當前編碼單元的預測模式為基於歷史資訊的運動向量預測模式。
在一些實施例中,上述確定當前編碼單元的預測模式之後,還可包括:當當前編碼單元的預測模式為基於歷史資訊的運動向量預測模
式時,若當前編碼單元為幀間預測單元且不是仿射預測單元且不是角度加權預測單元且不是增強時域運動向量預測單元且不是運動向量角度預測單元且不是子塊時域運動資訊預測單元,以及,幀間預測候選歷史運動資訊個數大於0,則更新歷史運動資訊表;否則,不更新所述歷史運動資訊表。
示例性的,當解碼端設備按照上述實施例中描述的方式確定當前編碼單元的預測模式為基於歷史資訊的運動向量預測模式時,解碼端設備可以確定當前編碼單元是否滿足以下條件:當前編碼單元為幀間預測單元、當前編碼單元不是仿射預測單元、當前編碼單元不是角度加權預測單元、當前編碼單元不是增強時域運動向量預測單元、當前編碼單元不是運動向量角度預測單元、當前編碼單元不是子塊時域運動資訊預測單元、以及,幀間預測候選歷史運動資訊個數(即NumOfHmvpCand)大於0。
當解碼端設備確定當前編碼單元滿足上述全部條件時,解碼端設備可以對歷史運動資訊表(HmvpCandList)進行更新。示例性的,解碼端設備可以根據當前預測塊的運動資訊、BgcFlag和BgcIndex更新歷史運動資訊表。
當解碼端設備確定當前編碼單元不滿足上述至少一個條件時,解碼端設備可以不更新歷史運動資訊表。
在一些實施例中,上述根據增強時域運動向量預測和運動向量角度預測允許標誌的取值,確定運動向量角度預測候選運動資訊個數,可以包括:當增強時域運動向量預測和運動向量角度預測允許標誌的取值為1時,確定運動向量角度預測候選運動資訊個數為5,增強時域運動向量預測和運動向量角度預測允許標誌的取值為1,表示可使用增強時域運動向量預測和運動向量角度預測;當增強時域運動向量預測和運動向量角度預測允許標誌的取值為0、或碼流中不存在所述增強時域運動向量預測和運動向量角度預測允許標誌時,確定運動向量角度預測候選運動資訊個數為0,增強時域運動向量預測和運動向量角度預測允許標誌的取值為0、或碼流中不存在增強時域運動向量預測和運動向量角度預測允許標誌,表示不應使用增強時域運動向量預測和運動向量角度預測。
示例性的,可以通過增強時域運動向量預測和運動向量角度
預測允許標誌來指示是否可以使用增強時域運動向量預測和運動向量角度預測。
示例性的,增強時域運動向量預測和運動向量角度預測允許標誌的取值為1,表示可使用增強時域運動向量預測和運動向量角度預測;增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,表示不應使用增強時域運動向量預測和運動向量角度預測。
示例性的,解碼端設備接收到碼流時,可以解析增強時域運動向量預測和運動向量角度預測允許標誌的取值。
當增強時域運動向量預測和運動向量角度預測允許標誌的取值為1,即可使用增強時域運動向量預測和運動向量角度預測時,解碼端設備可以確定NumOfMvapCand為5。
當增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,即不可使用增強時域運動向量預測和運動向量角度預測時,解碼端設備可確定NumOfMvapCand為0。
示例性的,當解碼端設備未從碼流中解析到增強時域運動向量預測和運動向量角度預測允許標誌時,可以確定增強時域運動向量預測和運動向量角度預測允許標誌取值為0,即不可使用增強時域運動向量預測和運動向量角度預測,此時,解碼端設備可以確定NumOfMvapCand為0。
請參見圖9,為本發明實施例提供的一種編碼方法的流程示意圖,其中,該編碼方法可以應用於編碼端設備,如圖9所示,該編碼方法可以包括以下步驟:
步驟S900、構建跳過模式或直接模式的候選清單:按順序遍歷預測模式候選清單中的每一種預測模式,對於每一種預測模式,獲取當前編碼單元的運動資訊和當前編碼單元的跳過模式或直接模式的運動資訊索引值。
步驟S910、根據當前編碼單元的運動資訊,對當前編碼單元進行運動補償。
步驟S920、計算該預測模式對應的率失真代價值,並將該率失真代價值與其他候選預測模式的代價值進行比較,選擇最小的率失真代
價值所對應的預測模式。
步驟S930、將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,傳送給解碼端。
如圖10所示,步驟S930中,將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,可以通過以下步驟實現:
步驟S931、獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數。
步驟S932、根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,並攜帶進碼流。
本發明實施例中,考慮到HMVP和MVAP允許產生的最大候選運動資訊的個數並不固定,跳過模式或直接模式的運動資訊索引值的取值範圍也並不固定,因而,為了提高跳過模式或直接模式的運動資訊索引值確定的靈活性,最大索引值(即maxVal)不再固定為11,而是可以根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數確定。
示例性的,當編碼端設備需要對運動資訊索引值進行編碼時,可以獲取NumOfMvapCand和NumOfHmvpCand。示例性的,編碼端設備可以通過編碼序列級高層語法,確定NumOfMvapCand和NumOfHmvpCand。
本發明實施例中,編碼端設備可以根據NumOfMvapCand和NumOfHmvpCand,對當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,並攜帶進碼流。
在一些實施例中,步驟S932中,根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,可以包括:根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定最大索
引值;根據最大索引值,採用截斷一元碼的二值化方式編碼所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
示例性的,當按照上述方式確定了NumOfMvapCand和NumOfHmvpCand時,編碼端設備可以根據所確定的NumOfMvapCand和NumOfHmvpCand,確定最大索引值(即maxVal),並根據該maxVal,採用截斷一元碼的二值化方式編析當前編碼單元的跳過模式或直接模式的運動資訊索引值。
示例性的,根據所確定的NumOfMvapCand和NumOfHmvpCand確定的maxVal小於等於11。
示例性的,考慮到時域候選運動資訊和MHBSKIP的候選運動資訊的最大數量為4,而maxVal的取值為列表長度-1,因而,可以依據NumOfMvapCand和NumOfHmvpCand中的最大值,與3二者之和,確定maxVal。
示例性的,編碼端設備可以依據以下方式確定maxVal:
maxVal=(3+Max(NumOfMvapCand,NumOfHmvpCand))
其中,由於Max(NumOfMvapCand,NumOfHmvpCand)8,因此,按照上述方式確定的maxVal11,根據該maxVal,採用截斷一元碼的二值化方式編碼跳過模式或直接模式的運動資訊索引值時,需要的比特數會小於或等於maxVal=11的情況下需要的比特數,從而,利用本發明實施例提供的方式可以較大概率地減少編碼跳過模式或直接模式的運動資訊索引值所需比特數,減少編解碼開銷,提高編解碼性能。
在一個示例中,上述根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定最大索引值,可以包括:根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值。
示例性的,考慮到不同框架類型對應的MHBSKIP的候選運動資訊的數量可以不同,例如,對於P圖像,MHBSKIP的候選運動資訊的數量為1個;對於B圖像,MHBSKIP的候選運動資訊的數量為3個。
因而,為了提高跳過模式或直接模式的運動資訊索引值編碼
的靈活性,在對跳過模式或直接模式的運動資訊索引值進行編碼時,還可以考慮框架類型,即編碼端設備可以根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定當前編碼單元的跳過模式或直接模式的運動資訊索引值。
示例性的,框架類型可以包括但不限於B圖像或P圖像。
示例性的,編碼端設備可以根據運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值。
示例性的,考慮到對於P圖像,MHBSKIP的候選運動資訊的數量為1個;對於B圖像,MHBSKIP的候選運動資訊的數量為3個。
因而,在當前圖像的框架類型為P圖像的情況下,可以將NumOfMvapCand和NumOfHmvpCand中的最大值,與1二者之和,確定為maxVal。
在當前圖像的框架類型為B圖像的情況下,可以將NumOfMvapCand和NumOfHmvpCand中的最大值,與3二者之和,確定為maxVal。
由於對於框架類型為P圖像的情況,MHBSKIP的候選運動資訊的數量取值為1,與不考慮框架類型,而直接將MHBSKIP的候選運動資訊的數量設置為3的實現方案相比,所確定的maxVal的取值會降低,從而,可以節省採用截斷一元碼的二值化方式對跳過模式或直接模式的運動資訊索引值進行編碼時的比特開銷,提高編解碼性能。
示例性的,當編碼端設備按照上述方式確定了maxVal時,可以根據所確定的maxVal,採用截斷一元碼的二值化方式對當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼。
為了使本領域技術人員更好地理解本發明實施例提供的技術方案,下面結合具體實例對本發明實施例提供的技術方案進行說明。
為了提高索引值確定的靈活性,減少編碼冗餘從而提升編解碼性能,本發明實施例的優化方案可以包括以下部分或全部:
首先,獲取高層語法,得到運動向量角度預測候選運動資訊
個數(NumOfMvapCand)和幀間預測候選歷史運動資訊個數(NumOfHmvpCand),獲取當前圖像的框架類型。
然後,根據當前圖像的框架類型和NumOfMvapCand以及NumOfHmvpCand來解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index。
最後,獲取ValidMvapModeNum,根據cu_subtype_index和ValidMvapModeNum來確定當前編碼單元類型是MVAP模式還是HMVP模式。
實施例一、編碼方法及編碼裝置
1.1、構建跳過模式或直接模式的候選清單:按順序遍歷預測模式候選清單中的每一種預測模式,對於每一種預測模式,獲取當前編碼單元的運動資訊和當前編碼單元的跳過模式或直接模式的運動資訊索引值。
1.2、根據當前編碼單元的運動資訊,對當前編碼單元進行運動補償;
1.3、計算該預測模式對應的率失真代價值,並將該率失真代價值與其他候選預測模式的代價值進行比較,選擇最小的率失真代價值所對應的預測模式;
1.4、將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,傳送給解碼端。
實施例二、解碼方法及解碼裝置
2.1、接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值;
2.2、構建跳過模式或直接模式的候選清單;
2.3、根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式;
2.4、根據當前編碼單元的預測模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償。
實施例三
編碼過程:
(1)、編碼序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、根據NumOfMvapCand以及NumOfHmvpCand來編碼當前編碼單元的跳過模式或直接模式的運動資訊索引值,並攜帶進入碼流。
解碼過程:
(1)、通過解析序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、根據NumOfMvapCand以及NumOfHmvpCand來解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index。
實施例四
編碼過程:
(1)、編碼序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand。
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1;
其中,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0表明:當etmvp_mvap_enable_flag取值為1時,NumOfMvapCand的取值為5;當etmvp_mvap_enable_flag取值不為1,即etmvp_mvap_enable_flag取值為0時,NumOfMvapCand的取值為0(下同)。
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、採用截斷一元碼的二值化方式編碼當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index並攜帶進入碼流。
示例性的,maxVal=(3+Max(NumOfMvapCand,NumOfHmvpC
and))。
解碼過程:
(1)、解析序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand。
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1;
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index。
示例性的,maxVal=(3+Max(NumOfMvapCand,NumOfHmvpCand))。
實施例五
編碼過程:
(1)、編碼序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、根據當前圖像的框架類型、NumOfMvapCand以及NumOfHmvpCand來編碼當前編碼單元的跳過模式或直接模式的運動資訊索引值,並攜帶進入碼流。
解碼過程:
(1)、通過解析序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、根據當前圖像的框架類型、NumOfMvapCand以及NumOfHmvpCand來解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index。
實施例六
編碼過程:
(1)、編碼序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand。
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1。
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、採用截斷一元碼的二值化方式編碼當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index並攜帶進入碼流。
示例性的,maxVal=((PictureType==1)?(1:3)+Max(NumOfMvapCand,NumOfHmvpCand)),PictureType表示當前圖像的框架類型,值為1表示當前圖像為P圖像。
解碼過程:
(1)、解析序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand。
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1。
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index。
示例性的,maxVal=((PictureType==1)?(1:3)+Max(NumOfMvapCand,NumOfHmvpCand)),PictureType表示當前圖像的框架類型,值為1表示當前圖像為P圖像。
其中,maxVal=((PictureType==1)?(1:3)+Max(NumOfMvapCand,NumOfHmvpCand))表明:當PictureType取值為1時,maxVal=1+Max(NumOfMvapCand,NumOfHmvpCand);當PictureType取值不為1時,maxVal=3+Max(NumOfMvapCand,NumOfHmvpCand)(下同)。
實施例七
編碼過程:
(1)、編碼序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、獲取ValidMvapModeNum,根據當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index和ValidMvapModeNum來確定當前編碼單元類型是Mvap模式還是HMVP模式。
(3)、根據NumOfMvapCand以及NumOfHmvpCand來編碼cu_subtype_index,並攜帶進入碼流。
解碼過程:
(1)、通過解析序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、根據NumOfMvapCand以及NumOfHmvpCand來解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index;
(3)、獲取ValidMvapModeNum,根據cu_subtype_index和ValidMvapModeNum來確定當前編碼單元類型是Mvap模式還是HMVP模式。
實施例八
編碼過程:
(1)、編碼序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand。
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1。
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、獲取有效角度預測模式數ValidMvapModeNum,如果CuSubTypeIndex大於等於N,則:
當ValidMvapModeNum大於0,且CuSubTypeIndex小於N+ValidMvapModeNum時,確定當前編碼單元類型是MVAP模式;
當ValidMvapModeNum等於0,或,CuSubTypeIndex大於或等於N+ValidMvapModeNum時,確定當前編碼單元類型是HMVP模式。
示例性的,若當前圖像為P圖像,則N=2,若當前圖像為B圖像,則N=4。
(3)、採用截斷一元碼的二值化方式編碼當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index並攜帶進入碼流。
示例性的,maxVal=(3+Max(NumOfMvapCand,NumOfHmvpCand))。
解碼過程:
(1)、解析序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand。
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1。
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index;
示例性的,maxVal=(3+Max(NumOfMvapCand,NumOfHmvpCand))。
(3)、獲取有效角度預測模式數ValidMvapModeNum,若CuSubTypeIndex大於等於N,則:
當ValidMvapModeNum大於0,且CuSubTypeIndex小於N+ValidMvapModeNum時,確定當前編碼單元類型是MVAP模式;
當ValidMvapModeNum等於0,或,CuSubTypeIndex大於或等於N+ValidMvapModeNum時,確定當前編碼單元類型是HMVP模式。
示例性的,若當前圖像為P圖像,則N=2;若當前圖像為B圖像,則N=4。
實施例九
編碼過程:
(1)、編碼序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、獲取ValidMvapModeNum,根據當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index和ValidMvapModeNum來確定當前編碼單元類型是Mvap模式還是HMVP模式。
(3)、根據當前圖像的框架類型、NumOfMvapCand以及NumOfHmvpCand來編碼cu_subtype_index,並攜帶進入碼流。
解碼過程:
(1)、通過解析序列級高層語法,獲取運動向量角度預測候選運動資訊個數NumOfMvapCand和幀間預測候選歷史運動資訊個數NumOfHmvpCand;
(2)、根據當前圖像的框架類型、NumOfMvapCand以及NumOfHmvpCand來解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index;
(3)、獲取ValidMvapModeNum,根據cu_subtype_index和ValidMvapModeNum來確定當前編碼單元類型是Mvap模式還是HMVP模式。
實施例十
編碼過程:
(1)、編碼序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand;
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1。
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、獲取有效角度預測模式數ValidMvapModeNum,若CuSubTypeIndex大於等於N,則:
當ValidMvapModeNum大於0,且CuSubTypeIndex小於N+ValidMvapModeNum時,當前編碼單元類型是Mvap模式;
當ValidMvapModeNum等於0,或,CuSubTypeIndex大於或等於N+ValidMvapModeNum時,當前編碼單元類型是Hmvp模式。
示例性的,若當前圖像為P圖像,則N=2;若當前圖像為B圖像,則N=4。
(3)、採用截斷一元碼的二值化方式編碼當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index並攜帶進入碼流。
示例性的,maxVal=((PictureType==1)?(1:3)+Max(NumOfMvapCand,NumOfHmvpCand)),PictureType表示當前圖像的框架類型,值為1表示當前圖像為P圖像。
解碼過程:
(1)、解析序列級高層語法etmvp_mvap_enable_flag和num_of_hmvp_cand;
示例性的,NumOfMvapCand的取值為etmvp_mvap_enable_flag==1?5:0,其中etmvp_mvap_enable_flag取值範圍是0~1。
示例性的,NumOfHmvpCand的取值為num_of_hmvp_cand,其中num_of_hmvp_cand取值範圍是0~8。
(2)、採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值cu_subtype_index。
示例性的,maxVal=((PictureType==1)?(1:3)+Max(NumOfMvapCand,NumOfHmvpCand)),PictureType表示當前圖像的框架類型,值為1表示當前圖像為P圖像。
(3)、獲取有效角度預測模式數ValidMvapModeNum,若CuSubTypeIndex大於等於N,則:
當ValidMvapModeNum大於0,且CuSubTypeIndex小於N+ValidMvapModeNum時,當前編碼單元類型是Mvap模式;
當ValidMvapModeNum等於0,或,CuSubTypeIndex大於或等於N+ValidMvapModeNum時,當前編碼單元類型是Hmvp模式。
示例性的,若當前圖像為P圖像,則N=2;若當前圖像為B圖像,則N=4。
實施例十一
編碼和解碼序列級高層語法etmvp_mvap_enable_flag,控制ETMVP和MVAP。
示例性的,可以通過etmvp_mvap_enable_flag標識是否啟用ETMVP和MVAP。
示例性的,語法描述可以如下表所示:
語義描述:
增強時域運動向量預測和運動向量角度預測允許標誌(etmvp_mvap_enable_flag):
二值變數。值為‘1’表示可使用增強時域運動向量預測和運動向量角度預測;值為‘0’表示不應使用增強時域運動向量預測和運動向量角度預測。EtmvpMvapEnableFlag的值等於etmvp_mvap_enable_flag的值。
示例性的,若位流中不存在etmvp_mvap_enable_flag,則EtmvpMvapEnableFlag的值為0。
若EtmvpMvapEnableFlag的值為1,NumOfMvapCand的值等於5;否則NumOfMvapCand的值等於0。
實施例十二
完成當前預測單元(即當前編碼單元)的解碼後,若當前預測單元是幀間預測單元且不是增強時域運動向量預測單元且不是運動向量角度預測單元且不是子塊時域運動資訊預測單元,以及,NumOfHmvpCand(可以更新的運動資訊的數量)大於0時,根據當前預測塊的運動資訊、
BgcFlag和BgcIndex更新歷史運動資訊表HmvpCandList;
否則,即NumOfHmvpCand=0、當前預測單元不是幀間預測單元、當前預測單元是增強時域運動向量預測單元、當前預測單元是運動向量角度預測單元、或當前預測單元是子塊時域運動資訊預測單元等條件中至少一個條件成立,不更新歷史運動資訊表。
實施例十三
完成當前預測單元(即當前塊)的解碼後,若當前預測單元是幀間預測單元且不是仿射預測單元且不是角度加權預測單元且不是增強時域運動向量預測單元且不是運動向量角度預測單元且不是子塊時域運動資訊預測單元,以及,NumOfHmvpCand(可以更新的運動資訊的數量)大於0時,根據當前預測塊的運動資訊、BgcFlag和BgcIndex更新歷史運動資訊表HmvpCandList;否則,即NumOfHmvpCand=0、當前預測單元不是幀間預測單元、當前預測單元是仿射預測單元、當前預測單元是角度加權預測單元、當前預測單元是增強時域運動向量預測單元、當前預測單元是運動向量角度預測單元、或當前預測單元是子塊時域運動資訊預測單元等條件中至少一個條件成立,不更新歷史運動資訊表。
需要說明的是,上述實施例僅僅是本發明實施例的實現方式的具體示例,而並不是對本發明保護範圍的限定,基於上述實施例,可以通過實施例之間的組合,或對實施例進行變型,得到新的實施例,其均應屬於本發明的保護範圍。
此外,上述各實施例編碼端和解碼端的實現流程可以相互參照。
以上對本發明提供的方法進行了描述。下面對本發明提供的裝置進行描述。請參見圖11,圖11是本發明實施例提供的一種解碼裝置的結構示意圖,其中,該解碼裝置可以包括:解碼模組1110,用於接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值;構建模組1120,用於構建跳過模式或直接模式的候選清單;確定模組1130,用於根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式;補償模組1140,用於根據當前編碼單元的預測
模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償。其中,所述解碼模組1110,具體用於獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
在一些實施例中,所述解碼模組1110,具體用於通過解析序列級高層語法,獲取所述運動向量角度預測候選運動資訊個數和所述幀間預測候選歷史運動資訊個數。
在一些實施例中,所述解碼模組1110,具體用於解析增強時域運動向量預測和運動向量角度預測允許標誌,根據所述增強時域運動向量預測和運動向量角度預測允許標誌的取值,確定所述運動向量角度預測候選運動資訊個數;以及,解析幀間預測候選歷史運動資訊個數索引,根據所述幀間預測候選歷史運動資訊個數索引的取值,確定所述幀間預測候選歷史運動資訊個數;其中,所述增強時域運動向量預測和運動向量角度預測允許標誌用於指示同時開啟增強時域運動向量預測模式和運動向量角度預測模式,或,同時關閉增強時域運動向量預測模式和運動向量角度預測模式。
在一些實施例中,所述確定模組1130,具體用於根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
在一些實施例中,所述確定模組1130,具體用於根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值;根據所述最大索引值,採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值。
在一些實施例中,所述確定模組1130,具體用於確定所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數中的最大值;若所述當前圖像的框架類型為P圖像,則將該最大值與1二者之
和,確定為最大索引值;若所述當前圖像的框架類型為B圖像,則將該最大值與3二者之和,確定為最大索引值。
在一些實施例中,所述確定模組1130,具體用於根據有效角度預測模式數,以及所述跳過模式或直接模式的運動資訊索引值,確定當前編碼單元的預測模式是運動向量角度預測模式還是基於歷史資訊的運動向量預測模式。
在一些實施例中,所述確定模組1130,具體用於若所述跳過模式或直接模式的運動資訊索引值大於或等於N,則:當所述有效角度預測模式數大於0,且所述跳過模式或直接模式的運動資訊索引值小於N與所述有效角度預測模式數二者之和時,確定所述當前編碼單元的預測模式為運動向量角度預測模式;當所述有效角度預測模式數等於0,或,所述跳過模式或直接模式的運動資訊索引值大於或等於N與所述有效角度預測模式數二者之和時,確定所述當前編碼單元的預測模式為基於歷史資訊的運動向量預測模式。
在一些實施例中,若當前圖像的框架類型為P圖像,則N=2;若當前圖像的框架類型為B圖像,則N=4。
在一些實施例中,所述確定模組1130,還用於當所述當前編碼單元的預測模式為基於歷史資訊的運動向量預測模式時,若所述當前編碼單元為幀間預測單元且不是仿射預測單元且不是角度加權預測單元且不是增強時域運動向量預測單元且不是運動向量角度預測單元且不是子塊時域運動資訊預測單元,以及,所述幀間預測候選歷史運動資訊個數大於0,則更新歷史運動資訊表;否則,不更新所述歷史運動資訊表。
在一些實施例中,所述解碼模組1110,具體用於當所述增強時域運動向量預測和運動向量角度預測允許標誌的取值為1時,確定所述運動向量角度預測候選運動資訊個數為5;其中,所述增強時域運動向量預測和運動向量角度預測允許標誌的取值為1,表示當前編碼單元可使用增強時域運動向量預測和運動向量角度預測;當所述增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,或,碼流中不存在所述增強時域運動向量預測和運動向量角度預測允許標誌時,確定所述運動向量角度預測
候選運動資訊個數為0;其中,所述增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,或,碼流中不存在所述增強時域運動向量預測和運動向量角度預測允許標誌,表示當前編碼單元不應使用增強時域運動向量預測和運動向量角度預測。
請參見圖12,圖12是本發明實施例提供的一種編碼裝置的結構示意圖,其中,該編碼裝置可以包括:構建模組1210,用於構建跳過模式或直接模式的候選清單:按順序遍歷預測模式候選清單中的每一種預測模式,對於每一種預測模式,獲取當前編碼單元的運動資訊和當前編碼單元的跳過模式或直接模式的運動資訊索引值;補償模組1220,用於根據當前編碼單元的運動資訊,對當前編碼單元進行運動補償;確定模組1230,用於計算該預測模式對應的率失真代價值,並將該率失真代價值與其他候選預測模式的代價值進行比較,選擇最小的率失真代價值所對應的預測模式;編碼模組1240,用於將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,傳送給解碼端。其中,所述編碼模組1240,具體用於獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對所述當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,並攜帶進碼流。
在一些實施例中,所述編碼模組1240,具體用於根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定最大索引值;根據所述最大索引值,採用截斷一元碼的二值化方式編碼所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
在一些實施例中,所述編碼模組1240,具體用於根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值。
請參見圖13,為本發明實施例提供的一種解碼端設備的硬體結構示意圖。該解碼端設備可包括處理器1301、存儲有機器可執行指令的機器可讀存儲介質1302。處理器1301與機器可讀存儲介質1302可經由系統匯流排1303通信。並且,通過讀取並執行機器可讀存儲介質1302中與
解碼控制邏輯對應的機器可執行指令,處理器1301可執行上文描述的解碼端設備的解碼方法。
本文中提到的機器可讀存儲介質1302可以是任何電子、磁性、光學或其它物理存儲裝置,可以包含或存儲資訊,如可執行指令、資料,等等。例如,機器可讀存儲介質可以是:RAM(Radom Access Memory,隨機存取記憶體)、動態記憶體、非易失性記憶體、快閃記憶體、存儲驅動器(如硬碟驅動器)、固態硬碟、任何類型的存儲盤(如光碟、dvd等),或者類似的存儲介質,或者它們的組合。
在一些實施例中,還提供了一種機器可讀存儲介質,該機器可讀存儲介質內存儲有機器可執行指令,所述機器可執行指令被處理器執行時實現上文描述的解碼端設備的解碼方法。例如,所述機器可讀存儲介質可以是ROM(Read-Only Memory,唯讀記憶體)、RAM、CD-ROM(Compact Disc Read-Only Memory,光碟唯讀記憶體)、磁帶、軟碟和光資料存放裝置等。
請參見圖14,為本發明實施例提供的一種編碼端設備的硬體結構示意圖。該編碼端設備可包括處理器1401、存儲有機器可執行指令的機器可讀存儲介質1402。處理器1401與機器可讀存儲介質1402可經由系統匯流排1403通信。並且,通過讀取並執行機器可讀存儲介質1402中與編碼控制邏輯對應的機器可執行指令,處理器1401可執行上文描述的編碼端設備的編碼方法。
本文中提到的機器可讀存儲介質1402可以是任何電子、磁性、光學或其它物理存儲裝置,可以包含或存儲資訊,如可執行指令、資料,等等。例如,機器可讀存儲介質可以是:RAM(Radom Access Memory,隨機存取記憶體)、動態記憶體、非易失性記憶體、快閃記憶體、存儲驅動器(如硬碟驅動器)、固態硬碟、任何類型的存儲盤(如光碟、dvd等),或者類似的存儲介質,或者它們的組合。
在一些實施例中,還提供了一種機器可讀存儲介質,該機器可讀存儲介質內存儲有機器可執行指令,所述機器可執行指令被處理器執行時實現上文描述的編碼端設備的編碼方法。例如,所述機器可讀存儲介
質可以是ROM、RAM、CD-ROM、磁帶、軟碟和光資料存放裝置等。在一些實施例中,還提供了一種攝像機設備,包括上述任一實施例中的解碼裝置和/或編碼裝置。
在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個......”限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的範圍之內。
S701,S702,S710,S730,S740:步驟
Claims (21)
- 一種解碼方法,其特徵在於,包括:接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值;構建跳過模式或直接模式的候選清單;根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式;根據當前編碼單元的預測模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償;其中,所述解析當前編碼單元的跳過模式或直接模式的運動資訊索引值,包括:獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
- 根據請求項1所述的方法,其中,所述獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,包括:通過解析序列級高層語法,獲取所述運動向量角度預測候選運動資訊個數和所述幀間預測候選歷史運動資訊個數。
- 根據請求項2所述的方法,其中,所述通過解析序列級高層語法,獲取所述運動向量角度預測候選運動資訊個數和所述幀間預測候選歷史運動資訊個數,包括:解析增強時域運動向量預測和運動向量角度預測允許標誌,根據所述增強時域運動向量預測和運動向量角度預測允許標誌的取值,確定所述運動向量角度預測候選運動資訊個數;以及,解析幀間預測候選歷史運動資訊個數索引,根據所述幀間預測候選歷史運動資訊個數索引的取值,確定所述幀間預測候選歷史運動資訊個數; 其中,所述增強時域運動向量預測和運動向量角度預測允許標誌用於指示同時開啟增強時域運動向量預測模式和運動向量角度預測模式,或,同時關閉增強時域運動向量預測模式和運動向量角度預測模式。
- 根據請求項1-3任一項所述的方法,其中,所述根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值,包括:根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
- 根據請求項4所述的方法,其中,所述根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值,包括:根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值;根據所述最大索引值,採用截斷一元碼的反二值化方式解析當前編碼單元的跳過模式或直接模式的運動資訊索引值。
- 根據請求項5所述的方法,其中,所述根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值,包括:確定所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數中的最大值;若所述當前圖像的框架類型為P圖像,則將該最大值與1二者之和,確定為最大索引值;若所述當前圖像的框架類型為B圖像,則將該最大值與3二者之和,確定為最大索引值。
- 根據請求項1所述的方法,其中,所述根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式,包括: 根據有效角度預測模式數,以及所述跳過模式或直接模式的運動資訊索引值,確定當前編碼單元的預測模式是運動向量角度預測模式還是基於歷史資訊的運動向量預測模式。
- 根據請求項7所述的方法,其中,所述根據有效角度預測模式數,以及所述跳過模式或直接模式的運動資訊索引值,確定當前編碼單元的預測模式是運動向量角度預測模式還是基於歷史資訊的運動向量預測模式,包括:若所述跳過模式或直接模式的運動資訊索引值大於或等於N,則:當所述有效角度預測模式數大於0,且所述跳過模式或直接模式的運動資訊索引值小於N與所述有效角度預測模式數二者之和時,確定所述當前編碼單元的預測模式為運動向量角度預測模式;當所述有效角度預測模式數等於0,或,所述跳過模式或直接模式的運動資訊索引值大於或等於N與所述有效角度預測模式數二者之和時,確定所述當前編碼單元的預測模式為基於歷史資訊的運動向量預測模式。
- 根據請求項8所述的方法,其中,若當前圖像的框架類型為P圖像,則N=2;若當前圖像的框架類型為B圖像,則N=4。
- 根據請求項7所述的方法,其中,所述確定當前編碼單元的預測模式之後,還包括:當所述當前編碼單元的預測模式為基於歷史資訊的運動向量預測模式時,若所述當前編碼單元為幀間預測單元且不是仿射預測單元且不是角度加權預測單元且不是增強時域運動向量預測單元且不是運動向量角度預測單元且不是子塊時域運動資訊預測單元,以及,所述幀間預測候選歷史運動資訊個數大於0,則更新歷史運動資訊表;否則,不更新所述歷史運動資訊表。
- 根據請求項3所述的方法,其中,所述根據所述增強時域運動向量預測和運動向量角度預測允許標誌的取值,確定所述運動向量角度預測候選運動資訊個數,包括:當所述增強時域運動向量預測和運動向量角度預測允許標誌的取值為1時,確定所述運動向量角度預測候選運動資訊個數為5;其中,所述增強 時域運動向量預測和運動向量角度預測允許標誌的取值為1,表示當前編碼單元可使用增強時域運動向量預測和運動向量角度預測;當所述增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,或,碼流中不存在所述增強時域運動向量預測和運動向量角度預測允許標誌時,確定所述運動向量角度預測候選運動資訊個數為0;其中,所述增強時域運動向量預測和運動向量角度預測允許標誌的取值為0,或,碼流中不存在所述增強時域運動向量預測和運動向量角度預測允許標誌,表示當前編碼單元不應使用增強時域運動向量預測和運動向量角度預測。
- 一種編碼方法,其特徵在於,包括:構建跳過模式或直接模式的候選清單:按順序遍歷預測模式候選清單中的每一種預測模式,對於每一種預測模式,獲取當前編碼單元的運動資訊和當前編碼單元的跳過模式或直接模式的運動資訊索引值;根據當前編碼單元的運動資訊,對當前編碼單元進行運動補償;計算該預測模式對應的率失真代價值,並將該率失真代價值與其他候選預測模式的代價值進行比較,選擇最小的率失真代價值所對應的預測模式;將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,傳送給解碼端;其中,所述將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,包括:獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對所述當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,並攜帶進碼流。
- 根據請求項12所述的方法,其中,所述根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對所述當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,包括:根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運 動資訊個數,確定最大索引值;根據所述最大索引值,採用截斷一元碼的二值化方式編碼所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
- 根據請求項13所述的方法,其中,所述根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定最大索引值,包括:根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值。
- 根據請求項12所述的方法,其中,所述根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,對所述當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,包括:根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值;根據所述最大索引值,採用截斷一元碼的二值化方式編碼所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
- 根據請求項15所述的方法,其中,所述根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,以及當前圖像的框架類型,確定最大索引值,包括:確定所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數中的最大值;若所述當前圖像的框架類型為P圖像,則將該最大值與1二者之和,確定為最大索引值;若所述當前圖像的框架類型為B圖像,則將該最大值與3二者之和,確定為最大索引值。
- 一種解碼裝置,其特徵在於,包括:解碼模組,用於接收碼流,解析當前編碼單元的跳過模式或直接模式的運動資訊索引值;構建模組,用於構建跳過模式或直接模式的候選清單; 確定模組,用於根據當前編碼單元的跳過模式或直接模式的運動資訊索引值和候選清單確定當前編碼單元的預測模式;補償模組,用於根據當前編碼單元的預測模式獲取當前編碼單元的運動資訊,對當前編碼單元進行運動補償;其中,所述解碼模組,具體用於獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,確定所述當前編碼單元的跳過模式或直接模式的運動資訊索引值。
- 一種編碼裝置,其特徵在於,包括:構建模組,用於構建跳過模式或直接模式的候選清單:按順序遍歷預測模式候選清單中的每一種預測模式,對於每一種預測模式,獲取當前編碼單元的運動資訊和當前編碼單元的跳過模式或直接模式的運動資訊索引值;補償模組,用於根據當前編碼單元的運動資訊,對當前編碼單元進行運動補償;確定模組,用於計算該預測模式對應的率失真代價值,並將該率失真代價值與其他候選預測模式的代價值進行比較,選擇最小的率失真代價值所對應的預測模式;編碼模組,用於將率失真代價值最小的預測模式對應的當前編碼單元的跳過模式或直接模式的運動資訊索引值攜帶進碼流,傳送給解碼端;其中,所述編碼模組,具體用於獲取運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數;根據所述運動向量角度預測候選運動資訊個數和幀間預測候選歷史運動資訊個數,對所述當前編碼單元的跳過模式或直接模式的運動資訊索引值進行編碼,並攜帶進碼流。
- 一種解碼端設備,其特徵在於,包括處理器和機器可讀存儲介質,所述機器可讀存儲介質存儲有能夠被所述處理器執行的機器可執行指令,所述處理器用於執行機器可執行指令,以實現如請求項1-11任一項所述的方法。
- 一種編碼端設備,其特徵在於,包括處理器和機器可讀存儲介質,所述機器可讀存儲介質存儲有能夠被所述處理器執行的機器可執行指令,所述處理器用於執行機器可執行指令,以實現如請求項12-16任一項所述的方法。
- 一種機器可讀存儲介質,其特徵在於,所述機器可讀存儲介質內存儲有機器可執行指令,所述機器可執行指令被處理器執行時實現如請求項1-11或12-16任一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110739455.5A CN114650418B (zh) | 2021-06-30 | 2021-06-30 | 解码方法、编码方法、装置及设备 |
CN202110739455.5 | 2021-06-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202304202A TW202304202A (zh) | 2023-01-16 |
TWI806650B true TWI806650B (zh) | 2023-06-21 |
Family
ID=78668981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111121315A TWI806650B (zh) | 2021-06-30 | 2022-06-08 | 解碼方法、編碼方法、裝置、設備及存儲介質 |
Country Status (9)
Country | Link |
---|---|
US (1) | US20240276005A1 (zh) |
EP (1) | EP4333429A4 (zh) |
JP (2) | JP7521137B2 (zh) |
KR (1) | KR20240012610A (zh) |
CN (3) | CN113709456B (zh) |
AU (1) | AU2022304788A1 (zh) |
TW (1) | TWI806650B (zh) |
WO (1) | WO2023273802A1 (zh) |
ZA (1) | ZA202311482B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113709456B (zh) * | 2021-06-30 | 2022-11-25 | 杭州海康威视数字技术股份有限公司 | 解码方法、装置、设备及机器可读存储介质 |
CN114339231B (zh) * | 2021-12-27 | 2023-10-27 | 杭州当虹科技股份有限公司 | 利用运动矢量快速跳Cu级模式选择的方法 |
CN117278763A (zh) * | 2022-06-14 | 2023-12-22 | 中兴通讯股份有限公司 | 基于交互的编码方法、编码装置及可读存储介质 |
CN118540496A (zh) * | 2024-07-24 | 2024-08-23 | 浙江大华技术股份有限公司 | 图像解码方法、图像编码方法、装置以及计算机存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10284860B1 (en) * | 2018-07-02 | 2019-05-07 | Tencent America LLC | Method and apparatus for video coding |
CN111970512A (zh) * | 2020-07-23 | 2020-11-20 | 浙江大华技术股份有限公司 | 编码方法、设备及具有存储功能的装置 |
CN112073733A (zh) * | 2019-06-11 | 2020-12-11 | 北京三星通信技术研究有限公司 | 基于运动矢量角度预测的视频编解码方法和装置 |
CN112291565A (zh) * | 2020-09-10 | 2021-01-29 | 浙江大华技术股份有限公司 | 视频编码方法及其相关装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013048033A1 (ko) * | 2011-09-28 | 2013-04-04 | 한국전자통신연구원 | 인트라 예측 모드 부호화/복호화 방법 및 장치 |
US9843820B2 (en) | 2012-07-05 | 2017-12-12 | Mediatek Inc | Method and apparatus of unified disparity vector derivation for 3D video coding |
CN110855998B (zh) * | 2018-08-20 | 2023-04-11 | 华为技术有限公司 | 融合候选者列表构建方法、装置及的编/解方法及装置 |
US10735759B2 (en) * | 2018-10-06 | 2020-08-04 | Tencent America LLC | Pairwise average motion vector prediction |
US11184633B2 (en) * | 2018-11-27 | 2021-11-23 | Qualcomm Incorporated | Simplification of history-based motion vector prediction |
CN112565747B (zh) * | 2019-09-26 | 2022-12-23 | 杭州海康威视数字技术股份有限公司 | 一种解码、编码方法、装置及其设备 |
CN113709456B (zh) * | 2021-06-30 | 2022-11-25 | 杭州海康威视数字技术股份有限公司 | 解码方法、装置、设备及机器可读存储介质 |
-
2021
- 2021-06-30 CN CN202111146278.6A patent/CN113709456B/zh active Active
- 2021-06-30 CN CN202110739455.5A patent/CN114650418B/zh active Active
- 2021-06-30 CN CN202111146250.2A patent/CN113794877B/zh active Active
-
2022
- 2022-06-06 KR KR1020247001702A patent/KR20240012610A/ko not_active Application Discontinuation
- 2022-06-06 AU AU2022304788A patent/AU2022304788A1/en active Pending
- 2022-06-06 EP EP22831623.8A patent/EP4333429A4/en active Pending
- 2022-06-06 JP JP2023580585A patent/JP7521137B2/ja active Active
- 2022-06-06 US US18/568,099 patent/US20240276005A1/en active Pending
- 2022-06-06 WO PCT/CN2022/097124 patent/WO2023273802A1/zh active Application Filing
- 2022-06-08 TW TW111121315A patent/TWI806650B/zh active
-
2023
- 2023-12-13 ZA ZA2023/11482A patent/ZA202311482B/en unknown
-
2024
- 2024-07-09 JP JP2024110195A patent/JP2024124549A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10284860B1 (en) * | 2018-07-02 | 2019-05-07 | Tencent America LLC | Method and apparatus for video coding |
CN112073733A (zh) * | 2019-06-11 | 2020-12-11 | 北京三星通信技术研究有限公司 | 基于运动矢量角度预测的视频编解码方法和装置 |
CN111970512A (zh) * | 2020-07-23 | 2020-11-20 | 浙江大华技术股份有限公司 | 编码方法、设备及具有存储功能的装置 |
CN112291565A (zh) * | 2020-09-10 | 2021-01-29 | 浙江大华技术股份有限公司 | 视频编码方法及其相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113794877B (zh) | 2022-11-25 |
CN114650418A (zh) | 2022-06-21 |
WO2023273802A1 (zh) | 2023-01-05 |
CN113794877A (zh) | 2021-12-14 |
CN113709456A (zh) | 2021-11-26 |
KR20240012610A (ko) | 2024-01-29 |
AU2022304788A1 (en) | 2023-12-21 |
TW202304202A (zh) | 2023-01-16 |
JP2024523635A (ja) | 2024-06-28 |
CN113709456B (zh) | 2022-11-25 |
EP4333429A1 (en) | 2024-03-06 |
JP7521137B2 (ja) | 2024-07-23 |
CN114650418B (zh) | 2023-01-24 |
EP4333429A4 (en) | 2024-10-23 |
ZA202311482B (en) | 2024-08-28 |
JP2024124549A (ja) | 2024-09-12 |
US20240276005A1 (en) | 2024-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI806650B (zh) | 解碼方法、編碼方法、裝置、設備及存儲介質 | |
RU2673392C1 (ru) | Способ и устройство для энтропийного кодирования видео и способ и устройство для энтропийного декодирования видео | |
CN106791834B (zh) | 对图像进行解码的方法和设备 | |
KR102076782B1 (ko) | 적중률이 높은 mpm을 통한 영상의 부호화 방법 및 장치, 그리고 복호화 방법 및 장치 | |
CN107396126B (zh) | 用于编码和解码图像的方法、编码和解码设备、以及相应的计算机程序 | |
KR20110044487A (ko) | 계층적 부호화 단위의 크기에 따른 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 | |
US20110090952A1 (en) | Directional Transforms for Video and Image Coding | |
TW201725910A (zh) | 影像解碼裝置 | |
US20050276331A1 (en) | Method and apparatus for estimating motion | |
KR20070005848A (ko) | 인트라 예측 모드 결정 방법 및 장치 | |
KR20080033813A (ko) | 데이터 인코딩/디코딩 방법 및 장치 | |
JP7494403B2 (ja) | 復号方法、符号化方法、装置、デバイスおよび記憶媒体 | |
JP2023179792A (ja) | 復号化方法、符号化方法、装置、及びデバイス | |
JP2009049969A (ja) | 動画像符号化装置及び方法並びに動画像復号化装置及び方法 | |
CN113132734B (zh) | 一种编码、解码方法、装置及其设备 |