Method for determining coding unit partition mode in hardware-oriented intra-frame coding mode

文档序号:1893572 发布日期:2021-11-26 浏览:18次 中文

阅读说明:本技术 面向硬件的帧内编码模式中编码单元划分模式确定方法 (Method for determining coding unit partition mode in hardware-oriented intra-frame coding mode ) 是由 高伟 袁航 李革 于 2021-07-30 设计创作,主要内容包括:本发明公开一种面向硬件的帧内编码模式中编码单元划分模式确定方法,所述方法包括以下步骤:将目标视频的初始编码单元拆分为多个最小编码单元;计算所述多个最小编码单元的纹理参数;基于所述纹理参数,获得所述初始编码单元的目标划分模式。本发明还公开终端设备以及计算机可读存出介质。利用本发明的面向硬件的帧内编码模式中编码单元划分模式确定方法计算时长较短,效率较高。(The invention discloses a method for determining a partition mode of a coding unit in a hardware-oriented intra-frame coding mode, which comprises the following steps: splitting an initial coding unit of a target video into a plurality of minimum coding units; calculating texture parameters of the minimum coding units; and obtaining a target partition mode of the initial coding unit based on the texture parameters. The invention also discloses a terminal device and a computer readable storage medium. The method for determining the coding unit division mode in the hardware-oriented intra-frame coding mode has the advantages of short calculation time and high efficiency.)

1. A method for determining a coding unit partition mode in a hardware-oriented intra coding mode, the method comprising:

splitting an initial coding unit of a target video into a plurality of minimum coding units;

calculating texture parameters of the minimum coding units;

and obtaining a target partition mode of the initial coding unit based on the texture parameters.

2. The method of claim 1, wherein the texture parameters comprise luminance gradients and chrominance histograms; the step of calculating texture parameters of the minimum coding units comprises:

calculating luminance gradient and chrominance histograms of the plurality of minimum coding units in parallel;

the step of obtaining the target partition mode of the initial coding unit based on the texture parameter includes:

and obtaining a target division mode of the initial coding unit based on the brightness gradient and the chroma histogram.

3. The method of claim 2, wherein the step of obtaining the target partition mode of the initial coding unit based on the luminance gradient and the chrominance histogram comprises:

determining the initial coding unit as a current unit to be divided;

determining a current combined coding unit corresponding to the current unit to be divided based on a preset division mode;

obtaining a brightness gradient difference degree based on the brightness gradient;

obtaining a chroma histogram difference degree based on the chroma histogram;

acquiring current coding information of the current unit to be divided;

inputting the brightness gradient difference degree and the current coding information into a brightness decision tree model to obtain a brightness division mode of the current unit to be divided;

inputting the chroma histogram difference degree and the current coding information into a chroma decision tree model to obtain a chroma division mode of the current unit to be divided;

obtaining an initial partition mode of the current unit to be partitioned based on the brightness partition mode and the chromaticity partition mode;

when the initial dividing mode does not meet the preset condition, dividing the current unit to be divided by using the initial dividing mode to obtain a new current unit to be divided;

determining a new current combined coding unit corresponding to the new current unit to be divided based on the preset division mode and the new current unit to be divided;

updating the current unit to be divided by using the new current unit to be divided;

and updating the current combined coding unit by using the new current combined coding unit, and returning to execute the step of obtaining the brightness gradient difference degree based on the brightness gradient until the initial division mode meets the preset condition, or the new current unit to be divided only comprises a minimum coding unit, and obtaining the target division mode based on the initial division mode.

4. The method of claim 3, wherein the preset partitioning patterns include a quadtree partitioning pattern, a vertical binary tree partitioning pattern, a horizontal binary tree partitioning pattern, and a non-partitioning pattern.

5. The method of claim 4, wherein the luminance decision tree model processes the luminance gradient disparity and the current coding information by:

when the current unit to be divided is a first-class coding unit, judging whether the current unit to be divided is divided into partitions or not by adopting a first classifier and utilizing the brightness gradient difference degree and the current coding information; when the current unit to be divided is divided, adopting a second classifier, and judging whether the current unit to be divided is in a quadtree division mode or not by utilizing the brightness gradient difference degree and the current coding information, otherwise, determining a non-division mode as the initial division mode; when the current unit to be divided does not carry out the quadtree division mode, adopting a third classifier, and judging whether the current unit to be divided carries out the horizontal binary tree division mode or not by utilizing the brightness gradient difference degree and the current coding information, otherwise, determining the quadtree division mode as the initial division mode; when the current unit to be divided does not carry out a horizontal binary tree division mode, determining a vertical binary tree division mode as the initial division mode, otherwise, determining a horizontal binary tree division mode as the initial division mode; or the like, or, alternatively,

when the current unit to be divided is a second-class coding unit, a fourth classifier is adopted, and whether the current unit to be divided is in a vertical binary tree division mode or not is judged by utilizing the brightness gradient difference degree and the current coding information; when the current unit to be divided is subjected to a vertical binary tree division mode, determining the vertical binary tree division mode as the initial division mode, otherwise, determining a non-division mode as the initial division mode; or the like, or, alternatively,

when the current unit to be divided is a third-class coding unit, judging whether the current unit to be divided is in a horizontal binary tree division mode or not by adopting a fifth classifier and utilizing the brightness gradient difference degree and the current coding information; and when the current unit to be divided carries out a horizontal binary tree division mode, determining the horizontal binary tree division mode as the initial division mode, otherwise, determining a non-division mode as the initial division mode.

6. The method of any one of claims 3-5, wherein the step of obtaining a chroma histogram disparity based on the chroma histogram comprises:

merging the chroma histograms of the minimum coding units included in the current combined coding unit to obtain a combined chroma histogram of the current combined coding unit;

combining combined chrominance histograms of current combined coding units included in a current partition to obtain a result chrominance histogram corresponding to the current partition, wherein the current partition is a partition corresponding to each partition mode in the preset partition modes;

and obtaining the chroma histogram difference degree corresponding to the preset dividing mode based on the result chroma histogram.

7. The method of claim 6, wherein the step of computing luma gradient and chroma histograms of the plurality of minimum coding units in parallel comprises:

calculating the brightness gradient of the minimum coding units by using a formula I;

the first formula is as follows:

wherein A isOne of the minimum coding units, Gh(A)、Gv(A)、G45(A) And G135(A) Brightness gradients of a in horizontal, vertical, 45-degree and 135-degree directions, respectively, W is a width of a, H is a height of a, and i and j represent an abscissa and an ordinate of a brightness pixel v in a, respectively;

and obtaining the chrominance histogram by using the chrominance pixel values of the minimum coding units.

