Video coding division decision-making method and device, equipment, storage medium and product

By dividing the video encoding area into multiple sub-blocks and determining whether to skip quad-tree division based on gradient information, combining the decision of non-division and multi-type tree division, the high computational complexity problem caused by quad-tree division in VVC is solved, and the video encoding division decision efficiency and encoder performance are improved.

CN120499400APending Publication Date: 2025-08-15GUANGZHOU BAIGUOYUAN INFORMATION TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510684064.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-26
Publication Date
2025-08-15

AI Technical Summary

Technical Problem

In general video encoding VVC, quad-tree division decisions require a large amount of data processing, which greatly improves the encoder's calculation complexity and limits the efficiency of video encoding division decisions.

Method used

The current coding area is divided into multiple area sub-blocks, and the quad-tree division decision is determined based on the gradient information of each area sub-block, and the non-dividing decision and multi-type tree division decision are made when skipping the quad-tree division decision, and the final decision of the coding area is determined based on the results of non-dividing and multi-type tree division.

Benefits of technology

Effectively reduce the number of decisions on quad-tree division, reduce the computational complexity of encoder, improve the decision-making efficiency of video encoding division, improve the encoding speed and computing resource utilization of encoder, save server costs, and improve user video viewing experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120499400A_ABST
    Figure CN120499400A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a video coding division decision method and device, equipment, a storage medium and a product. According to the technical scheme provided by the embodiment of the invention, the current coding region is divided into the plurality of region sub-blocks, whether the quadtree division decision for the current coding region is skipped or not is determined according to the gradient information of each region sub-block, and when it is determined that the quadtree division decision for the current coding region is skipped, the current coding region is divided into the plurality of region sub-blocks. Performing non-division decision and multi-type tree division decision on the current coding region, determining a coding division decision result of the current coding region according to a non-division decision result and a multi-type tree division decision result, and estimating the probability of taking a quadtree division decision as an optimal decision result according to gradient information of each region sub-block. And therefore, the video coding quality is ensured, the frequency of the quadtree division decision is effectively reduced, the calculation complexity of an encoder is reduced, and the video coding division decision efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of video coding technology, and in particular to video coding partition decision methods, devices, equipment, storage media and products. Background Art

[0002] With the development of Internet and computer technologies, the requirements for video coding are becoming increasingly stringent. Versatile Video Coding (VVC) can adaptively determine the specific layer to which a video frame should be divided and the appropriate division method to use based on the rate-distortion cost (RDcost) of the video content.

[0003] When making a split decision for a video frame, a coding tree unit (CTU) is typically used as the root node. A no-split (NS) decision is first made (that is, the CTU is treated as the entire coding unit (CU) and a mode decision is made). Next, a quadtree (QT) split is performed, dividing the CTU into four sub-CUs, each of which undergoes a separate split decision. Each of these four sub-CUs also undergoes its own recursive split decision. After the quadtree split decision is completed for all sub-sub-splits, the system returns to the CTU and performs a multi-type tree (MTT) split (including binary tree (BT) and ternary tree (TT)). The final split structure for the CTU is determined to have the lowest rate-distortion cost.

[0004] Since the coding tree unit size of general video coding (VVC) is large, quadtree partitioning helps to quickly divide large areas, allowing the encoder to adapt to different image content more flexibly. However, quadtree partitioning decisions require a large amount of data processing, which greatly increases the computational complexity of the encoder and limits the efficiency of video coding partitioning decisions. Summary of the Invention

[0005] The embodiments of the present application provide a video coding partition decision method, apparatus, device, storage medium and product to solve the technical problem in the related art that quadtree partition decision requires a large amount of data processing, greatly increases the computational complexity of the encoder, and limits the efficiency of video coding partition decision. It can effectively reduce the number of quadtree partition decisions, reduce the computational complexity of the encoder, and improve the efficiency of video coding partition decision.

[0006] In a first aspect, an embodiment of the present application provides a video coding partition decision method, comprising: Dividing the current coding region into a plurality of region sub-blocks, and determining gradient information of each of the region sub-blocks; Determining whether to skip quadtree partitioning decision for the current coding region according to the gradient information; In the case of determining to skip the quadtree partitioning decision for the current coding region, performing a non-partitioning decision and a multi-type tree partitioning decision on the current coding region; The coding division decision result of the current coding area is determined according to the non-division decision result and the multi-type tree division decision result.

[0007] In a second aspect, an embodiment of the present application provides a video coding partition decision device, including a gradient determination module, a skip judgment module, a partition decision module, and a decision determination module, wherein: The gradient determination module is configured to divide the current coding region into a plurality of region sub-blocks and determine the gradient information of each of the region sub-blocks; The skip judgment module is configured to determine whether to skip the quadtree partitioning decision of the current coding area according to the gradient information; The partition decision module is configured to, when it is determined to skip the quadtree partition decision on the current coding region, perform a non-partition decision and a multi-type tree partition decision on the current coding region; The decision determination module is configured to determine the coding division decision result of the current coding area according to the non-division decision result and the multi-type tree division decision result.

