CN110944190A - Image compression method and device for special historical recent motion vector prediction candidate set - Google Patents
Image compression method and device for special historical recent motion vector prediction candidate set Download PDFInfo
- Publication number
- CN110944190A CN110944190A CN201910901050.XA CN201910901050A CN110944190A CN 110944190 A CN110944190 A CN 110944190A CN 201910901050 A CN201910901050 A CN 201910901050A CN 110944190 A CN110944190 A CN 110944190A
- Authority
- CN
- China
- Prior art keywords
- motion vector
- block
- current
- index
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/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/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
-
- 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
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)
Abstract
The invention provides an image compression method and device using a special historical recent motion vector prediction candidate set, wherein one historical recent motion vector prediction candidate set is mainly used when a reference image is a current image, at least one historical recent motion vector prediction candidate set is mainly used when the reference image is not the current image, and different special historical recent motion vector prediction candidate sets are suitable for different occasions of inter-frame coding, so that the coding efficiency is improved.
Description
Technical Field
The present invention relates to an encoding and decoding system for lossy or lossless compression of data, and more particularly to a method and apparatus for encoding and decoding image and video data.
Background
With the human society entering the era of big data, cloud computing, mobile computing, cloud-mobile computing, ultra high definition (4K) and ultra high definition (8K) video image resolution, 4G/5G communication, and virtual reality, it becomes an indispensable technology to compress various data, including big data, image data, and video data, with ultra high compression ratio and extremely high quality.
Images and videos are finite sets of data (e.g., a frame of an image, a sequence of videos, a three-dimensional scene, a sequence of constantly changing three-dimensional scenes) organized into a spatial (one-, two-, or multi-dimensional) shape composed of samples of pixels. When encoding (and corresponding decoding) of data compression of image data, an image is generally divided into a number of subsets having a predetermined shape, called encoding blocks (i.e., decoding blocks from the decoding point of view, collectively referred to as encoding and decoding blocks), and the encoding or decoding is performed on a block-by-block basis in a predetermined time sequence. At any one time, the coding block being coded is referred to as the current coding block. At any one time, the decoding block being decoded is referred to as the current decoding block. The current encoding block or current decoding block is collectively referred to as the current encoding and decoding block or simply the current block. The sample being encoded or decoded is referred to as the current encoded sample or the current decoded sample, simply as the current sample.
For a codec block with a certain shape (not necessarily limited to a square or a rectangle, but may be any other reasonable shape), it is necessary to divide the codec block into more fine sub-blocks (not necessarily limited to a square or a rectangle, but may be any other reasonable shape) in many cases, and the sub-blocks are encoded or decoded one by one according to a predetermined time sequence. The same type of encoding or decoding operation is typically performed on all samples within a sub-block. At any one time, the sub-block being encoded or decoded is referred to as the current sub-block. The result of encoding a sub-block is one or more encoding parameters, and finally a compressed data code stream containing the encoding parameters is generated. Decoding a sub-block is to parse the compressed data stream to obtain one or more encoding parameters, and recover reconstructed data samples from the one or more encoding parameters.
Examples of sub-blocks include codec blocks (the entire codec block as a sub-block), square or rectangular or triangular or trapezoidal sub-blocks, micro-blocks, strings, pixel strings, sample strings, index strings, lines.
The image data involved in the invention comprises the acquired or generated original state image data, also comprises a plurality of processed intermediate state data and data sets, and also comprises coding parameter data and data sets generated in the coding and decoding process, such as various coding modes, multi-dimensional or three-dimensional or two-dimensional motion vectors, matching lengths and the like.
One approach to image compression is to mine the correlation between data units of each hierarchical aspect in an image, and match (also often referred to as predict, represent, compensate, approximate, etc.) a current data unit with a data unit commonly referred to as a reference data unit (also often referred to as predict data unit, compensate data unit, match data unit, matched data unit, predicted value, compensation value, reference value, etc.), so as to achieve lossless or lossy compression of data.
Motion Vector (MV) is an important data unit in image compression. The coding efficiency of the inter-frame coding can be effectively improved by using the motion vector of the coding and decoding block or sub-block which completes at least part of coding and decoding operation as the motion vector predicted value to predict a current motion vector (namely, the motion vector currently being coded and decoded). Possible sources of motion vector predictors include at least:
1) one or more motion vectors of a frame-adjacent, also referred to as spatial neighboring (spatial neighboring) codec block, that have completed at least part of the codec operation, are referred to as frame-adjacent motion vectors,
2) one or more motion vectors of a previous frame neighboring, also referred to as temporal neighboring (temporal neighboring) codec block, for which at least a partial codec operation has been completed, are referred to as previous frame neighboring motion vectors,
3) the historical recent motion vector predicted value candidate set is composed of motion vectors which are generated in the encoding and decoding historical process according to the encoding and decoding sequence and have completed at least part of encoding and decoding operations of a plurality of encoding and decoding blocks adopting an interframe encoding mode, and the motion vectors are called historical recent motion vectors.
Each motion vector typically includes at least a horizontal component and a vertical component, and optionally a reference picture index, indicating from which frame of the reference picture queue the reference pixel was taken. Thus, each motion vector corresponds to a frame of reference image, i.e., the reference block or sub-block and the image in which its reference pixels are located.
In the prior art, there is only one single historical recent motion vector predictor candidate set, and all motion vectors therein, regardless of the value of their corresponding reference picture index (indicating in which frame of the reference picture queue the reference pixel for inter prediction is), are indiscriminately used for prediction of the current motion vector. Therefore, the historical recent motion vector predictor candidate set cannot be effectively adapted to various interframe coding occasions, particularly to the occasion that the current image, namely the current block or the image where the sub-block is located is allowed to be used as the reference image, namely the reference block or the image where the sub-block is located, and the improvement of the coding efficiency is influenced.
Disclosure of Invention
In order to solve the problem in image compression, the invention provides an image compression method and device using a special historical recent motion vector prediction candidate set, wherein one historical recent motion vector prediction candidate set is mainly used when a reference image is a current image, at least one historical recent motion vector prediction candidate set is mainly used when the reference image is not the current image, and different special historical recent motion vector prediction candidate sets are suitable for different occasions of inter-frame coding, so that the coding efficiency is improved.
The invention is characterized in thatCurrent image reference dedicated history recent motion vector prediction candidate setAndnon-current image reference dedicated history recent motion vector prediction candidate setIt is mainly used in the case where the reference picture is a current picture and a non-current picture, respectively.
The most basic characteristic feature of the encoding method or apparatus of the present invention is to use the current motion vector, i.e., the motion vector of the current block or sub-block, when encoding the current motion vector, at least depending on the degree of possibility of whether the reference picture is the current picture or notCurrent image reference dedicated history recent motion vector prediction candidate setOrSpecial historical recent motion for non-current image reference Motion vector prediction candidate setOrMixing bothAsCurrent history recent motion vector prediction candidateCollectionAnd selecting an optimal motion vector as a predicted motion vector or motion vector predicted value of the current motion vector in at least the current historical latest motion vector prediction candidate set according to a preset evaluation rule, such as the number of consumed bits and/or the size of coding error, and generating a compressed data code stream at least containing part or all of information representing the motion vector predicted value of the current motion vector. Fig. 1 is a schematic diagram of an encoding method or apparatus of the present invention.
The most basic characteristic technical feature of the decoding method or device of the invention is to analyze the compressed data code stream, obtain part or all of the information of the motion vector predicted value at least representing the current motion vector, and use the information according to the possible degree of whether the reference image is the current image or notCurrent image reference dedicated history recent motion vector prediction candidate setOrNon-current picture Reference-specific history-like recent motion vector prediction candidate setOrMixing bothAsCurrent historical recent motion vector prediction Candidate setAnd decoding the current motion vector prediction candidate set from at least the current historical latest motion vector according to part or all of the information of the motion vector prediction value of the current motion vector to obtain the motion vector prediction value of the current motion vector. Fig. 2 is a schematic diagram of a decoding method or apparatus of the present invention.
According to an aspect of the present invention, there is provided an encoding method or apparatus for image compression, comprising at least the steps or modules of:
in encoding a current motion vector in an encoding block, use is made of a reference picture, depending at least on how likely it is that the reference picture is or is not the current pictureCurrent image reference dedicated history recent motion vector prediction candidate setOrNon-current image Predicting candidate set with reference to dedicated history recent motion vectorOrMixing bothAsCurrent historical recent motion vector prediction Candidate setPredicting a candidate set from at least said current historical recent motion vector, according to at least a predetermined evaluation rule,
selecting a motion vector as the motion vector predictor of the current motion vector
Or
Selecting a preset number of historical recent motion vectors, putting the historical recent motion vectors into a candidate list for motion vector prediction, and selecting one motion vector from the candidate list as a motion vector prediction value of the current motion vector;
a compressed data code stream containing at least part or all of information representing a motion vector predictor of the current motion vector is generated.
According to another aspect of the present invention, there is also provided a decoding method or apparatus for image compression, comprising at least the steps or modules for performing the following functions and operations:
when decoding a current motion vector in a decoded block, the compressed data code stream is parsed to obtain some or all information representing at least the motion vector predictor of the current motion vector, which is used at least depending on the degree of likelihood of whether the reference picture is the current picture or notCurrent image reference dedicated history recent motion vector prediction candidate setOrNon-current image parameter Examination-specific historical recent motion vector prediction candidate setOrMixing bothAsRecent motion vector predictor for current history Selection setPredicting a candidate set from at least said current historical most recent motion vector, based on at least part or all of said information representative of the motion vector predictor of the current motion vector,
selecting a motion vector as the motion vector predictor of the current motion vector
Or
Selecting a preset number of historical recent motion vectors, putting the historical recent motion vectors into a candidate list for motion vector prediction, and selecting one motion vector from the candidate list as a motion vector prediction value of the current motion vector;
and then decoded to obtain the current motion vector itself.
From a first aspect, the invention provides a coding method for compressing an image, characterized in that it comprises at least the following steps:
1) in encoding a current motion vector in an encoding block, use is made of a reference picture, depending at least on how likely it is that the reference picture is or is not the current pictureCurrent image reference dedicated history recent motion vector prediction candidate setOrNon-current picture Reference-specific history-like recent motion vector prediction candidate setOrMixing bothAsCurrent historical recent motion vector prediction Candidate set;
2) Predicting a candidate set from at least the current historical recent motion vector, based on at least a predetermined evaluation rule,
selecting a motion vector as the motion vector predictor of the current motion vector
Or
Selecting a preset number of historical recent motion vectors, putting the historical recent motion vectors into a candidate list for motion vector prediction, and selecting one motion vector from the candidate list as a motion vector prediction value of the current motion vector;
3) a compressed data code stream containing at least part or all of information representing a motion vector predictor of the current motion vector is generated.
From a second aspect, the present invention provides a decoding method for compressing an image, comprising at least the following steps:
1) when decoding a current motion vector in a decoding block, analyzing a compressed data code stream to obtain partial or all information at least representing a motion vector predicted value of the current motion vector;
2) using based on at least how likely it is that the reference picture is or is not the current pictureCurrent image reference dedicated history Near motion vector prediction candidate setOrNon-current image reference dedicated history recent motion vector prediction candidate setOrBoth of them In the mixing ofAsCurrent historical recent motion vector prediction candidate set;
3) Predicting a candidate set from at least the current historical most recent motion vector, based on at least some or all of the information representing the motion vector predictor of the current motion vector,
selecting a motion vector as the motion vector predictor of the current motion vector
Or
Selecting a predetermined number of historical recent motion vectors into a candidate list for motion vector prediction and selecting a motion vector from the candidate list as the motion vector predictor of the current motion vector,
and then decoded to obtain the current motion vector itself.
From a third perspective, the present invention provides an encoding apparatus for compressing an image, characterized by comprising at least the following modules:
1) a current candidate set selection module for using a current motion vector in a coding block based on at least the likelihood of a reference picture being a current picture or not when coding a current motion vector in the coding blockCurrent picture reference dedicated history recent motion vector predictor Candidate setOrNon-current image reference dedicated history recent motion vector prediction candidate setOrMixing bothAsWhen in use Previous history recent motion vector prediction candidate set;
2) A motion vector predictor selection module that predicts a set of candidates from at least the current historical most recent motion vector, based at least on a predetermined evaluation rule,
selecting a motion vector as the motion vector predictor of the current motion vector
Or
Selecting a preset number of historical recent motion vectors, putting the historical recent motion vectors into a candidate list for motion vector prediction, and selecting one motion vector from the candidate list as a motion vector prediction value of the current motion vector;
3) and the compressed data code stream generating module generates a compressed data code stream at least containing part or all of information of the motion vector predicted value representing the current motion vector.
From a fourth perspective, the present invention provides a decoding apparatus for compressing an image, characterized by comprising at least the following modules:
1) the compressed data code stream analyzing module is used for analyzing the compressed data code stream when decoding a current motion vector in a decoding block and acquiring part or all information of a motion vector predicted value at least representing the current motion vector;
2) a current candidate set selection module for using the reference image based on at least how likely it is that the reference image is or is not the current imageWhen in use Previous image reference dedicated history recent motion vector prediction candidate setOrHistorical nearest motion vector dedicated to non-current image reference Volume prediction candidate setOrMixing bothAsCurrent historical recent motion vector prediction candidate set;
3) A motion vector predictor decoding module for predicting a candidate set from at least the current historical latest motion vector, based on at least some or all of the information of the motion vector predictor representing the current motion vector,
selecting a motion vector as the motion vector predictor of the current motion vector
Or
Selecting a predetermined number of historical recent motion vectors into a candidate list for motion vector prediction and selecting a motion vector from the candidate list as the motion vector predictor of the current motion vector,
and then decoded to obtain the current motion vector itself.
The invention is suitable for coding and decoding of lossy image compression, and the invention is also suitable for coding and decoding of lossless image compression.
In the present invention, a coding block or a decoding block is a coding region or a decoding region of an image, and includes at least one of: a full picture, a sub-picture of a picture, a slice, a slice tile, a macroblock, a largest coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a sub-coding unit SubCU, a sub-region of a prediction unit PU, a sub-prediction unit SubPU, a transform unit TU, a sub-region of a TU, a sub-transform unit SubTU.
In the present invention, the sub-blocks include one or a combination of the following cases: codec blocks, sub-regions of a codec block, square or rectangular or triangular or trapezoidal sub-blocks, micro-blocks, strings, pixel strings, sample strings, index strings, lines.
The technical features of the present invention are explained above by specific embodiments. Other advantages and effects of the present invention will be readily apparent to those skilled in the art from the disclosure herein. The invention is capable of other and different embodiments and of being practiced or of being carried out in various ways, and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present invention.
Drawings
Fig. 1 is a schematic diagram of an encoding method or apparatus of the present invention.
Fig. 2 is a schematic diagram of a decoding method or apparatus of the present invention.
Detailed Description
The following are further implementation details or variations of the present invention.
Embodiment or variation 1 (example of manner of representing possible degree of whether reference picture is current picture or not)
In the encoding method or apparatus or the decoding method or apparatus,
the motion vector at least comprises a two-dimensional vector (mv [0], mv [1 ]), which represents the difference (offset) between the two-dimensional coordinates of the current block or sub-block in the current image and the two-dimensional coordinates of the corresponding reference block or sub-block in the reference image;
the degree of likelihood of whether the reference picture is or is not the current picture is expressed using one of the following two ways:
the first method is as follows:
the motion vector comprises a reference picture index ref _ idx indicating the index of the reference picture in the reference picture queue, i.e. indicating in which frame picture the reference block or sub-block is in the reference picture queue;
the value of the reference picture index being equal to a predetermined value (typically the maximum value of the reference picture index) indicates that the reference picture is the current picture;
the value of the reference picture index not being equal to a predetermined value (typically the maximum value of the reference picture index) indicates that the reference picture is a non-current picture;
the second method comprises the following steps:
the current block or sub-block to which the motion vector belongs has a corresponding encoding mode;
when the coding mode isIntra-frame Block Copy prediction (Intra Block Copy prediction) IBC for short prediction modeWhen the reference picture is the current picture, in this case, the motion vector is also called a block vector, or blockvector, abbreviated as bv;
when the coding mode isInter prediction or inter prediction modeThe reference picture is a non-current picture.
Embodiment or variation 2 (example of candidate list for motion vector prediction)
In the encoding method or apparatus or the decoding method or apparatus,
the motion vector predictor of the current motion vector is from at least a merge candidate list, mergecandList;
the merge candidate list includes at least the following motion vectors as the motion vector predictor of the motion vector of the current block:
motion vectors of coded and decoded blocks or sub-blocks thereof adjacent to each other in a frame, also called spatial neighboring (spatial neighboring) coding, are called neighboring motion vectors in a frame
And/or
Motion vectors of previous frame neighboring, also called temporal neighboring (temporal neighboring) coded blocks or sub-blocks thereof, called previous frame neighboring motion vectors
And/or
Some or all of the motion vectors of the current historical recent motion vector prediction candidate set.
Implementation or variation 3 (two private historical recent motion vector prediction candidate sets are two subsets of a common candidate set)
In the encoding method or apparatus or the decoding method or apparatus,
the current image reference special history latest motion vector prediction candidate set and the non-current image reference special history latest motion vector prediction candidate set are respectively different subsets of the same common history latest motion vector prediction candidate set and are respectively called as a current image reference special subset and a non-current image reference special subset, and motion vectors in the common history latest motion vector prediction candidate set are respectively classified into the current image reference special subset and the non-current image reference special subset according to whether a reference image of the motion vectors is a current image;
said dedicated current picture reference subset and said dedicated non-current picture reference subset are respectively one representation of said dedicated current picture reference history most recent motion vector prediction candidate set and of said dedicated non-current picture reference history most recent motion vector prediction candidate set.
Implementation or modification example 4 (example of candidate list construction Process for motion vector prediction)
In the encoding method or apparatus or the decoding method or apparatus,
the motion vector predictor of the current motion vector is from at least a merge candidate list;
the construction process of the merging candidate list at least comprises one of the following three types of operations or a logical combination thereof:
the first kind of operation, which is applicable to the case that the reference image is always a non-current image, at least includes:
non-repeating neighboring motion vectors of the same frame are first put into the merge candidate list,
secondly putting non-repeating previous frame neighboring motion vectors into the merge candidate list,
then putting part or all of the motion vectors in the nonrepeating special-purpose history latest motion vector prediction candidate set of the non-current image into the merge candidate list;
the second kind of operation, which is applicable to the case that the reference image is always the current image, at least includes:
non-repeating neighboring motion vectors of the same frame are first put into the merge candidate list,
then putting some or all motion vectors in the non-repeated current image reference special history recent motion vector prediction candidate set into the merging candidate list;
a third type of operation, applicable to a situation where the reference picture may be the current picture or the non-current picture, includes at least:
non-repeating neighboring motion vectors of the same frame are first put into the merge candidate list,
secondly putting non-repeating previous frame neighboring motion vectors into the merge candidate list,
then, some or all of the motion vectors in the non-repeated current picture reference dedicated history latest motion vector prediction candidate set and some or all of the motion vectors in the non-current picture reference dedicated history latest motion vector prediction candidate set are interleaved into the merge candidate list.
Implementation or modification example 5 (example of candidate list construction Process for motion vector prediction)
In the encoding method or apparatus or the decoding method or apparatus,
the motion vector predictor of the current motion vector is from at least a merge candidate list;
the merging candidate list comprises candidate motion vector predicted values of MaxUMMergeCand, which are respectively represented by sequence numbers i from 0 to MaxUMMergeCand-1;
the construction process of the merging candidate list at least comprises one of the following three types of operations or a logical combination thereof:
the first kind of operation, which is applicable to the case that the reference image is always a non-current image, at least includes:
the initialization sequence number i is 0 and,
if the block or sub-block to the left adjacent to the same frame is available and valid, the motion vector of the block or sub-block to the left is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if an upper block or sub-block adjacent to the same frame is available and valid, assigning the motion vector of the upper block or sub-block to a candidate motion vector predictor with index i and adding one to index i,
if the block or sub-block adjacent to the upper right of the same frame is available and valid, assigning the motion vector of the upper right block or sub-block to the candidate motion vector predictor with index i and adding one to index i,
if the adjacent lower left block or sub-block of the same frame is available and valid, the motion vector of the lower left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the block or sub-block of the previous frame adaptation position is available and valid, the motion vector of the block or sub-block of the previous frame adaptation position is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the adjacent upper left block or sub-block of the same frame is available and valid, the motion vector of the upper left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if a previous co-located block is available and valid, assigning the motion vector of said previous co-located block to the candidate motion vector predictor with index i and adding one to index i,
repeatedly predicting the motion vector in the candidate set by using the non-current image reference special history latest motion vector, as long as the motion vector value and/or the reference image index value are not equal to the motion vector value and/or the reference image index value of the motion vector already put into the merge candidate list in the construction process of the merge candidate list, namely the motion vector value and/or the reference image index value are not repeated with the motion vector value and/or the reference image index value of the motion vector with a smaller sequence number in the merge candidate list, sequentially assigning a candidate motion vector predicted value with a sequence number i and adding the sequence number i by one, and only until the sequence number i is equal to MaxMMergeCand;
the second kind of operation, which is applicable to the case that the reference image is always the current image, at least includes:
the initialization sequence number i is 0 and,
if the block or sub-block to the left adjacent to the same frame is available and valid, the motion vector of the block or sub-block to the left is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if an upper block or sub-block adjacent to the same frame is available and valid, assigning the motion vector of the upper block or sub-block to a candidate motion vector predictor with index i and adding one to index i,
if the block or sub-block adjacent to the upper right of the same frame is available and valid, assigning the motion vector of the upper right block or sub-block to the candidate motion vector predictor with index i and adding one to index i,
if the adjacent lower left block or sub-block of the same frame is available and valid, the motion vector of the lower left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the adjacent upper left block or sub-block of the same frame is available and valid, the motion vector of the upper left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
repeatedly predicting the motion vector in the candidate set by using the current image reference dedicated history latest motion vector as long as the motion vector value and/or the reference image index value thereof is not equal to the motion vector value and/or the reference image index value of the motion vector already put into the merge candidate list in the construction process of the merge candidate list, namely the motion vector value and/or the reference image index value are not repeated with the motion vector value and/or the reference image index value of the motion vector with the smaller sequence number in the merge candidate list, sequentially assigning the candidate motion vector predicted value with the sequence number i and adding the sequence number i by one until the sequence number i is equal to MaxMMergeCand.
A third type of operation, applicable to a situation where the reference picture may be the current picture or the non-current picture, includes at least:
the initialization sequence number i is 0 and,
if the block or sub-block to the left adjacent to the same frame is available and valid, the motion vector of the block or sub-block to the left is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if an upper block or sub-block adjacent to the same frame is available and valid, assigning the motion vector of the upper block or sub-block to a candidate motion vector predictor with index i and adding one to index i,
if the block or sub-block adjacent to the upper right of the same frame is available and valid, assigning the motion vector of the upper right block or sub-block to the candidate motion vector predictor with index i and adding one to index i,
if the adjacent lower left block or sub-block of the same frame is available and valid, the motion vector of the lower left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the block or sub-block of the previous frame adaptation position is available and valid, the motion vector of the block or sub-block of the previous frame adaptation position is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the adjacent upper left block or sub-block of the same frame is available and valid, the motion vector of the upper left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if a previous co-located block is available and valid, assigning the motion vector of said previous co-located block to the candidate motion vector predictor with index i and adding one to index i,
repeatedly assigning the motion vector in the non-current picture reference dedicated history latest motion vector prediction candidate set and the motion vector in the current picture reference dedicated history latest motion vector prediction candidate set in an interlaced manner to a candidate motion vector predictor with index i in order and adding one to index i only until index i equals to maxnumMergeCand as long as its motion vector value and/or reference picture index value is not equal to the motion vector value and/or reference picture index value of the motion vector already put into the merge candidate list in the construction process of the merge candidate list, i.e. is not repeated with the motion vector value and/or reference picture index value of the motion vector with smaller index in the merge candidate list.
EXAMPLE or VARIATION EXAMPLE 6 (examples of definition of "useful" and of "effective")
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 5, "useful" is defined as that the block or sub-block exists, at least part of the encoding/decoding operation is completed, and the block or sub-block is in the same stripe as the current block on the occasion of being adjacent to the same frame, and "effective" is defined as one or a combination of the following cases:
1) with the motion vector(s) being present,
2) having a motion vector and having a motion vector value and/or reference picture index value that is not equal to the motion vector value and/or reference picture index value of a motion vector that has been put into the merge candidate list during construction of the merge candidate list, i.e. that is not repeated with the motion vector value and/or reference picture index value of a motion vector of smaller ordinal number within the merge candidate list,
3) -employing a coding mode with at least one motion vector comprising: an inter prediction mode, an inter prediction mode allowing use of the current image as a reference image, an intra block matching mode, an intra block prediction mode, a string matching mode, a string prediction mode, a micro block matching mode, a micro block prediction mode, a line matching mode, a line prediction mode,
3) having the characteristics of a predetermined number of components,
4) the predetermined condition is satisfied and the data is transmitted,
5) with a motion vector of a predetermined type,
6) with motion vectors whose values fall within a predetermined range of values,
7) with motion vectors whose values fall outside a predetermined range of values.
Implementation or variation example 7 (example of a dedicated historical recent motion vector prediction candidate set)
In the encoding method or apparatus or the decoding method or apparatus,
the motion vector at least comprises a two-dimensional vector (mv [0], mv [1 ]), which represents the difference (offset) between the two-dimensional coordinates of the current block or sub-block in the current image and the two-dimensional coordinates of the corresponding reference block or sub-block in the reference image;
the current block or sub-block to which the motion vector belongs has a corresponding encoding mode;
when the coding mode isIntra-frame Block Copy prediction (Intra Block Copy prediction) IBC for short prediction modeWhen the reference picture is the current picture, in this case, the motion vector is also called a block vector, or blockvector, abbreviated as bv;
when the coding mode isInter prediction or inter prediction modeWhen the reference image is a non-current image;
the above-mentionedCurrent picture reference dedicated history recent motion vector prediction candidate set HmvpIBCandList={HmvpIbcCandList[i], 0 ≤ i ≤ I1-1 } is a block vector that has completed at least part of the coding and decoding operations and further satisfies a first type of selection condition among block vectors of at least the coding and decoding blocks or sub-blocks that comply with at least a first type of predetermined rule, wherein I1Is thatHmvpIbcCandListNumber of block vectors stored in, I1Less than or equal to a predetermined first maximum value;
the above-mentionedNon-current picture reference dedicated history recent motion vector prediction candidate set hmvpandlist={HmvpCandList[i], 0 ≤ i ≤I2-1 } is a motion vector that has completed at least part of the coding operation and further satisfies a second type of selection condition among the motion vectors of at least the coded block or sub-block that complies with a second type of predetermined rule, wherein I2Is thatHmvpCandListNumber of motion vectors stored in, I2Less than or equal to a predetermined second maximum value.
Embodiment or variation 8 (examples of predetermined rules and selection conditions)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 7,
the first class of predetermined rules comprises at least that the coding mode of the coding/decoding block or sub-block that has completed at least part of the coding/decoding operation isIntra block copy prediction modeWhat is, what isThe first type of selection condition comprises that at least the reference block or sub-block represented by the motion vector concerned is within a predetermined reference range;
the second type of predetermined rule at least comprises that the coding mode of the coding and decoding block or sub-block which has completed at least part of the coding and decoding operation isInter prediction modeThe second type of selection condition comprises at least that the reference block or sub-block represented by the motion vector concerned is within a predetermined reference range.
EXAMPLES OR VARIATIONS 9 (examples of predetermined maximum values)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 7,
said first maximum value is an integer between 4 and 12;
the second maximum value is an integer between 4 and 12.
Implementation or modification example 10 (example of candidate list for motion vector prediction)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 7,
when the reference picture is the current picture, at least from the pictureHmvpIbcCandListIn a predetermined manner, selecting a predetermined number K1Individual HmvpIBCandList [ i]Putting a block vector candidate list for block vector predictionbvCandList={bvCandList[j], 0 ≤ j ≤ J1-1 } and from saidbvCandListSelects a block vector bvCandList [ mvIdx]A block vector predictor as said current block vector, wherein J1Is thatbvCandListNumber of motion vectors stored in, J1Less than or equal to a predetermined maximum value (typically an integer between 4 and 16), mvIdx satisfies 0 ≦ mvIdx ≦ J1-1;
When the reference picture is a non-current picture, at least from the current pictureHmvpCandListIn a predetermined manner, selecting a predetermined number K2HmvpCandList [ i]Put into a merge candidate list for motion vector predictionmergeCandList={mergeCandList[j], 0 ≤ j ≤ J2-1 } and from saidmergeCandListIn selectionOne motion vector mergeCandList [ merge _ idx]A motion vector predictor as said current motion vector, wherein J2Is thatmergeCandListNumber of motion vectors stored in, J2Less than or equal to a predetermined maximum value (typically an integer between 4 and 16), merge _ idx satisfies 0 ≦ merge _ idx ≦ J2-1。
Implementation or modification example 11 (example of candidate list for motion vector prediction)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 10,
the mvIdx is present in or derived from at least part or all of the information representing the motion vector predictor of the current motion vector;
the merge _ idx is present in or derived from at least part or all of the information representing the motion vector predictor of the current motion vector.
Implementation or modification example 12 (example of composition of elements of the exclusive past recent motion vector prediction candidate set)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 7,
the above-mentionedHmvpIbcCandListThe composition of the elements of (a) includes at least a horizontal component and a vertical component of the block vector;
the above-mentionedHmvpCandListComprises at least a horizontal component and a vertical component of one or two motion vectors, a reference index indicating which frame of the reference picture is in the reference picture queue, and at most one bi-directionally predicted CU hierarchical weight.
Implementation or variation example 13 (example of construction and update of a specific historical recent motion vector prediction candidate set)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 7,
the above-mentionedHmvpIbcCandListAnd/orHmvpCandListIs reset to the empty set at the time of starting the codec of one frame image.
EXAMPLE 14 EXPERIMENTAL OR VARIABLE EXAMPLE 14 (example of constructing and updating a dedicated historical recent motion vector prediction candidate set)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 7,
the above-mentionedHmvpIbcCandListAnd/orHmvpCandListReset to the empty set at the moment of starting the codec of one slice.
Implementation or variation example 15 (example of construction and update of a specific historical recent motion vector prediction candidate set)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 7,
updating according to a first predetermined scheme when a new motion vector is obtained for a reference picture as a current picture in encoding and decodingHmvpIbcCandList;
Updating according to a second predetermined scheme when a new motion vector is obtained in the encoding/decoding, the reference picture being a non-current pictureHmvpCandList。
Implementation or variation example 16 (example of construction and update of a specific historical recent motion vector prediction candidate set)
In the encoding method or apparatus or the decoding method or apparatus according to embodiment or variation 15,
the first predetermined scheme includes at least 1) theHmvpIbcCandListIs a first-in-first-out buffer, i.e., FIFObuffer, 2) deletes the dataHmvpIbcCandListInterpolating motion vectors equivalent to said new motion vector and advancing immediately subsequent motion vectors by one position, 3) when said new motion vector is interpolated from said first motion vector and said second motion vectorHmvpIbcCandListWhen the space in the space is full, moving out the motion vector which is put in first according to the rule of first-in first-out, moving the rest motion vectors forward by a position and moving the rest motion vectors into the new motion vector;
the second predetermined scheme includes at least 1) theHmvpCandListIs a first-in-first-out buffer, i.e., FIFObuffer, 2) deletes the dataHmvpCandListIncluding a motion vector identical to the new motion vector and preceding the immediately following motion vectorMove to a position 3) when saidHmvpCandListWhen the space in the space is full, the motion vector which is put in first is moved out according to the rule of first-in first-out, and the rest motion vectors are moved forward by one position and moved into the new motion vector.
Claims (10)
1. An encoding method for image compression, characterized by comprising at least the following steps:
1) in encoding a current motion vector in an encoding block, use is made of a reference picture, depending at least on how likely it is that the reference picture is or is not the current pictureCurrent image reference dedicated history recent motion vector prediction candidate setOrNon-current picture Reference-specific history-like recent motion vector prediction candidate setOrMixing bothAsCurrent historical recent motion vector prediction Candidate set;
2) Selecting an optimal motion vector as a motion vector predicted value of the current motion vector in at least the current historical recent motion vector prediction candidate set according to a preset evaluation rule;
3) a compressed data code stream containing at least information indicative of a motion vector predictor of the current motion vector is generated.
2. A method for decoding image compression, comprising at least the steps of:
1) when decoding a current motion vector in a decoding block, analyzing a compressed data code stream to obtain information at least representing a motion vector predicted value of the current motion vector;
2) using based on at least how likely it is that the reference picture is or is not the current pictureCurrent image reference dedicated history Near motion vector prediction candidate setOrNon-current image reference dedicated history recent motion vector prediction candidate setOrBoth of them In the mixing ofAsCurrent historical recent motion vector prediction candidate set;
3) And in at least the current historical latest motion vector prediction candidate set, decoding to obtain a motion vector prediction value of the current motion vector and further decoding to obtain the current motion vector according to at least the information of the motion vector prediction value of the current motion vector.
3. An encoding apparatus for image compression, characterized by comprising at least the following modules:
1) a current candidate set selection module for using a current motion vector in a coding block based on at least the likelihood of a reference picture being a current picture or not when coding a current motion vector in the coding blockCurrent picture reference dedicated history recent motion vector predictor Candidate setOrNon-current image reference dedicated history recent motion vector prediction candidate setOrMixing bothAsWhen in use Previous history recent motion vector prediction candidate set;
2) The optimal motion vector predicted value selection module is used for selecting an optimal motion vector as the motion vector predicted value of the current motion vector in at least the current historical recent motion vector prediction candidate set according to a preset evaluation rule;
3) and the compressed data code stream generating module generates a compressed data code stream at least containing information representing the motion vector predicted value of the current motion vector.
4. A decoding device for image compression, characterized by comprising at least the following modules:
1) the compressed data code stream analyzing module is used for analyzing the compressed data code stream when decoding a current motion vector in a decoding block and acquiring information at least representing a motion vector predicted value of the current motion vector;
2) a current candidate set selection module for using the reference image based on at least how likely it is that the reference image is or is not the current imageWhen in use Previous image reference dedicated history recent motion vector prediction candidate setOrHistorical nearest motion vector dedicated to non-current image reference Volume prediction candidate setOrMixing bothAsCurrent historical recent motion vector prediction candidate set;
3) And the motion vector predicted value decoding module is used for decoding to obtain the motion vector predicted value of the current motion vector and further decoding to obtain the current motion vector in at least the current historical latest motion vector prediction candidate set according to the information of the motion vector predicted value of the current motion vector.
5. The encoding method or apparatus according to claim 1 or 3 or the decoding method or apparatus according to claim 2 or 4, wherein the encoded or decoded block is an encoded region or a decoded region of a picture, and comprises at least one of: a full picture, a sub-picture of a picture, a slice, a slice tile, a macroblock, a largest coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a sub-coding unit SubCU, a sub-region of a prediction unit PU, a sub-prediction unit SubPU, a transform unit TU, a sub-region of a TU, a sub-transform unit SubTU.
6. The encoding method or apparatus according to claim 1 or 3 or the decoding method or apparatus according to claim 2 or 4, characterized in that:
the motion vector is a two-dimensional vector (mv [0], mv [1 ]), which represents the difference (offset) between the two-dimensional coordinates of the current block or sub-block in the current image and the two-dimensional coordinates of the corresponding reference block or sub-block in the reference image;
the motion vector has a corresponding reference picture index ref _ idx, which indicates the index of the reference picture in the reference picture queue, i.e. which frame of picture the reference block or sub-block is in the reference picture queue;
the value of the reference picture index being equal to a predetermined value (typically the maximum value of the reference picture index) indicates that the reference picture is the current picture;
the value of the reference picture index not being equal to a predetermined value (typically the maximum value of the reference picture index) indicates that the reference picture is a non-current picture.
7. The encoding method or apparatus according to claim 1 or 3 or the decoding method or apparatus according to claim 2 or 4, characterized in that:
the motion vector predictor of the current motion vector is from at least a merge candidate list, mergecandList;
the merge candidate list includes at least the following motion vectors as the motion vector predictor of the motion vector of the current block:
motion vectors of coded and decoded blocks or sub-blocks thereof adjacent to each other in a frame, also called spatial neighboring (spatial neighboring) coding, are called neighboring motion vectors in a frame
And/or
Motion vectors of previous frame neighboring, also called temporal neighboring (temporal neighboring) coded blocks or sub-blocks thereof, called previous frame neighboring motion vectors
And/or
Some or all of the motion vectors of the current historical recent motion vector prediction candidate set.
8. The encoding method or apparatus according to claim 1 or 3 or the decoding method or apparatus according to claim 2 or 4, characterized in that:
the current image reference special history latest motion vector prediction candidate set and the non-current image reference special history latest motion vector prediction candidate set are respectively different subsets of the same common history latest motion vector prediction candidate set and are respectively called as a current image reference special subset and a non-current image reference special subset, and motion vectors in the common history latest motion vector prediction candidate set are respectively classified into the current image reference special subset and the non-current image reference special subset according to whether a reference image of the motion vectors is a current image;
said dedicated current picture reference subset and said dedicated non-current picture reference subset are respectively one representation of said dedicated current picture reference history most recent motion vector prediction candidate set and of said dedicated non-current picture reference history most recent motion vector prediction candidate set.
9. The encoding method or apparatus according to claim 1 or 3 or the decoding method or apparatus according to claim 2 or 4, characterized in that:
the motion vector predictor of the current motion vector is from at least a merge candidate list;
the construction process of the merging candidate list at least comprises one of the following three types of operations or a logical combination thereof:
the first kind of operation, which is applicable to the case that the reference image is always a non-current image, at least includes:
non-repeating neighboring motion vectors of the same frame are first put into the merge candidate list,
secondly putting non-repeating previous frame neighboring motion vectors into the merge candidate list,
then putting part or all of the motion vectors in the nonrepeating special-purpose history latest motion vector prediction candidate set of the non-current image into the merge candidate list;
the second kind of operation, which is applicable to the case that the reference image is always the current image, at least includes:
non-repeating neighboring motion vectors of the same frame are first put into the merge candidate list,
then putting some or all motion vectors in the non-repeated current image reference special history recent motion vector prediction candidate set into the merging candidate list;
a third type of operation, applicable to a situation where the reference picture may be the current picture or the non-current picture, includes at least:
non-repeating neighboring motion vectors of the same frame are first put into the merge candidate list,
secondly putting non-repeating previous frame neighboring motion vectors into the merge candidate list,
then, some or all of the motion vectors in the non-repeated current picture reference dedicated history latest motion vector prediction candidate set and some or all of the motion vectors in the non-current picture reference dedicated history latest motion vector prediction candidate set are interleaved into the merge candidate list.
10. The encoding method or apparatus according to claim 1 or 3 or the decoding method or apparatus according to claim 2 or 4, characterized in that:
the motion vector predictor of the current motion vector is from at least a merge candidate list;
the merging candidate list comprises candidate motion vector predicted values of MaxUMMergeCand, which are respectively represented by sequence numbers i from 0 to MaxUMMergeCand-1;
the construction process of the merging candidate list at least comprises one of the following three types of operations or a logical combination thereof:
the first kind of operation, which is applicable to the case that the reference image is always a non-current image, at least includes:
the initialization sequence number i is 0 and,
if the block or sub-block to the left adjacent to the same frame is available and valid, the motion vector of the block or sub-block to the left is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if an upper block or sub-block adjacent to the same frame is available and valid, assigning the motion vector of the upper block or sub-block to a candidate motion vector predictor with index i and adding one to index i,
if the block or sub-block adjacent to the upper right of the same frame is available and valid, assigning the motion vector of the upper right block or sub-block to the candidate motion vector predictor with index i and adding one to index i,
if the adjacent lower left block or sub-block of the same frame is available and valid, the motion vector of the lower left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the block or sub-block of the previous frame adaptation position is available and valid, the motion vector of the block or sub-block of the previous frame adaptation position is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the adjacent upper left block or sub-block of the same frame is available and valid, the motion vector of the upper left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if a previous co-located block is available and valid, assigning the motion vector of said previous co-located block to the candidate motion vector predictor with index i and adding one to index i,
repeatedly predicting the motion vector in the candidate set by using the non-current image reference special history latest motion vector, as long as the motion vector value and/or the reference image index value are not equal to the motion vector value and/or the reference image index value of the motion vector already put into the merge candidate list in the construction process of the merge candidate list, namely the motion vector value and/or the reference image index value are not repeated with the motion vector value and/or the reference image index value of the motion vector with a smaller sequence number in the merge candidate list, sequentially assigning a candidate motion vector predicted value with a sequence number i and adding the sequence number i by one, and only until the sequence number i is equal to MaxMMergeCand;
the second kind of operation, which is applicable to the case that the reference image is always the current image, at least includes:
the initialization sequence number i is 0 and,
if the block or sub-block to the left adjacent to the same frame is available and valid, the motion vector of the block or sub-block to the left is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if an upper block or sub-block adjacent to the same frame is available and valid, assigning the motion vector of the upper block or sub-block to a candidate motion vector predictor with index i and adding one to index i,
if the block or sub-block adjacent to the upper right of the same frame is available and valid, assigning the motion vector of the upper right block or sub-block to the candidate motion vector predictor with index i and adding one to index i,
if the adjacent lower left block or sub-block of the same frame is available and valid, the motion vector of the lower left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the adjacent upper left block or sub-block of the same frame is available and valid, the motion vector of the upper left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
repeatedly predicting the motion vector in the candidate set by using the current image reference dedicated history latest motion vector as long as the motion vector value and/or the reference image index value of the motion vector is not equal to the motion vector value and/or the reference image index value of the motion vector already put into the merge candidate list in the construction process of the merge candidate list, namely the motion vector value and/or the reference image index value of the motion vector with a smaller sequence number in the merge candidate list are not repeated, sequentially assigning a candidate motion vector predicted value with a sequence number i and adding a sequence number i by one until the sequence number i is equal to MaxMMergeCand;
a third type of operation, applicable to a situation where the reference picture may be the current picture or the non-current picture, includes at least:
the initialization sequence number i is 0 and,
if the block or sub-block to the left adjacent to the same frame is available and valid, the motion vector of the block or sub-block to the left is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if an upper block or sub-block adjacent to the same frame is available and valid, assigning the motion vector of the upper block or sub-block to a candidate motion vector predictor with index i and adding one to index i,
if the block or sub-block adjacent to the upper right of the same frame is available and valid, assigning the motion vector of the upper right block or sub-block to the candidate motion vector predictor with index i and adding one to index i,
if the adjacent lower left block or sub-block of the same frame is available and valid, the motion vector of the lower left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the block or sub-block of the previous frame adaptation position is available and valid, the motion vector of the block or sub-block of the previous frame adaptation position is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if the adjacent upper left block or sub-block of the same frame is available and valid, the motion vector of the upper left block or sub-block is assigned to the candidate motion vector predictor with index i and index i is incremented by one,
if a previous co-located block is available and valid, assigning the motion vector of said previous co-located block to the candidate motion vector predictor with index i and adding one to index i,
repeatedly assigning the motion vector in the non-current picture reference dedicated history latest motion vector prediction candidate set and the motion vector in the current picture reference dedicated history latest motion vector prediction candidate set in an interlaced manner to a candidate motion vector predictor with index i in order and adding one to index i only until index i equals to maxnumMergeCand as long as its motion vector value and/or reference picture index value is not equal to the motion vector value and/or reference picture index value of the motion vector already put into the merge candidate list in the construction process of the merge candidate list, i.e. is not repeated with the motion vector value and/or reference picture index value of the motion vector with smaller index in the merge candidate list.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211585709.3A CN116193127A (en) | 2018-09-22 | 2019-09-23 | Image compression method and device for special historical nearest motion vector prediction candidate set |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811110820 | 2018-09-22 | ||
CN2018111108200 | 2018-09-22 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211585709.3A Division CN116193127A (en) | 2018-09-22 | 2019-09-23 | Image compression method and device for special historical nearest motion vector prediction candidate set |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110944190A true CN110944190A (en) | 2020-03-31 |
CN110944190B CN110944190B (en) | 2023-01-10 |
Family
ID=69905741
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910901050.XA Active CN110944190B (en) | 2018-09-22 | 2019-09-23 | Encoding method and device, decoding method and device for image compression |
CN202211585709.3A Pending CN116193127A (en) | 2018-09-22 | 2019-09-23 | Image compression method and device for special historical nearest motion vector prediction candidate set |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211585709.3A Pending CN116193127A (en) | 2018-09-22 | 2019-09-23 | Image compression method and device for special historical nearest motion vector prediction candidate set |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN110944190B (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112055219A (en) * | 2020-08-05 | 2020-12-08 | 浙江大华技术股份有限公司 | String matching prediction method and device and computer readable storage medium |
CN112532974A (en) * | 2020-11-24 | 2021-03-19 | 浙江大华技术股份有限公司 | Encoding method, apparatus and storage medium for string encoding technique |
CN112995661A (en) * | 2021-04-14 | 2021-06-18 | 浙江华创视讯科技有限公司 | Image encoding method and apparatus, electronic device, and storage medium |
WO2021232979A1 (en) * | 2020-05-22 | 2021-11-25 | 腾讯科技(深圳)有限公司 | Displacement vector prediction method in video coding and decoding, apparatus, and device |
CN113992635A (en) * | 2021-10-20 | 2022-01-28 | 腾讯科技(深圳)有限公司 | Multimedia data processing method, device, equipment and storage medium |
CN114071158A (en) * | 2020-07-29 | 2022-02-18 | 腾讯科技(深圳)有限公司 | Motion information list construction method, device and equipment in video coding and decoding |
CN114450957A (en) * | 2020-04-01 | 2022-05-06 | 腾讯美国有限责任公司 | Method and apparatus for video encoding |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122320A (en) * | 1997-03-14 | 2000-09-19 | Cselt-Centro Studi E Laboratori Telecomunicazioni S.P.A. | Circuit for motion estimation in digitized video sequence encoders |
US10362330B1 (en) * | 2018-07-30 | 2019-07-23 | Tencent America LLC | Combining history-based motion vector prediction and non-adjacent merge prediction |
GB201909056D0 (en) * | 2019-06-24 | 2019-08-07 | Canon Kk | Video coding and decoding |
CN110213590A (en) * | 2019-06-25 | 2019-09-06 | 浙江大华技术股份有限公司 | Time-domain motion vector acquisition, inter-prediction, Video coding method and apparatus |
-
2019
- 2019-09-23 CN CN201910901050.XA patent/CN110944190B/en active Active
- 2019-09-23 CN CN202211585709.3A patent/CN116193127A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6122320A (en) * | 1997-03-14 | 2000-09-19 | Cselt-Centro Studi E Laboratori Telecomunicazioni S.P.A. | Circuit for motion estimation in digitized video sequence encoders |
US10362330B1 (en) * | 2018-07-30 | 2019-07-23 | Tencent America LLC | Combining history-based motion vector prediction and non-adjacent merge prediction |
GB201909056D0 (en) * | 2019-06-24 | 2019-08-07 | Canon Kk | Video coding and decoding |
CN110213590A (en) * | 2019-06-25 | 2019-09-06 | 浙江大华技术股份有限公司 | Time-domain motion vector acquisition, inter-prediction, Video coding method and apparatus |
Non-Patent Citations (2)
Title |
---|
JUNGHAK NAM 等: "CE8-1.1: Block vector prediction for IBC", 《JOINT VIDEO EXPERTS TEAM (JVET) 》 * |
LI ZHANG等: "CE4: History-based Motion Vector Prediction (Test 4.4.7)", 《JOINT VIDEO EXPERTS TEAM (JVET) 》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114450957A (en) * | 2020-04-01 | 2022-05-06 | 腾讯美国有限责任公司 | Method and apparatus for video encoding |
CN114450957B (en) * | 2020-04-01 | 2024-06-14 | 腾讯美国有限责任公司 | Method, apparatus and computer device for video decoding |
WO2021232979A1 (en) * | 2020-05-22 | 2021-11-25 | 腾讯科技(深圳)有限公司 | Displacement vector prediction method in video coding and decoding, apparatus, and device |
EP4030761A4 (en) * | 2020-05-22 | 2023-04-26 | Tencent Technology (Shenzhen) Company Limited | Displacement vector prediction method in video coding and decoding, apparatus, and device |
CN114071158A (en) * | 2020-07-29 | 2022-02-18 | 腾讯科技(深圳)有限公司 | Motion information list construction method, device and equipment in video coding and decoding |
CN112055219A (en) * | 2020-08-05 | 2020-12-08 | 浙江大华技术股份有限公司 | String matching prediction method and device and computer readable storage medium |
CN112055219B (en) * | 2020-08-05 | 2021-08-31 | 浙江大华技术股份有限公司 | String matching prediction method and device and computer readable storage medium |
CN112532974A (en) * | 2020-11-24 | 2021-03-19 | 浙江大华技术股份有限公司 | Encoding method, apparatus and storage medium for string encoding technique |
CN112995661A (en) * | 2021-04-14 | 2021-06-18 | 浙江华创视讯科技有限公司 | Image encoding method and apparatus, electronic device, and storage medium |
CN112995661B (en) * | 2021-04-14 | 2021-08-03 | 浙江华创视讯科技有限公司 | Image encoding method and apparatus, electronic device, and storage medium |
CN113992635A (en) * | 2021-10-20 | 2022-01-28 | 腾讯科技(深圳)有限公司 | Multimedia data processing method, device, equipment and storage medium |
CN113992635B (en) * | 2021-10-20 | 2022-09-20 | 腾讯科技(深圳)有限公司 | Multimedia data processing method, device, equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN116193127A (en) | 2023-05-30 |
CN110944190B (en) | 2023-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11743487B2 (en) | Method, device, and computer program for optimizing transmission of motion vector related information when transmitting a video stream from an encoder to a decoder | |
JP6728249B2 (en) | Image coding supporting block division and block integration | |
US20220321875A1 (en) | Method and device for encoding and decoding intra-frame prediction | |
CN110944190B (en) | Encoding method and device, decoding method and device for image compression | |
CN113261290B (en) | Motion prediction based on modification history | |
JP5289440B2 (en) | Image encoding device, image decoding device, image encoding method, and image decoding method | |
KR102109803B1 (en) | Method for storing motion information and method for inducing temporal motion vector predictor using same | |
CN110809887A (en) | Motion vector modification for multi-reference prediction | |
AU2015206771A1 (en) | Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning | |
GB2531086A (en) | Method and apparatus for vector encoding in video coding and decoding | |
EP2699001A1 (en) | A method and a system for video signal encoding and decoding with motion estimation | |
CN109565595B (en) | Video coding device and method using partition-based video coding block partitioning | |
CN110944178B (en) | Data compression encoding method and device, and data compression decoding method and device | |
JP2018107580A (en) | Moving image encoder, moving image encoding method, moving image encoding computer program, moving image decoder, moving image decoding method and moving image decoding computer program | |
CN114710668B (en) | Decoding method, device and medium for coordinating raster scanning block group and rectangular block group | |
JP2019022120A (en) | Moving picture coding apparatus, moving picture coding method, moving picture coding computer program, moving picture decoding apparatus, moving picture decoding method, and moving picture decoding computer program | |
JP2016046641A (en) | Image coding device, image decoding device, image coding method and image decoding method | |
KR101477545B1 (en) | Method for decoding motion vector | |
CN113196767B (en) | Method, device and medium for coordinating raster scanning block group and rectangular block group | |
KR20220115971A (en) | Image encoding/decoding method, apparatus, and method of transmitting a bitstream for performing prediction based on the reset prediction mode type of a leaf node | |
KR101454664B1 (en) | Method for decoding motion vector | |
JP2014135552A (en) | Dynamic image encoder, dynamic image decoder, dynamic image encoding method, and dynamic image decoding method | |
JP2013009164A (en) | Moving image coding device, moving image decoding device, moving image coding method, and moving image decoding method | |
JP2016005236A (en) | Image encoder, image decoder, image encoding method and image decoding method | |
GB2495501A (en) | Image decoding method based on information predictor index |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |