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 PDF

Info

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
Application number
CN201910901050.XA
Other languages
Chinese (zh)
Other versions
CN110944190B (en
Inventor
林涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tongji University
Original Assignee
Tongji University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tongji University filed Critical Tongji University
Priority to CN202211585709.3A priority Critical patent/CN116193127A/en
Publication of CN110944190A publication Critical patent/CN110944190A/en
Application granted granted Critical
Publication of CN110944190B publication Critical patent/CN110944190B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing 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

Image compression method and device for special historical recent motion vector prediction candidate set
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.
CN201910901050.XA 2018-09-22 2019-09-23 Encoding method and device, decoding method and device for image compression Active CN110944190B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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