8. The method as claimed in claim 7, wherein the step of obtaining the chroma histogram difference degree corresponding to the preset partition mode based on the resultant chroma histogram comprises:

calculating the chroma histogram difference degree by using a formula II based on the result chroma histogram;

the second formula is:

wherein L is a fixed constant, Q and S are respectively a result chromaticity histogram, V, corresponding to any two partitions of each partition modeminIs the lowest significant bit of Q and S, not 0 significant value, VmaxIs the effective value of the highest bit of Q and S, QnIs the value of the nth bit in Q, snHD (Q, S) is the chroma histogram difference of Q and S, which is the value of the nth bit in S.

9. A terminal device, characterized in that the terminal device comprises: memory, a processor and a program stored on the memory and running on the processor for determining a partition mode of an encoding unit in a hardware-oriented intra coding mode, which when executed by the processor implements the steps of the method for determining a partition mode of an encoding unit in a hardware-oriented intra coding mode as claimed in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a hardware-oriented intra coding mode encoding unit partitioning mode determining program, which when executed by a processor implements the steps of the hardware-oriented intra coding mode encoding unit partitioning mode determining method according to any one of claims 1 to 7.

Technical Field

The present invention relates to the field of video compression technologies, and in particular, to a method for determining a coding unit partition mode in a hardware-oriented intra coding mode, a terminal device, and a computer-readable storage medium.

Background

In the field of video coding, it is a constant pursuit to reduce the bit rate of compressed files and to improve the quality of reconstructed video. Segmenting each frame of image in video coding intra mode into small blocks with relatively consistent internal texture can reduce the residual between the reconstructed region and the original region in the subsequent coding process, thereby reducing the bit stream.

In the related art, a method for determining a partition mode of a coding unit in an intra-frame coding mode is disclosed, an initial coding unit is split according to a preset partition mode, rate distortion cost of the partition mode is calculated for each partition mode, and then the partition mode with the lowest rate distortion cost is determined as a final partition mode.

However, the partition mode determination method for the coding unit in the conventional intra-frame coding mode is inefficient in determining the partition mode.

Disclosure of Invention

The invention mainly aims to provide a method for determining a partition mode of a coding unit in a hardware-oriented intra-frame coding mode, a terminal device and a computer-readable storage medium, and aims to solve the technical problem that the partition mode is determined with low efficiency by using the existing method for determining the partition mode of the coding unit in the intra-frame coding mode in the prior art.

In order to achieve the above object, the present invention provides a method for determining a partition mode of a coding unit in a hardware-oriented intra coding mode, the method comprising the following steps:

splitting an initial coding unit of a target video into a plurality of minimum coding units;

calculating texture parameters of the minimum coding units;

and obtaining a target partition mode of the initial coding unit based on the texture parameters.

The technical scheme of the invention provides a method for determining a coding unit division mode in a hardware-oriented intra-frame coding mode, which comprises the steps of splitting an initial coding unit of a target video into a plurality of minimum coding units; calculating texture parameters of the minimum coding units; and obtaining a target partition mode of the initial coding unit based on the texture parameters.

In the existing method, an initial coding unit is divided according to a preset division mode, the rate distortion cost of the division mode is calculated for each division mode, and then the division mode with the lowest rate distortion cost is determined as a final division mode. In the invention, the texture parameters of each minimum coding unit are calculated in advance, then the target partition mode of the initial coding unit is obtained based on the texture parameters, and repeated calculation of the texture parameters is not needed, so the method for determining the partition mode of the coding unit in the hardware-oriented intra-frame coding mode has shorter calculation time and higher efficiency.

Drawings

In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below.

Fig. 1 is a schematic structural diagram of a terminal device in a hardware operating environment according to an embodiment of the present invention;

FIG. 2 is a flowchart illustrating a method for determining a partition mode of an encoding unit in a hardware-oriented intra-frame encoding mode according to a first embodiment of the present invention;

FIG. 3 is a diagram illustrating a partitioning criterion in the prior art;

FIG. 4 is a schematic diagram of a partition structure corresponding to a preset partition mode according to the present invention;

FIG. 5 is a block diagram of a decision tree model framework according to the present invention;

FIG. 6 is a schematic diagram of histogram difference and gradient difference;

FIG. 7 is a pseudo code diagram of a chroma histogram difference optimization algorithm according to the present invention;

fig. 8 is a block diagram illustrating a structure of an apparatus for determining a coding unit division mode in a hardware-oriented intra coding mode according to an embodiment of the present invention.

The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.

Detailed Description

The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments.

Referring to fig. 1, fig. 1 is a schematic structural diagram of a terminal device in a hardware operating environment according to an embodiment of the present invention.

In general, a terminal device includes: at least one processor 301, a memory 302 and a hardware-oriented intra coding mode encoding unit partition mode determining program stored on said memory and executable on said processor, said hardware-oriented intra coding mode encoding unit partition mode determining program being configured to implement the steps of the hardware-oriented intra coding mode encoding unit partition mode determining method as described above.

The processor 301 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so on. The processor 301 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array).

Memory 302 may include one or more computer-readable storage media, which may be non-transitory. The memory 302 may also include high speed random access memory, as well as non-volatile memory.

In some embodiments, the terminal may further include: a communication interface 303 and at least one peripheral device. The processor 301, the memory 302 and the communication interface 303 may be connected by a bus or signal lines. Various peripheral devices may be connected to communication interface 303 via a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 304, a display screen 305, and a power source 306.

The communication interface 303 may be used to connect at least one peripheral device related to I/O (Input/Output) to the processor 301 and the memory 302.

The Radio Frequency circuit 304 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 304 communicates with communication networks and other communication devices via electromagnetic signals.

The display screen 305 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof.

The power supply 306 is used to power various components in the electronic device. The power source 306 may be alternating current, direct current, disposable or rechargeable.

Furthermore, an embodiment of the present invention further provides a computer-readable storage medium, where a program for determining a partition mode of a coding unit in a hardware-oriented intra-frame coding mode is stored, and when executed by a processor, the program for determining a partition mode of a coding unit in a hardware-oriented intra-frame coding mode implements the steps of the method for determining a partition mode of a coding unit in a hardware-oriented intra-frame coding mode as described above. Therefore, a detailed description thereof will be omitted.

It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. The computer-readable storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), or the like.

Based on the hardware structure, the embodiment of the method for determining the partition mode of the coding unit in the hardware-oriented intra-frame coding mode is provided.

Referring to fig. 2, fig. 2 is a flowchart illustrating a method for determining a partition mode of a coding unit in a hardware-oriented intra-frame coding mode according to a first embodiment of the present invention, where the method is used in a terminal device, and the method includes the following steps:

step S11: splitting an initial coding unit of a target video into a plurality of minimum coding units.

It should be noted that the execution subject of the present invention is a terminal device, the terminal device is installed with a program for determining a partition mode of a coding unit in a hardware-oriented intra coding mode, and when the terminal device executes the partition determination program, the partition determination method of the present invention is implemented.

In the intra-frame coding mode of video coding, dividing each frame of image of a video into small blocks with relatively consistent internal texture can reduce the residual error between a reconstructed region and an original region in the subsequent coding process, thereby reducing bit stream. Theoretically, finer partitioning can lead to higher coding gain. In the prior art, the most commonly used are the HEVC standard and the VVC standard; a video frame is first split into a plurality of Coding Tree Units (CTUs), then based on a rate-distortion optimization (RDO) strategy, all possible partitions are performed on a current coding unit (CU, which is a current unit to be partitioned in the following description of the present invention), and then an optimal splitting mode is selected from the partitions.

Referring to fig. 3, fig. 3 is a schematic diagram of a division standard in the prior art.

In HEVC, the size of a CTU is 64 × 64, the size of a minimum coding unit (SCU) is 8 × 8, and the partition modes include two types, namely a Quad Tree (QT) partition mode and a Non-Split mode (Non-Split), and during the partitioning process, CUs of four sizes are generated: 64 × 64, 32 × 32, 16 × 16, and 8 × 8.

Compared to higher coding performance in HEVC, VVC has increased CTU size to 128 × 128, SCU size has decreased to 4 × 4, and the number of partition modes has increased to 6, as shown in fig. 3, referred to as quad Tree partition mode, no-split mode, vertical Binary Tree (BT) partition mode, horizontal BT partition mode, vertical Ternary Tree (TT) partition mode, and horizontal TT partition mode, respectively. However, the more diverse partitioning patterns in VVCs bring not only coding gain, but also explosive growth in computational complexity.

In order to realize real-time encoding of videos on a hardware platform, the videos are simplified on the basis of VVC, and then the videos are encoded by utilizing the simplified VVC, wherein the videos are 8K ultra-high-definition videos. Table 1 shows the coding results, table 1 is as follows:

TABLE 1

In table 1, M1 shows the result of deleting TT partition mode in VVC, and M2 shows the result of raising SCU to 16 × 16, and it can be seen that the coding gain of TT mode (vertical treble partition mode and horizontal treble partition mode) is very small for 8K ultra high definition video coding, and BD-Rate is increased by only 0.157 after TT partition mode. In addition, the smaller SCU size has a very limited improvement in 8K ultra high definition video coding performance. Therefore, the partition mode in the present invention deletes the TT partition mode, increasing the size of SCU to 16 × 16.

It should be noted that the target video is video subjected to video coding, and the target video may be 8K ultra high definition video. Each video frame in the target video needs to be subjected to the operation of the invention; each video frame is split into a plurality of initial coding units, and the size of each initial coding unit is 64 multiplied by 64; then, each initial coding unit is subjected to step S11 of the present invention and the following steps S12-S14 are performed, wherein the minimum coding unit corresponding to each initial coding unit is 16 × 16, i.e., one initial coding unit corresponds to 16 minimum coding units.

Step S12: calculating texture parameters of the plurality of minimum coding units.

Step S13: and obtaining a target partition mode of the initial coding unit based on the texture parameters.

Wherein the texture parameters include luminance gradients and chrominance histograms; correspondingly, the step of calculating the texture parameters of the minimum coding units comprises: calculating luminance gradient and chrominance histograms of the plurality of minimum coding units in parallel; correspondingly, the step of obtaining the target partition mode of the initial coding unit based on the texture parameter includes: and obtaining a target division mode of the initial coding unit based on the brightness gradient and the chroma histogram.

It should be noted that the format of the target video is YUV format, the luminance gradient is obtained by the Y component of the minimum coding unit, and the chrominance histogram includes the chrominance histogram of the U component and the chrominance histogram of the V component, that is, the two chrominance histograms are obtained by the U component and the V component of the minimum coding unit, respectively. Meanwhile, the operation processes of a plurality of minimum coding units are parallel, and the luminance gradient and the chrominance histogram of each minimum coding unit are also calculated in parallel. As described above, for one initial coding unit, corresponding to 16 minimum coding units (minimum coding units in the present invention), each minimum coding unit includes three components (YUV), and then, parallel operations of 16 × 3 — 48 groups of data are simultaneously performed. The dual parallel operation mode greatly improves the solving speed of the brightness gradient and the chromaticity histogram. It is to be understood that the chrominance histogram includes a chrominance histogram of each of a plurality of minimum coding units corresponding to the initial coding unit, and the luminance gradient includes a luminance gradient of each of a plurality of minimum coding units corresponding to the initial coding unit. The respective luma gradient and chroma histograms of the smallest coding units may be stored in a buffer for direct application in subsequent steps.

It is understood that, in order to adapt to the parallel operation of step S12, the terminal device needs to have a processor architecture with parallel operation, that is, the processor of the terminal device includes a plurality of operation units, each of the operation units is used for calculating a set of data, and meanwhile, the data inside each of the operation units can also be operated in parallel, and the processor of the terminal device can be an FPGA (Field Programmable Gate Array).

The preset partitioning modes comprise a quadtree partitioning mode, a vertical binary tree partitioning mode, a horizontal binary tree partitioning mode and a non-partitioning mode, namely, in the invention, the partitioning modes are set to be 4 types. Referring to the above description, the initial coding unit size is 64 × 64, including 16 minimum coding units of 16 × 16.

Specifically, the step of obtaining the target partition mode of the initial coding unit based on the luminance gradient and the chrominance histogram includes: determining the initial coding unit as a current unit to be divided; determining a current combined coding unit corresponding to the current unit to be divided based on a preset division mode; obtaining a brightness gradient difference degree based on the brightness gradient; obtaining a chroma histogram difference degree based on the chroma histogram; acquiring current coding information of the current unit to be divided; inputting the brightness gradient difference degree and the current coding information into a brightness decision tree model to obtain a brightness division mode of the current unit to be divided; inputting the chroma histogram difference degree and the current coding information into a chroma decision tree model to obtain a chroma division mode of the current unit to be divided; obtaining an initial partition mode of the current unit to be partitioned based on the brightness partition mode and the chromaticity partition mode; when the initial dividing mode does not meet the preset condition, dividing the current unit to be divided by using the initial dividing mode to obtain a new current unit to be divided; determining a new current combined coding unit corresponding to the new current unit to be divided based on the preset division mode and the new current unit to be divided; updating the current unit to be divided by using the new current unit to be divided; and updating the current combined coding unit by using the new current combined coding unit, and returning to execute the step of obtaining the brightness gradient difference degree based on the brightness gradient until the initial division mode meets the preset condition, or the new current unit to be divided only comprises a minimum coding unit, and obtaining the target division mode based on the initial division mode.

It should be noted that the preset condition is that the initial partitioning mode is a non-partitioning mode, that is, when the initial partitioning mode is the non-partitioning mode, or a new current unit to be partitioned cannot be partitioned any more (the new current unit to be partitioned is the minimum coding unit), the partitioning is stopped. The division process is a loop process, and the loop is stopped when the above condition is met.

In addition, the current coding information includes a division depth (which may be understood as the current cycle number corresponding to the current unit to be divided, and the division depth corresponding to the first cycle is 1) and size information (which is the size of the current unit to be divided). The chroma division mode and the brightness division mode are distinguished, the current unit to be divided needs to be subjected to chroma division and brightness division, and the current unit to be divided needs to be subjected to decision making by utilizing a chroma decision tree model and a brightness decision tree model respectively.

Referring to fig. 4, fig. 4 is a schematic diagram of a partition structure corresponding to a preset partition mode in the present invention. In fig. 4, a 64 × 64 initial coding unit is divided into 16 minimum coding units (size is 16 × 16), and 16 minimum coding units (1-16 are numbers of 16 minimum coding units for convenience of explanation).

For the first cycle (quadtree partitioning and binary tree partitioning can be performed), the initial coding unit is taken as the current unit to be partitioned, and 4 current combined coding units are determined by using a preset partitioning mode: 1. 2, 5 and 6 are first large cells, 3, 4, 7 and 8 are second large cells, 6, 10, 13 and 14 are third large cells, and 11, 12, 15 and 16 are fourth large cells. For the quadtree partition mode, the four current combined coding units are four partitions in the partition mode: the first big unit is a first big partition, the second big unit is a second big partition, the third big unit is a third big partition, and the fourth big unit is a fourth big partition; for the horizontal binary tree partitioning mode, the first big unit and the second big unit form an upper big partition, and the third big unit and the fourth big unit form a lower big partition; for the vertical binary tree partitioning mode, the first big unit and the third big unit form a left big partition, and the second big unit and the fourth big unit form a right big partition.

When the initial partitioning mode corresponding to the first cycle is a quadtree partitioning mode, and when the second cycle starts, the current unit to be partitioned includes the first large partition, the second large partition, the third large partition, and the fourth large partition, where one large partition is a new current unit to be partitioned with a size of 2 × 2 (the number of minimum coding units, and the sizes referred to in fig. 4 below are all exemplified by the number of minimum coding units, for example, the current unit to be partitioned composed of 1, 2, 5, and 6 in fig. 4, and each minimum coding unit is a new current combined coding unit), and each new current unit to be partitioned is continuously partitioned according to the first cycle; and after the second circulation, the corresponding new current unit to be divided only comprises a minimum coding unit, the division cannot be performed, and the circulation is not performed, at the moment, the division modes respectively corresponding to the two circulation processes are the quadtree division modes, and at the moment, the corresponding target division modes are the quadtree division mode and the quadtree division mode.

When the initial partitioning mode corresponding to the first cycle is a quadtree partitioning mode, taking one of the four large partitions (for example, the first large partition) as an example, the size of the current unit to be partitioned is 4 × 4, the size of the current combined coding unit corresponding to the second cycle is 1 × 1, and the luminance gradient difference, the chrominance histogram difference and the current coding information required by the second cycle process are obtained by taking the current combined coding unit as a reference; after the second cycle is in the horizontal binary tree splitting mode, the size of the generated new current cell to be split is 2 × 1 (for example, a cell consisting of 1 and 2 in fig. 4), and for one cell of the size, the luminance gradient difference, the chrominance histogram difference and the current coding information required by the third cycle are obtained according to the size of the current combined coding cell being 1 × 1; the third loop process can only perform vertical binary tree division to obtain two corresponding new current combined coding units with the size of 1 × 1, so that the fourth loop is not performed any more.

When the initial partitioning mode corresponding to the first cycle is a quadtree partitioning mode, taking one of the four large partitions (for example, the first large partition) as an example, the size of the current unit to be partitioned is 4 × 4, the size of the current combined coding unit corresponding to the second cycle is 1 × 1, and the luminance gradient difference, the chrominance histogram difference and the current coding information required by the second cycle are obtained by taking the current combined coding unit as a reference; the second cycle corresponds to the vertical binary tree partitioning mode, and after the second cycle, the size of the new current to-be-partitioned unit is 1 × 2 (for example, a unit composed of 1 and 5 in fig. 4), and the luminance gradient difference, the chrominance histogram difference and the current coding information required by the third cycle are obtained based on the size of the current combined coding unit being 1 × 1; the third loop process can only perform horizontal binary tree division to obtain two corresponding new current combined coding units with the size of 1 × 1, so that the fourth loop is not performed any more.

When the first cycle is a vertical binary tree partitioning mode (the third row is the first from the left in fig. 4), the size of the corresponding new current unit to be partitioned is 2 × 4, the current unit to be partitioned can only be divided into binary trees (in fig. 4, the horizontal binary tree partitioning is the second from the left in the third row, the vertical binary tree partitioning is the third from the left in the third row), the size of the corresponding current combined coding unit is 1 × 2 (one large region corresponds to four combined coding units), and the luminance gradient difference, the chrominance histogram difference and the current coding information required by the second cycle process are obtained by taking the current combined coding unit as a reference; in the second loop, a vertical binary tree splitting pattern (in fig. 4, the third row from the left is the third), the size of the new current cell to be split is 1 × 4 (for example, a cell composed of 1, 5, 9, and 13), and based on the size of the current combined coding cell being 1 × 2, the luminance gradient difference, the chrominance histogram difference, and the current coding information required by the third loop are obtained; the third loop process can only perform horizontal binary tree splitting (the fourth from the left in the third row in fig. 4) to obtain two corresponding new current combined coding units with the size of 1 × 2, and then perform the fourth loop (in fig. 4, only horizontal binary tree splitting of 1 × 2, for example, a unit consisting of 1 and 5) to obtain a current combined coding unit with the size of 1 × 1, so that the fifth loop cannot be performed; or, the second cycle corresponds to the horizontal binary tree partitioning mode, and the size of the new current to-be-partitioned unit generated at this time is 2 × 2 (in fig. 4, the second unit from the left consists of 1, 2, 5, and 6), and the luminance gradient difference, the chrominance histogram difference, and the current coding information required by the third cycle are obtained with the size of the current combined coding unit being 1 × 1; the division then continues as described above for the 4 x 4 size cells.

When the first cycle is a horizontal binary tree partitioning mode (the second row starts first from the left in fig. 4), the corresponding new current unit to be partitioned is 4 × 2 in size, only binary tree partitioning can be performed (in fig. 4, horizontal binary tree partitioning: the second row starts second from the left, vertical binary tree partitioning: the third row starts third from the left in fig. 4), the size of the corresponding current combined coding unit is 2 × 1 (one large region corresponds to four combined coding units), and the luminance gradient difference, the chrominance histogram difference and the current coding information required by the second cycle are obtained by taking the current combined coding unit as a reference; if the second cycle corresponds to the horizontal binary tree splitting mode, the size of the new current unit to be split is 4 × 1 (in fig. 4, the second line from the left is a unit consisting of 1, 2, 3 and 4), and the luminance gradient difference, the chrominance histogram difference and the current coding information required by the third cycle are obtained based on the size of the current combined coding unit being 2 × 1; in the third loop process, only vertical binary tree division can be performed (the third row in fig. 4 has a size of 4 × 1, and the unit is composed of 1, 2, 3, and 4) to obtain two corresponding units to be divided, which are currently new and have a size of 2 × 1, and then the fourth loop (in fig. 4, only vertical binary tree division can be performed on 2 × 1, for example, the unit is composed of 1 and 2) is performed to obtain a current combined coding unit with a size of 1 × 1, so that the fifth loop cannot be performed; or, the second loop corresponds to the vertical binary tree partitioning mode, after the second loop, the size of the generated new current unit to be partitioned is 2 × 2 (for example, a unit composed of 1, 2, 5 and 6), and the corresponding luminance gradient difference, chrominance histogram difference and current coding information are obtained based on the size of the current combined coding unit being 1 × 1; the division then continues in the manner described above for the 4 x 4 cell size division.

For each of the above examples, the non-division may occur in each cyclic process, and the non-division may be stopped, and the above description is explained by using the example in which the non-division does not occur.

It can be understood that, for the luminance gradient difference, the chrominance histogram difference, the current coding information of the current unit to be divided and the decision process of the decision tree model on the current unit to be divided, on the premise of hardware support (a chip of the terminal device has a plurality of parallel operation units), the process can be a parallel process (the luminance gradient difference of a plurality of current units to be divided can be operated in parallel, the chrominance histogram difference of a plurality of current units to be divided can be operated in parallel, the decision process of a plurality of current units to be divided can be performed in parallel, wherein the chrominance histogram difference and the luminance gradient difference are also operated in parallel). For example, after the first loop process is finished, the obtained new current cell to be divided is 4 cells of 32 × 32, then the 4 cells may obtain the difference degree of the luminance gradient and the difference degree of the chrominance histogram of each of the 4 cells simultaneously in a parallel operation manner, and then perform a parallel decision on the 4 cells.

In addition, the processing flow of the brightness decision tree model to the brightness gradient difference degree and the current coding information is as follows: when the current unit to be divided is a first-class coding unit, judging whether the current unit to be divided is divided into partitions or not by adopting a first classifier and utilizing the brightness gradient difference degree and the current coding information; when the current unit to be divided is divided, adopting a second classifier, and judging whether the current unit to be divided is in a quadtree division mode or not by utilizing the brightness gradient difference degree and the current coding information, otherwise, determining a non-division mode as the initial division mode; when the current unit to be divided does not carry out the quadtree division mode, adopting a third classifier, and judging whether the current unit to be divided carries out the horizontal binary tree division mode or not by utilizing the brightness gradient difference degree and the current coding information, otherwise, determining the quadtree division mode as the initial division mode; when the current unit to be divided does not carry out a horizontal binary tree division mode, determining a vertical binary tree division mode as the initial division mode, otherwise, determining a horizontal binary tree division mode as the initial division mode; or, when the current unit to be partitioned is a second-class coding unit, adopting a fourth classifier, and judging whether the current unit to be partitioned carries out a vertical binary tree partitioning mode or not by using the brightness gradient difference degree and the current coding information; when the current unit to be divided is subjected to a vertical binary tree division mode, determining the vertical binary tree division mode as the initial division mode, otherwise, determining a non-division mode as the initial division mode; or, when the current unit to be partitioned is a third-class coding unit, adopting a fifth classifier, and judging whether the current unit to be partitioned carries out a horizontal binary tree partitioning mode or not by using the brightness gradient difference and the current coding information; and when the current unit to be divided carries out a horizontal binary tree division mode, determining the horizontal binary tree division mode as the initial division mode, otherwise, determining a non-division mode as the initial division mode.

It can be understood that the processing flow of the chroma decision tree model to the chroma histogram difference and the current coding information is similar to the above, and is not described herein again. Similarly, the chroma decision tree model also includes 5 classifiers.

Meanwhile, when the word division of the current cell to be divided can not be performed, the current cell to be divided is the first type coding cell, the size of the current cell to be divided can be 32 × 32, 32 × 64 or 64 × 32, that is, the side length of the current cell to be divided is greater than 16 (for 32 × 64 or 64 × 32, although the quad-tree division can not be performed, the quad-tree division can still be input according to the quad-tree mode, after the first classifier judges that the cell to be divided can be performed, the second classifier directly determines that the cell to be divided performs binary-tree division, and the third classifier continuously judges which binary-tree division is performed); when the Size of the current unit to be divided is a Mini-Size coding unit and only a vertical binary tree division mode can be adopted, the current unit to be divided is a second type coding unit; and when the Size of the current unit to be divided is a Mini-Size coding unit and only a horizontal binary tree division mode can be adopted, the current unit to be divided is a third-class coding unit.

Referring to FIG. 5, FIG. 5 is a schematic diagram of a decision tree model framework according to the present invention.

For the decision tree model of the present application, including the luminance decision tree model and the chrominance decision tree model, the structures of the luminance decision tree model and the chrominance decision tree model are similar, and both involve two frames: the decision tree model frames corresponding to the second-class coding unit and the third-class coding unit are the same, and the structure shown in fig. 4 is referred to because the decision tree model frames are only the transition in the height and width directions.

For the decision tree model (including the luminance decision tree model and the chrominance decision tree model) of the present application, 10 classifiers are required, that is, for the first classifier, two classifiers are required, one is used for determining the luminance gradient difference degree and the other is used for determining the chrominance difference degree, and similarly, the second classifier to the fifth classifier also include two classifiers.

Based on the processing flow of the luminance gradient difference and the current coding information by the luminance decision tree model and the processing flow of the chrominance decision tree model and the current coding information by the chrominance decision tree model, the initial decision tree model is trained by using the obtained training samples to obtain the chrominance decision tree model and the luminance decision tree model, and the detailed training process is not repeated here.

It can be understood that, for the luminance gradient difference and the chrominance difference, one decision result is respectively corresponded, and the two decision results are combined to determine the final target partition mode.

Specifically, the step of obtaining the chroma histogram difference degree based on the chroma histogram includes: merging the chroma histograms of the minimum coding units included in the current combined coding unit to obtain a combined chroma histogram of the current combined coding unit; combining combined chrominance histograms of current combined coding units included in a current partition to obtain a result chrominance histogram corresponding to the current partition, wherein the current partition is a partition corresponding to each partition mode in the preset partition modes; obtaining the chroma histogram difference degree corresponding to the preset dividing mode based on the result chroma histogram; similarly, the step of obtaining the brightness gradient difference degree based on the brightness gradient includes: merging the brightness gradients of the minimum coding units included in the current combined coding unit to obtain a combined brightness gradient of the current combined coding unit; combining the combined brightness gradients of the current combined coding units included in the current partition to obtain a result brightness gradient corresponding to the current partition, wherein the current partition is a partition corresponding to each partition mode in the preset partition modes; and obtaining the brightness gradient difference degree corresponding to the preset dividing mode based on the result brightness gradient.

The specific case of the current combined coding unit refers to the explanation related to fig. 4 above, and is not described herein again. For a new current to-be-divided unit generated after each loop process is finished, that is, a partition corresponding to the loop process, for example, 2 × 4 (the number of minimum coding units) is the current to-be-divided unit when a certain loop process starts, which can only perform binary tree division, the corresponding current combined coding unit is four units of 1 × 2 (the number of minimum coding units), and the partitions after the loop process is finished are respectively a partition of 1 × 4 (the number of minimum coding units) and a partition of 2 × 2 (the number of minimum coding units), so that the partitions corresponding to the loop process are partitions of 1 × 4 (the number of minimum coding units) and a partition of 2 × 2 (the number of minimum coding units), that is, the partitions of the loop process are both formed by the current combined coding unit corresponding to the loop process.

In the invention, when the initial coding unit is 64 × 64, the corresponding minimum coding units are 16, and each minimum coding unit is 16 × 16; it is understood that the user can set the sizes of the initial coding unit and the minimum coding unit according to the concept of the present invention based on the requirement, which is not limited herein.

It can be understood that, in the present invention, based on a plurality of minimum coding units corresponding to the initial coding unit, respective luminance gradients and chrominance histograms of a plurality of combined coding units are obtained, the luminance gradient of the combined coding unit is a combined luminance gradient, and the chrominance histogram of the combined coding unit is a combined chrominance histogram. The combined luminance gradient includes a combined luminance gradient of each combined encoding unit, and the combined chrominance histogram includes a combined chrominance histogram of each combined encoding unit.

Specifically, referring to fig. 4, the combined luminance gradient of the first large unit is obtained by combining the luminance gradients of 1, 2, 5, and 6, and calculating the combined luminance gradients of the other combined coding units in the same manner. The combined chrominance histogram of the first large unit is obtained by combining the chrominance histograms of 1, 2, 5 and 6, and calculating the combined chrominance histogram of the other combined coding units in the same way.

It can be understood that the combined chrominance histogram of the combined coding unit includes chrominance histograms corresponding to the U component and the V component, which can be obtained in the above manner, and are not described herein again.

Specifically, the chroma histogram of each minimum coding unit is obtained by performing statistics on chroma pixels of each minimum coding unit: the chroma histogram (including the chroma histograms of the respective minimum coding units) is obtained using the chroma pixel values of the minimum coding units.

In addition, the luminance gradient of each minimum coding unit is obtained by: calculating the brightness gradient of the minimum coding units by using a formula I; the first formula is as follows:

wherein A is one of the minimum coding units, Gh(A)、Gv(A)、G45(A) And G135(A) Are respectively asThe luminance gradient of a in the horizontal, vertical, 45 degrees, and 135 degrees directions, W is the width of a, H is the height of a, and i and j represent the abscissa and ordinate of the luminance pixel v in a, respectively.

Referring to fig. 6, fig. 6 is a schematic diagram of a histogram difference degree and a gradient difference degree.

In fig. 5, in a, b and c, each picture is divided into two parts, namely a left part and a right part, and when the difference between the two parts is determined in a histogram manner, the result shows that the difference degree is extremely high and the texture is almost the same, but in practice, the texture of the left part and the texture of the right part in the three pictures are obviously different; meanwhile, if the difference between the four parts is calculated by adopting a gradient mode, the result shows that the difference degree is extremely high and almost the same texture, but actually, the texture difference between the four parts is obvious, namely, the modes of adopting the histogram and the gradient are not accurate, and because the gradient and the histogram algorithm are different in the sensitivity to the structure texture (brightness texture) and the color texture, in the application, the mode of adopting the histogram is adopted for the chroma component, and the gradient mode is adopted for the brightness component.

It can be understood that the luminance gradient and the chrominance histogram of each minimum coding unit are not changed, and under different partition modes, only the luminance gradient and the chrominance histogram of each minimum coding unit that have been obtained need to be used to obtain the resultant luminance gradient and the resultant chrominance histogram of the corresponding combined coding unit, and the resultant luminance gradient and the resultant chrominance histogram of each partition are obtained according to the preset partition mode by using the resultant luminance gradient and the resultant chrominance histogram of each combined coding unit. For an initial coding unit with a size of 64 × 64 in the present application, when the size of the corresponding minimum coding unit is 16 × 16, the first round process involves the above-mentioned first partition, second partition, third partition, fourth partition, upper large partition, lower large partition, left large partition, and right large partition, that is, the luminance gradient and the chrominance histogram of the minimum coding units need to be based on, and the resultant luminance gradient and the resultant luminance histogram of the 8 partitions are obtained.

In addition, after the luminance gradient and the chrominance histogram of each minimum coding unit are obtained, the combined luminance gradient and the combined luminance histogram corresponding to various partitions can be rapidly obtained in a parallel mode.

Specifically, the step of obtaining the brightness gradient difference degree corresponding to the preset partition mode based on the result brightness gradient includes:

calculating the brightness gradient difference degrees respectively corresponding to the preset division modes by using a formula III; the third formula is:

a∈(h,v,45,135)

wherein α is the gradient direction: horizontal, vertical, 45 degrees and 135 degrees, M and N are respectively any two subareas of each division mode, C and D are respectively the width and the height of the M subarea (or the N subarea), GDαAnd (M, N) is the brightness gradient difference degree of M and N in the alpha direction.