[0008] In a third aspect, an embodiment of the present application provides a video coding partition decision device, including: a memory and one or more processors; The memory is used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the video coding partition decision method as described in the first aspect.

[0009] In a fourth aspect, an embodiment of the present application provides a non-volatile storage medium storing computer-executable instructions, wherein the computer-executable instructions, when executed by a computer processor, are used to execute the video coding partition decision method as described in the first aspect.

[0010] In the fifth aspect, an embodiment of the present application provides a computer program product, which includes a computer program stored in a computer-readable storage medium. At least one processor of the device reads and executes the computer program from the computer-readable storage medium, so that the device performs the video coding partition decision method described in the first aspect.

[0011] The embodiment of the present application divides the current coding area into multiple regional sub-blocks, determines whether to skip the quadtree partitioning decision of the current coding area according to the gradient information of each regional sub-block, and when it is determined to skip the quadtree partitioning decision of the current coding area, performs a non-division decision and a multi-type tree partitioning decision on the current coding area, determines the coding partitioning decision result of the current coding area according to the non-division decision result and the multi-type tree partitioning decision result, estimates the probability of the quadtree partitioning decision being the optimal decision result according to the gradient information of each regional sub-block, and reduces the processing process of some quadtree partitioning decisions accordingly. While ensuring the quality of video coding, it effectively reduces the number of quadtree partitioning decisions, reduces the computational complexity of the encoder, and improves the efficiency of video coding partitioning decisions. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] Figure 1 This is a flow chart of a video coding partition decision method provided by an embodiment of the present application; Figure 2 This is a flowchart of another video coding partition decision method provided by an embodiment of the present application; Figure 3 This is a schematic diagram of a preset direction on a regional sub-block provided in an embodiment of the present application; Figure 4 This is a structural diagram of a video coding partition decision device provided in an embodiment of the present application; Figure 5 This is a structural diagram of a video coding division decision device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0013] To further clarify the objectives, technical solutions, and advantages of this application, specific embodiments of the present application are described in further detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are intended only to illustrate this application and are not intended to limit it. It should also be noted that, for ease of description, the drawings only illustrate portions relevant to this application, not all of them. Before discussing the exemplary embodiments in more detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts depict the various operations (or steps) as sequential processes, many of the operations can be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the operations can be rearranged. The processes described above may terminate upon completion, but may also include additional steps not shown in the accompanying drawings. These processes may correspond to methods, functions, procedures, subroutines, subprograms, and the like.

[0014] The video coding partition decision method provided in this application can be applied to video coding scenarios based on general video coding VVC, aiming to reduce the processing process of some low-probability quadtree partition decisions, while ensuring the quality of video coding, reducing the number of quadtree partition decisions, and improving the efficiency of video coding partition decisions.

[0015] In the previous generation encoder standard, HEVC, the maximum coding tree unit size was set to 64*64. To further improve coding efficiency, VVC supports coding tree unit sizes up to 128*128. Furthermore, the previous generation encoder standard, HEVC, only allowed a recursive quadtree partition structure, where the coding tree unit was recursively partitioned into one or more square coding units (CUs), which were then further partitioned into one or more prediction units (PUs) / transform units (TUs) to select the prediction / transform mode. In VVC, a new QTMT CU partition structure was developed, unifying the concepts of coding units, prediction units, and transform units, meaning they are generally of the same size. In addition to the no-partition and quadtree partition structures in HEVC, VVC also supports binary and ternary tree recursive partition structures, also known as multi-type tree partitions. Multi-type trees include four types of partitions: vertical binary tree (VBT), horizontal binary tree (HBT), vertical ternary tree (VTT), and horizontal ternary tree (HTT). Universal Video Coding (VVC) can adaptively determine the specific layer and division method for the same coding region based on the rate-distortion cost of the video content within a limited depth range. Video coding division decisions typically use a coding tree unit as the root node. First, a decision on the non-division type is made. Next, quadtree division is performed, dividing the coding tree unit into four sub-coding units, each of which undergoes a separate division decision. Each of these four sub-coding units also undergoes recursive division decisions. After completing the quadtree division of all sub-coding units, the code returns to the coding tree unit state and undergoes binary tree division (including HBT and VBT) and ternary tree division (including HTT and VTT). Finally, the division type with the lowest rate-distortion cost is used as the final division result for this coding tree unit.

