CN-122003862-A - Encoding/decoding method, code stream, encoder, decoder, and storage medium
Abstract
The embodiment of the application discloses a coding and decoding method, a code stream, an encoder, a decoder and a storage medium, wherein the method comprises the steps that the decoder determines a macro pixel homonymy block corresponding to a current block; the method comprises the steps of determining a first candidate list corresponding to a current block according to a macro pixel homonymous block, determining a vector reference block corresponding to the current block in the first candidate list according to index information corresponding to the current block, determining a motion vector of the current block according to a motion vector of the vector reference block, and determining a predicted value of the current block according to the motion vector of the current block. The method comprises the steps of determining a macro-pixel co-located block corresponding to a current block by an encoder, determining a first candidate list corresponding to the current block according to the macro-pixel co-located block, determining a vector reference block corresponding to the current block in the first candidate list, determining a motion vector of the current block according to a motion vector of the vector reference block, and determining a predicted value of the current block according to the motion vector of the current block.
Inventors
- YANG YOU
- LUO JINGYANG
- HU ZIYU
- LIU QIONG
Assignees
- OPPO广东移动通信有限公司
Dates
- Publication Date
- 20260508
- Application Date
- 20231009
Claims (20)
- A decoding method applied to a decoder, the method comprising: Determining a macro pixel homonymy block corresponding to the current block; Determining a first candidate list corresponding to the current block according to the macro pixel co-located block; Determining a vector reference block corresponding to the current block in the first candidate list according to index information corresponding to the current block; and determining the motion vector of the current block according to the motion vector of the vector reference block, and determining the predicted value of the current block according to the motion vector of the current block.
- The method of claim 1, wherein the determining the first candidate list corresponding to the current block from the macro-pixel co-located block comprises: And adding the macro pixel co-located block to the first candidate list under the condition that the macro pixel co-located block meets a preset reference condition.
- The method of claim 2, wherein, The preset reference condition at least comprises that the macro-pixel co-located block is decoded, and/or that a motion vector of the macro-pixel co-located block exists and is available.
- The method of claim 1, wherein the determining, in the first candidate list, the vector reference block corresponding to the current block according to index information corresponding to the current block, comprises: And determining the macro pixel co-located block indicated by the index information in the first candidate list as the vector reference block.
- The method of claim 1, wherein the determining a macroblock corresponding to the current block comprises: and determining the macro pixel co-located block in the adjacent macro pixel corresponding to the current macro pixel.
- The method of claim 5, wherein, The current macro-pixel is in the same light field video image as the neighboring macro-pixels.
- The method of claim 5, wherein, The current macro-pixel comprises part or all of the current block; The neighboring macro-pixels include part or all of the macro-pixel co-located block.
- The method of claim 5, wherein the determining a macroblock corresponding to the current block comprises: determining first position information of the current block in the current macro pixel; and determining the macro pixel co-located block in the adjacent macro pixels according to the first position information.
- The method of claim 1, wherein the method further comprises: determining adjacent blocks corresponding to the current block; determining a second candidate list corresponding to the current block according to the adjacent blocks; Determining a vector reference block corresponding to the current block in the second candidate list according to the index information; and determining the motion vector of the current block according to the motion vector of the vector reference block, and determining the predicted value of the current block according to the motion vector of the current block.
- The method of claim 9, wherein the determining, in the second candidate list, the vector reference block corresponding to the current block according to the index information, comprises: And determining a neighboring block indicated by the index information in the second candidate list as the vector reference block.
- A method according to claim 3, wherein the method further comprises: Determining adjacent blocks and macro pixel co-located blocks corresponding to the current block; Determining a third candidate list corresponding to the current block according to the adjacent block and/or the macro pixel co-located block; Determining a vector reference block corresponding to the current block in the third candidate list according to the index information; and determining the motion vector of the current block according to the motion vector of the vector reference block, and determining the predicted value of the current block according to the motion vector of the current block.
- The method of claim 11, wherein the determining, in the third candidate list, the vector reference block corresponding to the current block according to the index information, comprises: And determining a macro pixel co-located block or an adjacent block indicated by the index information in the third candidate list as the vector reference block.
- The method of any one of claims 1, 9, 11, wherein the method further comprises: Decoding a code stream and determining the index information corresponding to the current block.
- The method according to any of claims 1-12, wherein said determining a motion vector of the current block from a motion vector of the vector reference block comprises: and determining the motion vector of the vector reference block as the motion vector of the current block.
- The method of any of claims 1-12, wherein the determining a predicted value of the current block from a motion vector of the current block comprises: determining a reference block corresponding to the current block in a reference image according to the motion vector of the current block; And determining the predicted value of the current block according to the reference block.
- The method of claim 15, wherein, The motion vector characterizes a positional offset between the current block and the reference block.
- The method of any of claims 1-12, wherein the method further comprises: And decoding the code stream and determining a prediction residual corresponding to the current block.
- The method of claim 17, wherein the method further comprises: And determining a reconstruction value of the current block according to the predicted value of the current block and the predicted residual error.
- The method of claim 1, wherein the method further comprises: And decoding the code stream, and determining list construction mode identification information, wherein the list construction mode identification information is used for indicating that a candidate list of the current block is constructed based on the macro pixel homonymous block corresponding to the current block and/or the adjacent block corresponding to the current block.
- The method of claim 19, wherein the method further comprises: executing a construction flow of the first candidate list based on the macro pixel parity block under the condition that the value of the list construction mode identification information is a first value; Executing a construction flow of the second candidate list based on the adjacent block under the condition that the value of the list construction mode identification information is a second value; And executing a construction flow of the third candidate list based on the adjacent block and/or the macro pixel co-located block under the condition that the value of the list construction mode identification information is a third value.
Description
Encoding/decoding method, code stream, encoder, decoder, and storage medium Technical Field The embodiment of the application relates to the technical field of video encoding and decoding, in particular to an encoding and decoding method, a code stream, an encoder, a decoder and a storage medium. Background Light field video is video data captured by a light field camera. In the common light field video acquisition process, a group of micro lens arrays can be added in front of an imaging plane through a light field camera, so that light rays at the same point of an object plane can be simultaneously captured by a plurality of micro lenses, which is equivalent to shooting the same point from a plurality of angles at the same time. Based on a special imaging model in the form of a micro lens array and the like, the finally obtained image of the light field video often presents a series of closely arranged macro pixels, and the adjacent macro pixels have strong correlation. However, the conventional inter prediction method does not consider spatial correlation between neighboring macro pixels, and has problems of poor coding and decoding effects and performance. Disclosure of Invention The embodiment of the application provides a coding and decoding method, a code stream, an encoder, a decoder and a storage medium, which can effectively improve coding and decoding performance and effect. The technical scheme of the embodiment of the application can be realized as follows: in a first aspect, an embodiment of the present application provides a decoding method, applied to a decoder, the method including: Determining a macro pixel homonymy block corresponding to the current block; Determining a first candidate list corresponding to the current block according to the macro pixel co-located block; Determining a vector reference block corresponding to the current block in the first candidate list according to index information corresponding to the current block; and determining the motion vector of the current block according to the motion vector of the vector reference block, and determining the predicted value of the current block according to the motion vector of the current block. In a second aspect, an embodiment of the present application provides an encoding method, applied to an encoder, including: Determining a macro pixel homonymy block corresponding to the current block; Determining a first candidate list corresponding to the current block according to the macro pixel co-located block; determining a vector reference block corresponding to the current block in the first candidate list; and determining the motion vector of the current block according to the motion vector of the vector reference block, and determining the predicted value of the current block according to the motion vector of the current block. In a third aspect, an embodiment of the present application provides a code stream, where the code stream is generated by performing bit encoding according to information to be encoded, where the information to be encoded includes at least one of the following: index information corresponding to the current block, list construction mode identification information and prediction residual. In a fourth aspect, an embodiment of the present application provides an encoder including a first determination unit, wherein, The first determining unit is configured to determine a macro pixel co-located block corresponding to a current block, determine a first candidate list corresponding to the current block according to the macro pixel co-located block, and determine a vector reference block corresponding to the current block in the first candidate list; and determining the motion vector of the current block according to the motion vector of the vector reference block, and determining the predicted value of the current block according to the motion vector of the current block. In a fifth aspect, an embodiment of the present application provides an encoder, the encoder including a first memory and a first processor, wherein, The first memory is used for storing a computer program capable of running on the first processor; The first processor is configured to perform the method according to the second aspect when the computer program is run. In a sixth aspect, an embodiment of the present application provides a decoder, the decoder including a second determining unit, wherein, The second determining unit is configured to determine a macro-pixel co-located block corresponding to a current block, determine a first candidate list corresponding to the current block according to the macro-pixel co-located block, determine a vector reference block corresponding to the current block in the first candidate list according to index information corresponding to the current block, determine a motion vector of the current block according to a motion vector of the vector reference block, and determine a predicted value of the cur