CN110662072A - Motion information candidate list construction method and device and readable storage medium - Google Patents

Motion information candidate list construction method and device and readable storage medium Download PDF

Info

Publication number
CN110662072A
CN110662072A CN201810714334.3A CN201810714334A CN110662072A CN 110662072 A CN110662072 A CN 110662072A CN 201810714334 A CN201810714334 A CN 201810714334A CN 110662072 A CN110662072 A CN 110662072A
Authority
CN
China
Prior art keywords
block
spatial candidate
motion information
spatial
current data
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
CN201810714334.3A
Other languages
Chinese (zh)
Other versions
CN110662072B (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.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
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 Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201911129453.3A priority Critical patent/CN110933414B/en
Priority to CN201810714334.3A priority patent/CN110662072B/en
Publication of CN110662072A publication Critical patent/CN110662072A/en
Application granted granted Critical
Publication of CN110662072B publication Critical patent/CN110662072B/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Abstract

The application provides a motion information candidate list construction method, a motion information candidate list construction device and a readable storage medium, wherein the method comprises the following steps: determining the correlation degree of each spatial candidate block of the current data block and the current data block; determining candidate motion information according to the correlation; and constructing a motion information candidate list corresponding to the current data block according to the candidate motion information. The method can improve the flexibility and efficiency of constructing the motion information candidate list and improve the video coding performance.

Description

Motion information candidate list construction method and device and readable storage medium
Technical Field
The present application relates to video coding technologies, and in particular, to a method and an apparatus for constructing a motion candidate list, and a readable storage medium.
Background
Inter-frame prediction refers to using the correlation of the video time domain to predict the pixels of the current image by using the pixels of the adjacent coded images, so as to achieve the purpose of effectively removing the video time domain redundancy.
Currently, the inter-frame prediction part of the main video coding standard adopts a block-based Motion compensation technique, and the main principle is to find a best matching block in a previously coded image for each pixel block of a current image, which is called Motion Estimation (ME). The image used for Prediction is called a Reference image (Reference Frame), the displacement of a Reference block to a current pixel block is called a Motion Vector (MV), and the difference between the current pixel block and the Reference block is called a Prediction Residual (Prediction Residual).
Because the motion information of the adjacent blocks in the spatial domain has a strong correlation degree, and meanwhile, the motion information also has a certain correlation degree in the time domain, if the motion information of the current block is predicted by using the motion information of the adjacent blocks in the spatial domain or the time domain to obtain a predicted pixel value, only the residual needs to be coded, and the coding bit number of the motion information can be greatly saved. The same motion information candidate list is constructed by the encoding and decoding end, the motion information does not need to be directly encoded, and the motion information can be expressed only by encoding the sequence number (such as Merge _ idx) in the candidate list finally selected and selected, so that the encoding bit number is greatly reduced.
In order to utilize the spatial correlation and the temporal correlation of neighboring blocks, the current video coding standard proposes a Merge technique (Merge), an Advanced Motion Vector Prediction (AMVP) and an Affine (affinity) technique in the prediction of Motion information. The method uses the thought of spatial domain and temporal domain motion information prediction, and selects an optimal candidate from a list as the prediction information of a current unit according to a preset rule by establishing a motion information candidate list.
However, it is found in practice that in the current motion information prediction scheme in the video coding standard, the order of constructing the motion information candidate list in each mode is fixed when constructing the motion information candidate list.
Disclosure of Invention
In view of the above, the present application provides a method and an apparatus for constructing a motion information candidate list, and a readable storage medium.
Specifically, the method is realized through the following technical scheme:
according to a first aspect of embodiments of the present application, there is provided a motion information candidate list construction method, including:
determining the correlation degree of each spatial candidate block of the current data block and the current data block;
determining candidate motion information according to the correlation;
and constructing a motion candidate list corresponding to the current data block according to the candidate motion information.
According to a second aspect of the embodiments of the present application, there is provided a motion candidate list construction apparatus, including a processor, a communication interface, a memory and a communication bus, where the processor, the communication interface, and the memory complete communication with each other through the communication bus;
a memory for storing a computer program;
and the processor is used for realizing the motion candidate list construction method when executing the program stored in the memory.
According to a third aspect of embodiments of the present application, there is provided a computer-readable storage medium having stored therein a computer program which, when executed by a processor, implements the above-described motion information candidate list construction method.
According to the motion information candidate list construction method, when motion information prediction is carried out, candidate motion information is determined according to the correlation degree of each spatial candidate block of the current data block and the current data block, the motion information candidate list corresponding to the current data block is constructed according to the determined candidate motion information, the flexibility and the efficiency of constructing the motion information candidate list are improved, and the video coding performance is improved.
Drawings
FIGS. 1A-1B are schematic diagrams of block partitions shown in exemplary embodiments of the present application;
fig. 2 is a flowchart illustrating a method for constructing a motion information candidate list according to an exemplary embodiment of the present application;
FIG. 3 is a diagram illustrating a location relationship of each spatial candidate block to a current data block according to an exemplary embodiment of the present application;
FIGS. 4A-4H are diagrams illustrating the checking order of spatial candidate blocks in merge mode according to an exemplary embodiment of the present application;
FIGS. 4I-4K are diagrams illustrating the checking order of spatial candidate blocks in AMVP mode according to an exemplary embodiment of the present application;
FIGS. 4L-4Q are schematic diagrams illustrating the checking order of each spatial candidate block in Affinine Merge mode according to the exemplary embodiment of the present application;
FIGS. 4R-4S are diagrams illustrating a determination of an order of checking spatial candidate blocks based on clustering according to an exemplary embodiment of the present application;
FIGS. 4T-4U are diagrams illustrating the determination of the checking order of spatial candidate blocks based on a template according to an exemplary embodiment of the present application;
fig. 5 is a schematic diagram illustrating a hardware structure of a motion information candidate list construction apparatus according to an exemplary embodiment of the present application;
fig. 6 is a schematic structural diagram of a motion information candidate list construction apparatus according to an exemplary embodiment of the present application;
fig. 7 is a schematic structural diagram of a motion information candidate list construction apparatus according to still another exemplary embodiment of the present application.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in this application and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
In order to make those skilled in the art better understand the technical solution provided by the embodiments of the present application, a brief description of the block partitioning technique in the existing video coding standard is provided below.
In HEVC, one CTU (Coding Tree Unit) is recursively divided into CUs (Coding units) using a quadtree. It is determined at the leaf node CU level whether to use intra-coding or inter-coding. A CU may be further divided into two or four PUs (Prediction units), and the same Prediction information is used in the same PU. After obtaining residual information after prediction is completed, a CU may be further divided into tus (transformunits) in four ways. For example, the current data block in this application is a PU.
However, there is a large change in the block partitioning technique in the newly proposed VVC (Video Coding for general purpose). A mixed binary tree/ternary tree/quadtree partition structure replaces the original partition mode, cancels the concept division of original CU, PU and TU, and supports a more flexible partition mode of the CU. The CU may be a square or a rectangular partition. The CTU first performs the partition of the quadtree, and then the leaf nodes of the quadtree partition may further perform the partition of the binary tree and the ternary tree. As shown in fig. 1A, the CU has five partition types, which are quadtree partition, horizontal binary tree partition, vertical binary tree partition, horizontal ternary tree partition and vertical ternary tree partition, respectively, as shown in fig. 1B, a CU partition in a CTU may be any combination of the above five partition types, and different partition manners are known from the above, so that the shape of each PU is different, such as rectangle or square with different sizes.
In order to make the aforementioned objects, features and advantages of the embodiments of the present application more comprehensible, embodiments of the present application are described in detail below with reference to the accompanying drawings.
Referring to fig. 2, a flow chart of a motion information candidate list construction method according to an embodiment of the present application is schematically shown, and as shown in fig. 2, the motion information candidate list construction method may include the following steps:
and S200, determining the correlation degree of each spatial candidate block of the current data block and the current data block.
Step S210, determining candidate motion information according to the correlation.
In the embodiment of the present application, the current data block refers to a data block for which motion information prediction is currently performed. The method is applied to a coding end, and the data block can be a data block to be coded (which can be referred to as a coding block herein); applied to the decoding side, the data block may be a data block to be decoded (which may be referred to herein as a decoding block).
In the embodiment of the present application, it is considered that, when performing motion information prediction on a data block with different shapes, the correlation degree between each spatial candidate block of the data block and the data block is not completely the same.
Therefore, when the motion information of the spatial candidate block with higher correlation is predicted, the final predicted motion information is selected to be more beneficial to the coding effect, so that when the sequence of the candidate motion information is determined according to the correlation of the spatial candidate block and the current data block, the priority of the motion information with high correlation is arranged in the front, thereby reducing the overhead of coding indexes, improving the probability that the motion information of the spatial candidate block with high correlation is selected as the final predicted motion information, and further improving the performance of video coding.
Therefore, in constructing the motion information candidate list, the correlation between each spatial candidate block and the current data block may be considered, and the candidate motion information may be determined according to the correlation.
In the embodiment of the present application, the candidate motion information determined according to the correlation may include available motion information of the traversed spatial candidate block, and may also include traversed temporal candidate motion information.
In the embodiment of the present application, the motion information may include, but is not limited to, one or more of motion vector information, reference frame index, and motion direction.
For example, the motion information may include motion vector information, or the motion information may include motion vector information and a reference frame index, or the motion information may include motion vector information, a reference frame index, and a motion direction.
Accordingly, in the embodiment of the present application, the available motion information may also include, but is not limited to, one or more of motion vector information, reference frame index, and motion direction.
For example, the available motion information may include motion vector information, or the available motion information may include motion vector information and a reference frame index, or the available motion information may include motion vector information, a reference frame index, and a motion direction.
It should be appreciated that, in the embodiment of the present application, the motion information is not limited to the above listed information, and may also include other information related to the motion vector of the current data block, for example, for the Affine mode, the motion information may also include flag bit information and the like.
In addition, in this embodiment of the present application, for the AMVP mode, the candidate motion information may include, in addition to the available motion information, motion information after scaling of the available motion information, for example, motion information obtained after scaling of an available motion vector.
Step S220, according to the candidate motion information, a motion candidate list corresponding to the current data block is constructed.
In the embodiment of the present application, after determining the candidate motion information, a motion candidate list corresponding to the current data block may be constructed according to the determined candidate motion information, and the order of the candidates in the motion information candidate list may refer to the traversal order of each candidate in the checking process of whether the motion information is available.
As can be seen from the flow shown in fig. 2, in the embodiment of the present application, when motion information prediction is performed, candidate motion information may be determined according to the correlation between the spatial neighboring blocks of the data block and the data block, so that the flexibility and efficiency of constructing a motion information candidate list are improved, and video coding performance is improved.
In one embodiment of the present application, the determining the correlation between each spatial candidate block of the current data block and the current data block may include: determining the shape of the current data block; and determining the correlation degree of each spatial candidate block of the current data block and the current data block according to the shape of the current data block.
In this embodiment, it is considered that when the data block is predicted by motion information when the shape of the data block is different, the correlation between each spatial neighboring block of the data block and the data block is not completely the same. Therefore, when the motion information of the data block is predicted, the correlation between each spatial neighboring block and the data block can be determined according to the shape of the data block.
In one example, the determining candidate motion information according to the correlation may include:
determining a checking order of the spatial candidate blocks matched with the correlation degree; the motion information of the spatial candidate blocks detected from each spatial candidate block is determined as candidate motion information in the spatial candidate block detection order. The motion information of the checked spatial candidate block refers to motion information determined to be available.
Specifically, considering that the order of spatial motion information candidates in the motion information candidate list is related to the inspection order of spatial candidate blocks of the data block when the motion information candidate list is constructed, and when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, bits required when index value coding is performed can be reduced, and the performance of video coding is improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, consumption for selecting the predicted motion information can be reduced, that is, under the consumption of the same coding index, ranking with high correlation degree in front is beneficial to improving the performance of video coding, therefore, when the motion information candidate list is constructed, the correlation degree of each spatial candidate block and the current data block can be considered, and the checking order of the spatial candidate blocks can be determined according to the correlation degree.
Preferably, for any spatial candidate block, the higher the correlation between the current data block and the spatial candidate block, the higher the checking order of the spatial candidate block. That is, the check order of the spatial candidate blocks having a high correlation with the current data block is earlier than the check order of the spatial candidate blocks having a low correlation with the current data block.
Further, since it is considered that the inspection method of each spatial candidate block of a data block is different when the motion information prediction is performed on the data block in different prediction modes, a prediction mode (which may be referred to as a motion information prediction mode or a motion prediction mode) of a current data block may be considered when determining the inspection order of the spatial candidate blocks.
Accordingly, in determining the spatial candidate block checking order of the current data block, the spatial candidate block checking order may be determined according to the degree of correlation of each spatial candidate block with the current data block and the motion information prediction mode.
In one example, the shape of the current data block may be determined by the aspect ratio of the current data block;
for example, different shapes of the current data block may be characterized by a size relationship of an aspect ratio of the current data block to 1, respectively.
If the aspect ratio of the current data block is greater than 1, the shape of the current data block is a rectangle with the width greater than the height; if the aspect ratio of the current data block is equal to 1, the shape of the current data block is a square; if the aspect ratio of the current data block is less than 1, the shape of the current data block is a rectangle with the width less than the height.
Accordingly, the determining the correlation between each spatial candidate block of the current data block and the current data block according to the shape of the current data block may include:
and determining the correlation degree of each spatial candidate block and the current data block according to the aspect ratio and the relative position relation of each spatial candidate block and the current data block.
Specifically, the correlation degree of the spatial candidate block and the current data block may be determined according to the aspect ratio of the current data block and the relative position relationship between the spatial candidate block and the current data block (e.g., the upper side or the left side of the current data block, etc.), and a specific implementation thereof will be described below with reference to a specific example.
In another embodiment of the present application, the determining the correlation between each spatial candidate block of the current data block and the current data block may include:
clustering the motion information of the upper data block or/and the left data block of the current data block to obtain the motion information of a clustering center;
determining the distance between each space domain candidate block and the clustering center according to the motion information of the clustering center and the motion information of each space domain candidate block;
and determining the correlation degree of each spatial domain candidate block and the current data block according to the distance between each spatial domain candidate block and the clustering center.
In the embodiment of the application, besides determining the correlation degree between each spatial candidate block and the data block according to the shape of the data block, the correlation degree between each spatial candidate block and the current data block can be determined according to the clustering result in a manner of clustering the surrounding data blocks of the data block.
In this embodiment, when motion information prediction is required, the motion information of the upper data block or/and the left data block of the current data block may be clustered to obtain the motion information of the cluster center.
The upper data block may be a data block of size N × N adjacent to the current data block on the upper side of the current data block; where N may be an integer power of 2 with a default value of 4.
Similarly, the left data block may be an N × N data block adjacent to the current data block on the left side of the current data block.
Optionally, in this embodiment, the motion information of the upper data block and the motion information of the left data block may be clustered, respectively, to obtain the motion information of the upper clustering center and the motion information of the left clustering center, respectively; or clustering the motion information of the upper data block and the left data block to obtain the motion information of a clustering center; alternatively, only the motion information of the upper data block may be clustered or the motion information of the left data block may be clustered to obtain the motion information of the upper cluster center or the motion information of the left cluster center.
When the motion information of the upper data block is clustered, one or more clustering centers can be obtained; similarly, when the motion information of the left data block is clustered, one or more clustering centers can be obtained.
In this embodiment, the distance between each spatial candidate block and the cluster center may be determined according to the motion information of the cluster center and the motion information of each spatial candidate block.
When a plurality of clustering centers exist, for any spatial candidate block, the distance between the spatial candidate block and each clustering center can be determined according to the minimum value of the distances between the spatial candidate block and each clustering center.
After the distance between each spatial candidate block and the cluster center is determined, the correlation between each spatial candidate block and the current data block may be determined according to the distance between each spatial candidate block and the cluster center.
Further, in this embodiment, in order to simplify the complexity of clustering, when clustering the motion information of the upper-side data block or/and the left-side data block of the current data block, the motion information of the upper-side data block or/and the left-side data block of the current data block may be sampled according to a preset sampling rule to obtain the upper-side data block (referred to as a target upper-side data block herein) or/and the left-side data block (referred to as a target left-side data block herein) participating in clustering, and the target upper-side data block or/and the target left-side data block may be clustered.
For example, for the upper data block of the current data block, a target upper data block may be sampled every other one or more data blocks.
In one example, the distance of each spatial candidate block from the cluster center is inversely related to the correlation of each spatial candidate block with the current data block, i.e., for any spatial candidate block, the farther it is from the cluster center, the lower its correlation with the current data block.
Accordingly, the determining candidate motion information according to the correlation may include:
and determining candidate motion information from the available motion information of the spatial candidate blocks checked from the spatial candidate blocks according to the sequence of the distances between the spatial candidate blocks and the cluster center from small to large.
Further, in this embodiment, when the motion information of the cluster center is different from the motion information of each spatial candidate block, the motion information of the cluster center may be determined as candidate motion information, and the candidate motion information is added to the motion information candidate list corresponding to the current data block, so as to increase the number of candidate motion information and improve the accuracy of motion information prediction.
In order to make those skilled in the art better understand the technical solution provided by the embodiment of the present application, the following respectively describes the influence of the block shape (for example, the block shape is characterized by the aspect ratio of the block) and the distance between the spatial neighboring block and the cluster center on the ordering of the candidate motion information with reference to specific examples.
First, the aspect ratio of the block has an influence on the ordering of the candidate motion information.
In the following embodiments, if the aspect ratio of the current data block is greater than 1, it is determined that the correlation between the upper spatial candidate block of the current data block and the current data block is higher than the correlation between the left spatial candidate block of the current block and the current data block.
And if the aspect ratio of the current data block is less than 1, determining that the correlation degree of the left spatial domain candidate block of the current data block and the current data block is higher than the correlation degree of the upper spatial domain candidate block of the current data block and the current data block.
Taking fig. 3 as an example, in the embodiment of the present application, the first spatial candidate block (hereinafter referred to as a1) is the lowest spatial neighboring block on the left side of the current data block; the second spatial candidate block (hereinafter referred to as B1) is the spatial neighboring block on the upper most right side of the current data block; the third spatial candidate block (hereinafter referred to as B0) is the spatial neighboring block closest to the top right corner of the current data block; the fourth spatial candidate block (hereinafter referred to as a0) is the spatial neighboring block closest to the lower left corner of the current data block; the fifth spatial candidate block (hereinafter referred to as B2) is the spatial neighboring block closest to the top left corner of the current data block.
As an example, when the aspect ratio of the current data block is greater than 1, that is, the width of the current data block is greater than the height, the correlation of B1 with the current data block is higher than the correlation of a1 with the current data block.
As an example, when the aspect ratio of the current data block is less than 1, that is, the width of the current data block is less than the height, the correlation of B1 with the current data block is lower than the correlation of a1 with the current data block.
Or as another example, if the aspect ratio of the current data block is greater than 1, the correlation of B1 and B0 with the current data block is higher than the correlation of a1 and a0 with the current data block, respectively.
As another example, if the aspect ratio of the current data block is less than 1, the correlations of B1 and B0 with the current data block are lower than the correlations of a1 and a0 with the current data block, respectively.
It should be noted that, in the embodiment of the present application, if the aspect ratio of the current data block is equal to 1, that is, the width and the height of the current data block are equal, the correlation between the spatial candidate block and the current data block may be further determined according to other conditions, for example, the case when the correlation is greater than 1 may be used, and the case when the correlation is less than 1 may also be used.
For example, when the prediction mode is the merge mode, it may be determined that the degree of correlation of B1 with the current data block is higher than the degree of correlation of a1 with the current data block; when the prediction mode is the AMVP mode, it may be determined that the correlation of B1 with the current data block is lower than the correlation of a1 with the current data block.
The following describes the influence of the aspect ratio of the current data block on the checking order of whether the motion information of the spatial candidate block is available and the determined order of the candidate motion information in the candidate list for different prediction modes, respectively.
1. The prediction mode being a merge mode
H265/HEVC proposes a merging technique (motion information prediction in the Merge mode) and an AMVP technique (i.e., motion information prediction in the AMVP mode) in terms of motion information prediction. Both of the motion information prediction concepts of the spatial domain and the temporal domain are used, and an optimal motion information candidate is selected as the predicted motion information of the current data block based on the rate distortion cost by establishing a candidate motion information list. Wherein:
in the Merge mode, Motion information of a current data block is directly obtained by prediction based on Motion information of an adjacent data block in an airspace or a time domain, and no Motion Vector Difference (MVD) exists;
the Merge mode motion information prediction establishes a motion information candidate list for the current block, where there are 5 candidate motion information (and their corresponding reference frame information). By traversing the 5 candidate motion information and performing rate distortion cost calculation, one motion information candidate with the smallest rate distortion cost is finally selected as the best motion information (i.e. predicted motion information) of the Merge mode. If the encoding and decoding end constructs the motion information candidate list in the same way, the encoder only needs to transmit the index of the predicted motion information in the motion information candidate list, so that the encoding bit number of the motion information can be greatly saved.
The motion information candidate list established by the motion information prediction in the Merge mode includes both spatial and temporal cases, and for the B Slice, the manner of including the combined list is respectively described as follows.
1) And the spatial domain motion information candidate list is subjected to available running information check and list construction according to the sequence of A1 → B1 → B0 → A0 → (B2), wherein B2 is alternative. I.e., when there is no available motion information for one or more of a1, B1, B0, a0, then the motion information for B2 needs to be checked.
Wherein, for the spatial domain motion information candidate list, the candidates of ATMVP and STMVP are added to the JEM, and the order of B2 is after ATMVP and STMVP and before the temporal domain candidates. Only ATMVP is added in BMS, and the position of B2 is behind ATMVP and in front of temporal candidates.
2) The temporal motion information candidate list is established using motion information of data blocks of the current data block in neighboring corresponding positions in the encoded image. Unlike the spatial motion information candidate list, the temporal motion information candidate list cannot directly use the motion information of the candidate block, and needs to be scaled according to the position relationship of the reference image. HEVC, among other things, provides that the temporal domain provides at most one candidate motion information.
3) For the data block in B Slice, since there are two motion information, its motion information candidate list also needs to provide two predicted motion information. The HEVC standard combines the first 4 candidate motion information in the motion information candidate list pairwise to generate a combined list of B slices.
It can be seen that, in the conventional Merge mode motion information prediction, the checking order of each spatial candidate block is fixed (a1 → B1 → B0 → a0 → (B2)), and it is not fully considered that different spatial candidate blocks have different correlations with the current data block under different block shapes, the flexibility is poor, and the coding performance is poor. The method provided by the application can solve the problems.
The following describes the construction of a motion information candidate list for the motion information prediction of the merge mode in the technical solution provided in the embodiment of the present application.
1) In a first embodiment, the spatial candidate block checking order comprises at least the traversal order of 4 spatial candidate blocks; the 4 spatial candidate blocks are preceded in traversal order by a fifth spatial candidate block, which is an alternate spatial candidate block.
Wherein the 4 spatial candidate blocks include a first spatial candidate block (i.e., A1 shown in FIG. 2), a second spatial candidate block (i.e., B1 shown in FIG. 2), a third spatial candidate block (i.e., B0 shown in FIG. 2), and a fourth spatial candidate block (i.e., A0 shown in FIG. 2); the fifth spatial candidate block is B2 shown in fig. 2.
For the merge mode, the spatial domain provides at most 4 candidate motion information, i.e. the motion information of at most 4 spatial candidate blocks (a1, B1, B0 and a0) of the above 5 spatial candidate blocks are used, and the list is built according to the traversal order of the 4 spatial candidate blocks, where B2 is a complement. I.e., when there is no available motion information for one or more of a1, B1, B0, a0, then motion information for B2 is needed, B2 is located after 4 spatial candidate blocks, but 4 spatial candidate blocks are possibly followed by other candidates before B2, B2 is in front of the temporal candidate.
In example one of the first embodiment, when the aspect ratio of the current data block is greater than 1, the traversal order of the 4 spatial candidate blocks may be a first traversal order; wherein the first traversal order is sequentially traversing the second, first, fourth, and third spatial candidate blocks (described as B1 → A1 → A0 → B0, below).
Based on the first embodiment or the first example of the first embodiment, in the second example of the first embodiment, when the aspect ratio of the current data block is less than 1, the traversal order of the 4 spatial candidate blocks may be a third traversal order; wherein the third traversal is sequentially traversing the first, second, third, and fourth spatial candidate blocks (described as A1 → B1 → B0 → A0, below).
Based on any implementation manner of the first implementation manner, the first example of the first implementation manner, and the second example of the first implementation manner, in the third example of the first implementation manner, when the aspect ratio of the current data block is equal to 1, the traversal order of the 4 spatial candidate blocks may be a second traversal order; wherein the second traversal order is sequentially traversing the second, first, third, and fourth spatial candidate blocks (described as B1 → A1 → B0 → A0, hereinafter).
In example four of the first embodiment, when the aspect ratio of the current data block is greater than 1, the traversal order of the 4 spatial candidate blocks may be a fourth traversal order; wherein the fourth traversal order is sequentially traversing the second, third, first and fourth spatial candidate blocks (described as B1 → B0 → A1 → A0, hereinafter).
Based on the first embodiment or the fourth example of the first embodiment, in the fifth example of the first embodiment, when the aspect ratio of the current data block is less than 1, the traversal order of the 4 spatial candidate blocks may be a fifth traversal order; wherein the fifth traversal order is sequentially traversing the first, fourth, second, and third spatial candidate blocks (described as A1 → A0 → B1 → B0, hereinafter).
Based on any one implementation of example one of the first implementation, example two of the first implementation, example four of the first implementation, and example five of the first implementation, in example six of the first implementation, when the aspect ratio of the current data block is equal to 1, the traversal order of the 4 spatial candidate blocks may be one of a first traversal order, a third traversal order, a fourth traversal order, and a fifth traversal order.
For each example of the first implementation in the merge mode, some examples of the effect of the aspect ratio of the current data block on the checking order of the spatial candidate blocks may be as shown in table 1:
TABLE 1
Figure BDA0001717323970000141
Figure BDA0001717323970000151
Figure BDA0001717323970000161
Figure BDA0001717323970000171
It should be noted that, in the merge mode, the undefined checking order may adopt a default order, that is, an order in the existing video coding standard. For example, for embodiment X0, when the aspect ratio is equal to 1 or less than 1, the checking order of the spatial candidate blocks may adopt a default order; for embodiment X1, when the aspect ratio is greater than 1 or equal to 1, the checking order of the spatial candidate blocks may be in a default order, e.g., the default order may be a third traversal order.
In addition, in the above embodiment, after the spatial candidate block checking order is determined, the available motion information in the first, second, third and fourth spatial candidate blocks may be traversed according to the determined spatial candidate block checking order, and all the traversed available motion information may be determined as candidate motion information.
In the merge mode, the determination of whether the motion information of the spatial candidate block is available may refer to the related description in the existing video coding standard, which is not described herein again in the embodiments of the present invention.
Further, after the candidate motion information is determined, the order of all available motion information in the motion information candidate list may be determined in a spatial candidate block check order.
It should be appreciated that, in the embodiment of the present application, in the merge mode, when the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other orders in which B1 is arranged before a1, and the rest of the implementations are not exhaustive here.
Similarly, in the merge mode, when the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other orders in which a1 is arranged before B1, and the rest of the implementations are not exhaustive here.
Similarly, in the merge mode, when the aspect ratio of the current data block is equal to 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other order in which B1 is arranged before a1, or other order in which a1 is arranged before B1, and the rest of the implementations are not exhaustive here.
The following describes some of the above embodiments with reference to the drawings.
Example X0
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block may be: the solicitation graph may be as shown in fig. 4A, in the traversal order of B1, a1, a0, B0 (hereinafter expressed as B1 → a1 → a0 → B0).
If the aspect ratio of the current data block is less than or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as that of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a 0.
Note that, in this embodiment, the checking order of B2 can be referred to as described in the existing video coding standard.
Example X1
In this embodiment, if the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → B1 → B0 → A0, please note that FIG. 4B shows the same.
If the aspect ratio of the current data block is greater than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as that of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a 0.
Note that, in this embodiment, the checking order of B2 can be referred to as the description in the existing video coding standard.
Example X2
In this embodiment, if the aspect ratio of the current data block is equal to 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → A1 → B0 → A0, please note that the diagram can be as shown in FIG. 4C.
If the aspect ratio of the current data block is greater than 1 or less than 1, the checking order of the spatial candidate blocks of the current data block may be the same as that of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a 0.
Note that, in this embodiment, the checking order of B2 can be referred to as the description in the existing video coding standard.
Example X6
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → A1 → A0 → B0, the schematic diagram is shown in FIG. 4A.
If the aspect ratio of the current data block is equal to 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → A1 → B0 → A0, the schematic diagram is shown in FIG. 4C.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → B1 → B0 → A0, the schematic diagram is shown in FIG. 4B.
Note that, in this embodiment, the checking order of B2 can be referred to as described in the existing video coding standard.
Example X7
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → B0 → A1 → A0, the schematic diagram is shown in FIG. 4D.
If the aspect ratio of the current data block is less than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a 0.
Note that, in this embodiment, the checking order of B2 can be referred to as the description in the existing video coding standard.
Example X8
In this embodiment, if the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → A0 → B1 → B0, the schematic diagram is shown in FIG. 4E.
If the aspect ratio of the current data block is greater than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as that of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a 0.
Note that, in this embodiment, the checking order of B2 can be referred to as the description in the existing video coding standard.
Example X31
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → B0 → A1 → A0, the schematic diagram is shown in FIG. 4D.
If the aspect ratio of the current data block is equal to 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → A1 → B0 → A0, the schematic diagram is shown in FIG. 4C.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → A0 → B1 → B0, the schematic diagram is shown in FIG. 4E.
Note that, in this embodiment, the checking order of B2 can be referred to as described in the existing video coding standard.
Example X32
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → B0 → A1 → A0, the schematic diagram is shown in FIG. 4D.
If the aspect ratio of the current data block is equal to 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → B1 → B0 → A0, the schematic diagram is shown in FIG. 4F.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → A0 → B1 → B0, the schematic diagram is shown in FIG. 4E.
Note that, in this embodiment, the checking order of B2 can be referred to as described in the existing video coding standard.
Example X33
In this embodiment, if the aspect ratio of the current data block is greater than or equal to 1, the checking order of each spatial candidate block of the current data block may be: b1 → B0 → A1 → A0, the schematic diagram is shown in FIG. 4D.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → A0 → B1 → B0, the schematic diagram is shown in FIG. 4E.
Note that, in this embodiment, the checking order of B2 can be referred to as described in the existing video coding standard.
Example X34
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block may be: b1 → B0 → A1 → A0, the schematic diagram is shown in FIG. 4D.
If the aspect ratio of the current data block is less than or equal to 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → A0 → B1 → B0, the schematic diagram is shown in FIG. 4E.
Note that, in this embodiment, the checking order of B2 can be referred to as described in the existing video coding standard.
It can be seen that, in the above embodiment, when the aspect ratio of the current data block is greater than 1, when the 4 spatial candidate blocks are checked, B1 is checked first, then a1 is checked, by using the characteristic that when the aspect ratio of the current data block is greater than 1, the correlation between the upper spatial candidate block and the current data block is higher than the correlation between the left spatial candidate block and the current data block, the spatial candidate block with high correlation is checked preferentially, and the order of the available motion information in the motion information candidate list is determined according to the checking order of the spatial candidate blocks, so that the bits required for encoding the index value can be reduced, and the performance of video encoding can be improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
Similarly, when the aspect ratio of the current data block is less than 1, firstly checking a1, and then checking B1, and when the aspect ratio of the current data block is less than 1, utilizing the characteristic that the correlation degree of the left-side spatial domain candidate block and the current data block is higher than that of the upper-side spatial domain candidate block and the current data block, reducing bits required when encoding the index value, and improving the performance of video encoding; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
In the embodiment of the present application, after the available motion information of the 4 spatial candidate blocks is checked according to the checking order shown in the above embodiment, when constructing the motion information candidate list, the order of the candidate motion information corresponding to the available motion information of the 4 spatial candidate blocks in the motion information candidate list matches the checking order of the 4 spatial candidate blocks.
It should be appreciated that in the above embodiment, only the checking order of the above 4 spatial candidate blocks is shown, and accordingly, it also defines only the relative checking order among the 4 spatial candidate blocks and the relative order of the candidate motion information corresponding to the 4 spatial candidate blocks in the motion information candidate list, the order of the motion information candidates corresponding to the 4 spatial candidate blocks and other motion information candidates (e.g. temporal motion information candidates, motion information candidates corresponding to ATMVP, and/or motion information candidates corresponding to STMVP) in the motion information candidate list is not limited, that is, the relative order of the candidate motion information and other candidate motion information in the motion information candidate list corresponding to the above 4 spatial candidate blocks may be referred to the relevant description in the existing video coding standard, or may be determined according to other strategies.
For example, in an implementation manner, if the motion information of the 4 spatial candidate blocks is available, the motion information of the 4 spatial candidate blocks is all added to a motion information candidate list as candidate motion information, and a relative order of the motion information candidates corresponding to the 4 spatial candidate blocks is consistent with a checking order of the 4 spatial candidate blocks, and the motion information corresponding to the 4 spatial candidate blocks may sequentially include candidate motion information corresponding to ATMVP, candidate motion information corresponding to STMVP (if present), and candidate motion information corresponding to temporal candidate blocks.
If at least one of the motion information of the 4 spatial candidate blocks is not available, it is necessary to check whether the motion information of B2 is available, in addition to adding the available motion information of the 4 spatial candidate blocks as candidate motion information to the motion information candidate list, and if available, the relative order of the candidate motion information corresponding to the available motion information of the 4 spatial candidate blocks is consistent with the check order of the 4 spatial candidate blocks, and the candidate motion information corresponding to the available motion information of the 4 spatial candidate blocks may sequentially include candidate motion information corresponding to ATMVP, candidate motion information corresponding to STMVP (if available), candidate motion information corresponding to B2, and candidate motion information corresponding to a candidate temporal block.
2) In a second embodiment, the spatial candidate block checking order precedes the temporal candidate block, and the spatial candidate block checking order comprises at least a 5 spatial candidate block traversal order.
The 5 spatial candidate blocks include a first spatial candidate block (i.e., a1 shown in fig. 2), a second spatial candidate block (i.e., B1 shown in fig. 2), a third spatial candidate block (i.e., B0 shown in fig. 2), a fourth spatial candidate block (i.e., a0 shown in fig. 2), and a fifth spatial candidate block (i.e., B2 shown in fig. 2).
In example one of the second embodiment, when the aspect ratio of the current data block is greater than 1, the traversal order of the 5 spatial candidate blocks may be a sixth traversal order; wherein the sixth traversal order is sequentially traversing the third, second, fifth, first, and fourth spatial candidate blocks (described as B0 → B1 → B2 → A1 → A0, hereinafter).
Based on the second embodiment or the first example of the second embodiment, in the second example of the second embodiment, when the aspect ratio of the current data block is less than 1, the traversal order of the 5 spatial candidate blocks is a seventh traversal order; wherein the seventh traversal order is sequentially traversing the first, fourth, third, second, and fifth spatial candidate blocks (described as A1 → A0 → B0 → B1 → B2, hereinafter).
Based on the second implementation manner, the first implementation manner of the second implementation manner, and the second implementation manner of the second implementation manner, in the third implementation manner, when the aspect ratio of the current data block is equal to 1, the determined checking order of the spatial candidate blocks is the same as when the aspect ratio of the current data block is greater than 1; alternatively, the first and second electrodes may be,
when the aspect ratio of the current data block is equal to 1, the determined spatial candidate block checking order is the same as when the aspect ratio of the current data block is less than 1.
For each example of the second implementation in the merge mode, some examples of the effect of the aspect ratio of the current data block on the checking order of the spatial candidate blocks may be as shown in table 2:
TABLE 2
It should be noted that, in the merge mode, the undefined checking order may adopt a default order, that is, an order in the existing video coding standard. For example, for embodiment X35, when the aspect ratio is equal to 1 or less than 1, the checking order of the spatial candidate blocks may adopt a default order; for embodiment X36, the checking order of the spatial candidate blocks may be in a default order when the aspect ratio is greater than 1 or equal to 1.
In addition, in the above embodiment, after the spatial candidate block checking order is determined, all available motion information in the first spatial candidate block, the second spatial candidate block, the third spatial candidate block, the fourth spatial candidate block, and the fifth spatial candidate block may be traversed according to the determined spatial candidate block checking order, and determined as candidate motion information.
In the merge mode, the determination of whether the motion information of the spatial candidate block is available may refer to the related description in the existing video coding standard, which is not described herein again in the embodiments of the present invention.
Further, after the candidate motion information is determined, the order of all available motion information in the motion information candidate list may be determined in a spatial candidate block check order.
It should be appreciated that, in the embodiment of the present application, in the merge mode, when the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other orders in which B1 is arranged before a1, and the rest of the implementations are not exhaustive here.
Similarly, in the merge mode, when the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other orders in which a1 is arranged before B1, and the rest of the implementations are not exhaustive here.
Similarly, in the merge mode, when the aspect ratio of the current data block is equal to 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other order in which B1 is arranged before a1, or other order in which a1 is arranged before B1, and the rest of the implementations are not exhaustive here.
The following describes some of the above embodiments with reference to the drawings.
Example X35
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block may be: b0 → B1 → B2 → A1 → A0, please note that the diagram can be as shown in FIG. 4G.
If the aspect ratio of the current data block is less than or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as that of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a0 → B2.
Example X36
In this embodiment, if the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be: a1 → A0 → B0 → B1 → B2, please note that it can be seen in FIG. 4H.
If the aspect ratio of the current data block is greater than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a0 → B2.
It can be seen that, in the above embodiment, when the aspect ratio of the current data block is greater than 1, when the 5 spatial candidate blocks are checked, B1 is checked first, then a1 is checked, by using the characteristic that when the aspect ratio of the current data block is greater than 1, the correlation between the upper spatial candidate block and the current data block is higher than that between the left spatial candidate block and the current data block, the spatial candidate block with high correlation is checked preferentially, and the order of the available motion information in the motion information candidate list is determined according to the checking order of the spatial candidate blocks, so that the bits required for encoding the index value can be reduced, and the performance of video encoding can be improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
Similarly, when the aspect ratio of the current data block is less than 1, firstly checking a1, and then checking B1, and when the aspect ratio of the current data block is less than 1, utilizing the characteristic that the correlation degree of the left-side spatial domain candidate block and the current data block is higher than that of the upper-side spatial domain candidate block and the current data block, reducing bits required when encoding the index value, and improving the performance of video encoding; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
In the embodiment of the present application, after the available motion information of the 5 spatial candidate blocks is checked according to the checking order shown in the above embodiment, when constructing the motion information candidate list, the order of the motion information candidates corresponding to the available motion information of the 5 spatial candidate blocks in the motion information candidate list matches the checking order of the 5 spatial candidate blocks.
It should be appreciated that in the above embodiment, only the checking order of the above 5 spatial candidate blocks is shown, and accordingly, it also defines only the relative checking order among the above 5 spatial candidate blocks, and the relative order of the candidate motion information corresponding to the 5 spatial candidate blocks in the motion information candidate list, the order of the motion information candidates corresponding to the 5 spatial candidate blocks and other motion information candidates (e.g. temporal motion information candidates, motion information candidates corresponding to ATMVP, and/or motion information candidates corresponding to STMVP) in the motion information candidate list is not limited, that is, the relative order of the candidate motion information corresponding to the above 5 spatial candidate blocks and other candidate motion information in the motion information candidate list may be referred to in the related description of the existing video coding standard, or may be determined according to other strategies.
For example, in an implementation manner, if the motion information of the 5 spatial candidate blocks is available, the motion information of the 5 spatial candidate blocks is all added to a motion information candidate list as candidate motion information, and a relative order of the motion information candidates corresponding to the 5 spatial candidate blocks is consistent with a checking order of the 5 spatial candidate blocks, and the motion information corresponding to the 5 spatial candidate blocks may sequentially include candidate motion information corresponding to ATMVP, candidate motion information corresponding to STMVP (if present), and candidate motion information corresponding to temporal candidate blocks.
2. The motion information prediction mode is AMVP mode
The prediction of motion information in AMVP mode also uses the correlation of the motion information of spatially and temporally adjacent data blocks to build a motion information candidate list for the current data block. The encoder selects the optimal prediction motion information and carries out differential encoding on the motion information; the decoding end can calculate the motion information of the current data block only by establishing the same motion information candidate list and needing the motion vector residual error and the serial number of the predicted motion information in the list; wherein the length of the motion information candidate list in AMVP mode is 2.
1) When the spatial domain motion information candidate list in the AMVP mode is constructed, firstly, the spatial domain candidate block on the left side of the current data block is checked, and then, the spatial domain candidate block on the upper side of the current data block is checked; one spatial motion candidate is generated on each of the left and upper sides of the current data block, the left spatial candidate block having a checking order of a0 → a1 → scaled a0 → scaled a1, and the upper spatial candidate block having a checking order of B0 → B1 → B2(scaled B0 → scaled B1 → scaled B2).
2) The construction of the temporal motion information candidate list in the AMVP mode is the same as that in the Merge mode.
When the total number of the spatial motion information candidates and the temporal motion information candidates is less than 2, 2 motion information candidates need to be complemented by zero padding (0, 0).
It can be seen that, for the motion information prediction of the AMVP mode in the conventional video coding standard, the checking order of the spatial candidate blocks is fixed (i.e., traverse the left spatial candidate block first, in the order of a0 → a1 → scaled a0 → scaled a1, traverse the upper spatial candidate block, in the order of B0 → B1 → B2(scaled B0 → scaled B1 → scaled B2)), which may be used as the default order of the AMVP mode, and it is not fully considered that the spatial candidate blocks with different block shapes have different correlations with the current data block, and thus the AMVP mode has poor flexibility and coding performance. The method provided by the application can solve the problems.
The following describes the construction of a motion information candidate list for motion information prediction in the AMVP mode in the technical solution provided in the embodiment of the present application.
1) In the first embodiment of the AMVP mode, the spatial candidate block checking order may include at least an eighth traversal order and a ninth traversal order; the eighth traversal order is used for traversing the upper spatial domain candidate block of the current data block, and the ninth traversal order is used for traversing the left spatial domain candidate block of the current data block; the upper spatial candidate block includes: a third spatial candidate block, a second spatial candidate block, and a fifth spatial candidate block; the left spatial candidate block includes: a fourth spatial candidate block and a first spatial candidate block; the eighth traversal order is to sequentially traverse the third, second, and fifth spatial candidate blocks (described as B0 → B1 → B2, hereinafter); the ninth traversal order is to sequentially traverse the fourth spatial candidate block and the first spatial candidate block (described as A0 → A1 hereinafter). Wherein at least the meaning is: in addition to traversing the 5 spatial candidate blocks, the scalable blocks corresponding to the 5 spatial candidate blocks also need to be traversed when a certain condition is met.
In an example one of the first embodiment of the AMVP mode, when the aspect ratio of the current data block is greater than 1, the determining, as the candidate motion information, the motion information of the spatial candidate blocks detected from the spatial candidate blocks in the spatial candidate block detection order may include:
step 1: and traversing the upper-side space domain candidate block according to the eighth traversal order.
The method specifically comprises the following steps: sequentially traversing the upper-side spatial domain candidate blocks according to the eighth traversal order to obtain available motion information; alternatively, the first and second electrodes may be,
when the motion information of the upper spatial candidate block is available but not available, traversing a scalable block scaled B0 corresponding to the third spatial candidate block, a scalable block scaled B1 corresponding to the second spatial candidate block and a scalable block scaled B2 corresponding to the fifth spatial candidate block to obtain available motion information; alternatively, the first and second electrodes may be,
when the motion information of the upper spatial domain candidate block is not available, 0 available motion information is obtained.
Step 2: and traversing the left spatial domain candidate blocks in sequence according to the ninth traversal order.
The method specifically comprises the following steps: sequentially traversing the left spatial domain candidate block according to the ninth traversal order to traverse one piece of available motion information or 0 piece of available motion information;
when the motion information of the left spatial candidate block is available and the motion information of the upper spatial candidate block is not available (including the case of all intra prediction), sequentially traversing the scaled block scaled a0 corresponding to the fourth spatial candidate block and the scaled block scaled a1 corresponding to the first spatial candidate block to obtain available motion information.
Wherein, when the motion information of the upper spatial candidate block and the left spatial candidate block is not available, the available motion information of 0 spatial domains is obtained.
And step 3: and determining all the available motion information traversed in the steps 1 and 2 as candidate motion information.
In example two of the first embodiment of the AMVP mode, when the aspect ratio of the current data block is less than 1, the determining, as the candidate motion information, the motion information of the spatial candidate blocks detected from the spatial candidate blocks in the spatial candidate block detection order includes:
step 1: and sequentially traversing the left spatial domain candidate blocks according to a ninth traversal order.
The method specifically comprises the following steps: sequentially traversing the left spatial domain candidate block according to the ninth traversal order to obtain available motion information; alternatively, the first and second electrodes may be,
traversing the telescopic block corresponding to the fourth spatial candidate block and the telescopic block corresponding to the first spatial candidate block to obtain available motion information when the motion information of the left spatial candidate block is available but unavailable; alternatively, the first and second electrodes may be,
when the motion information of the left spatial candidate block is not available, 0 available motion information is obtained.
Step 2: and traversing the upper-side space domain candidate block according to the eighth traversal order.
The method specifically comprises the following steps: sequentially traversing the upper-side spatial domain candidate blocks according to the eighth traversal order to traverse one piece of available motion information or 0 piece of available motion information;
when the motion information of the upper spatial candidate block is available and the motion information of the left spatial candidate block is not available (including the situation that all the motion information is intra-frame prediction), sequentially traversing the telescopic block corresponding to the third spatial candidate block, the telescopic block corresponding to the second spatial candidate block and the telescopic block corresponding to the fifth spatial candidate block to obtain available motion information.
Wherein, when the motion information of the upper spatial candidate block and the left spatial candidate block is not available, the available motion information of 0 spatial domains is obtained.
And step 3: and determining all the available motion information traversed in the steps 1 and 2 as candidate motion information.
In example three of the first embodiment of the AMVP mode, when the aspect ratio of the current data block is equal to 1, the spatial candidate block check order is determined, and the motion information of the spatial candidate blocks checked from among the spatial candidate blocks is determined as the candidate motion information in the spatial candidate block check order in the same manner as when the aspect ratio of the current data block is greater than 1.
In example four of the AMVP mode first embodiment, when the aspect ratio of the current data block is equal to 1, the spatial candidate block check order is determined, and the motion information of the spatial candidate blocks checked from among the spatial candidate blocks is determined as the candidate motion information in the spatial candidate block check order in the same manner as when the aspect ratio of the current data block is less than 1.
In summary, for the first embodiment of AMVP mode, when the width of the current data block is smaller than the height, the traversal order of the spatial candidate blocks belongs to the left side first and the upper side last, and the scaling of a0 and a1 is based on a0 and a1 being available, but not available. The telescoping of the upper B0, B1, B2 is based on the condition that neither a0 nor a1 is available.
For the first embodiment of AMVP mode, when the width of the current data block is larger than the height, the traversal order of the spatial candidate blocks belongs to the case of top first and left last, and the scaling of B0, B1 and B2 is based on the fact that B0, B1 and B2 are available, but are not available. For the left side a1, the expansion and contraction of a0 is based on the condition that none of B0, B1, B2 is available.
For each example of the first implementation in AMVP mode, some examples of the effect of the aspect ratio of the current data block on the checking order of the spatial candidate blocks may be as shown in table 3, where scaled a0 → scaled a1, and scaled B0 → scaled B1 → scaled B2 are traverses satisfying some conditions, optionally:
TABLE 3
Figure BDA0001717323970000311
It should be noted that, in the AMVP mode, the undefined checking order may adopt a default order, that is, an order in the existing video coding standard in the above embodiment. For example, for embodiment Y, when the aspect ratio is equal to 1 or less than 1, the traversal order of the spatial candidate blocks may adopt a default order in AMVP mode; for embodiment Y2, when the aspect ratio is less than 1, the traversal order of the spatial candidate blocks may adopt the default order in AMVP mode.
In the AMVP mode, B2 may be used as the upper spatial candidate block in the above embodiment.
In the embodiment of the present application, in the AMVP mode, for any spatial candidate block, when motion information of the spatial candidate block can be obtained (that is, valid motion information exists), but a reference image corresponding to the motion information of the spatial candidate block is different from a reference image of a current data block, it is determined that the motion information of the spatial candidate block is unavailable. When the motion information of the spatial candidate block can be obtained and the reference image corresponding to the motion information of the spatial candidate block is the same as the reference image of the current data block, determining that the motion information of the spatial candidate block is available.
Taking the traversal order of the left candidate spatial domain block according to a0-a1-scaleA0-scaleA1 as an example, the determining whether the motion information of the spatial domain candidate block is available specifically includes:
after determining that the motion information of a0 is available, it is determined whether the reference frame image information included in the motion information of a0 is the same as the reference frame image in which the current image block is located, and if so, it indicates that the motion information of a0 is available, and traversal of scaleA0 is not needed. If the motion information of the A1 block is not available, the A0 is considered to be unavailable, the A1 block is traversed, if the motion information of the A1 block is judged to be unavailable or the reference frame image information contained in the motion information of the A1 is judged to be different from the reference frame image where the current image block is located, the scaleA0 is traversed, the available motion information after the motion information of the A0 is subjected to stretching processing is obtained, and if the motion information of the A1 is the same, the motion information of the A1 is available, and the scaleA0 is not required to be traversed.
In addition, for any spatial candidate block, traversing the telescopic block corresponding to the spatial candidate block means that the motion information of the spatial candidate block is telescopic, the motion information after the telescopic processing is used as available motion information, and when the motion information of the spatial candidate block is not available, the telescopic processing cannot be performed. The specific implementation of which can be seen in the related description of the existing video coding standard.
It should be appreciated that, in the embodiment of the present application, in the AMVP mode, when the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and other orders may also be used to traverse the upper spatial candidate block first and then traverse the left spatial block, for example, traverse B1 → B0 → B2 → Scale B1 → Scale B0 → Scale B2 first, traverse a0 → a1 → Scale a0 → Scale a1 later, and the remaining implementations are not exhaustive here.
Similarly, in the AMVP mode, when the aspect ratio of the current data block is smaller than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may also be other orders that traverse the left spatial candidate block first and traverse the upper spatial block later, for example, traverse a1 → a0 → Scale a1 → Scale a0 first, traverse B0 → B1 → B2 → Scale B0 → Scale B1 → Scale B2 first, and the rest of implementations are not exhaustive here.
Similarly, in the AMVP mode, when the aspect ratio of the current data block is equal to 1, the checking order of each spatial domain candidate block of the current data block is not limited to the order described in the above embodiment, and may also be other orders that traverse the left spatial domain candidate block first and then traverse the upper spatial domain block, or other orders that traverse the upper spatial domain candidate block first and then traverse the left spatial domain block, and the rest of the implementations are not exhaustive here.
The following describes some of the above embodiments with reference to the drawings.
Example Y0
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is first traversed in the order of B0 → B1 → B2 → scaled B0 → scaled B1 → scaled B2; and then traversed in the order of A0 → A1 → scaled A0 → scaled A1, a schematic diagram of which can be seen in FIG. 4I.
If the aspect ratio of the current data block is less than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., traverse in the order of a0 → a1 → scaled a0 → scaled a1, and traverse in the order of B0 → B1 → B2 → scaled B0 → scaled B1 → scaled B2, where scaled a0 → scaled a1 is optional, and scaled B0 → scaled B1 → scaled B2 is optional.
It can be seen that, in the above embodiment, when the aspect ratio of the current data block is greater than 1, when the spatial candidate block is checked, the upper spatial candidate block is checked first, then the left spatial neighboring block is checked, by using the characteristic that when the aspect ratio of the current data block is greater than 1, the correlation between the upper spatial candidate block and the current data block is higher than the correlation between the left spatial candidate block and the current data block, the spatial candidate block with high correlation is checked preferentially, and the order of the available motion information in the motion information candidate list is determined according to the checking order of the spatial candidate blocks, so that bits required when the index value is encoded can be reduced, and the performance of video encoding is improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
Similarly, when the aspect ratio of the current data block is less than 1, the left spatial domain candidate block is checked first, then the upper spatial domain adjacent block is checked, and by utilizing the characteristic that when the aspect ratio of the current data block is less than 1, the correlation degree of the left spatial domain candidate block and the current data block is higher than that of the upper spatial domain candidate block and the current data block, the bit required for encoding the index value is reduced, and the performance of video encoding is improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
In the embodiment of the present application, after the motion information candidates corresponding to the spatial candidate blocks are examined according to the examination order shown in the above-described embodiment, the order of the motion information candidates corresponding to the spatial candidate blocks in the motion information candidate list matches the examination order of the spatial candidate blocks.
It should be appreciated that, in the above embodiment, only the checking order of the spatial candidate blocks is shown, and accordingly, only the relative checking order between the spatial candidate blocks and the relative order of the motion information candidates corresponding to the spatial candidate blocks in the motion information candidate list are also limited, and the order of the motion information candidates corresponding to the spatial candidate blocks and other motion information candidates (such as temporal motion information candidates, zero motion information, etc.) in the motion information candidate list is not limited, that is, the relative order of the motion information candidates corresponding to the spatial candidate blocks and other motion information candidates in the motion information candidate list may be referred to the relevant description in the existing video coding standard, or may be determined according to other strategies.
2) In the second embodiment of AMVP mode, the determined spatial candidate block checking order may include at least a tenth traversal order and an eleventh traversal order; the tenth traversal order is used for traversing the upper spatial domain candidate block of the current data block, and the eleventh traversal order is used for traversing the left spatial domain candidate block of the current data block; the upper-side spatial candidate block includes: a third spatial candidate block and a second spatial candidate block; the left spatial candidate block includes: a fourth spatial candidate block, a first spatial candidate block, and a fifth spatial candidate block; the tenth traversal order is to sequentially traverse the third spatial candidate block and the second spatial candidate block (described as B0 → B1, hereinafter); the eleventh traversal order is to sequentially traverse the fourth, first, and fifth spatial candidate blocks (described as a0 → a1 → B2, below). Wherein at least the meaning is: in addition to traversing the 5 spatial candidate blocks, the scalable blocks corresponding to the 5 spatial candidate blocks also need to be traversed when a certain condition is met.
In an example one of the second implementation manner of the AMVP mode, when the aspect ratio of the current data block is greater than 1, the determining, as the candidate motion information, the motion information of the spatial candidate blocks detected from the spatial candidate blocks in the spatial candidate block detection order may include:
step 1: and traversing the upper-side space domain candidate block according to the tenth traversal order.
The method specifically comprises the following steps: traversing the upper-side spatial domain candidate block according to the tenth traversal order to obtain available motion information; or the like, or, alternatively,
when the motion information of the upper spatial domain candidate block is available but unavailable, traversing a telescopic block corresponding to a third spatial domain candidate block and a telescopic block corresponding to a second spatial domain candidate block to obtain available motion information; alternatively, the first and second electrodes may be,
when none of the motion information of the upper spatial candidate block is available, 0 available motion information is obtained.
Step 2: and sequentially traversing the left spatial domain candidate blocks according to the eleventh traversal order.
The method specifically comprises the following steps: sequentially traversing the left spatial domain candidate block according to the eleventh traversal order to traverse one piece of available motion information or 0 piece of available motion information;
when the motion information of the left spatial candidate block is available and the motion information of the upper spatial candidate block is not available (including the situation that all the motion information is intra-frame prediction), sequentially traversing the telescopic block corresponding to the fourth spatial candidate block, the telescopic block corresponding to the first spatial candidate block and the telescopic block corresponding to the fifth spatial candidate block to obtain available motion information.
Wherein, when the motion information of the upper spatial candidate block and the left spatial candidate block is not available, the available motion information of 0 spatial domains is obtained.
And step 3: and determining all the traversed available motion information as candidate motion information.
In example two of the second implementation manner of the AMVP mode, when the aspect ratio of the current data block is less than 1, the determining, as the candidate motion information, the motion information of the spatial candidate blocks detected from the spatial candidate blocks in the spatial candidate block detection order may include:
step 1: and sequentially traversing the left spatial domain candidate blocks according to the eleventh traversal order.
The method specifically comprises the following steps: sequentially traversing the left spatial domain candidate block according to an eleventh traversal order to obtain available motion information; alternatively, the first and second electrodes may be,
when the motion information of the left spatial candidate block is available but unavailable, traversing a telescopic block corresponding to a fourth spatial candidate block, a telescopic block corresponding to a first spatial candidate block and a telescopic block corresponding to a fifth spatial candidate block to obtain available motion information; alternatively, the first and second electrodes may be,
when the motion information of the left spatial candidate block is not available, 0 available motion information is obtained.
Step 2: and traversing the upper-side space domain candidate block according to the tenth traversal order.
The method specifically comprises the following steps: sequentially traversing the upper-side spatial domain candidate blocks according to a tenth traversal order to traverse one piece of available motion information or 0 piece of available motion information;
when the motion information of the upper spatial candidate block is available and the motion information of the left spatial candidate block is not available (including the situation that all the motion information is intra-frame prediction), sequentially traversing the telescopic block corresponding to the third spatial candidate block and the telescopic block corresponding to the second spatial candidate block to obtain available motion information.
Wherein, when the motion information of the left spatial domain candidate block and the upper spatial domain candidate block is not available, the motion information of 0 spatial domains is obtained.
And step 3: and determining all the traversed available motion information as candidate motion information.
In example three of the AMVP mode second embodiment, when the aspect ratio of the current data block is equal to 1, the spatial candidate block check order is determined, and the motion information of the spatial candidate blocks checked from among the spatial candidate blocks is determined as the candidate motion information in the spatial candidate block check order in the same manner as when the aspect ratio of the current data block is greater than 1.
In example four of the AMVP mode second embodiment, when the aspect ratio of the current data block is equal to 1, the spatial candidate block check order is determined, and the motion information of the spatial candidate blocks checked from among the spatial candidate blocks is determined as the candidate motion information in the spatial candidate block check order in the same manner as when the aspect ratio of the current data block is less than 1.
For each example of the first implementation in AMVP mode, some examples of the effect of the aspect ratio of the current data block on the checking order of the spatial candidate blocks may be as shown in table 4, where scaled a0 → scaled a1 → scaled B2, and scaled B0 → scaled B1 are traverses satisfying some conditions, optionally:
TABLE 4
Figure BDA0001717323970000361
Figure BDA0001717323970000371
It should be noted that, in the AMVP mode, the undefined checking order may adopt a default order, i.e. a fixed order in the existing video coding standard, in the above embodiment. For example, for embodiment Y4, when the aspect ratio is equal to 1 or less than 1, the traversal order of the spatial candidate blocks may adopt a default order; for embodiment Y5, the traversal order of the spatial candidate blocks may adopt a default order when the aspect ratio is greater than 1 or equal to 1.
Furthermore, in the AMVP mode, B2 may be used as the left spatial candidate block in the above embodiments.
It should be appreciated that, in the embodiment of the present application, in the AMVP mode, when the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and other orders may also be used, such as first traversing B1 → B0 → Scale B1 → Scale B0, and then traversing a0 → a1 → B2 → Scale a0 → Scale a1 → Scale B2, where the remaining implementations are not exhaustive here.
Similarly, in the AMVP mode, when the aspect ratio of the current data block is smaller than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and other orders may also be used to traverse the left spatial candidate block first and then traverse the upper spatial block, for example, traverse a1 → a0 → B2 → Scale a1 → Scale a0 → Scale B2 first, traverse B0 → B1 → Scale B0 → Scale B1 later, and the rest implementations are not exhaustive here.
Similarly, in the AMVP mode, when the aspect ratio of the current data block is equal to 1, the checking order of each spatial domain candidate block of the current data block is not limited to the order described in the above embodiment, and may also be other orders that traverse the left spatial domain candidate block first and then traverse the upper spatial domain block, or other orders that traverse the upper spatial domain candidate block first and then traverse the left spatial domain block, and the rest of the implementations are not exhaustive here.
The following describes some of the above embodiments with reference to the drawings.
Example Y5
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is first traversed in the order of B0 → B1 → scaled B0 → scaled B1; traversal is then performed in the order of A0 → A1 → B2 → scaled A0 → scaled A1 → scaled B2, which can be schematically illustrated in FIG. 4J, where scaled A0 → scaled A1 → scaled B2 is optional and scaled B0 → scaled B1 is optional.
If the aspect ratio of the current data block is less than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., traverse in the order of a0 → a1 → scaled a0 → scaled a1, and traverse in the order of B0 → B1 → B2 → scaled B0 → scaled B1 → scaled B2, where scaled a0 → scaled a1 is optional, and scaled B0 → scaled B1 → scaled B2 is optional.
Example Y6
In this embodiment, if the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block is first traversed according to the order of a0 → a1 → B2 → Scale a0 → Scale a1 → Scale B2; traversal is then performed in the order of B0 → B1 → Scale B0 → Scale B1, which can be schematically illustrated in FIG. 4K, where scaled A0 → scaled A1 → scaled B2 is optional, and scaled B0 → scaled B1 is optional.
If the aspect ratio of the current data block is greater than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., traverse in the order of a0 → a1 → scaled a0 → scaled a1, and traverse in the order of B0 → B1 → B2 → scaled B0 → scaled B1 → scaled B2, where scaled a0 → scaled a1 is optional, and scaled B0 → scaled B1 → scaled B2 is optional.
Example Y10
If the aspect ratio of the current data block is greater than 1 or equal to 1, the checking order of the spatial candidate blocks of the current data block is firstly traversed according to the order of B0 → B1 → scaled B0 → scaled B1; then traversal is performed in the order of A0 → A1 → B2 → scaledA0 → scaledA 1 → scaledB2, a schematic diagram of which can be seen in FIG. 4J.
If the aspect ratio of the current data block is less than 1, the checking order of each spatial candidate block of the current data block is firstly traversed according to the order of A0 → A1 → B2 → Scale A0 → Scale A1 → Scale B2; traversal is then performed in the order of B0 → B1 → Scale B0 → Scale B1, which can be schematically illustrated in FIG. 4K, where scaled A0 → scaled A1 → scaled B2 is optional, and scaled B0 → scaled B1 is optional.
It can be seen that, in the above embodiment, when the aspect ratio of the current data block is greater than 1, when the spatial candidate block is checked, the upper spatial candidate block is checked first, then the left spatial neighboring block is checked, by using the characteristic that when the aspect ratio of the current data block is greater than 1, the correlation between the upper spatial candidate block and the current data block is higher than the correlation between the left spatial candidate block and the current data block, the spatial candidate block with high correlation is checked preferentially, and the order of the available motion information in the motion information candidate list is determined according to the checking order of the spatial candidate blocks, so that bits required when the index value is encoded can be reduced, and the performance of video encoding is improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
Similarly, when the aspect ratio of the current data block is less than 1, the left spatial domain candidate block is checked first, then the upper spatial domain adjacent block is checked, and by utilizing the characteristic that when the aspect ratio of the current data block is less than 1, the correlation degree of the left spatial domain candidate block and the current data block is higher than that of the upper spatial domain candidate block and the current data block, the bit required for encoding the index value is reduced, and the performance of video encoding is improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
In the embodiment of the present application, after the motion information candidates corresponding to the spatial candidate blocks are checked according to the checking order shown in the above-described embodiment, the order of the motion information candidates corresponding to the spatial candidate blocks in the motion information candidate list matches the checking order of the spatial candidate blocks.
It should be appreciated that, in the above embodiment, only the checking order of the spatial candidate blocks is shown, and accordingly, only the relative checking order between the spatial candidate blocks and the relative order of the motion information candidates corresponding to the spatial candidate blocks in the motion information candidate list are also limited, and the order of the motion information candidates corresponding to the spatial candidate blocks and other motion information candidates (such as temporal motion information candidates, zero motion information, etc.) in the motion information candidate list is not limited, that is, the relative order of the motion information candidates corresponding to the spatial candidate blocks and other motion information candidates in the motion information candidate list may be referred to the relevant description in the existing video coding standard, or may be determined according to other strategies.
For example, at most 2 spatial domain candidate motion information (upper side or/and left side) are selected according to the above-mentioned method, at most 1 temporal domain candidate motion information is selected according to the temporal domain candidate motion information selection method of the AMVP mode in the existing video coding standard, and the at most 2 spatial domain candidate motion information and the at most 1 temporal domain candidate motion information are combined to obtain a combined motion information candidate list.
When spatial domain candidate motion information and temporal domain candidate motion information are combined, if 2 pieces of same motion information exist (i.e., the temporal domain candidate motion information is the same as 1 spatial domain candidate motion information), only spatial domain candidate motion information in the 2 pieces of same candidate motion information is retained.
The motion information candidates in the merged motion information candidate list are sorted into spatial candidate motion information (if there are 2 motion information candidates, the spatial candidate motion information and the temporal candidate motion information are in accordance with the checking order of the corresponding spatial candidate blocks).
If there are 2 or 3 candidate motion information in the merged motion information candidate list, add the first 2 to the final motion information candidate list.
If there are less than 2 (0 or 1) candidate motion information in the merged motion information candidate list, fill up to 2 by way of zero padding motion information (i.e., (0, 0)), and add the 2 candidate motion information to the final motion information candidate list.
It should be noted that, in the embodiment of the present application, in which the left-side spatial candidate block is traversed first, then the upper-side spatial candidate block is traversed, and the fifth spatial candidate block is used as the upper-side spatial candidate block, the left-side fourth spatial candidate block and the first spatial candidate block are scaled when the fourth spatial candidate block and the first spatial candidate block are available but unavailable. The scaling of the third, second, and fifth spatial candidate blocks on the upper side is performed when neither the fourth nor the first spatial candidate block is available.
In an embodiment where the upper spatial candidate block is traversed first, then the left spatial candidate block is traversed, and the fifth spatial candidate block is used as the upper spatial candidate block, the scaling of the upper third, second, and fifth spatial candidate blocks is performed when the third, second, and fifth spatial candidate blocks are available, but none are available. The left-hand fourth and first spatial candidate blocks are scaled when none of the third, second, and fifth spatial candidate blocks are available.
In an embodiment where the left spatial candidate block is traversed first, then the upper spatial candidate block is traversed, and the fifth spatial candidate block is used as the left spatial candidate block, the scaling of the fourth, first, and fifth spatial candidate blocks on the left is performed when the fourth, first, and fifth spatial candidate blocks are available, but unavailable. The scaling of the upper third and second spatial candidate blocks is performed when none of the fourth, first, and fifth spatial candidate blocks are available.
In an embodiment where the upper spatial candidate block is traversed first, then the left spatial candidate block is traversed, and the fifth spatial candidate block is used as the left spatial candidate block, the scaling of the upper third spatial candidate block and the second spatial candidate block is performed when the third spatial candidate block and the second spatial candidate block are available but unavailable. The left-hand fourth, first, and fifth spatial candidate blocks are scaled when neither the third nor the second spatial candidate block is available.
3. The prediction mode is Affinine Merge mode
The Affinine mode technology is that the Affinine mode is an inter-frame prediction mode newly introduced by H.266, and has a good prediction effect on rotating and zooming scenes.
In JEM, the Affinine mode is divided into two modes, one mode is Affinine Inter, and the other mode is Affinine Merge. The Affinine Merge finds the first candidate for Affinine mode coding by traversing A1 → B1 → B0 → A0 → B2. For the AF _ MERGE mode, some extra index values do not need to be transmitted, and only Flag of Affine MERGE is needed to be transmitted.
It can be seen that, in the conventional motion information prediction of the affinity Merge mode, the checking order of each spatial candidate block is fixed (i.e. a1 → B1 → B0 → a0 → B2), and it is not fully considered that different spatial candidate blocks have different correlations with the current data block under different block shapes, so that the flexibility is poor and the coding performance is poor. The method provided by the application can solve the problems.
The following describes a construction of a motion information candidate list for motion information prediction in the affinity Merge mode in the technical solution provided in the embodiment of the present application.
1) In the first implementation manner of the affinity Merge mode, when the aspect ratio of the current data block is greater than 1, the determined inspection sequence of the spatial domain candidate block is one of the first traversal sequence and the fourth traversal sequence, but when any available motion information is not traversed according to the inspection sequence of the spatial domain candidate block, the fifth spatial domain candidate block is continuously traversed; alternatively, when the aspect ratio of the current data block is greater than 1, the determined spatial candidate block checking order is the sixth traversal order.
Accordingly, the determining motion information of the spatial candidate blocks detected from each of the spatial candidate blocks as candidate motion information according to the spatial candidate block detection order may include:
and stopping traversing after traversing the first available motion information according to the spatial candidate block checking sequence.
In example two of the first embodiment, when the aspect ratio of the current data block is less than 1, the determined spatial candidate block checking order is one of a third traversal order and a fifth traversal order, but when no available motion information is traversed according to the spatial candidate block checking order, the fifth spatial candidate block is continuously traversed; alternatively, when the aspect ratio of the current data block is less than 1, the determined spatial candidate block checking order is a seventh traversal order.
Accordingly, the determining motion information of the spatial candidate blocks detected from each spatial candidate block as candidate motion information according to the spatial candidate block detection order includes:
and stopping traversing after traversing the first available motion information according to the spatial candidate block checking sequence.
In example three of the first embodiment, when the motion information prediction mode is the Affine merging affinity Merge mode and when the aspect ratio of the current data block is equal to 1, the determined spatial candidate block check order is one of a first traversal order, a second traversal order, a third traversal order, a fourth traversal order, and a fifth traversal order, but when no available motion information is traversed according to the spatial candidate block check order, the fifth spatial candidate block is continuously traversed; alternatively, the determined spatial candidate block checking order is one of a sixth traversal order or a seventh traversal order.
Accordingly, the determining motion information of the spatial candidate blocks detected from each of the spatial candidate blocks as candidate motion information according to the spatial candidate block detection order may include:
and stopping traversing after traversing the first available motion information according to the spatial candidate block checking sequence.
Corresponding to the first implementation and the second implementation in the affinity target mode, some examples of the influence of the aspect ratio of the current data block on the checking order of the spatial candidate blocks may be as shown in table 5:
TABLE 5
Figure BDA0001717323970000431
Figure BDA0001717323970000441
Figure BDA0001717323970000451
It should be noted that, in the affinity Merge mode, in the above embodiment, the undefined checking order may adopt a default order, that is, an order in the existing video coding standard. For example, for embodiment Z, when the aspect ratio is equal to 1 or less than 1, the checking order of the spatial candidate blocks may adopt a default order; for embodiment Z1, the checking order of the spatial candidate blocks may be in a default order when the aspect ratio is greater than 1 or less than 1.
In addition, in the affinity Merge mode, in the above embodiment, when each spatial candidate block is traversed, the traversal is stopped when the first available motion information is traversed.
In the affinity Merge mode, the determination of whether the motion information of the spatial candidate block is available may refer to the related description in the existing video coding standard, and the details of the embodiment of the present invention are not repeated herein.
It should be appreciated that, in the embodiment of the present application, in the affinity Merge mode, when the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may also be another order in which B1 is arranged before a1, and the remaining implementations are not exhaustive here.
Similarly, in the affinity Merge mode, when the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other orders in which a1 is arranged before B1, and the remaining implementations are not exhaustive here.
Similarly, in the affinity Merge mode, when the aspect ratio of the current data block is equal to 1, the checking order of the spatial candidate blocks of the current data block is not limited to the order described in the above embodiment, and may be other order in which B1 is arranged before a1, or other order in which a1 is arranged before B1, and the rest of the implementations are not exhaustive here.
The following describes some of the above embodiments with reference to the drawings.
Example Z3
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is: b1 → A1 → A0 → B0 → B2, a schematic diagram of which can be seen in FIG. 4L.
If the aspect ratio of the current data block is equal to 1, the checking order of each spatial candidate block of the current data block is: b1 → A1 → B0 → A0 → B2, a schematic diagram of which can be seen in FIG. 4M.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a0 → B2, which may be illustrated in fig. 4N.
Example Z6
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is: b1 → B0 → A1 → A0 → B2, the schematic diagram can be as shown in FIG. 4O.
If the aspect ratio of the current data block is equal to 1, the checking order of each spatial candidate block of the current data block is: b1 → A1 → B0 → A0 → B2, a schematic diagram of which can be seen in FIG. 4M.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → a0 → B1 → B0 → B2, which may be illustrated in fig. 4P.
Example Z15
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is: b1 → A1 → A0 → B0 → B2, a schematic diagram of which can be seen in FIG. 4L.
If the aspect ratio of the current data block is less than or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as that of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a0 → B2.
Example Z16
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is: b0 → B1 → B2 → A1 → A0, a schematic diagram of which can be seen in FIG. 4Q.
If the aspect ratio of the current data block is less than or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as that of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a0 → B2.
Example Z17
In this embodiment, if the aspect ratio of the current data block is greater than or equal to 1, the checking order of the spatial candidate blocks of the current data block is: b1 → A1 → A0 → B0 → B2, a schematic diagram of which can be seen in FIG. 4L.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a0 → B2, which may be illustrated in fig. 4N.
Example Z18
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is: b1 → A1 → A0 → B0 → B2, a schematic diagram of which can be seen in FIG. 4L.
If the aspect ratio of the current data block is less than or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → B1 → B0 → a0 → B2, which may be illustrated in fig. 4N.
Example Z19
In this embodiment, if the aspect ratio of the current data block is greater than or equal to 1, the checking order of the spatial candidate blocks of the current data block is: b1 → B0 → A1 → A0 → B2, the schematic diagram can be as shown in FIG. 4O.
If the aspect ratio of the current data block is less than 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → a0 → B1 → B0 → B2, which may be illustrated in fig. 4P.
Example Z20
Take the prediction mode as the Affinine-Merge mode as an example.
In this embodiment, if the aspect ratio of the current data block is greater than 1, the checking order of the spatial candidate blocks of the current data block is: b1 → B0 → A1 → A0 → B2, the schematic diagram can be as shown in FIG. 4O.
If the aspect ratio of the current data block is less than or equal to 1, the checking order of the spatial candidate blocks of the current data block may be the same as the checking order of the spatial candidate blocks in the existing video coding standard, i.e., a1 → a0 → B1 → B0 → B2, which may be illustrated in fig. 4P.
It can be seen that, in the above embodiment, when the aspect ratio of the current data block is greater than 1, when the 5 spatial candidate blocks are checked, B1 is checked first, then a1 is checked, by using the characteristic that when the aspect ratio of the current data block is greater than 1, the correlation between the upper spatial candidate block and the current data block is higher than that between the left spatial candidate block and the current data block, the spatial candidate block with high correlation is checked preferentially, and the order of the available motion information in the motion information candidate list is determined according to the checking order of the spatial candidate blocks, so that the bits required for encoding the index value can be reduced, and the performance of video encoding can be improved; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
Similarly, when the aspect ratio of the current data block is less than 1, firstly checking a1, and then checking B1, and when the aspect ratio of the current data block is less than 1, utilizing the characteristic that the correlation degree of the left-side spatial domain candidate block and the current data block is higher than that of the upper-side spatial domain candidate block and the current data block, reducing bits required when encoding the index value, and improving the performance of video encoding; in addition, when motion information prediction is performed, when the predicted motion information finally selected in the motion information candidate list is ranked in front in the motion information candidates, the consumption of selecting the predicted motion information can be reduced, namely, under the same consumption of coding indexes, ranking with high correlation degree in front is beneficial to improving the performance of video coding.
Secondly, the distance between the spatial candidate block and the clustering center has the influence on the checking sequence of the aspect ratio of the current data block to the availability of the motion information of the spatial candidate block and the determined sequence of the candidate motion information in the candidate list
In the following embodiments, the distance between each spatial candidate block and the cluster center is inversely related to the correlation between each spatial candidate block and the current data block, i.e., for any spatial candidate block, the farther the spatial candidate block is from the cluster center, the lower the correlation between the spatial candidate block and the current data block is.
When the candidate motion information is determined according to the correlation, the candidate motion information may be determined from the motion information of the spatial candidate blocks checked from the spatial candidate blocks in order of decreasing distance between the spatial candidate blocks and the cluster center.
When a plurality of clustering centers exist, for any spatial candidate block, the distance between the spatial candidate block and each clustering center can be determined according to the minimum value of the distances between the spatial candidate block and each clustering center.
In addition, when the motion information of the clustering center is different from the motion information of each spatial candidate block, the motion information of the clustering center is determined as candidate motion information, and the candidate motion information is added into a motion information candidate list corresponding to the current data block.
Example one
Taking the motion information prediction mode as the merging mode as an example
Referring to fig. 4R, in this embodiment, clustering is performed by using the motion information of the upper data block and the left data block (coded block) of the current data block, for example, for 64 × 64 data blocks, clustering is performed by using the motion information of the upper data blocks 1 to 16 and the motion information of the left data blocks 1 to 16 (data blocks of 4 × 4), respectively, to obtain the motion information of the cluster center; and obtaining the motion information of each spatial domain candidate block, further respectively determining the distance between each spatial domain candidate block and the clustering center according to the motion information of the clustering center and the motion information of each spatial domain candidate block, and determining the sequence of each candidate motion information in the motion candidate list according to the distance.
The candidate motion information corresponding to the spatial candidate block with smaller distance to the clustering center is ranked more forward in the motion candidate list; when the distances between the spatial candidate blocks corresponding to the two candidate motion information and the cluster center are the same, the two candidate motion information are ranked the same as the current video coding standard before and after the ranking in the motion candidate list.
In addition, when the motion information of the cluster center is different from the motion information of each spatial candidate block, the motion information of the cluster center is also determined as the motion information candidate.
Example two
Taking the motion information prediction mode as the merging mode as an example
Referring to fig. 4S, in this embodiment, to simplify the complexity of clustering, motion information of an upper data block and a left data block (coded blocks) of a current data block is sampled (assuming that the sampled target upper data block is an upper data block 2, 4, 6, …, 16 and the target left data block is a left data block 2, 4, 6, …, 16), clustering is performed, and motion information of a cluster center is obtained by clustering using the motion information of the target upper data block and the motion information of the target left data block respectively; and obtaining the motion information of each spatial domain candidate block, further respectively determining the distance between each spatial domain candidate block and the clustering center according to the motion information of the clustering center and the motion information of each spatial domain candidate block, and determining the sequence of each candidate motion information in the motion candidate list according to the distance.
The candidate motion information corresponding to the spatial candidate block with smaller distance to the clustering center is ranked more forward in the motion candidate list; when the distances between the spatial candidate blocks corresponding to the two candidate motion information and the clustering center are the same, the two candidate motion information are ranked the same as the current video coding standard before and after the ranking in the motion information candidate list.
In addition, when the motion information of the cluster center is different from the motion information of each spatial candidate block, the motion information of the cluster center is also determined as the motion information candidate.
Module-based determination of checking order of whether motion information of spatial candidate blocks is available, and ordering of determined candidate motion information in candidate list
EXAMPLE III
Taking the motion information prediction mode as the merging mode as an example
Referring to fig. 4T, in this embodiment, matching blocks of the Template1 and Template2 are found in the reference frame according to the motion information of a1, and differences from predicted pixels of the Template1 and Template2 of the current data block are calculated; this difference is taken as the distortion metric distorsion 1. Wherein the difference calculation is performed pixel by pixel.
Finding a matching block of Template1 and Template2 in the reference frame according to the motion information of B1, and calculating a difference value with the predicted pixels of Template1 and Template2 of the current data block; this difference is taken as the distortion metric distorsion b 1.
Similarly, distorsionA 0, distorsion B0 and distorsion B2 are calculated in sequence. And finally, sorting the corresponding candidate motion information in the motion information candidate list according to the sequence of the Distation from small to large.
EXAMPLE III
Taking the motion information prediction mode as the merging mode as an example
Referring to fig. 4U, in this embodiment, to simplify the computation of the distorsion, the template is downsampled, for example, only pixels at even positions are computed.
Accordingly, according to the motion information of a1, finding matching blocks of Template1 and Template2 in the reference frame and calculating the difference value with the predicted pixels of Template1 and Template2 of the current data block; this difference is taken as the distortion metric distorsion 1. Wherein the difference calculation is performed pixel by pixel.
Finding a matching block of Template1 and Template2 in the reference frame according to the motion information of B1, and calculating a difference value with the predicted pixels of Template1 and Template2 of the current data block; this difference is taken as the distortion metric distorsion b 1.
Similarly, distorsionA 0, distorsion B0 and distorsion B2 are calculated in sequence. And finally, sorting the corresponding available candidate motion information in the motion information candidate list according to the sequence of the Distation from small to large.
In the embodiment of the application, when motion information prediction is performed, candidate motion information is determined according to the correlation degree of each spatial candidate block of a current data block and the current data block, and a motion information candidate list corresponding to the current data block is constructed according to the determined candidate motion information, so that the flexibility and the efficiency of constructing the motion information candidate list are improved, and the video coding performance is improved.
The methods provided herein are described above. The following describes the apparatus provided in the present application:
please refer to fig. 5, which is a schematic diagram illustrating a hardware structure of an apparatus for constructing a motion information candidate list according to an embodiment of the present disclosure. The motion information candidate list construction means may comprise a processor 501, a communication interface 502, a memory 503 and a communication bus 504. The processor 501, the communication interface 502 and the memory 503 are in communication with each other via a communication bus 504. Wherein, the memory 503 stores a computer program; the processor 501 may implement the motion information candidate list construction method described above by executing a program stored on the memory 503.
The memory 503 referred to herein may be any electronic, magnetic, optical, or other physical storage device that can contain or store information such as executable instructions, data, and the like. For example, the memory 502 may be: RAM (random access memory), volatile memory, non-volatile memory, flash memory, a storage drive (e.g., a hard drive), a solid state drive, any type of storage disk (e.g., an optical disk, dvd, etc.), or similar storage medium, or a combination thereof.
As shown in fig. 6, functionally divided, the motion information candidate list construction apparatus may include a first determination unit 610, a second determination unit 620, and a construction unit 630; wherein:
a first determining unit 610, configured to determine a correlation between each spatial candidate block of a current data block and the current data block;
a second determining unit 620, configured to determine candidate motion information according to the correlation;
a constructing unit 630, configured to construct a motion information candidate list corresponding to the current data block according to the candidate motion information.
In an alternative embodiment, the first determining unit 610 is specifically configured to determine a shape of the current data block; and determining the correlation degree of each spatial candidate block of the current data block and the current data block according to the shape of the current data block.
In an alternative embodiment, the second determining unit 620 is specifically configured to determine a checking order of the spatial candidate blocks matching the correlation; and determining the motion information of the spatial candidate blocks detected from each spatial candidate block as the candidate motion information according to the checking sequence of the spatial candidate blocks.
In an alternative embodiment, the second determining unit 620 is specifically configured to determine a motion information prediction mode of the current data block; and determining the checking sequence of the spatial candidate blocks according to the correlation and the motion information prediction mode.
In an alternative embodiment, the shape of the current data block is characterized by the aspect ratio of the current data block;
accordingly, the first determining unit 610 is specifically configured to determine a correlation degree between each spatial candidate block and the current data block according to the aspect ratio and a relative position relationship between each spatial candidate block and the current data block.
In an optional implementation manner, the first determining unit 610 is specifically configured to determine that a correlation between an upper spatial candidate block of the current data block and the current data block is higher than a correlation between a left spatial candidate block of the current data block and the current data block if the aspect ratio of the current data block is greater than 1; and/or the first and/or second light sources,
if the aspect ratio of the current data block is less than 1, determining that the correlation degree of the left spatial domain candidate block of the current data block and the current data block is higher than the correlation degree of the upper spatial domain candidate block of the current data block and the current data block;
the second determining unit 620 is specifically configured to determine, according to the height of the correlation and the position information of each spatial candidate block relative to the current data block, each to-be-traversed spatial candidate block sequentially traversed according to the sequence and a traversal order of each to-be-traversed spatial candidate block.
In an alternative embodiment, when the motion information prediction mode is the merge mode, the spatial candidate block checking order includes at least a traversal order of 4 spatial candidate blocks; the traversal order of the 4 spatial candidate blocks is positioned before a fifth spatial candidate block, and the fifth spatial candidate block is a replacement spatial candidate block;
the 4 spatial candidate blocks include a first spatial candidate block, a second spatial candidate block, a third spatial candidate block and a fourth spatial candidate block, wherein the first spatial candidate block is a spatial neighboring block at the bottom left of the current data block, the second spatial candidate block is a spatial neighboring block at the right of the top side of the current data block, the third spatial candidate block is a spatial neighboring block closest to the top right of the current data block, the fourth spatial candidate block is a spatial neighboring block closest to the bottom left of the current data block, and the fifth spatial candidate block is a spatial neighboring block closest to the top left of the current data block.
In an optional implementation, when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is greater than 1, the traversal order of the 4 spatial candidate blocks is a first traversal order, and the first traversal order is to sequentially traverse the second spatial candidate block, the first spatial candidate block, the fourth spatial candidate block, and the third spatial candidate block.
In an optional implementation manner, when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is less than 1, the traversal order of the 4 spatial candidate blocks is a third traversal order, where the third traversal order is to sequentially traverse the first spatial candidate block, the second spatial candidate block, the third spatial candidate block, and the fourth spatial candidate block.
In an optional implementation manner, when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is equal to 1, the traversal order of the 4 spatial candidate blocks is a second traversal order, where the second traversal order is to sequentially traverse the second spatial candidate block, the first spatial candidate block, the third spatial candidate block, and the fourth spatial candidate block.
In an optional implementation manner, when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is greater than 1, the traversal order of the 4 spatial candidate blocks is a fourth traversal order, where the fourth traversal order is to sequentially traverse the second spatial candidate block, the third spatial candidate block, the first spatial candidate block, and the fourth spatial candidate block.
In an optional implementation manner, when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is less than 1, the traversal order of the 4 spatial candidate blocks is a fifth traversal order, where the fifth traversal order is to sequentially traverse the first spatial candidate block, the fourth spatial candidate block, the second spatial candidate block, and the third spatial candidate block.
In an alternative embodiment, when the motion information prediction mode is the merge mode and the aspect ratio of the current data block is equal to 1, the traversal order of the 4 spatial candidate blocks is one of a first traversal order, a third traversal order, a fourth traversal order, and a fifth traversal order, where the first traversal order is to sequentially traverse the second spatial candidate block, the first spatial candidate block, the fourth spatial candidate block, and the third spatial candidate block; the third traversal order is to sequentially traverse the first, second, third, and fourth spatial candidate blocks.
In an alternative embodiment, when the motion information prediction mode is the merge mode, the determined spatial candidate block checking order is located in front of the temporal candidate blocks, and the spatial candidate block checking order at least includes a traversal order of 5 spatial candidate blocks;
the 5 spatial candidate blocks include a first spatial candidate block, a second spatial candidate block, a third spatial candidate block, a fourth spatial candidate block and a fifth spatial candidate block, wherein the first spatial candidate block is a spatial neighboring block at the bottom left of the current data block, the second spatial candidate block is a spatial neighboring block at the right of the current data block, the third spatial candidate block is a spatial neighboring block closest to the top right of the current data block, the fourth spatial candidate block is a spatial neighboring block closest to the bottom left of the current data block, and the fifth spatial candidate block is a spatial neighboring block closest to the top left of the current data block.
In an optional implementation manner, when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is greater than 1, the traversal order of the 5 spatial candidate blocks is a sixth traversal order, and the sixth traversal order is to sequentially traverse the third spatial candidate block, the second spatial candidate block, the fifth spatial candidate block, the first spatial candidate block, and the fourth spatial candidate block.
In an optional implementation manner, when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is less than 1, the traversal order of the 5 spatial candidate blocks is a seventh traversal order, and the seventh traversal order is to sequentially traverse the first spatial candidate block, the fourth spatial candidate block, the third spatial candidate block, the second spatial candidate block, and the fifth spatial candidate block.
In an alternative embodiment, when the motion information prediction mode is the merge mode and the aspect ratio of the current data block is equal to 1, the determined checking order of the spatial candidate blocks is the same as when the aspect ratio of the current data block is greater than 1; alternatively, the first and second electrodes may be,
when the motion information prediction mode is a merge mode and the aspect ratio of the current data block is equal to 1, the determined checking order of the spatial candidate blocks is the same as when the aspect ratio of the current data block is less than 1.
In an optional implementation manner, the second determining unit 620 is specifically configured to traverse all available motion information in the first spatial candidate block, the second spatial candidate block, the third spatial candidate block, the fourth spatial candidate block, and the fifth spatial candidate block according to the determined spatial candidate block checking order, and determine all available motion information traversed as the candidate motion information;
the constructing unit 630 is specifically configured to determine an order of all available motion information in the motion information candidate list according to the spatial candidate block checking order.
In an optional implementation manner, when the motion information prediction mode is the AMVP mode, the determined checking order of the spatial candidate blocks at least includes an eighth traversal order and a ninth traversal order, where the eighth traversal order is used to perform traversal of an upper spatial candidate block of the current data block, and the ninth traversal order is used to perform traversal of a left spatial candidate block of the current data block; the upper-side spatial candidate block includes: a third spatial candidate block, a second spatial candidate block, and a fifth spatial candidate block; the left spatial candidate block includes: a fourth spatial candidate block and a first spatial candidate block;
the eighth traversal order is to sequentially traverse a third spatial candidate block, a second spatial candidate block and a fifth spatial candidate block;
and the ninth traversal order is to sequentially traverse the fourth spatial candidate block and the first spatial candidate block.
In an optional implementation manner, the second determining unit 620 is specifically configured to, when the aspect ratio of the current data block is greater than 1, traverse the upper-side spatial domain candidate block according to the eighth traversal order, and traverse the left-side spatial domain candidate block according to the ninth traversal order; and determining all the traversed available motion information as the candidate motion information.
In an optional implementation manner, the second determining unit 620 is specifically configured to, when the aspect ratio of the current data block is less than 1, traverse the left spatial domain candidate block according to the ninth traversal order, and traverse the upper spatial domain candidate block according to the eighth traversal order;
and determining all the traversed available motion information as the candidate motion information.
In an optional implementation manner, when the motion information prediction mode is the AMVP mode, the determined checking order of the spatial candidate blocks at least includes a tenth traversal order and an eleventh traversal order, where the tenth traversal order is used to perform traversal of an upper-side spatial candidate block of the current data block, and the eleventh traversal order is used to perform traversal of a left-side spatial candidate block of the current data block; the upper-side spatial candidate block includes: a third spatial candidate block and a second spatial candidate block; the left spatial candidate block includes: a fourth spatial candidate block, a first spatial candidate block, and a fifth spatial candidate block;
the tenth traversal order is to sequentially traverse the third spatial candidate block and the second spatial candidate block;
the eleventh traversal order is to sequentially traverse the fourth spatial candidate block, the first spatial candidate block, and the fifth spatial candidate block.
In an optional implementation manner, the second determining unit 620 is specifically configured to, when the aspect ratio of the current data block is greater than 1, traverse the upper-side spatial domain candidate block according to the tenth traversal order, and traverse the left-side spatial domain candidate block according to the eleventh traversal order;
and determining all the traversed available motion information as the candidate motion information.
In an optional implementation manner, the second determining unit 620 is specifically configured to, when the aspect ratio of the current data block is less than 1, traverse the left spatial domain candidate block according to the eleventh traversal order, and then traverse the upper spatial domain candidate block according to the tenth traversal order;
and determining all the traversed available motion information as the candidate motion information.
In an alternative embodiment, when the aspect ratio of the current data block is equal to 1, the determined spatial candidate block checking order and the manner of determining the motion information of the spatial candidate blocks checked from each spatial candidate block as the candidate motion information according to the spatial candidate block checking order are the same as when the aspect ratio of the current data block is greater than 1; alternatively, the first and second electrodes may be,
when the aspect ratio of the current data block is equal to 1, the determined checking order of the spatial candidate blocks, and the manner of determining the motion information of the spatial candidate blocks checked from each spatial candidate block as the candidate motion information according to the checking order of the spatial candidate blocks is the same as when the aspect ratio of the current data block is less than 1.
In an optional implementation manner, when the motion information prediction mode is an affinity Merge mode and the aspect ratio of the current data block is greater than 1, the determined spatial candidate block checking order is one of a first traversal order, a third traversal order and a fourth traversal order, but when no available motion information is traversed according to the spatial candidate block checking order, a fifth spatial candidate block is continuously traversed; or, the determined checking order of the spatial candidate blocks is a sixth traversal order.
Accordingly, the second determining unit 620 is specifically configured to stop traversing after traversing the first available motion information according to the spatial candidate block checking order.
In an optional implementation manner, when the motion information prediction mode is an affinity Merge mode and the aspect ratio of the current data block is less than 1, the determined inspection order of the spatial candidate block is one of a third traversal order and a fifth traversal order, but when no available motion information is traversed according to the inspection order of the spatial candidate block, the fifth spatial candidate block is continuously traversed; or, the determined checking order of the spatial candidate blocks is a seventh traversal order.
Accordingly, the second determining unit 620 is specifically configured to stop traversing after traversing the first available motion information according to the spatial candidate block checking order.
In an optional implementation manner, when the motion information prediction mode is an affinity Merge mode and when the aspect ratio of the current data block is equal to 1, the determined spatial candidate block checking order is one of a first traversal order, a second traversal order, a third traversal order, a fourth traversal order and a fifth traversal order, but when any available motion information is not traversed according to the spatial candidate block checking order, the fifth spatial candidate block is continuously traversed; or, the determined spatial candidate block checking order is one of a sixth traversal order or a seventh traversal order.
Accordingly, the second determining unit 620 is specifically configured to stop traversing after traversing the first available motion information according to the spatial candidate block checking order.
In an alternative embodiment, as shown in fig. 7, the motion information candidate list construction means may further include: a clustering unit 640; wherein:
a clustering unit 640, configured to cluster motion information of an upper data block or/and a left data block of the current data block to obtain motion information of a clustering center;
a first determining unit 610, configured to determine, according to the motion information of the cluster center and the motion information of each spatial candidate block, a distance between each spatial candidate block and the cluster center; and determining the correlation degree of each spatial domain candidate block and the current data block according to the distance between each spatial domain candidate block and the clustering center.
In an optional implementation manner, the clustering unit 640 is specifically configured to sample motion information of an upper side data block or/and a left side data block of the current data block according to a preset sampling rule, so as to obtain a target upper side data block or/and a target left side data block; clustering the data block on the upper side of the target or/and the data block on the left side of the target
In an alternative embodiment, when there are multiple cluster centers, for any spatial candidate block, the minimum value of the distances between the spatial candidate block and the multiple cluster centers is determined as the distance between the spatial candidate block and the cluster centers.
In an alternative embodiment, the distance between each spatial candidate block and the cluster center is inversely related to the correlation between each spatial candidate block and the current data block.
Accordingly, the second determining unit 620 is specifically configured to determine the candidate motion information from the motion information of the spatial candidate blocks detected from each spatial candidate block in an order from small to large distances between each spatial candidate block and the cluster center.
In an optional implementation manner, the second determining unit 620 is specifically configured to determine, when the motion information of the cluster center is different from the motion information of each spatial candidate block, the motion information of the cluster center as the candidate motion information, and add the candidate motion information to the motion information candidate list corresponding to the current data block.
The present embodiment also provides a machine-readable storage medium, such as the memory 503 in fig. 5, storing a computer program, which can be executed by the processor 501 in the motion information candidate list construction apparatus shown in fig. 5 to execute the motion information candidate list construction method described above.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The above description is only exemplary of the present application and should not be taken as limiting the present application, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the scope of protection of the present application.

Claims (35)

1. A method for constructing a motion information candidate list, comprising:
determining the correlation degree of each spatial candidate block of the current data block and the current data block;
determining candidate motion information according to the correlation;
and constructing a motion information candidate list corresponding to the current data block according to the candidate motion information.
2. The method of claim 1, wherein determining a correlation of each spatial candidate block of a current data block with the current data block comprises:
determining a shape of the current data block;
and determining the correlation degree of each spatial candidate block of the current data block and the current data block according to the shape of the current data block.
3. The method of claim 2, wherein determining candidate motion information based on the correlation comprises:
determining a checking order of the spatial candidate blocks matched with the correlation degree;
and determining the motion information of the spatial candidate blocks detected from each spatial candidate block as the candidate motion information according to the checking sequence of the spatial candidate blocks.
4. The method of claim 3, wherein determining the spatial candidate block checking order that matches the correlation comprises:
determining a prediction mode of the current data block;
and determining the checking sequence of the spatial candidate blocks according to the correlation and the prediction mode.
5. The method of claim 4, wherein the shape of the current data block is characterized by an aspect ratio of the current data block;
the determining the correlation degree of each spatial candidate block of the current data block and the current data block according to the shape of the current data block includes:
and determining the correlation degree of each spatial candidate block and the current data block according to the aspect ratio and the relative position relation of each spatial candidate block and the current data block.
6. The method of claim 5, wherein determining the correlation of each spatial candidate block with the current data block according to the aspect ratio and the relative position relationship of each spatial candidate block with the current data block comprises:
if the aspect ratio of the current data block is greater than 1, determining that the correlation degree of the upper spatial domain candidate block of the current data block and the current data block is higher than the correlation degree of the left spatial domain candidate block of the current data block and the current data block; and/or the first and/or second light sources,
if the aspect ratio of the current data block is less than 1, determining that the correlation degree of the left spatial domain candidate block of the current data block and the current data block is higher than the correlation degree of the upper spatial domain candidate block of the current data block and the current data block;
the determining the checking order of the spatial candidate blocks matching the correlation degree comprises:
and determining each to-be-traversed spatial candidate block sequentially traversed according to the sequence and the traversal order of each to-be-traversed spatial candidate block according to the height of the correlation and the position information of each spatial candidate block relative to the current data block.
7. The method according to claim 5 or 6, characterized in that when said prediction mode is merge mode, said spatial candidate block checking order comprises at least the traversal order of 4 spatial candidate blocks; the traversal order of the 4 spatial candidate blocks is positioned before a fifth spatial candidate block, and the fifth spatial candidate block is a replacement spatial candidate block;
the 4 spatial candidate blocks include a first spatial candidate block, a second spatial candidate block, a third spatial candidate block and a fourth spatial candidate block, wherein the first spatial candidate block is a spatial neighboring block at the bottom left of the current data block, the second spatial candidate block is a spatial neighboring block at the right of the top side of the current data block, the third spatial candidate block is a spatial neighboring block closest to the top right of the current data block, the fourth spatial candidate block is a spatial neighboring block closest to the bottom left of the current data block, and the fifth spatial candidate block is a spatial neighboring block closest to the top left of the current data block.
8. The method of claim 7, wherein when the prediction mode is a merge mode and an aspect ratio of the current data block is greater than 1, an order of traversal of the 4 spatial candidate blocks is a first order of traversal, the first order of traversal being in order to traverse the second spatial candidate block, the first spatial candidate block, the fourth spatial candidate block, and the third spatial candidate block.
9. The method according to any one of claims 7 or 8,
and when the prediction mode is a merging mode and the aspect ratio of the current data block is less than 1, the traversal order of the 4 spatial candidate blocks is a third traversal order, and the third traversal order sequentially traverses the first spatial candidate block, the second spatial candidate block, the third spatial candidate block and the fourth spatial candidate block.
10. The method according to any one of claims 7 to 9,
and when the prediction mode is a merging mode and the aspect ratio of the current data block is equal to 1, the traversal order of the 4 spatial candidate blocks is a second traversal order, and the second traversal order is to sequentially traverse the second spatial candidate block, the first spatial candidate block, the third spatial candidate block and the fourth spatial candidate block.
11. The method of claim 7, wherein when the prediction mode is a merge mode and the aspect ratio of the current data block is greater than 1, the 4 spatial candidate blocks have a fourth traversal order, the fourth traversal order being sequentially traversing the second, third, first and fourth spatial candidate blocks.
12. The method according to claim 7 or 11,
and when the prediction mode is a merging mode and the aspect ratio of the current data block is less than 1, the traversal order of the 4 spatial candidate blocks is a fifth traversal order, and the fifth traversal order is to sequentially traverse the first spatial candidate block, the fourth spatial candidate block, the second spatial candidate block and the third spatial candidate block.
13. The method of any one of claims 8, 9, 11, or 12,
when the prediction mode is a merge mode and the aspect ratio of the current data block is equal to 1, the traversal order of the 4 spatial candidate blocks is one of a first traversal order, a third traversal order, a fourth traversal order and a fifth traversal order, wherein the first traversal order is to sequentially traverse the second spatial candidate block, the first spatial candidate block, the fourth spatial candidate block and the third spatial candidate block; the third traversal order is to sequentially traverse the first, second, third, and fourth spatial candidate blocks.
14. The method according to claim 5 or 6, wherein when the prediction mode is merge mode, the determined checking order of the spatial candidate blocks is located in front of the temporal candidate blocks, and the checking order of the spatial candidate blocks comprises at least a traversal order of 5 spatial candidate blocks;
the 5 spatial candidate blocks include a first spatial candidate block, a second spatial candidate block, a third spatial candidate block, a fourth spatial candidate block and a fifth spatial candidate block, wherein the first spatial candidate block is a spatial neighboring block at the bottom left of the current data block, the second spatial candidate block is a spatial neighboring block at the right of the current data block, the third spatial candidate block is a spatial neighboring block closest to the top right of the current data block, the fourth spatial candidate block is a spatial neighboring block closest to the bottom left of the current data block, and the fifth spatial candidate block is a spatial neighboring block closest to the top left of the current data block.
15. The method of claim 14, wherein when the prediction mode is a merge mode and an aspect ratio of the current data block is greater than 1, the 5 spatial candidate blocks have a sixth traversal order, the sixth traversal order being a sequential traversal of the third, second, fifth, first, and fourth spatial candidate blocks.
16. The method according to claim 14 or 15, wherein when the prediction mode is merge mode and the aspect ratio of the current data block is less than 1, the 5 spatial candidate blocks have a seventh traversal order, and the seventh traversal order is sequentially traversing the first, fourth, third, second and fifth spatial candidate blocks.
17. The method according to any one of claims 14 to 16,
when the prediction mode is a merge mode and the aspect ratio of the current data block is equal to 1, determining the checking order of the spatial candidate blocks to be the same as when the aspect ratio of the current data block is greater than 1; alternatively, the first and second electrodes may be,
when the prediction mode is a merge mode and the aspect ratio of the current data block is equal to 1, the determined checking order of the spatial candidate blocks is the same as when the aspect ratio of the current data block is less than 1.
18. The method according to any one of claims 7 to 17,
the determining, according to the spatial candidate block inspection order, motion information of the spatial candidate blocks inspected from each spatial candidate block as the candidate motion information includes:
traversing available motion information in the first spatial candidate block, the second spatial candidate block, the third spatial candidate block, the fourth spatial candidate block and the fifth spatial candidate block according to the determined checking sequence of the spatial candidate blocks, and determining all the traversed available motion information as the candidate motion information;
the constructing a motion information candidate list corresponding to the current data block according to the candidate motion information includes:
determining an order of all available motion information in the motion information candidate list according to the spatial candidate block checking order.
19. The method according to claim 5 or 6, wherein when the prediction mode is the Advanced Motion Vector Prediction (AMVP) mode, the determined spatial candidate block checking order comprises at least an eighth traversal order and a ninth traversal order, wherein the eighth traversal order is used for performing traversal of an upper spatial candidate block of the current block, and the ninth traversal order is used for performing traversal of a left spatial candidate block of the current block; the upper-side spatial candidate block includes: a third spatial candidate block, a second spatial candidate block, and a fifth spatial candidate block; the left spatial candidate block includes: a fourth spatial candidate block and a first spatial candidate block;
the eighth traversal order is to sequentially traverse a third spatial candidate block, a second spatial candidate block and a fifth spatial candidate block;
and the ninth traversal order is to sequentially traverse the fourth spatial candidate block and the first spatial candidate block.
20. The method of claim 19, wherein determining motion information of the spatial candidate blocks detected from each of the spatial candidate blocks as the candidate motion information in the spatial candidate block detection order when the aspect ratio of the current data block is greater than 1 comprises:
traversing the upper-side spatial domain candidate block according to the eighth traversal order, and traversing the left-side spatial domain candidate block according to the ninth traversal order;
and determining all the traversed available motion information as the candidate motion information.
21. The method according to claim 19 or 20, wherein when the aspect ratio of the current data block is less than 1, the determining motion information of the spatial candidate blocks detected from each of the spatial candidate blocks as the candidate motion information in the spatial candidate block detection order comprises:
traversing the left-side spatial domain candidate block according to the ninth traversal order, and traversing the upper-side spatial domain candidate block according to the eighth traversal order;
and determining all the traversed available motion information as the candidate motion information.
22. The method according to claim 5 or 6, wherein when the prediction mode is the Advanced Motion Vector Prediction (AMVP) mode, the determined spatial candidate block checking order comprises at least a tenth traversal order for performing a traversal of an upper spatial candidate block of the current block and an eleventh traversal order for performing a traversal of a left spatial candidate block of the current block; the upper-side spatial candidate block includes: a third spatial candidate block and a second spatial candidate block; the left spatial candidate block includes: a fourth spatial candidate block, a first spatial candidate block, and a fifth spatial candidate block;
the tenth traversal order is to sequentially traverse the third spatial candidate block and the second spatial candidate block;
the eleventh traversal order is to sequentially traverse the fourth spatial candidate block, the first spatial candidate block, and the fifth spatial candidate block.
23. The method of claim 22, wherein determining motion information of the spatial candidate blocks detected from each of the spatial candidate blocks as the candidate motion information in the spatial candidate block checking order when the aspect ratio of the current data block is greater than 1 comprises:
traversing the upper-side spatial domain candidate block according to the tenth traversal order, and traversing the left-side spatial domain candidate block according to the eleventh traversal order;
and determining all the traversed available motion information as the candidate motion information.
24. The method according to claim 22 or 23, wherein when the aspect ratio of the current data block is less than 1, said determining motion information of the spatial candidate blocks detected from each spatial candidate block as the candidate motion information according to the spatial candidate block detection order comprises:
traversing the left-side spatial domain candidate block according to the eleventh traversal order, and traversing the upper-side spatial domain candidate block according to the tenth traversal order;
and determining all the traversed available motion information as the candidate motion information.
25. The method according to any one of claims 19 to 24,
when the aspect ratio of the current data block is equal to 1, determining the checking sequence of the spatial candidate blocks, and determining the motion information of the spatial candidate blocks checked from each spatial candidate block as the candidate motion information according to the checking sequence of the spatial candidate blocks in the same way as when the aspect ratio of the current data block is greater than 1; alternatively, the first and second electrodes may be,
when the aspect ratio of the current data block is equal to 1, the determined checking order of the spatial candidate blocks, and the manner of determining the motion information of the spatial candidate blocks checked from each spatial candidate block as the candidate motion information according to the checking order of the spatial candidate blocks is the same as when the aspect ratio of the current data block is less than 1.
26. The method according to claim 5 or 6, wherein when the prediction mode is Affine merging affinity Merge mode and the aspect ratio of the current data block is greater than 1, the determined spatial candidate block checking order is one of a first traversal order, a third traversal order and a fourth traversal order, but when no available motion information is traversed according to the spatial candidate block checking order, a fifth spatial candidate block is continuously traversed; or, the determined checking order of the spatial candidate blocks is a sixth traversal order;
the determining, according to the spatial candidate block inspection order, motion information of the spatial candidate blocks inspected from each spatial candidate block as the candidate motion information includes:
and stopping traversing after the first available motion information is traversed according to the checking sequence of the spatial candidate blocks.
27. The method according to any one of claims 5, 6, and 26, wherein when the prediction mode is an affinity Merge mode and the aspect ratio of the current data block is less than 1, the determined spatial candidate block checking order is one of a third traversal order and a fifth traversal order, but when no available motion information is traversed according to the spatial candidate block checking order, the fifth spatial candidate block is continuously traversed; or, the determined checking order of the spatial candidate blocks is a seventh traversal order;
the determining, according to the spatial candidate block inspection order, motion information of the spatial candidate blocks inspected from each spatial candidate block as the candidate motion information includes:
and stopping traversing after the first available motion information is traversed according to the checking sequence of the spatial candidate blocks.
28. The method according to claim 26 or 27, wherein when the prediction mode is an affinity Merge mode and when the aspect ratio of the current data block is equal to 1, the determined spatial candidate block checking order is one of a first traversal order, a second traversal order, a third traversal order, a fourth traversal order, and a fifth traversal order, but when no available motion information is traversed according to the spatial candidate block checking order, the traversal of a fifth spatial candidate block is continued; or, the determined checking order of the spatial candidate blocks is one of a sixth traversal order or a seventh traversal order;
the determining, according to the spatial candidate block inspection order, motion information of the spatial candidate blocks inspected from each spatial candidate block as the candidate motion information includes:
and stopping traversing after the first available motion information is traversed according to the checking sequence of the spatial candidate blocks.
29. The method of claim 1, wherein determining a correlation of each spatial candidate block of a current data block with the current data block comprises:
clustering the motion information of the upper data block or/and the left data block of the current data block to obtain the motion information of a clustering center;
determining the distance between each space domain candidate block and the clustering center according to the motion information of the clustering center and the motion information of each space domain candidate block;
and determining the correlation degree of each spatial domain candidate block and the current data block according to the distance between each spatial domain candidate block and the clustering center.
30. The method according to claim 29, wherein the clustering motion information of an upper data block or/and a left data block of the current data block comprises:
sampling motion information of an upper data block or/and a left data block of the current data block according to a preset sampling rule to obtain a target upper data block or/and a target left data block;
and clustering the data block on the upper side of the target or/and the data block on the left side of the target.
31. The method according to claim 29 or 30, wherein when there are multiple cluster centers, for any spatial candidate block, the minimum value of the distances between the spatial candidate block and the multiple cluster centers is determined as the distance between the spatial candidate block and the cluster centers.
32. The method of claim 29 or 30 wherein the distance of each spatial candidate block from the cluster center is inversely related to the correlation of each spatial candidate block with the current data block;
determining candidate motion information according to the correlation, including:
and determining the candidate motion information from the motion information of the spatial candidate blocks detected from the spatial candidate blocks according to the sequence of the distances between the spatial candidate blocks and the clustering center from small to large.
33. The method according to claim 29 or 30, wherein after clustering the motion information of the upper data block or/and the left data block of the current data block, the method further comprises:
and when the motion information of the clustering center is different from the motion information of each airspace candidate block, determining the motion information of the clustering center as the candidate motion information, and adding the candidate motion information into a motion candidate list corresponding to the current data block.
34. A motion candidate list construction device is characterized by comprising a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory are communicated with each other through the communication bus;
a memory for storing a computer program;
a processor for implementing the method steps of any of claims 1-33 when executing a program stored in the memory.
35. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method steps of any one of claims 1 to 33.
CN201810714334.3A 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium Active CN110662072B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911129453.3A CN110933414B (en) 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium
CN201810714334.3A CN110662072B (en) 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810714334.3A CN110662072B (en) 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201911129453.3A Division CN110933414B (en) 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium

Publications (2)

Publication Number Publication Date
CN110662072A true CN110662072A (en) 2020-01-07
CN110662072B CN110662072B (en) 2022-04-26

Family

ID=69027216

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810714334.3A Active CN110662072B (en) 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium
CN201911129453.3A Active CN110933414B (en) 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201911129453.3A Active CN110933414B (en) 2018-06-29 2018-06-29 Motion information candidate list construction method and device and readable storage medium

Country Status (1)

Country Link
CN (2) CN110662072B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020182165A1 (en) * 2019-03-11 2020-09-17 杭州海康威视数字技术股份有限公司 Method for constructing motion information candidate list and triangular prediction decoding method and apparatus
CN111953974A (en) * 2020-08-26 2020-11-17 珠海大横琴科技发展有限公司 Motion parameter candidate list construction method and device and computer equipment

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112868235A (en) * 2020-04-03 2021-05-28 深圳市大疆创新科技有限公司 Video processing method, video processing device and computer readable storage medium

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102714736A (en) * 2010-01-19 2012-10-03 三星电子株式会社 Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
CN102810207A (en) * 2011-06-01 2012-12-05 索尼公司 Image processing device, image processing method, recording medium, and program
CN102833540A (en) * 2010-01-18 2012-12-19 联发科技股份有限公司 Motion prediction method
CN102934434A (en) * 2010-07-12 2013-02-13 联发科技股份有限公司 Method and apparatus of temporal motion vector prediction
CN103385003A (en) * 2011-03-17 2013-11-06 联发科技股份有限公司 Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate
CN103404143A (en) * 2011-02-24 2013-11-20 高通股份有限公司 Hierarchy of motion prediction video blocks
US20140241435A1 (en) * 2011-10-26 2014-08-28 Intellectual Discovery Co., Ltd. Method for managing memory, and device for decoding video using same
US20160316221A1 (en) * 2013-12-19 2016-10-27 Sharp Kabushiki Kaisha Merge candidate derivation device, image decoding device, and image coding device
US20160323597A1 (en) * 2011-12-28 2016-11-03 JVC Kenwood Corporation Moving picture coding device, moving picture coding method and moving picture coding program, and moving picture decoding device, moving picture decoding method and moving picture decoding program
CN106331723A (en) * 2016-08-18 2017-01-11 上海交通大学 Video frame rate up-conversion method and system based on motion region segmentation
CN106534858A (en) * 2015-09-10 2017-03-22 展讯通信(上海)有限公司 Real motion estimation method and device
WO2017157259A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Method and apparatus of video coding with affine motion compensation

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8824558B2 (en) * 2010-11-23 2014-09-02 Mediatek Inc. Method and apparatus of spatial motion vector prediction
CN102611881B (en) * 2011-01-19 2014-06-25 华为技术有限公司 Method and module for obtaining reference motion vector, encoding and decoding device
KR101809879B1 (en) * 2011-09-28 2017-12-15 가부시키가이샤 제이브이씨 켄우드 Video encoding device, video encoding method and recording medium storing video encoding program
TWI577181B (en) * 2011-12-28 2017-04-01 Jvc Kenwood Corp Dynamic video coding device, dynamic image coding method and dynamic image coding program
WO2017156705A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Affine prediction for video coding
US10560718B2 (en) * 2016-05-13 2020-02-11 Qualcomm Incorporated Merge candidates for motion vector prediction for video coding

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102833540A (en) * 2010-01-18 2012-12-19 联发科技股份有限公司 Motion prediction method
CN102714736A (en) * 2010-01-19 2012-10-03 三星电子株式会社 Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
CN102934434A (en) * 2010-07-12 2013-02-13 联发科技股份有限公司 Method and apparatus of temporal motion vector prediction
CN103404143A (en) * 2011-02-24 2013-11-20 高通股份有限公司 Hierarchy of motion prediction video blocks
CN103385003A (en) * 2011-03-17 2013-11-06 联发科技股份有限公司 Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate
CN102810207A (en) * 2011-06-01 2012-12-05 索尼公司 Image processing device, image processing method, recording medium, and program
US20140241435A1 (en) * 2011-10-26 2014-08-28 Intellectual Discovery Co., Ltd. Method for managing memory, and device for decoding video using same
US20160323597A1 (en) * 2011-12-28 2016-11-03 JVC Kenwood Corporation Moving picture coding device, moving picture coding method and moving picture coding program, and moving picture decoding device, moving picture decoding method and moving picture decoding program
US20160316221A1 (en) * 2013-12-19 2016-10-27 Sharp Kabushiki Kaisha Merge candidate derivation device, image decoding device, and image coding device
CN106534858A (en) * 2015-09-10 2017-03-22 展讯通信(上海)有限公司 Real motion estimation method and device
WO2017157259A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
CN106331723A (en) * 2016-08-18 2017-01-11 上海交通大学 Video frame rate up-conversion method and system based on motion region segmentation

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020182165A1 (en) * 2019-03-11 2020-09-17 杭州海康威视数字技术股份有限公司 Method for constructing motion information candidate list and triangular prediction decoding method and apparatus
US11863714B2 (en) 2019-03-11 2024-01-02 Hangzhou Hikvision Digital Technology Co., Ltd. Method for constructing motion information candidate list, method and apparatus for triangle prediction decoding
CN111953974A (en) * 2020-08-26 2020-11-17 珠海大横琴科技发展有限公司 Motion parameter candidate list construction method and device and computer equipment
CN111953974B (en) * 2020-08-26 2021-08-27 珠海大横琴科技发展有限公司 Motion parameter candidate list construction method and device and computer equipment