[0016] In VVC (Vertical Video Coding), quadtree partitioning is a core component of the coding tree unit (CTU) structure and is used to define the initial segmentation of coding blocks. Quadtree partitioning, as part of VVC's coding framework, determines the initial sub-block structure of the CTU. This is typically suitable for regions with high texture complexity, allowing for subsequent finer-grained partitioning. Because VVC's CTUs are larger than those of the previous generation encoder standard, HEVC, quadtree partitioning facilitates rapid partitioning of large regions, allowing the encoder to more flexibly adapt to varying image content. However, while quadtree partitioning offers significant coding benefits, it also significantly increases the encoder's computational complexity. For the same coding region, due to the fixed texture information it contains, only one optimal partitioning structure is ultimately obtained after different partitioning decisions. For regions with low texture complexity or flat areas, the optimal decision to not partition the current large block is more likely. This process results in a significant number of unnecessary quadtree partitioning decisions, limiting the efficiency of video coding partitioning decisions. Based on this, a video coding partition decision method is provided in an embodiment of the present application to solve the technical problem that the quadtree partition decision in the existing video coding partition decision scheme requires a large amount of data processing, greatly increases the computational complexity of the encoder, and limits the efficiency of the video coding partition decision.

[0017] Figure 1 A flowchart of a video coding partition decision method provided in an embodiment of the present application is given. The video coding partition decision method provided in an embodiment of the present application can be executed by a video coding partition decision device, which can be implemented by hardware and / or software and integrated into a video coding partition decision device.

[0018] The following description is made by taking the video coding division decision device executing the video coding division decision method as an example. Figure 1 , the video coding partition decision method includes: S110: Divide the current coding region into a plurality of region sub-blocks, and determine gradient information of each region sub-block.

[0019] When making coding partition decisions for a video frame, the video frame can be divided into multiple coding tree units (e.g., 128*128 coding tree units), and coding partition decisions are made for each coding tree unit separately. The coding partition decisions for the coding tree units can be recursively processed according to multiple preset unit sizes (e.g., recursively processing from multiple unit sizes such as 128*128, 64*64, and 32*32). Recursive processing can be understood as repeatedly executing the same video coding partition decision logic for the sub-coding units when making a partition decision for the current coding region, until the minimum permissible unit size is reached. The current coding area can be a coding tree unit or a sub-coding unit divided on the basis of the coding tree unit. For example, a 128*128 coding tree unit can be divided into four 64*64 sub-coding units. These four 64*64 sub-coding units can be used as a current coding area to execute the video coding division decision process. The 64*64 sub-coding unit can also be divided into four 32*32 sub-coding units to further make video coding division decisions.

[0020] Exemplarily, the current coding region is divided into multiple regional sub-blocks, and gradient information for each regional sub-block is determined. The gradient information can be used to reflect the texture complexity, pixel variation, directionality, and flatness of the current coding region. For example, in the current coding region corresponding to a flat region (such as the sky, a wall, etc.), the smaller the variation in pixel values of adjacent pixels, the corresponding texture complexity or pixel variation is lower. In contrast, in the current coding region corresponding to a complex region (such as text, object edges, etc.), the larger the variation in pixel values of adjacent pixels, the corresponding texture complexity or pixel variation is higher.

[0021] S120: Determine whether to skip quadtree partitioning decision for the current coding region according to the gradient information.

[0022] Exemplarily, whether to skip the quadtree partitioning decision for the current coding region is determined based on the gradient information of each region sub-block determined above. Considering that the texture information content within the same coding region is fixed, if the current coding region has low texture complexity or is a flat region, the probability of selecting a non-partition decision as the optimal partitioning decision is higher. Therefore, the quadtree partitioning decision for the current coding region can be skipped to reduce the decision calculation process for low-probability partitioning methods. Optionally, if the gradient information of the current coding region is less than a preset gradient threshold, or if the fluctuation or stability of the gradient information in the current coding region reaches a preset stability threshold, the current coding region is considered to have low complexity and high flatness, and the probability of selecting a non-partition decision as the optimal partitioning decision is higher, while the probability of selecting a quadtree partition decision as the optimal decision is lower. Therefore, the quadtree partitioning decision for the current coding region can be skipped. Based on this, by calculating and statistically analyzing the gradient information of the region sub-blocks in the current coding region, the complexity and flatness of the current coding region can be identified using this gradient information, thereby skipping the quadtree partitioning decision process with a low optimal probability, thereby improving the coding efficiency of the encoder.

[0023] For example, the gradient information can be compared with a preset gradient threshold. If all gradient information is less than the preset gradient threshold (the preset gradient threshold is greater than 1, for example, 1.5), the quadtree partitioning decision for the current coding region is skipped. If gradient information is greater than or equal to the preset gradient threshold, the quadtree partitioning decision for the current coding region is not skipped. Alternatively, the degree of fluctuation of the gradient information in the current coding region can be calculated. If the degree of fluctuation is less than the preset fluctuation threshold, the quadtree partitioning decision for the current coding region is skipped. If the degree of fluctuation is greater than or equal to the preset fluctuation threshold, the quadtree partitioning decision for the current coding region is not skipped. Alternatively, the degree of fluctuation can be represented by the variance or standard deviation corresponding to multiple gradient information of the current coding region. The preset fluctuation threshold can be set based on the stability requirements for video coding partitioning decisions. Optionally, the preset fluctuation threshold corresponding to the variance can range from 2 to 10, for example, the preset fluctuation threshold can be set to 5, and the preset fluctuation threshold corresponding to the standard deviation can range from 1 to 5, for example, the preset fluctuation threshold can be set to 3.