It should be noted that M and N are necessarily partitions corresponding to the same partition mode, for example, for the quadtree partition mode, M and N may be any two of the first partition, the second partition, the third partition and the fourth partition. The brightness gradient difference is solved by adopting the gradient difference, and the brightness gradient difference in four directions is needed, namely, alpha relates to four directions of horizontal, vertical, 45 degrees and 135 degrees. Meanwhile, for one division mode, a group of data corresponding to the division mode is obtained, the application relates to four division modes, and for a non-division mode, the chromaticity difference degree and the brightness gradient difference degree do not need to be obtained, and then three groups of brightness gradient difference degrees corresponding to other three division modes respectively need to be obtained.

Further, the step of obtaining the chroma histogram difference degree corresponding to the preset partition mode based on the result chroma histogram includes:

calculating the chroma histogram difference degree by using a formula II based on the result chroma histogram;

the second formula is:

wherein L is a fixed constant, Q and S are respectively a result chromaticity histogram, V, corresponding to any two partitions of each partition modeminIs the lowest significant bit of Q and S, not 0 significant value, VmaxIs the effective value of the highest bit of Q and S, QnIs the value of the nth bit in Q, snHD (Q, S) is the chroma histogram difference of Q and S, which is the value of the nth bit in S. Wherein, when the pixel value is 8bit data, the pixel value interval is [0,255%]If yes, 256 is taken as the fixed constant L; when the pixel value is 10bit data, the pixel value interval is [0,1023 ]]Then the fixed constant L takes 1024.

It should be noted that Q and S must be partitions corresponding to the same partition mode, for example, for the quadtree partition mode, Q and S may be any two of the first partition, the second partition, the third partition and the fourth partition. The chroma difference relates to the two chroma components U and V, which are separately evaluated in the manner described above. The final chroma difference is the average of the chroma differences of the two components. Meanwhile, for one division mode, a group of data corresponding to the division mode is obtained, the application relates to four division modes, and for a non-division mode, the chromaticity difference degree and the brightness gradient difference degree do not need to be obtained, and three groups of chromaticity difference degrees corresponding to other three division modes respectively need to be obtained.

Generally, things in a video frame of a target video are generally smooth, in other words, in a corresponding chrominance histogram (involving the chrominance histogram, a resultant chrominance histogram and a combined chrominance histogram), most of the histogram values of the bits are 0, that is, in the different partitions, the values of chrominance pixels are relatively continuous without obvious fluctuation, and the existing histogram statistical process needs to perform traversal operation on all chrominance pixel values (0-255) to obtain chrominance difference degrees, so that the calculation time is long and the calculation efficiency is low. In the method, only the traversal operation of the chroma pixel values in the partitions between the effective value of the highest bit and the effective value of the lowest bit is needed, and all 256 values are not needed to be traversed, so that the calculation time is saved, and the calculation efficiency is improved.

Referring to fig. 7, fig. 7 is a pseudo code diagram of the chroma histogram difference optimization algorithm of the present invention. Namely, in a specific application process, the calculation of the chroma histogram difference degree can be optimized.

The pseudo code may be expressed as follows:

inputting: bit: the number of bits of the target video sequence (8bit,10 bit);

hist1, Hist2 … Hist 3: 16U components or Y components corresponding to the minimum coding unit;

max1, Max2 … Max 3: the effective value of the highest bit of each of the 16 chrominance histograms;

min1, Min2 … Min 16: the effective value of the lowest bit of each of the 16 histograms;

and (3) outputting:

diff 12: the chroma histogram difference degree of the first large partition and the second large partition;

diff 24: the chroma histogram difference degree of the second large partition and the fourth large partition;

diff 34: the chroma histogram difference degree of the third large partition and the fourth large partition;

diff 13: the chroma histogram difference degree of the first large partition and the third large partition;

diffab: the chroma histogram difference degree of the upper large partition and the lower large partition;

diffcd: the chroma histogram difference degree of the left large partition and the right large partition;

the algorithm starts:

line 1: calculating the maximum value maxval in the effective values of the highest bits of all the chroma histograms;

line 2: calculating the minimum value minval of the effective values of the lowest bits of all the chrominance histograms;

line 3: zeroing sum12, sum24, sum34, sum13, sum cd;

line 4: cycling 5-25 rows from minval to minmax, with the i value cycling from minval to minmax row 5: v1 is equal to the sum of the ith bit of the four chroma histograms, hist1, hist2, hist4 and hist 6;

line 6: v2 is equal to the sum of the ith bit of the four chroma histograms, hist3, hist4, hist7 and hist 8;

line 7: v3 is equal to the sum of the ith bit of the four chroma histograms, hist9, hist10, hist13 and hist 14;

line 8: v4 is equal to the sum of the ith bit of the four chroma histograms, hist11, hist12, hist15 and hist 16;

line 9: va equals the sum of v1 and v 2; vb is equal to the sum of v3 and v 4; vc equals the sum of v1 and v 3; vd is equal to the sum of v2 and v 4;

line 10: if the maximum of v1 and v2 is greater than zero, sum12 accumulates ABS (v1-v2)/MAX (v1-v 2). Where ABS () is an absolute value function and MAX is a MAX function.

Line 12: if the maximum of v2 and v4 is greater than zero, sum24 accumulates the ABS (v2-v4) in-

MAX(v2-v4);

Line 14: sum34 accumulates ABS (v3-v4)/MAX (v3-v4) if the maximum of v3 and v4 is greater than zero;

line 16: sum13 accumulates ABS (v1-v3)/MAX (v1-v3) if the maximum of v1 and v3 is greater than zero;

line 18: if the maximum value of va and vb is larger than zero, summating the ABS (va-vb)/MAX (va-vb) by the sumab;

line 20: if the maximum value of vc and vd is larger than zero, summating ABS (vc-vd)/MAX (vc-vd) by the sumcd;

line 23: diff12 equals sum12 right shifted by bit (equivalent to divide by 2 bits); diff24 equals sum24 right shifted by bit (equivalent to divide by 2 bits); diff34 equals sum34 right shifted by bit (equivalent to divide by 2 bits); diff13 equals sum13 right shifted by bit (equivalent to divide by 2 bits); diffab equals to a bitmap right-shifted by bit (equivalent to dividing by 2 times bit); simcd is equal to sumcd right-shifted by bit (equivalent to dividing by bit times 2).

By using the above operation process, the merging operation of the redundant chroma histograms can be reduced, that is: the upper large partition, the lower large partition, the left large partition and the right large partition can be obtained by combining the first large unit, the second large unit, the third large unit and the fourth large unit. Meanwhile, the traversal operation is only carried out between the effective value of the highest bit and the effective value of the lowest bit, and all 256 bits are not involved, so that the traversal operation time is reduced, and the operation efficiency is improved.