Also Published As

Publication number Publication date
CN110933414B (en) 2022-07-29
CN110933414A (en) 2020-03-27
CN110662072B (en) 2022-04-26

Similar Documents

Publication Publication Date Title
CN110809161B (en) Motion information candidate list construction method and device
KR102081213B1 (en) Image prediction method and related device
US9106922B2 (en) Motion estimation engine for video encoding
US9154790B2 (en) Methods for encoding/decoding of video using common merging candidate set of asymmetric partitions
US9451266B2 (en) Optimal intra prediction in block-based video coding to calculate minimal activity direction based on texture gradient distribution
CN101573984B (en) Method and apparatus for estimating motion vector using plurality of motion vector predictors, encoder, decoder, and decoding method
US20110194609A1 (en) Selecting Predicted Motion Vector Candidates
CN110662072B (en) Motion information candidate list construction method and device and readable storage medium
CN109889827B (en) Intra-frame prediction coding method and device, electronic equipment and computer storage medium
CN104661031A (en) Method for coding and decoding video image, coding equipment and decoding equipment
US10785498B2 (en) System and method of mapping multiple reference frame motion estimation on multi-core DSP architecture
CN112055203B (en) Inter-frame prediction method, video coding method and related devices
CN107360433A (en) A kind of interframe prediction encoding method and device
CN113709458B (en) Displacement vector prediction method, device and equipment in video coding and decoding
CN115348442A (en) Motion information determination method, device and equipment
CN113225555B (en) Geometric partition mode prediction method and device in video coding and decoding
KR20210024565A (en) Motion vector buffer management method and apparatus for video coding system
CN109565595A (en) A kind of video encoder and method of Video coding block division of the use based on segmentation
CN110933439B (en) Motion information candidate list construction method and device and readable storage medium
CN111901590A (en) Refined motion vector storage method and device for inter-frame prediction
JP6390275B2 (en) Encoding circuit and encoding method
CN111669592B (en) Encoding and decoding method, device and equipment
CN112422971A (en) Encoding and decoding method, device and equipment
KR20130122566A (en) 3d video encoding methods for motion vector prediction using depth information and apparatus, and decoding method and apparatus
CN111698507B (en) Motion information candidate list construction method and index coding method in list

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