[0024] S130: When it is determined to skip the quadtree partitioning decision for the current coding region, a non-partitioning decision and a multi-type tree partitioning decision are performed on the current coding region.

[0025] For example, when it is determined to skip the quadtree partitioning decision for the current coding region, the quadtree partitioning decision process for the current coding region is skipped, that is, a non-partitioning decision and a multi-type tree partitioning decision are performed on the current coding region. The multi-type tree partitioning decision may include a combination of one or more of a vertical binary tree partitioning decision, a horizontal binary tree partitioning decision, a vertical ternary tree partitioning decision, and a horizontal ternary tree partitioning decision.

[0026] In one embodiment, a quadtree skip flag can be used to determine whether to skip the quadtree partitioning decision for the current coding region. After the current coding region is divided into multiple regional sub-blocks, the quadtree skip flag (canSkipQT) corresponding to the current coding region can be initialized. At this time, the quadtree skip flag indicates that the quadtree partitioning decision for the current coding region is not skipped (for example, canSkipQT=false). After determining the gradient information of each regional sub-block, it is determined based on the gradient information whether to skip the quadtree partitioning decision for the current coding region. When it is determined that the quadtree partitioning decision for the current coding region is skipped, the quadtree skip flag is updated to indicate that the quadtree partitioning decision for the current coding region is skipped (for example, canSkipQT=true).

[0027] S140: Determine the coding division decision result of the current coding region according to the non-division decision result and the multi-type tree division decision result.

[0028] Exemplarily, when it is determined to skip the quadtree partitioning decision for the current coding area, a non-division decision and a multi-type tree partitioning decision are performed on the current coding area to obtain corresponding non-division decision results and multi-type tree partitioning decision results, and the rate-distortion costs corresponding to the non-division decision results and the multi-type tree partitioning decision results are determined respectively, and the partitioning decision result corresponding to the minimum rate-distortion cost is used as the coding partitioning decision result of the current coding area.

[0029] In one possible embodiment, if it is determined based on gradient information that a quadtree partition decision for the current coding region is not skipped, partition decisions are made for the current coding region in the order of a no-partition decision, a quadtree partition decision, and a multi-type tree partition decision, and the no-partition decision results, the quadtree partition decision results, and the multi-type tree partition decision results are determined accordingly. Rate-distortion costs corresponding to the no-partition decision results, the quadtree partition decision results, and the multi-type tree partition decision results are determined, respectively, and the partition decision result corresponding to the minimum rate-distortion cost is used as the coding partition decision result for the current coding region.

[0030] This application skips the quadtree partitioning decision process with a lower optimal probability for the current coding area, which improves the encoding speed of the encoder while ensuring the quality of video encoding, thereby improving the computing resource utilization rate on the server side, saving server costs, and effectively reducing the client computing resource (CPU) occupancy rate of video encoding, ensuring the operation of the video software process, and improving the user's video viewing experience.

[0031] In the above, by dividing the current coding area into multiple regional sub-blocks, determining whether to skip the quadtree partitioning decision of the current coding area according to the gradient information of each regional sub-block, and when determining to skip the quadtree partitioning decision of the current coding area, performing a non-division decision and a multi-type tree partitioning decision on the current coding area, determining the coding partitioning decision result of the current coding area according to the non-division decision result and the multi-type tree partitioning decision result, the probability of the quadtree partitioning decision being the optimal decision result can be estimated according to the gradient information of each regional sub-block, and accordingly reducing the processing process of some quadtree partitioning decisions, while ensuring the video coding quality, effectively reducing the number of quadtree partitioning decisions, reducing the encoder calculation complexity, and improving the efficiency of video coding partitioning decisions.

[0032] Based on the above embodiments, Figure 2 A flowchart of another video coding partition decision method provided by an embodiment of the present application is given. This video coding partition decision method is a specific implementation of the above-mentioned video coding partition decision method. Figure 2 , the video coding partition decision method includes: S210: Divide the current coding region into a plurality of regional sub-blocks, determine pixel information of each regional sub-block, and determine gradient information of each regional sub-block in a plurality of preset directions according to the pixel information.

[0033] Exemplarily, the current coding region is divided into a plurality of regional sub-blocks, pixel information of each regional sub-block is determined, and gradient information of each regional sub-block in a plurality of preset directions is determined based on the pixel information determined above. The pixel information of the regional sub-block may be brightness information corresponding to each pixel point in the regional sub-block (for example, the value corresponding to the Y channel in a YUV format video frame is used as pixel information). The present application reflects the texture complexity of the current coding region from a plurality of preset directions by determining the gradient information of each regional sub-block in a plurality of preset directions based on the pixel information of each regional sub-block, thereby more accurately determining whether the current coding region meets the conditions for skipping quadtree partitioning decisions, thereby improving the efficiency of video coding partitioning decisions while ensuring video coding quality.