The size of the minimum coding unit (SCU) corresponding to the 8K data set is 16 × 16, the size of the initial coding unit is 16 × 16, the range of the chroma pixel value of each minimum coding unit is counted, and the statistical result is shown in table 2, where table 2 is as follows:

TABLE 2

The results demonstrate that the actual span between the maximum and minimum values is relatively small compared to the theoretically allowed range. In these data, the average range for all sequences was 6.94 and the maximum range was 193. The optimization algorithm may save on average at least 97.29% of loop operations and even 24.61% in the worst case, which may significantly improve hardware throughput and computational efficiency.

It can be understood that, for four kinds of division modes related in the preset division mode, three other division modes except the non-division mode, it is required to obtain a luminance gradient difference degree and a chrominance difference degree corresponding to the mode, that is, the chrominance difference degree includes three groups of data corresponding to the three division modes respectively, and the chrominance difference degree also includes three groups of data corresponding to the three division modes respectively.

In some embodiments, the initial coding unit is 64 × 64, and the luminance gradient disparity and the chrominance disparity are obtained as described above; in other embodiments, there is an initial coding unit of Mini-Size: one coding unit with 16 sides. For the initial coding unit of Mini-Size, only a vertical binary tree partition mode, a horizontal binary tree mode and a non-partition mode can be adopted, that is, the involved partitions are an upper large partition, a lower large partition, a left large partition and a right large partition. For the Mini-Size initial coding unit, the Mini-Size initial coding unit is still split into a 16 × 16 minimum coding unit, and the luminance gradient and the chrominance histogram of the minimum coding unit are obtained according to the above method, and the combined luminance gradient and the combined chrominance histogram of each partition are obtained according to the above method, and finally, the chrominance difference and the luminance gradient difference corresponding to each partition mode are obtained according to the above method, which is not described herein again.

For each circulation process, the chroma difference and the brightness gradient difference are obtained in the above manner, based on the chroma difference and the brightness gradient difference, an initial partition mode corresponding to the circulation is determined until the circulation is not performed any more, and based on the initial partition modes of a plurality of circulation processes, a target partition mode is obtained, for example: the first circulation is the quadtree division, the second circulation is the quadtree division, and the target division mode is the twice quadtree division.

The technical scheme of the invention provides a method for determining a coding unit division mode in a hardware-oriented intra-frame coding mode, which comprises the steps of splitting an initial coding unit of a target video into a plurality of minimum coding units; calculating texture parameters of the minimum coding units; and obtaining a target partition mode of the initial coding unit based on the texture parameters.

In the existing method, an initial coding unit is divided according to a preset division mode, the rate distortion cost of the division mode is calculated for each division mode, and then the division mode with the lowest rate distortion cost is determined as a final division mode. In the invention, the texture parameters of each minimum coding unit are calculated in advance, then the target partition mode of the initial coding unit is obtained based on the texture parameters, and repeated calculation of the texture parameters is not needed, so the method for determining the partition mode of the coding unit in the hardware-oriented intra-frame coding mode has shorter calculation time and higher efficiency.

In order to evaluate the specific performance of the method of the present application, the actual segmentation result of random 5 frames in each sequence was extracted during the encoding process of the reference software VTM-11.0 of VVC, in which 8K UHD video is used as the data source. Then, the chroma disparity and the luminance gradient disparity of the luminance pixels are calculated to construct a data set. And then, training an initial decision tree model by using the same chrominance difference degree and luminance gradient difference degree characteristics to obtain the decision tree of the application.

A rapid method including a trained partition framework was implemented in VTM-11.0 and experimental results were obtained under general test conditions. The coding QP is taken to be 22, 27, 32, 37, and the coding configuration is ALL-INTRA. In addition, the test platform is Windows 10 with 16GB RAM and an Intel Core i5-10500 CPU. To demonstrate the performance and value of the proposed algorithm, we also encoded the same test sequence with VTM-11.0 and reference software HM-16.20 for HEVC, the final experimental results are shown in table 3, table 3 below:

TABLE 3

It can be seen that compared with HEVC, the VVC has significantly improved video compression performance, the average coding gain of BD-Rate is-37.549%, the average coding gain of BD-PSNR is 0.826dB, and the coding gain is fully demonstrated, and the new standard is essential for popularization of 8K UHD video application programs. Then, in contrast to VTM-11.0, the BD-Rate and BD-PSNR lose 5.712% and-0.127 dB, respectively, and the coding loss is somewhat too large from the software fast algorithm point of view, but is acceptable considering that partitioning is an unavoidable challenge for VVC real-time intra coding on a hardware platform. In this case in particular, the method of the present application still has a BD-Rate of-31.595% and a BD-PSNR gain of 0.7dB, compared to HM-16.20.

In order to verify the effectiveness of the method, simulation experiments are carried out in Vivado 2019.2 based on Xilinx VirtexUltraScale VU440 FPGA. The overall architecture is simulated and the decision module is also artificially adapted to make the partitioning process the most complex, divide one LPCU (the largest coding unit, i.e. the initial coding unit) into SCUs (the smallest coding units), and select the BT mode, but the first division is the QT mode. Under these strict test conditions, the target video is an 8K UHD video in a single channel mode, the target video has 33 frames per second (fps), and a partitioning operation is performed on video frames of the target video. The simulation results are shown in table 4, where table 4 is as follows:

TABLE 4

In this case, the resource utilization of the VU-440 FPGAs for BRAM _18K, DSP48E, FF and LUT are 0.2%, 5.7%, 2.6% and 5.3%, respectively. Furthermore, if a multi-channel model is used and 4 parallel architectures are provided, 130fps computing power can be provided, and almost the highest video quality can be supported.

Referring to fig. 7, fig. 7 is a block diagram of a task scheduling apparatus according to an embodiment of the present invention, where the apparatus is used for a terminal device, and based on the same inventive concept as the foregoing embodiment, the apparatus includes:

a splitting module 10, configured to split an initial coding unit of a target video into a plurality of minimum coding units;

a calculation module 20, configured to calculate texture parameters of the minimum coding units;

an obtaining module 30, configured to obtain a target partition mode of the initial coding unit based on the texture parameter.

It should be noted that, since the steps executed by the apparatus of this embodiment are the same as the steps of the foregoing method embodiment, the specific implementation and the achievable technical effects thereof can refer to the foregoing embodiment, and are not described herein again.

The above description is only an alternative embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications and equivalents of the present invention, which are made by the contents of the present specification and the accompanying drawings, or directly/indirectly applied to other related technical fields, are included in the scope of the present invention.

25页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种插值滤波器系数自适应生成方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类