CN113014925A - H.266/VVC inter-frame coding CU fast dividing method and storage medium - Google Patents

H.266/VVC inter-frame coding CU fast dividing method and storage medium Download PDF

Info

Publication number
CN113014925A
CN113014925A CN202110112537.7A CN202110112537A CN113014925A CN 113014925 A CN113014925 A CN 113014925A CN 202110112537 A CN202110112537 A CN 202110112537A CN 113014925 A CN113014925 A CN 113014925A
Authority
CN
China
Prior art keywords
consistent
mode
modes
stack
mvs
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
CN202110112537.7A
Other languages
Chinese (zh)
Other versions
CN113014925B (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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202110112537.7A priority Critical patent/CN113014925B/en
Publication of CN113014925A publication Critical patent/CN113014925A/en
Application granted granted Critical
Publication of CN113014925B publication Critical patent/CN113014925B/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/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/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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The invention relates to a method for quickly dividing H.266/VVC inter-frame coding CU and a storage medium, belonging to the field of video coding, wherein the method comprises the following steps: s1, judging whether the adjacent MVs of the current CU exist and are consistent, if so, entering the next step, and if not, entering S4; s2, adding the current CU coordinates and the MV to obtain the corresponding position coordinates of the reference frame; s3, judging whether the current CU is a square or not, if so, selecting a partial partition mode by using a 9MV model, and if so, selecting a partial partition mode by using a transverse 6MV or longitudinal 6MV model; s4, the initialization of the CU partition mode is ended. The method can effectively reduce the operation complexity of the H.266/VVC in the CU dividing process, shorten the coding time of the video coder, and can be applied to scenes such as a mobile terminal and the like which need lower video coding operation complexity.

Description

H.266/VVC inter-frame coding CU fast dividing method and storage medium
Technical Field
The invention belongs to the field of Video coding, and particularly relates to a quick Coding Unit (CU) division method in an interframe coding mode in a universal Video coding (VVC) (Video coding), which can be applied to scenes such as a mobile terminal and the like needing low Video coding operation complexity.
Background
The universal Video Coding (VVC), a new generation of Video Coding standard jointly established by MPEG of ISO/IEC and VCEG of ITU-T, has been promulgated in 7 months in 2020. The standard technology is applied to various commercial scenes such as 4K videos, 8K videos, live and immersive media and the like. VVC still continues to use a technology based on block Coding, and improves Coding Efficiency by introducing many new technologies based on the High Efficiency Video Coding (HEVC) framework of the previous generation. Compared with the HEVC Test Model (HM), the coding performance of the VTM10.0 in the Random Access (RA) mode is improved by about 40%, but the coding time is increased by more than 9 times, which makes the VVC difficult to be put into practical application. Therefore, under the conditions of ensuring that the video quality is basically unchanged and the coding performance loss is small, how to greatly reduce the computation complexity of the VVC becomes an important research direction of current video coding researchers.
In video coding, a video sequence is first divided into several Groups Of Pictures (GOP), one GOP has 16 frames Of Pictures, the 1 st frame is an I frame using intra-frame prediction, and the rest are B frames using inter-frame prediction. When a B frame is coded, each frame image is firstly divided into a plurality of CTUs, and then the next division is carried out based on the CTUs. The CTU size of HEVC is 64 × 64, and is divided into CUs by Quad-Tree (QT), and the CUs are further divided into Prediction Units (PU) and Transform Units (TU). And the CTU size of the VVC becomes 128 × 128 and the partitioning of CU, PU and TU is cancelled, i.e., prediction and transform are directly performed after the CTU is partitioned into CU. Fig. 2 is an example of CTU partitioning, where if the encoder decides to perform QT partitioning on a CTU, the encoder performs QT or MTT partitioning on a block of size 64 × 64, but the QT partitioning is not allowed after MTT partitioning until the length or width of the block is equal to 4.
Fig. 3 is a diagram of the QTMTT structure corresponding to fig. 2, which is a partition structure of the coding tree finally selected by the CTU. In the process of partitioning the CTU, Rate-Distortion Optimization (RDO) of an encoder is a Depth First Search (DFS) process, which traverses the probability of each partition and calculates RD-cost, and then selects the partition with the smallest RD-cost as a final result. Because the VVC adopts a more flexible dividing mode, the branches of the RDO needing to traverse the tree are increased sharply along with the deepening of the dividing layer number, and the node of each branch needs to be calculated, so the encoding computation amount is increased greatly. In the CU partitioning process, if the partition mode can be reduced, the coding complexity can be significantly reduced, and the coding speed can be increased.
Disclosure of Invention
The present invention is directed to solving the above problems of the prior art. A fast H.266/VVC inter-frame coding CU partition method and a storage medium for reducing coding time are provided. The technical scheme of the invention is as follows:
a fast partitioning method for H.266/VVC inter-coded CU (coding Unit), comprising the following steps:
s1, acquiring CU coding unit data and reference frame data which are coded by a current coding frame of the H.266/VVC coder, and acquiring a stack for maintaining a division mode in a first-in last-out mode;
s2, judging whether the adjacent MV motion vectors of the current CU are consistent, if so, entering a step S3, otherwise, entering a step S5 and stacking all the division modes;
s3, obtaining the coordinates of the corresponding position of the reference frame by adding the current CU coordinates and the MV coordinates, if the CU range of the corresponding position does not exceed the image range, entering a step S4, otherwise, entering a step S5 and stacking all the division modes;
s4, judging whether the current CU is a square or not, if so, selecting a partial partition mode by using a 9MV model, and if so, selecting a partial partition mode by using a transverse 6MV or longitudinal 6MV model;
and S5, finishing initialization of the CU partition mode.
Further, the step S1, acquiring CU data being encoded by a current encoding frame of the h.266/VVC encoder and reference frame data, and acquiring a stack for maintaining a partition mode in an advance-to-exit manner; in the h.266/VVC encoder, the initialization process of the CU partition mode is implemented in the initlevel function, and in the initialization process, the encoder may traverse all partition modes and push the partition modes that can be executed into the stack. And then in the rate distortion optimization process of the encoder, the encoder calls the division modes one by one from the stack top to the stack bottom, and selects the mode with the lowest rate distortion cost as the final division mode.
Further, the step S2 determines whether the neighboring MVs of the current CU are consistent, if so, step S3 is performed, otherwise, step S5 is performed, and all the partition modes are stacked, which specifically includes:
judging whether the adjacent MVs of the current CU are consistent, wherein the adjacent MVs are taken from the left CU and the upper CU of the current CU, and if the left CU or the upper CU does not exist because the current coding CU is positioned at the leftmost position or the uppermost position of the image, directly entering step S5 and stacking all the division modes; and judging whether the MVs are consistent, namely comparing whether the horizontal component and the vertical component of the MVs of the left CU and the upper CU of the current CU are equal, if so, entering the step S3, and if not, entering the step S5 and stacking all the division modes.
Further, the step S3 specifically includes the following steps:
s3, obtaining the coordinate of the corresponding position of the reference frame by adding the current CU coordinate and MV as shown in formula (1) and formula (2), wherein Xcol and Ycol are the coordinate of the corresponding position of the reference frame, Xcur and Ycur are the coordinate of the position of the current frame encoding CU, MVx and MVy are the horizontal component and the vertical component of the MV of the left side CU and the upper CU, if the obtained Xcol and Ycol and the range of the length and the width of the current CU do not exceed the length and the width of the image, the step S3 is entered, otherwise, the step S5 is entered and all the division modes are stacked.
Xcol=Xcur+MVx (1)
Ycol=Ycur+MVy (2)
Further, if the square is obtained in step S4, selecting a partial partition mode using a 9MV model specifically includes: and based on the corresponding position coordinates of the reference frame obtained in the step S3, taking a region with the same size as the current coding CU, and determining which model to use according to the shape of the region, if the region is a square, using a 9MV model, wherein the 9MV model divides a square region into 9 squares with the same size, and the center of the square is used as an MV sampling point. The CU division mode of the H.266/VVC has four choices of four-fork division, two-fork division, three-fork division and no division, wherein the four-fork division is QT, the three-fork division is HTT and VTT, the two-fork division is HBT and VBT, and finally NoSplit is not divided, and the total six modes are six. When a 9MV model is used, judging whether the MVs of 1, 2 and 3 points are consistent or not in the first step; if the two are consistent, entering a further step; if not, the MV of 1, 4 and 7 is judged, if consistent, the HTT and HBT modes are pushed, if not, the QT, VTT and HTT modes which are easy to be divided into a plurality of blocks are pushed. And step two, judging whether the MVs of 4, 5 and 6 are consistent, if so, entering the next step, and otherwise, adding the VTT mode and the VBT mode into the stack. And step three, judging whether the MVs of 7, 8 and 9 are consistent, if so, entering the next step, and otherwise, adding the VTT and VBT modes into the stack. And step four, if all the MVs are consistent, not adding any mode to the stack, otherwise, only adding the VTT mode to the stack.
Further, if the rectangle in step S4 is used, selecting a partial partition mode by using a horizontal 6MV or vertical 6MV model specifically includes:
when a transverse 6MV model is used, in the first step, if 1 and 2 are inconsistent but 1, 3 and 5 are consistent, adding HTT and HBT into a stack; if 1, 3 and 5 are not consistent, adding a VTT mode and an HTT mode; if 1 and 2 are consistent, the next step is carried out. Secondly, if the 3 and 4 are not consistent, adding VTT and VBT modes into a stack; and if the two are consistent, the next step is carried out. And step three, if the 5 and 6 are not consistent, adding the VTT and the VBT into the stack, and otherwise, entering the next step. And fourthly, if all the MVs are consistent, not adding the partitioning mode, and otherwise, only adding the VTT mode into the stack. When a longitudinal 6MV model is used, firstly, if 1 and 2 are inconsistent and 1, 3 and 5 are inconsistent, adding VTT and HTT modes; if 1, 3 and 5 are consistent, adding VTT and VBT modes; if 1 and 2 are consistent, the next step is carried out. Step two, if the 3 and the 4 are not consistent, the HTT and the HBT are stacked; and if the two are consistent, the next step is carried out. Thirdly, if the 5 and 6 are not consistent, the HTT and the HBT are stacked; otherwise, the next step is carried out. And fourthly, if all the MVs are consistent, not adding the partitioning mode, otherwise, only adding the HTT into the stack.
Further, the step S5 specifically includes: the h.266/VVC inter-frame coding process originally needs to traverse all the partition modes, the CU initialization process puts the modes that can be added on the stack, and after the advance screening of step S4, only part of the modes are put on the stack, and the initialization process is ended, and finally the encoder selects the partition mode with the lowest rate distortion cost from the modes.
A storage medium having stored therein a computer program which, when read by a processor, performs the method of any of claims 1 to 7.
The invention has the following advantages and beneficial effects:
aiming at the problem of overhigh operation complexity of an H.266/VVC encoder, the invention provides a CU (coordinated unit) partitioning rapid algorithm based on a time-space domain. By utilizing the time domain correlation between frames in a video sequence and the spatial correlation of the video frames, extracting the MV at the corresponding position of the reference frame by analyzing and using three models of 9MV, horizontal 6MV and vertical 6MV, and screening the partition modes needing to be traversed by a CU in advance, the problem of overhigh operation complexity caused by traversing all the partition modes is avoided. The invention can obviously reduce the encoding time under the condition that the video encoder carries out encoding in an interframe mode, can ensure that the video quality is basically unchanged, has small loss of the encoding output bit rate, and can be applied to scenes such as a mobile terminal and the like which need low video encoding operation complexity. The invention can be applied to the coding of high definition, ultra-high definition, 4K and 8K videos in an inter-frame coding mode of an H.266/VVC video coder, can obviously reduce the complexity of video coding, accelerate the video coding speed and reduce the realization cost of the video coder under the conditions of ensuring that the video quality is basically unchanged and the loss of the coding output bit rate is small, can be applied to application scenes such as a mobile terminal and the like which need low complexity of video coding operation, and has good application prospect and practical value.
The innovation of the present invention is mainly that in step S4 claimed in claim 5 and claim 6, the 9MV, horizontal 6MV and vertical 6MV models are used to extract the reference frame corresponding position MV, and the partition mode of the CU is screened according to the extracted MV features, so as to reduce the CU partition modes that the encoder needs to traverse, and increase the encoding speed. The steps S2 and S3 required by the method of claim 3 and claim 4 are used as a precondition for using the method of step S4, so as to limit the range of use of the method of step S4, and prevent the method from being used in an improper situation to cause the loss of coding performance. The invention has the advantages that the video coding complexity can be obviously reduced, the loss on the output bit rate and the image quality is less, and the invention is easy to realize. According to the existing documents, few researchers screen the CU partition mode according to the MV distribution of the corresponding position of the reference frame, so that the method has strong innovation.
Drawings
FIG. 1 is a flow chart of a fast partitioning method for H.266/VVC inter-frame coded CU according to the preferred embodiment of the present invention;
FIG. 2 is an example of a CU partition for H.266/VVC;
fig. 3 is a diagram of three motion vector point sampling models used in the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be described in detail and clearly with reference to the accompanying drawings. The described embodiments are only some of the embodiments of the present invention.
The technical scheme for solving the technical problems is as follows:
FIG. 1 is a flow chart of a fast partitioning method for H.266/VVC inter-frame coding CU according to the present invention.
And S1, acquiring CU data which is coded by the current coding frame of the H.266/VVC coder, and acquiring a stack for maintaining the partition mode in a first-in last-out mode by referring to the frame data.
And S2, judging whether the adjacent MVs of the current CU are consistent, wherein the adjacent MVs are taken from the left CU and the upper CU of the current CU. If the left CU or the upper CU does not exist because the current coding CU is located at the leftmost or uppermost position of the image, the process directly proceeds to step S5 and pushes all the division modes onto the stack. And judging whether the MVs are consistent, namely comparing whether the horizontal component and the vertical component of the MVs of the left CU and the upper CU of the current CU are equal, if so, entering the step S3, and if not, entering the step S5 and stacking all the division modes.
And S3, adding the current CU coordinates and the MV to obtain the corresponding position coordinates of the reference frame, and adding the current CU coordinates and the MV to obtain the corresponding position coordinates of the reference frame according to the methods shown in the formula (1) and the formula (2). Where Xcol and Ycol are the coordinates of the corresponding location of the reference frame, Xcur and Ycur are the location coordinates of the CU being encoded by the current frame, and MVx and MVy are the horizontal and vertical components of the MVs of the left and top CUs. If the obtained Xcol and Ycol and the range plus the length and width of the current CU do not exceed the length and width of the image, the process proceeds to step S3, otherwise, the process proceeds to S5 and all the division modes are stacked.
Xcol=Xcur+MVx (1)
Ycol=Ycur+MVy (2)
S4, judging whether the current CU is a square or not, if so, selecting a partial partition mode by using a 9MV model shown in (a) in FIG. 3; in case of a rectangle, a partial partition mode is selected using a vertical 6MV or horizontal 6MV model shown in (b) and (c) of fig. 3. In step S4, an area having the same size as the current CU to be coded is selected based on the position coordinates corresponding to the reference frame obtained in step S3, and a determination is made as to which model is to be used according to the shape of the area. If the region is a square, a 9MV model is used, and if the region is a rectangle, a horizontal 6MV or vertical 6MV model is used. The 9MV model divides a square area into 9 squares with the same size, the center of each square is used as an MV sampling point, and the transverse 6MV and longitudinal 6MV models divide a rectangle into 6 rectangles with the same size, and the center of each square is used as an MV sampling point. As shown in fig. 2, the CU partition pattern of h.266/VVC has four choices of four-way partition, two-way partition, three-way partition, and no partition. The four forks are divided into QT, the three forks are divided into a horizontal three-fork HTT and a vertical three-fork VTT, the two forks are divided into a horizontal two-fork HBT and a vertical two-fork VBT, and finally NoSplit is not divided, so that six modes are total. When a 9MV model is used, judging whether the MVs at 1, 2 and 3 points are consistent or not in the first step, and entering the next step if the MVs at 1, 2 and 3 points are consistent; if not, the MV of 1, 4 and 7 are judged. If the HTT mode and the HBT mode are consistent, the HTT mode and the HBT mode are stacked; if not, the QT, VTT, HTT patterns, which are easily broken into blocks, are stacked. And secondly, judging whether the MVs of 4, 5 and 6 are consistent. If the two are consistent, the next step is carried out; otherwise, VTT and VBT modes are added to the stack. And thirdly, judging whether the MVs of 7, 8 and 9 are consistent or not. If the two are consistent, the next step is carried out; otherwise, VTT and VBT modes are added to the stack. Step four, if all the MVs are consistent, no mode is added to the stack; otherwise only VTT mode is added to the stack. When a transverse 6MV model is used, in the first step, if 1 and 2 are inconsistent but 1, 3 and 5 are consistent, adding an HTT and an HBT into a stack; if 1, 3 and 5 are not consistent, adding a VTT mode and an HTT mode; if 1 and 2 are consistent, the next step is carried out. Secondly, if the 3 and 4 are not consistent, adding VTT and VBT modes into a stack; and if the two are consistent, the next step is carried out. And step three, if the 5 and 6 are not consistent, adding the VTT and the VBT into the stack, and otherwise, entering the next step. Fourthly, if all the MVs are consistent, the division mode is not added; otherwise only VTT mode is added to the stack. When a longitudinal 6MV model is used, firstly, if 1 and 2 are inconsistent and 1, 3 and 5 are inconsistent, adding VTT and HTT modes; if 1, 3 and 5 are consistent, adding VTT and VBT modes; if 1 and 2 are consistent, the next step is carried out. And secondly, if the numbers 3 and 4 are not consistent, the HTT and the HBT are stacked, and if the numbers are consistent, the next step is carried out. And thirdly, if the 5 and 6 are not consistent, the HTT and the HBT are stacked. Otherwise, the next step is carried out. And fourthly, if all the MVs are consistent, not adding the partitioning mode, otherwise, only adding the HTT into the stack.
S5, the initialization of the CU partition mode is ended. The process of h.266/VVC inter-coding originally needs to go through all the partition modes, and the initialization process of the CU puts the modes that can be added on the stack. And through the advanced screening of step S4, only partial patterns are pushed onto the stack, and the initialization process is ended. Finally, the encoder selects an optimal mode from the modes.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
It should also be noted that 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 like elements in a process, method, article, or apparatus that comprises the element.
The above examples are to be construed as merely illustrative and not limitative of the remainder of the disclosure. After reading the description of the invention, the skilled person can make various changes or modifications to the invention, and these equivalent changes and modifications also fall into the scope of the invention defined by the claims.

Claims (8)

1. A fast partitioning method for inter-coded CUs of H.266/VVC is characterized by comprising the following steps:
s1, acquiring CU coding unit data and reference frame data which are coded by a current coding frame of the H.266/VVC coder, and acquiring a stack for maintaining a division mode in a first-in last-out mode;
s2, judging whether the adjacent MV motion vectors of the current CU are consistent, if so, entering a step S3, otherwise, entering a step S5 and stacking all the division modes;
s3, obtaining the coordinates of the corresponding position of the reference frame by adding the current CU coordinates and the MV, if the CU range of the corresponding position does not exceed the image range, entering a step S4, and if not, entering a step S5 and stacking all the division modes;
s4, judging whether the current CU is a square or not, if so, selecting a partial partition mode by using a 9MV model, and if so, selecting a partial partition mode by using a transverse 6MV or longitudinal 6MV model;
and S5, finishing initialization of the CU partition mode.
2. An H.266/VVC inter-frame coded CU fast partition method according to claim 1, wherein said step S1, obtaining the CU data being coded by the current coding frame of the H.266/VVC coder and the reference frame data, obtaining the stack for first-in last-out maintenance partition mode; in an H.266/VVC encoder, the initialization process of a CU partition mode is realized in an initCULevel function, in the initialization process, the encoder traverses all partition modes and pushes the partition modes which can be executed into a stack, then in the rate distortion optimization process of the encoder, the encoder calls the partition modes one by one from the top of the stack to the bottom of the stack, and selects the mode with the lowest rate distortion cost as a final partition mode.
3. The method as claimed in claim 1, wherein the step S2 is implemented by determining whether neighboring MVs of a current CU are consistent, if yes, going to step S3, otherwise going to step S5 and stacking all partition modes, and specifically includes:
judging whether the adjacent MVs of the current CU are consistent, wherein the adjacent MVs are taken from the left CU and the upper CU of the current CU, and if the left CU or the upper CU does not exist because the current coding CU is positioned at the leftmost position or the uppermost position of the image, directly entering step S5 and stacking all the division modes; and judging whether the MVs are consistent, namely comparing whether the horizontal component and the vertical component of the MVs of the left CU and the upper CU of the current CU are equal, if so, entering the step S3, and if not, entering the step S5 and stacking all the division modes.
4. The H.266/VVC inter-frame coded CU fast partition method according to claim 3, wherein said step S3 comprises the steps of:
s3, adding the current CU coordinates and the MV to obtain the coordinates of the corresponding position of the reference frame, and adding the current CU coordinates and the MV to obtain the coordinates of the corresponding position of the reference frame as shown in a formula (1) and a formula (2), wherein Xcol and Ycol are the coordinates of the corresponding position of the reference frame; xcur and Ycur are the position coordinates of the CU being encoded by the current frame; MVx and MVy are the horizontal and vertical components of the MVs of the left and top CUs. If the obtained Xcol and Ycol and the range plus the length and width of the current CU do not exceed the length and width of the image, the process proceeds to step S3, otherwise, the process proceeds to S5 and all the division modes are stacked.
Xcol=Xcur+MVx (1)
Ycol=Ycur+MVy (2)
5. The H.266/VVC inter-coded CU fast partition method according to claim 4, wherein said step S4 uses 9MV model to select the partial partition mode if it is square. The method specifically comprises the following steps: based on the position coordinates corresponding to the reference frame obtained in step S3, an area having the same size as the current CU to be encoded is selected, and which model is to be used is determined according to the shape of the area. If the region is a square, the 9MV model is used. The 9MV model divides a square area into 9 squares of the same size, and takes the center of the square as an MV sampling point. The CU division mode of the H.266/VVC has four choices of four-fork division, two-fork division, three-fork division and no division, wherein the four-fork division is used for dividing QT, the three-fork division is used for dividing HTT and vertical three-fork division VTT, the two-fork division is used for dividing HBT and vertical two-fork division VBT, and finally NoSplit is not divided, so that the total six modes are provided. When a 9MV model is used, judging whether the MVs of 1, 2 and 3 points are consistent or not in the first step; if the MVs are consistent, entering the next step, if the MVs are not consistent, judging whether the MVs 1, 4 and 7 are consistent, if so, stacking the HTT mode and the HBT mode, and if not, stacking the QT mode, the VTT mode and the HTT mode which are easily divided into a plurality of blocks. And step two, judging whether the MVs of 4, 5 and 6 are consistent, if so, entering the next step, and otherwise, adding the VTT mode and the VBT mode into the stack. And thirdly, judging whether the MVs of 7, 8 and 9 are consistent, if so, entering the next step, and if not, adding the VTT and VBT modes into the stack. And step four, if all the MVs are consistent, not adding any mode to the stack, otherwise, only adding the VTT mode to the stack.
6. The method as claimed in claim 5, wherein if the block is rectangular in step S4, the method for selecting the partial partition mode using the horizontal 6MV or vertical 6MV model specifically comprises:
when a transverse 6MV model is used, in the first step, if 1 and 2 are inconsistent but 1, 3 and 5 are consistent, adding HTT and HBT into a stack; if 1, 3 and 5 are not consistent, adding a VTT mode and an HTT mode; if 1 and 2 are consistent, the next step is carried out. And secondly, if the 3 and 4 are not consistent, adding the VTT and VBT modes into a stack, and if the 3 and 4 are consistent, entering the next step. And step three, if the 5 and 6 are not consistent, adding the VTT and the VBT into the stack, and otherwise, entering the next step. And fourthly, if all the MVs are consistent, not adding the partitioning mode, or only adding the VTT mode into the stack. When a longitudinal 6MV model is used, firstly, if 1 and 2 are inconsistent and 1, 3 and 5 are inconsistent, adding VTT and HTT modes; if 1, 3 and 5 are consistent, adding VTT and VBT modes; if 1 and 2 are consistent, the next step is carried out. And secondly, if the numbers 3 and 4 are not consistent, the HTT and the HBT are stacked, and if the numbers are consistent, the next step is carried out. And thirdly, if the 5 and 6 are not consistent, the HTT and the HBT are stacked, otherwise, the next step is carried out. And step four, if all the MVs are consistent, not adding the partitioning mode, otherwise, only adding the HTT into the stack.
7. The method according to claim 6, wherein the step S5 specifically comprises: the h.266/VVC inter-frame coding process originally needs to traverse all the partition modes, the CU initialization process puts the modes that can be added on the stack, and through the advanced screening in step S4, only part of the modes are put on the stack, and the initialization process is ended, and finally the encoder selects one partition mode with the lowest rate-distortion cost from the modes as the final partition mode.
8. A storage medium having a computer program stored therein, wherein the computer program, when read by a processor, performs the method of any of claims 1 to 7.
CN202110112537.7A 2021-01-27 2021-01-27 H.266/VVC inter-frame coding CU fast dividing method and storage medium Active CN113014925B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110112537.7A CN113014925B (en) 2021-01-27 2021-01-27 H.266/VVC inter-frame coding CU fast dividing method and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110112537.7A CN113014925B (en) 2021-01-27 2021-01-27 H.266/VVC inter-frame coding CU fast dividing method and storage medium

Publications (2)

Publication Number Publication Date
CN113014925A true CN113014925A (en) 2021-06-22
CN113014925B CN113014925B (en) 2022-08-23

Family

ID=76384961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110112537.7A Active CN113014925B (en) 2021-01-27 2021-01-27 H.266/VVC inter-frame coding CU fast dividing method and storage medium

Country Status (1)

Country Link
CN (1) CN113014925B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023005709A1 (en) * 2021-07-28 2023-02-02 腾讯科技(深圳)有限公司 Video encoding method and apparatus, medium, and electronic device

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107404653A (en) * 2017-05-23 2017-11-28 南京邮电大学 A kind of Parking quick determination method of HEVC code streams
CN110581992A (en) * 2018-06-07 2019-12-17 北京字节跳动网络技术有限公司 Integer motion compensation
WO2020009086A1 (en) * 2018-07-04 2020-01-09 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Encoding device, decoding device, encoding method, and decoding method
CN111147867A (en) * 2019-12-18 2020-05-12 重庆邮电大学 Multifunctional video coding CU partition rapid decision-making method and storage medium
WO2020117013A1 (en) * 2018-12-06 2020-06-11 엘지전자 주식회사 Method and apparatus for processing video signal on basis of inter prediction
US20200221109A1 (en) * 2019-01-06 2020-07-09 Tencent America LLC Method and apparatus for video coding
CN111586405A (en) * 2020-04-24 2020-08-25 中南大学 Prediction mode rapid selection method based on ALF filtering in multifunctional video coding
CN111818332A (en) * 2020-06-09 2020-10-23 复旦大学 Fast algorithm for intra-frame prediction partition judgment suitable for VVC standard
CN111988631A (en) * 2019-05-24 2020-11-24 腾讯美国有限责任公司 Video encoding method, video decoding method, video encoding device, video decoding device and storage medium

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107404653A (en) * 2017-05-23 2017-11-28 南京邮电大学 A kind of Parking quick determination method of HEVC code streams
CN110581992A (en) * 2018-06-07 2019-12-17 北京字节跳动网络技术有限公司 Integer motion compensation
WO2020009086A1 (en) * 2018-07-04 2020-01-09 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Encoding device, decoding device, encoding method, and decoding method
WO2020117013A1 (en) * 2018-12-06 2020-06-11 엘지전자 주식회사 Method and apparatus for processing video signal on basis of inter prediction
US20200221109A1 (en) * 2019-01-06 2020-07-09 Tencent America LLC Method and apparatus for video coding
CN111988631A (en) * 2019-05-24 2020-11-24 腾讯美国有限责任公司 Video encoding method, video decoding method, video encoding device, video decoding device and storage medium
CN111147867A (en) * 2019-12-18 2020-05-12 重庆邮电大学 Multifunctional video coding CU partition rapid decision-making method and storage medium
CN111586405A (en) * 2020-04-24 2020-08-25 中南大学 Prediction mode rapid selection method based on ALF filtering in multifunctional video coding
CN111818332A (en) * 2020-06-09 2020-10-23 复旦大学 Fast algorithm for intra-frame prediction partition judgment suitable for VVC standard

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YU-WEN HUANG ET AL: "A VVC Proposal With Quaternary Tree Plus Binary-Ternary Tree Coding Block Structure and Advanced Coding Techniques", 《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》 *
郭泽: "H.266/VVC 高效帧间预测编码算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023005709A1 (en) * 2021-07-28 2023-02-02 腾讯科技(深圳)有限公司 Video encoding method and apparatus, medium, and electronic device

Also Published As

Publication number Publication date
CN113014925B (en) 2022-08-23

Similar Documents

Publication Publication Date Title
TWI752331B (en) Partial/full pruning when adding a hmvp candidate to merge/amvp
CN111164978B (en) Method and apparatus for encoding/decoding image and recording medium for storing bit stream
CN109804626B (en) Method and apparatus for encoding and decoding image and recording medium for storing bit stream
CN116962717A (en) Image encoding/decoding method, storage medium, and transmission method
CN110495169A (en) Method of video image processing and device
CN107211157A (en) Overlapped motion compensation for video coding
CN109691099A (en) Video coding/decoding method and device and recording medium in wherein stored bits stream
CN116567260A (en) Image encoding/decoding method and recording medium therefor
CN107087200B (en) Skip coding mode advanced decision method for high-efficiency video coding standard
US20120057631A1 (en) Method and device for motion estimation of video data coded according to a scalable coding structure
CN109792515A (en) The recording medium of image coding/decoding method and device and stored bits stream
CN116886928A (en) Method and apparatus for encoding/decoding image and recording medium storing bit stream
CN116489387A (en) Image encoding/decoding method and apparatus
TWI401967B (en) Method for scalable video coding, scalable video coding apparatus, program for scalable video coding, and computer readable storage medium storing program for scalable video coding
CN112740697A (en) Image encoding/decoding method and apparatus, and recording medium storing bit stream
CN112740671A (en) Image encoding/decoding method and apparatus, and recording medium storing bit stream
CN113014925B (en) H.266/VVC inter-frame coding CU fast dividing method and storage medium
CN116915980A (en) Image encoding/decoding method and apparatus, and recording medium storing bit stream
CN113940077A (en) Virtual boundary signaling method and apparatus for video encoding/decoding
CN113261286A (en) Method and apparatus for deriving intra prediction mode
KR101902700B1 (en) Apparatus for hevc coding and method for process of coding in intra prediction using the same
CN113574868A (en) Image encoding/decoding method and apparatus, and recording medium storing bit stream
CN115278260A (en) VVC (variable valve control) rapid CU (CU) dividing method based on space-time domain characteristics and storage medium
KR101928185B1 (en) Apparatus for hevc coding and method for predicting coding unit depth range using the same
CN112055221B (en) Inter-frame prediction method, video coding method, electronic device and storage medium

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