[0034] Optionally, the current coding region may be divided into 2, 4, 8, or other regional sub-blocks. This application describes the current coding region as divided into 4 regional sub-blocks as an example. In one possible embodiment, the video coding division decision method provided in this application divides the current coding region into multiple regional sub-blocks. The method may be to divide the current coding region into 4 regional sub-blocks according to a quadtree division method. By dividing the current coding region into 4 regional sub-blocks corresponding to the quadtree division method, the gradient information of the current coding region during quadtree division can be more accurately reflected, and whether the current coding region meets the conditions for skipping the quadtree division decision can be more accurately determined.

[0035] In one possible embodiment, the multiple preset directions provided in the present application may include a horizontal direction, a vertical direction, and a diagonal direction, wherein the diagonal direction includes a first diagonal direction and / or a second diagonal direction, the first diagonal direction may be a direction tilted toward the lower right, the second diagonal direction may be a direction tilted toward the upper right, and the diagonal direction may be a 45° direction or a 135° direction. Based on this, the video coding partition decision method provided in the present application determines the gradient information of each regional sub-block in multiple preset directions based on pixel information, which may be: determining the gradient information of each regional sub-block in the horizontal direction, the vertical direction, and the diagonal direction based on the pixel information, wherein the diagonal direction includes the first diagonal direction and / or the second diagonal direction.

[0036] For example, after determining the pixel information of each regional sub-block, the gradient information in the horizontal, vertical, and diagonal directions is calculated based on the pixel information of the adjacent pixels of each regional sub-block in the horizontal, vertical, and diagonal directions. By calculating the gradient information of the regional sub-block in the horizontal, vertical, and diagonal directions, the present application comprehensively reflects the texture complexity of the current coding region in the horizontal, vertical, and diagonal directions, accurately determines the coding region with simple and flat texture, accurately judges whether the current coding region meets the conditions for skipping quadtree partitioning decisions, and improves the efficiency of video coding partitioning decisions.

[0037] In one possible embodiment, the video coding partition decision method provided in the present application determines the gradient information of each regional sub-block in multiple preset directions based on pixel information, including: determining the pixel information difference between adjacent pixel information in the regional sub-block in the preset direction, and accumulating the pixel information difference to obtain the gradient information of the regional sub-block in the preset direction.

[0038] Exemplarily, for each regional sub-block, gradient information of the regional sub-block in different preset directions is determined. For each preset direction, pixel information corresponding to adjacent pixels in the preset direction is determined, and the pixel information difference between the adjacent pixel information is calculated. The pixel information differences of each regional sub-block in the preset direction can be accumulated to obtain the gradient information of the regional sub-block in the preset direction.

[0039] like Figure 3 A schematic diagram of a preset direction on a regional sub-block is provided, where The corresponding arrow direction is horizontal. The corresponding arrow direction is vertical. The corresponding arrow direction is the direction of the first oblique line. The corresponding arrow direction is the second oblique line direction. Figure 3 By accumulating the pixel information difference between adjacent pixel points in each preset direction, the gradient information in the corresponding preset direction can be obtained. For example, assuming that the preset directions include the horizontal direction, the vertical direction, the first oblique direction, and the second oblique direction, the gradient information of the region sub-block in each preset direction can be determined by the following formula:

[0040] in, is the gradient information in the horizontal direction, is the gradient information in the vertical direction, is the gradient information in the first oblique direction, is the gradient information in the second oblique direction, The current coding area of size N*N is divided into 4 sub-blocks (pixel matrix) by quadtree, where , respectively represent the regional sub-block located at the upper left corner, the regional sub-block at the upper right corner, the regional sub-block at the lower left corner, and the regional sub-block at the lower right corner in the four regional sub-blocks. The value range is , N is the single side size of the current coding area. is the pixel information difference between adjacent pixel information in the horizontal direction, is the pixel information difference between adjacent pixel information in the vertical direction, is the pixel information difference between adjacent pixel information in the first oblique direction, is the pixel information difference between adjacent pixel information in the second oblique direction.

[0041] This application calculates the pixel information difference between adjacent pixel information in a preset direction and accumulates the pixel information difference to obtain gradient information, accurately reflecting the texture complexity of the current coding area in the preset direction. It can more accurately determine whether the current coding area meets the conditions for skipping quadtree partitioning decisions, while ensuring video coding quality and improving the efficiency of video coding partitioning decisions.

[0042] S220: Determine whether to skip the quadtree partitioning decision for the current coding region according to the gradient information.

[0043] In one possible embodiment, the video coding partition decision method provided in the present application determines whether to skip the quadtree partition decision of the current coding area based on gradient information, which can be: determining the maximum gradient information and the minimum gradient information of multiple regional sub-blocks, and determining the gradient ratio based on the maximum gradient information and the minimum gradient information; and determining whether to skip the quadtree partition decision of the current coding area based on the gradient ratio and a preset skip threshold.

[0044] Exemplarily, maximum gradient information and minimum gradient information in the gradient information corresponding to the plurality of region sub-blocks are determined, and a ratio of the maximum gradient information to the minimum gradient information is calculated, and the ratio is determined as a gradient ratio. A determination is then made as to whether the gradient ratio is less than a preset skip threshold. If the gradient ratio is less than the preset skip threshold, a decision to skip quadtree partitioning for the current coding region is made. If the gradient ratio is greater than or equal to the preset skip threshold, a decision to not skip quadtree partitioning for the current coding region is made.

[0045] This application determines the gradient ratio of maximum gradient information and minimum gradient information, and determines whether to skip the quadtree partitioning decision for the current coding area based on the comparison result of the gradient ratio and a preset skip threshold. The gradient ratio can accurately reflect the gradient fluctuation between multiple regional sub-blocks, thereby accurately determining whether the current coding area is an area with low texture complexity or flatness, accurately skipping some low-probability quadtree partitioning decision processing processes, and effectively improving the efficiency of video coding partitioning decisions.

[0046] In one possible embodiment, the video coding partition decision method provided in the present application determines whether to skip the quadtree partition decision for the current coding area based on gradient information, which can be: determining the maximum gradient information and minimum gradient information of multiple regional sub-blocks in multiple preset directions, and determining the gradient ratios in multiple preset directions based on the maximum gradient information and the minimum gradient information; determining the maximum gradient ratio among the multiple gradient ratios, and determining whether to skip the quadtree partition decision for the current coding area based on the maximum gradient ratio and a preset skip threshold.

[0047] Exemplarily, after determining gradient information corresponding to multiple preset directions, for each preset direction, maximum gradient information and minimum gradient information in the corresponding preset direction are determined. A ratio of the maximum gradient information to the minimum gradient information in the same preset direction is calculated, and the ratio is determined as the gradient ratio in the corresponding preset direction.

[0048] In one embodiment, the maximum value of the gradient ratios corresponding to multiple preset directions is determined, the maximum value is used as the maximum gradient ratio, and it is determined whether the maximum gradient ratio is less than a preset skip threshold. If the maximum gradient ratio is less than the preset skip threshold, it is determined to skip the quadtree partitioning decision for the current coding region. If the maximum gradient ratio is greater than or equal to the preset skip threshold, it is determined not to skip the quadtree partitioning decision for the current coding region.

[0049] Alternatively, the gradient ratio may be determined by the following formula:

[0050] in, is the gradient ratio in the horizontal direction, is the gradient ratio in the vertical direction, is the gradient ratio in the first oblique direction, is the gradient ratio in the second oblique direction.

[0051] Optionally, the following quadtree skip flag update formula can be used to determine whether to skip the quadtree partitioning decision for the current coding area:

[0052] in, The preset skip threshold can be set to 1~2, for example, the preset skip threshold can be set to 1.5. When the maximum gradient ratio is less than the preset skip threshold, it can be considered that the gradients of the current coding area in the horizontal, vertical and diagonal directions are relatively close, and the current coding area can be considered to be an area with low texture complexity or flat, and the quadtree skip flag can be updated to .

[0053] The present application determines the gradient ratio of the maximum gradient information and the minimum gradient information in multiple preset directions, and determines whether to skip the quadtree partitioning decision of the current coding area based on the comparison result of the maximum gradient ratio corresponding to the multiple preset directions and the preset skip threshold. The maximum gradient ratio can accurately reflect the gradient fluctuation between multiple regional sub-blocks in multiple preset directions, thereby more comprehensively and accurately determining whether the current coding area is an area with low texture complexity or flatness, accurately skipping some low-probability quadtree partitioning decision processing processes, and effectively improving the efficiency of video coding partitioning decisions.

[0054] S230: When it is determined to skip the quadtree partitioning decision for the current coding region, a non-partitioning decision and a multi-type tree partitioning decision are performed on the current coding region.

[0055] S240: Determine the coding division decision result of the current coding region according to the non-division decision result and the multi-type tree division decision result.

[0056] In the above-described method, by dividing the current coding region into multiple regional sub-blocks, determining whether to skip the quadtree partitioning decision for the current coding region based on the gradient information of each regional sub-block, and performing a non-partitioning decision and a multi-type tree partitioning decision on the current coding region when determining to skip the quadtree partitioning decision for the current coding region, the coding partitioning decision result for the current coding region is determined based on the non-partitioning decision and the multi-type tree partitioning decision results. The probability of the quadtree partitioning decision being the optimal decision result can be estimated based on the gradient information of each regional sub-block, thereby reducing some of the quadtree partitioning decision processing steps. While ensuring video coding quality, the number of quadtree partitioning decisions is effectively reduced, the encoder computational complexity is reduced, and the efficiency of video coding partitioning decisions is improved. Furthermore, by determining the gradient information of each regional sub-block in multiple preset directions based on the pixel information of each regional sub-block, the texture complexity of the current coding region is reflected from the multiple preset directions, and whether the current coding region meets the conditions for skipping the quadtree partitioning decision can be more accurately determined.

[0057] Figure 4 This is a structural diagram of a video coding division decision device provided by an embodiment of the present application. Figure 4 The video coding division decision device includes a gradient determination module 41, a skip judgment module 42, a division decision module 43 and a decision determination module 44.

[0058] Among them, the gradient determination module 41 is configured to divide the current coding area into multiple regional sub-blocks and determine the gradient information of each regional sub-block; the skip judgment module 42 is configured to determine whether to skip the quadtree partitioning decision of the current coding area based on the gradient information; the partition decision module 43 is configured to make a non-partitioning decision and a multi-type tree partitioning decision for the current coding area when it is determined to skip the quadtree partitioning decision of the current coding area; the decision determination module 44 is configured to determine the coding partitioning decision result of the current coding area based on the non-partitioning decision result and the multi-type tree partitioning decision result.

[0059] In the above, by dividing the current coding area into multiple regional sub-blocks, determining whether to skip the quadtree partitioning decision of the current coding area according to the gradient information of each regional sub-block, and when determining to skip the quadtree partitioning decision of the current coding area, performing a non-division decision and a multi-type tree partitioning decision on the current coding area, determining the coding partitioning decision result of the current coding area according to the non-division decision result and the multi-type tree partitioning decision result, the probability of the quadtree partitioning decision being the optimal decision result can be estimated according to the gradient information of each regional sub-block, and accordingly reducing the processing process of some quadtree partitioning decisions, while ensuring the video coding quality, effectively reducing the number of quadtree partitioning decisions, reducing the encoder calculation complexity, and improving the efficiency of video coding partitioning decisions.

[0060] In a possible embodiment, the gradient determination module 41 determines the gradient information of each regional sub-block and is configured as follows: Determine pixel information of each regional sub-block; Gradient information of each region sub-block in multiple preset directions is determined according to the pixel information.

[0061] In a possible embodiment, the gradient determination module 41 determines the gradient information of each regional sub-block in multiple preset directions according to the pixel information, and is configured as follows: Gradient information of each regional sub-block in a horizontal direction, a vertical direction, and a diagonal direction is determined according to the pixel information. The diagonal direction includes a first diagonal direction and / or a second diagonal direction.

[0062] In a possible embodiment, the gradient determination module 41 determines the gradient information of each regional sub-block in multiple preset directions according to the pixel information, and is configured as follows: Pixel information differences between adjacent pixel information in a preset direction in a regional sub-block are determined, and the pixel information differences are accumulated to obtain gradient information of the regional sub-block in the preset direction.

[0063] In a possible embodiment, the skip determination module 42 determines whether to skip the quadtree partitioning decision for the current coding region according to the gradient information, and is configured as follows: Determining maximum gradient information and minimum gradient information of the plurality of regional sub-blocks, and determining a gradient ratio according to the maximum gradient information and the minimum gradient information; Whether to skip the quadtree partitioning decision for the current coding area is determined according to the gradient ratio and the preset skip threshold.

[0064] In a possible embodiment, the skip determination module 42 determines whether to skip the quadtree partitioning decision for the current coding region according to the gradient information, and is configured as follows: Determining maximum gradient information and minimum gradient information of the plurality of regional sub-blocks in a plurality of preset directions, and determining gradient ratios in the plurality of preset directions according to the maximum gradient information and the minimum gradient information; A maximum gradient ratio among a plurality of gradient ratios is determined, and whether to skip a quadtree partitioning decision for a current coding region is determined according to the maximum gradient ratio and a preset skip threshold.

[0065] In a possible embodiment, the gradient determination module 41 divides the current coding region into a plurality of region sub-blocks, and is configured to divide the current coding region into four region sub-blocks according to a quadtree partitioning method.

[0066] It is worth noting that in the embodiment of the above-mentioned video coding division decision device, the various units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the embodiments of this application.

[0067] An embodiment of the present application further provides a video coding partition decision device, which can integrate the video coding partition decision apparatus provided in an embodiment of the present application. Figure 5 This is a structural diagram of a video coding division decision device provided by an embodiment of the present application. Figure 5 The video coding partition decision device includes an input device 53, an output device 54, a memory 52, and one or more processors 51. The memory 52 is used to store one or more programs. When the one or more programs are executed by the one or more processors 51, the one or more processors 51 implement the video coding partition decision method provided in the above embodiments. The video coding partition decision device, equipment, and computer provided above can be used to implement the video coding partition decision method provided in any of the above embodiments, and have corresponding functions and beneficial effects.

[0068] An embodiment of the present application also provides a non-volatile storage medium that stores computer-executable instructions, and the computer-executable instructions are used to execute the video coding partition decision method provided in the above embodiment when executed by a computer processor. Of course, the non-volatile storage medium that stores computer-executable instructions provided in an embodiment of the present application, its computer-executable instructions are not limited to the video coding partition decision method provided above, and can also execute related operations in the video coding partition decision method provided in any embodiment of the present application. The video coding partition decision device, equipment and storage medium provided in the above embodiment can execute the video coding partition decision method provided in any embodiment of the present application. For technical details not described in detail in the above embodiment, please refer to the video coding partition decision method provided in any embodiment of the present application.

[0069] Based on the above embodiments, the embodiments of the present application also provide a computer program product. The essence of the technical solution of the present application or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product. The computer program product is stored in a storage medium and includes a number of instructions for enabling a computer device, a mobile terminal or a processor therein to execute all or part of the steps of the video coding partition decision method provided in each embodiment of the present application.

Claims

1. A video coding partition decision method, characterized in that: include: Dividing the current coding region into a plurality of region sub-blocks, and determining gradient information of each of the region sub-blocks; Determining whether to skip quadtree partitioning decision for the current coding region according to the gradient information; In the case of determining to skip the quadtree partitioning decision for the current coding region, performing a non-partitioning decision and a multi-type tree partitioning decision on the current coding region; The coding division decision result of the current coding area is determined according to the non-division decision result and the multi-type tree division decision result.

2. The video coding division decision method according to claim 1, characterized in that: The determining of the gradient information of each of the regional sub-blocks includes: Determining pixel information of each of the regional sub-blocks; Gradient information of each of the region sub-blocks in multiple preset directions is determined according to the pixel information.

3. The video coding partition decision method according to claim 2, characterized in that: The determining, according to the pixel information, the gradient information of each of the regional sub-blocks in a plurality of preset directions includes: Gradient information of each of the region sub-blocks in a horizontal direction, a vertical direction, and a diagonal direction is determined according to the pixel information, where the diagonal direction includes a first diagonal direction and / or a second diagonal direction.

4. The video coding partition decision method according to claim 2, wherein: The determining, according to the pixel information, the gradient information of each of the regional sub-blocks in a plurality of preset directions includes: Pixel information differences between adjacent pixel information in a preset direction in the region sub-block are determined, and the pixel information differences are accumulated to obtain gradient information of the region sub-block in the preset direction.

5. The video coding division decision method according to claim 1, characterized in that: The determining, according to the gradient information, whether to skip the quadtree partitioning decision for the current coding region includes: Determining maximum gradient information and minimum gradient information of a plurality of sub-blocks in the region, and determining a gradient ratio according to the maximum gradient information and the minimum gradient information; Determine whether to skip quadtree partitioning decision for the current coding area according to the gradient ratio and a preset skip threshold.

6. The video coding partition decision method according to claim 1, characterized in that: The determining, according to the gradient information, whether to skip the quadtree partitioning decision for the current coding region includes: Determining maximum gradient information and minimum gradient information of the plurality of regional sub-blocks in a plurality of preset directions, and determining gradient ratios in the plurality of preset directions according to the maximum gradient information and the minimum gradient information; A maximum gradient ratio among the plurality of gradient ratios is determined, and whether to skip a quadtree partitioning decision for the current coding region is determined according to the maximum gradient ratio and a preset skip threshold.

7. The video coding partition decision method according to any one of claims 1 to 6, characterized in that: The step of dividing the current coding area into a plurality of area sub-blocks includes: The current coding area is divided into 4 area sub-blocks according to the quadtree partitioning method.

8. A video coding partition decision device, characterized in that: It includes a gradient determination module, a skip judgment module, a partition decision module and a decision determination module, wherein: The gradient determination module is configured to divide the current coding region into a plurality of region sub-blocks and determine the gradient information of each of the region sub-blocks; The skip judgment module is configured to determine whether to skip the quadtree partitioning decision of the current coding region according to the gradient information; The partition decision module is configured to, when it is determined to skip the quadtree partition decision on the current coding region, perform a non-partition decision and a multi-type tree partition decision on the current coding region; The decision determination module is configured to determine the coding division decision result of the current coding area according to the non-division decision result and the multi-type tree division decision result.

9. A video coding partition decision device, characterized in that: include: memory and one or more processors; The memory is used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the video coding partition decision method according to any one of claims 1 to 7.

10. A non-volatile storage medium storing computer executable instructions, characterized in that: When the computer executable instructions are executed by a computer processor, they are used to execute the video coding partition decision method according to any one of claims 1 to 7.

11. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the video coding partition decision method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Fast judgment method and system for multifunctional video coding and storage medium

    CN110691254A

  • Fast decision method for VVC intra-frame coding unit division

    CN112104868A

  • H.266 / VVC screen content coding rapid division method based on texture complexity

    CN114697681A

  • Ternary tree division processing method and device for coding unit, and storage medium

    CN117676171A

  • Method and apparatus for encoding a picture block

    US20220417514A1