Video coding and decoding method and device, computer readable medium and electronic equipment
By improving the derivative mode division method in video encoding technology, non-2 integer power prediction blocks are divided into integer power sub-blocks of 2, solving the problem of low encoding efficiency caused by unreasonable prediction block size in the prior art, and achieving more efficient video encoding.
Patent Information
- Application Number
- CN202510150304.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2020-12-03
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2040-12-03
AI Technical Summary
In the existing video encoding technology, the derivative mode division method causes the prediction block size to be not an integer power with an integer value whose size is not 2, increasing the complexity of the hardware implementation and reducing the encoding efficiency.
By improving the division method of the derivative mode, the prediction block with an integer power with a side length of non-2 is divided into two sub-blocks with an integer power with a side length of 2, and decoded according to these sub-blocks to generate a reconstructed image.
This method uses larger sub-blocks to improve the transformation efficiency without increasing the cost of hardware implementation, thereby improving the efficiency of video encoding.
Smart Images

Figure CN120050424A_ABST
Abstract
Description
[0001] This application is a divisional application of the application with the application number 2020114116812 and the invention title "Video Decoding Method, Device, Computer Readable Medium and Electronic Device", which was filed on December 3, 2020. Technical Field
[0002] This application relates to the field of computer and communication technologies, and in particular, to a video encoding and decoding method, device, computer readable medium and electronic device. Background Art
[0003] In the field of video coding, for the partitioning method of coding blocks, QT (Quad-Tree), BT (Binary-Tree), and EQT (Extended Quad-Tree) partitioning structures are adopted in related video coding standards. And the concept of Intra Derived Tree (abbreviated as Intra DT) is also proposed. However, the partitioning method of the derived mode will generate prediction blocks with non-integer powers of 2, that is, the width or height size of the prediction block does not belong to an integer power of 2. The transform block generally does not cross the boundary of the prediction block to avoid introducing too much high-frequency energy. To reduce the complexity of hardware implementation, the prediction block is first divided into sub-blocks and then transformed. However, due to the unreasonable corresponding sub-block partitioning method, the video coding efficiency is affected. Summary of the Invention
[0004] Embodiments of the present application provide a video encoding and decoding method, device and electronic device, which can at least effectively improve the video coding efficiency to a certain extent.
[0005] Other features and advantages of the present application will become apparent through the following detailed description, or be learned in part through the practice of the present application.
[0006] According to one aspect of the embodiments of the present application, a video decoding method is provided, including: obtaining a coding block corresponding to a video image frame and a derived mode adopted by the coding block; performing decoding processing on multiple sub-blocks in the coding block according to a target partitioning method corresponding to the derived mode, where the target partitioning method is selected from improved partitioning methods of the derived mode, and the improved partitioning methods of the derived mode include a partitioning method of dividing a prediction block with a side length of a non-integer power of 2 in the coding block into 2 sub-blocks with side lengths of integer powers of 2; generating a reconstructed image according to the derived mode adopted by the coding block and multiple sub-coefficient blocks obtained by performing decoding processing in units of the multiple sub-blocks.
[0007] According to one aspect of the embodiments of the present application, a video decoding device is provided, including: an acquisition unit configured to acquire an encoded block corresponding to a video image frame and a derived mode adopted by the encoded block; a decoding unit configured to perform decoding processing on a plurality of sub-blocks in the encoded block according to a target partitioning method corresponding to the derived mode, where the target partitioning method is selected from improved partitioning methods of the derived mode, and the improved partitioning methods of the derived mode include a partitioning method of partitioning a prediction block with a side length that is not a power of 2 into two sub-blocks with side lengths that are powers of 2; a first processing unit configured to generate a reconstructed image according to the derived mode adopted by the encoded block and a plurality of sub-coefficient blocks obtained by performing decoding processing on the basis of the plurality of sub-blocks.
[0008] In some embodiments of the present application, based on the foregoing solution, if the derived mode is a horizontal derived mode, the improved partitioning methods of the horizontal derived mode include: a partitioning method of partitioning a prediction block with a height that is not a power of 2 in the height direction into two sub-blocks with a side length ratio of 1:2 or 2:1.
[0009] In some embodiments of the present application, based on the foregoing solution, if the derived mode is a vertical derived mode, the improved partitioning methods of the vertical derived mode include: a partitioning method of partitioning a prediction block with a width that is not a power of 2 in the width direction into two sub-blocks with a side length ratio of 1:2 or 2:1.
[0010] In some embodiments of the present application, based on the foregoing solution, the first processing unit is configured to: if the encoded block adopts an intra-frame derived mode, perform inverse quantization processing and inverse transformation processing on the plurality of sub-coefficient blocks in a predetermined order, and reconstruct the images corresponding to the plurality of sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transformation processing, so as to generate the reconstructed image, where, during the reconstruction process, the reconstructed image corresponding to the sub-block with a previous order is added to the intra-frame prediction reference image area of the sub-block with a subsequent order.
[0011] In some embodiments of the present application, based on the foregoing solution, the first processing unit is configured to: if the intra-frame derived mode is an intra-frame horizontal derived mode, perform inverse quantization processing and inverse transformation processing on the plurality of sub-coefficient blocks in a top-to-bottom manner, and reconstruct the images corresponding to the plurality of sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transformation processing; if the intra-frame derived mode is an intra-frame vertical derived mode, perform inverse quantization processing and inverse transformation processing on the plurality of sub-coefficient blocks in a left-to-right manner, and reconstruct the images corresponding to the plurality of sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transformation processing.
[0012] In some embodiments of the present application, based on the foregoing solution, the first processing unit is configured to: if the coding block adopts an inter-frame derived mode, perform inverse quantization processing and inverse transformation processing on the multiple sub-coefficient blocks respectively to obtain the reconstructed residuals corresponding to the multiple sub-blocks respectively; splice the reconstructed residuals corresponding to the multiple sub-blocks respectively to obtain the reconstructed residual corresponding to the multiple sub-blocks as a whole; generate the reconstructed image according to the reconstructed residual corresponding to the multiple sub-blocks as a whole.
[0013] In some embodiments of the present application, based on the foregoing solution, the target partitioning method is a preset partitioning method selected from the improved partitioning methods of the derived mode.
[0014] In some embodiments of the present application, based on the foregoing solution, the decoding unit is further configured to: determine the target partitioning method according to the identification information decoded from the bitstream, where the target partitioning method is selected by the encoding end from multiple partitioning methods based on a rate-distortion optimization strategy, and the multiple partitioning methods include the improved partitioning methods of the derived mode and the original partitioning methods of the derived mode.
[0015] In some embodiments of the present application, based on the foregoing solution, the decoding unit is further configured to: determine whether all coding blocks adopting the derived mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence; or
[0016] determine whether all coding blocks adopting the intra-frame derived mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence; or
[0017] determine whether all coding blocks adopting the inter-frame derived mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence.
[0018] According to one aspect of the embodiments of the present application, a video coding method is provided, including: determining the derived mode adopted by the coding block corresponding to the video image frame; partitioning the prediction block in the coding block according to the target partitioning method corresponding to the derived mode to obtain multiple sub-blocks, where the target partitioning method is selected from the improved partitioning methods of the derived mode, and the improved partitioning methods of the derived mode include a partitioning method of partitioning a prediction block with a side length that is not a power of 2 into 2 sub-blocks with side lengths that are powers of 2; performing coding processing on the multiple sub-blocks obtained by partitioning.
[0019] According to one aspect of the embodiments of the present application, there is provided a video encoding device, including: a determination unit configured to determine a derivative mode adopted by an encoding block corresponding to a video image frame; a division unit configured to divide prediction blocks in the encoding block according to a target division method corresponding to the derivative mode, to obtain a plurality of sub-blocks, where the target division method is selected from improved division methods of the derivative mode, and the improved division methods of the derivative mode include a division method of dividing a prediction block with a side length that is not a power of 2 in the encoding block into two sub-blocks with side lengths that are powers of 2; and an encoding unit configured to perform encoding processing on the plurality of sub-blocks obtained by division.
[0020] According to one aspect of the embodiments of the present application, there is provided a computer-readable medium having a computer program stored thereon, where when the computer program is executed by a processor, it implements the video decoding method or the video encoding method as described in the above embodiments.
[0021] According to one aspect of the embodiments of the present application, there is provided an electronic device, including: one or more processors; a storage device for storing one or more programs, where when the one or more programs are executed by the one or more processors, the one or more processors implement the video decoding method or the video encoding method as described in the above embodiments.
[0022] According to one aspect of the embodiments of the present application, there is provided a computer program product or a computer program, the computer program product or the computer program including computer instructions, where the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the video decoding method or the video encoding method provided in the above various alternative embodiments.
[0023] According to one aspect of the embodiments of the present application, there is provided a method for storing a video bitstream, where the video bitstream is decoded according to the video decoding method described in the above embodiments, or the video bitstream is generated according to the video encoding method described in the above embodiments.
[0024] In the technical solutions provided in some embodiments of the present application, decoding processing is performed on a plurality of sub-blocks in an encoding block according to a target division method corresponding to a derivative mode adopted by the encoding block, and the improved division methods of the derivative mode include a division method of dividing a prediction block with a side length that is not a power of 2 in the encoding block into two sub-blocks with side lengths that are powers of 2. Since these sub-blocks belong to the same prediction block and have the same prediction information, they also have a similar residual distribution. And the division method in the embodiments of the present application ensures that without increasing the hardware implementation cost, larger sub-blocks are used to improve the transformation efficiency, thereby improving the final encoding efficiency.
[0025] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and do not limit this application. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] The drawings herein are incorporated into the specification and constitute a part of this specification, showing embodiments consistent with this application, and are used together with the specification to explain the principles of this application. Obviously, the drawings in the following description are only some embodiments of this application, and those of ordinary skill in the art can obtain other drawings based on these drawings without creative efforts. In the drawings:
[0027] Figure 1 A schematic diagram showing an exemplary system architecture to which the technical solution of the embodiment of this application can be applied;
[0028] Figure 2 A schematic diagram showing the placement manner of a video encoding device and a video decoding device in a streaming system;
[0029] Figure 3 A basic flowchart showing a video encoder;
[0030] Figure 4 A scanned area marked by the SRCC technology is shown;
[0031] Figure 5 A schematic diagram showing the scanning order of the marked scanned area;
[0032] Figure 6 A schematic diagram showing the partitioning manner of the EQT;
[0033] Figure 7 A flowchart showing the selection of a basic block partitioning structure in AVS3;
[0034] Figure 8 A schematic diagram showing the block partitioning manner of an intra-derived mode;
[0035] Figure 9 A flowchart showing a video decoding method according to an embodiment of this application;
[0036] Figure 10 and Figure 11 A schematic diagram showing the improved partitioning manner of a horizontal-derived mode according to an embodiment of this application;
[0037] Figure 12 and Figure 13 A schematic diagram showing the improved partitioning manner of a vertical-derived mode according to an embodiment of this application;
[0038] Figure 14 A schematic diagram showing a partitioning method for derivative mode improvement according to an embodiment of the present application;
[0039] Figure 15 A block diagram showing a video decoding device according to an embodiment of the present application;
[0040] Figure 16 A schematic structural diagram of a computer system of an electronic device suitable for implementing the embodiments of the present application. Detailed implementation manners
[0041] Example embodiments will now be described more fully with reference to the accompanying drawings. However, the example embodiments can be implemented in various forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this application will be more complete and comprehensive, and will fully convey the concept of the example embodiments to those skilled in the art.
[0042] In addition, the described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of the embodiments of the present application. However, those skilled in the art will realize that the technical solutions of the present application can be practiced without one or more of the specific details, or other methods, components, devices, steps, etc. can be adopted. In other cases, well-known methods, devices, implementations, or operations are not shown or described in detail to avoid obscuring aspects of the present application.
[0043] The block diagrams shown in the drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software form, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0044] The flowcharts shown in the drawings are merely illustrative and not necessarily include all the content and operations / steps, nor are they necessarily executed in the described order. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to the actual situation.
[0045] It should be noted that: "a plurality of" as mentioned herein refers to two or more. "And / or" describes the association relationship of associated objects and indicates that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally represents an "or" relationship between the associated objects before and after.
[0046] Figure 1A schematic diagram showing an exemplary system architecture to which the technical solution of the embodiments of the present application can be applied.
[0047] As Figure 1 shown, the system architecture 100 includes a plurality of terminal devices, and the terminal devices can communicate with each other through, for example, a network 150. For example, the system architecture 100 may include a first terminal device 110 and a second terminal device 120 interconnected through the network 150. In Figure 1 the embodiment, the first terminal device 110 and the second terminal device 120 perform unidirectional data transmission.
[0048] For example, the first terminal device 110 may encode video data (such as a video picture stream collected by the terminal device 110) for transmission to the second terminal device 120 through the network 150. The encoded video data is transmitted in the form of one or more encoded video bitstreams. The second terminal device 120 may receive the encoded video data from the network 150, decode the encoded video data to recover the video data, and display video pictures according to the recovered video data.
[0049] In an embodiment of the present application, the system architecture 100 may include a third terminal device 130 and a fourth terminal device 140 that perform bidirectional transmission of encoded video data. The bidirectional transmission may occur, for example, during a video conference. For bidirectional data transmission, each of the third terminal device 130 and the fourth terminal device 140 may encode video data (such as a video picture stream collected by the terminal device) for transmission to the other of the third terminal device 130 and the fourth terminal device 140 through the network 150. Each of the third terminal device 130 and the fourth terminal device 140 may also receive the encoded video data transmitted by the other of the third terminal device 130 and the fourth terminal device 140, decode the encoded video data to recover the video data, and may display video pictures on an accessible display device according to the recovered video data.
[0050] In Figure 1In an embodiment, the first terminal device 110, the second terminal device 120, the third terminal device 130, and the fourth terminal device 140 may be a server, a personal computer, and a smart phone, but the principles disclosed in this application are not limited thereto. The embodiments disclosed in this application are applicable to laptop computers, tablet computers, media players, and / or dedicated video conferencing devices. The network 150 represents any number of networks for transmitting encoded video data between the first terminal device 110, the second terminal device 120, the third terminal device 130, and the fourth terminal device 140, including, for example, wired and / or wireless communication networks. The communication network 150 may exchange data in circuit-switched and / or packet-switched channels. The network may include a telecommunications network, a local area network, a wide area network, and / or the Internet. For the purposes of this application, unless otherwise explained below, the architecture and topology of the network 150 may be immaterial to the operations disclosed in this application.
[0051] In one embodiment of the present application, Figure 2 illustrates the placement of a video encoding device and a video decoding device in a streaming environment. The subject matter disclosed in this application is equally applicable to other video-enabled applications, including, for example, video conferencing, digital TV (television), storing compressed video on digital media including CDs, DVDs, memory sticks, etc.
[0052] The streaming system may include an acquisition subsystem 213, and the acquisition subsystem 213 may include a video source 201 such as a digital camera. The video source creates an uncompressed video picture stream 202. In an embodiment, the video picture stream 202 includes samples taken by the digital camera. Compared with the encoded video data 204 (or the encoded video bitstream 204), the video picture stream 202 is depicted as a thick line to emphasize the high data volume of the video picture stream. The video picture stream 202 may be processed by an electronic device 220, and the electronic device 220 includes a video encoding device 203 coupled to the video source 201. The video encoding device 203 may include hardware, software, or a combination of hardware and software to implement or carry out aspects of the disclosed subject matter described in more detail below. Compared with the video picture stream 202, the encoded video data 204 (or the encoded video bitstream 204) is depicted as a thin line to emphasize the lower data volume of the encoded video data 204 (or the encoded video bitstream 204), which may be stored on the streaming server 205 for future use. One or more streaming client subsystems, such as Figure 2The client subsystems 206 and 208 therein can access the streaming server 205 to retrieve copies 207 and 209 of the encoded video data 204. The client subsystem 206 can include, for example, a video decoding device 210 in the electronic device 230. The video decoding device 210 decodes the incoming copy 207 of the encoded video data and generates an output video picture stream 211 that can be presented on a display 212 (such as a display screen) or another presentation device. In some streaming systems, the encoded video data 204, the video data 207, and the video data 209 (such as a video bitstream) can be encoded according to certain video encoding / compression standards. Examples of such standards include ITU-T H.265. In an embodiment, a video encoding standard that is being developed is informally referred to as Versatile Video Coding (VVC), and the present application can be used in the context of the VVC standard.
[0053] It should be noted that the electronic devices 220 and 230 may include other components not shown in the figure. For example, the electronic device 220 may include a video decoding device, and the electronic device 230 may further include a video encoding device.
[0054] In an embodiment of the present application, taking the international video encoding standards HEVC (High Efficiency Video Coding), VVC (Versatile Video Coding), and the Chinese national video encoding standard AVS as examples, when a video frame image is input, the video frame image will be divided into a number of non-overlapping processing units according to a block size, and each processing unit will perform a similar compression operation. This processing unit is called a CTU (Coding Tree Unit) or an LCU (Largest Coding Unit). The CTU can be further divided more finely to obtain one or more basic coding units CU, and the CU is the most basic element in a coding link. The following introduces some concepts when encoding the CU:
[0055] Predictive Coding: Predictive coding includes methods such as intra-frame prediction and inter-frame prediction. After the original video signal is predicted by a selected reconstructed video signal, a residual video signal is obtained. The encoding end needs to decide which predictive coding mode to select for the current CU and inform the decoding end. Among them, intra-frame prediction means that the predicted signal comes from an area that has been encoded and reconstructed within the same image; inter-frame prediction means that the predicted signal comes from other images (referred to as reference images) that have been encoded and are different from the current image.
[0056] Transform & Quantization: After the residual video signal undergoes transformation operations such as DFT (Discrete Fourier Transform) and DCT, the signal is converted into the transform domain, and the resulting coefficients are called transform coefficients. The transform coefficients are further subjected to lossy quantization operations, losing some information, which makes the quantized signal conducive to compressed representation. In some video coding standards, there may be more than one transform method to choose from. Therefore, the encoder also needs to select one of the transform methods for the current CU and inform the decoder. The fineness of quantization is usually determined by the quantization parameter (QP). A larger QP value means that coefficients in a larger value range will be quantized to the same output, usually resulting in greater distortion and a lower bitrate. On the contrary, a smaller QP value means that coefficients in a smaller value range will be quantized to the same output, usually resulting in less distortion and a corresponding higher bitrate.
[0057] Entropy Coding or Statistical Coding: The quantized transform domain signal will be statistically compressed and encoded according to the frequency of each value, and finally a binary (0 or 1) compressed bitstream is output. At the same time, other information generated during encoding, such as the selected coding mode, motion vector data, etc., also needs to be entropy encoded to reduce the bitrate. Statistical coding is a lossless coding method that can effectively reduce the bitrate required to represent the same signal. Common statistical coding methods include variable length coding (VLC) or context-adaptive binary arithmetic coding (CABAC).
[0058] Loop Filtering: The signal that has undergone transformation and quantization will obtain a reconstructed image through operations such as inverse quantization, inverse transformation, and prediction compensation. Compared with the original image, due to the influence of quantization, some information of the reconstructed image is different from the original image, that is, the reconstructed image will generate distortion. Therefore, filtering operations can be performed on the reconstructed image, such as deblocking filter (abbreviated as DB), SAO (Sample Adaptive Offset), or ALF (Adaptive Loop Filter) and other filters, which can effectively reduce the degree of distortion generated by quantization. Since these filtered reconstructed images will be used as references for subsequent encoded images to predict future image signals, the above filtering operations are also called loop filtering, that is, filtering operations within the encoding loop.
[0059] In an embodiment of the present application, Figure 3 The basic flowchart of a video encoder is shown, and intra-frame prediction is used as an example for illustration in this process. Among them, the original image signal s k [x, y] and the predicted image signal perform a difference operation to obtain the residual signal u k [x, y], and the residual signal u k [x, y] undergoes transformation and quantization processing to obtain quantization coefficients. On the one hand, the quantization coefficients are entropy-coded to obtain the encoded bitstream, and on the other hand, through inverse quantization and inverse transformation processing, the reconstructed residual signal u' k [x, y] is obtained. The predicted image signal and the reconstructed residual signal u' k [x, y] are superimposed to generate the image signal The image signal is input to the intra-frame mode decision module and the intra-frame prediction module for intra-frame prediction processing on the one hand, and on the other hand, the reconstructed image signal s' k [x, y] is output through loop filtering. The reconstructed image signal s' k [x, y] can be used as a reference image for the next frame for motion estimation and motion compensation prediction. Then, based on the result of motion compensation prediction s' r [x + m x , y + m y and the intra-frame prediction result the predicted image signal for the next frame is obtained and the above process is continued until the encoding is completed.
[0060] In addition, since the non-zero coefficients in the quantized coefficient block after transformation and quantization of the residual signal are more likely to be concentrated in the left and upper regions of the block, while the right and lower regions of the block are often 0, the SRCC technique is introduced. Through the SRCC technique, the size SRx×SRy of the upper-left region containing non-zero coefficients in each quantized coefficient block (with a size of W×H) can be marked. Here, SRx is the abscissa of the rightmost non-zero coefficient in the quantized coefficient block, and SRy is the ordinate of the bottommost non-zero coefficient in the quantized coefficient block, and 1≤SRx≤W, 1≤SRy≤H, and the coefficients outside this region are all 0. The SRCC technique uses (SRx, SRy) to determine the quantized coefficient region to be scanned in a quantized coefficient block. As Figure 4 shown, only the quantized coefficients within the scanning region marked by (SRx, SRy) need to be encoded, and the encoding scanning order is as Figure 5 shown, which can be a reverse Z-shaped scan from the lower right corner to the upper left corner.
[0061] Based on the above encoding process, at the decoding end, for each CU, after obtaining the compressed bitstream (i.e., the bitstream), entropy decoding is performed to obtain various mode information and quantized coefficients. Then the quantized coefficients are processed through inverse quantization and inverse transformation to obtain the residual signal. On the other hand, according to the known encoding mode information, the prediction signal corresponding to this CU can be obtained. Then, after adding the residual signal and the prediction signal, the reconstructed signal can be obtained, and the reconstructed signal is further processed through operations such as loop filtering to generate the final output signal.
[0062] For the above encoding process, AVS3 adopts the QT+BT+EQT basic block partitioning structure, while the previous generation AVS2 standard adopts the quadtree (QT) partitioning structure, that is, a CU is divided into four sub-CUs. Among them, BT can divide a CU into two sub-CUs, left / right or up / down; EQT includes two types of I-shaped partitioning methods, horizontal and vertical, to divide a CU into 4 sub-CUs. Specifically, as Figure 6 shown, Figure 6 the left figure in Figure 6 is the horizontal I-shaped partitioning method,
[0063] The representation method of the QT+BT+EQT basic block partitioning structure in the bitstream in AVS3 is as Figure 7As shown, for a CU, first determine whether QT is used for partitioning. If QT is used, directly perform QT partitioning; if QT is not used, further determine whether to not partition. If not partitioning, end; if partitioning is required, further determine whether to use EQT or BT. At the same time, whether using EQT or BT, it is necessary to determine whether to perform horizontal partitioning or vertical partitioning. Block partitioning starts from the LCU and makes recursive partitioning decisions from top to bottom. During the recursive process, the optimal partitioning method and coding mode are determined by optimization at the coding end.
[0064] In addition, Intra DT (Intra Derived Mode) is also proposed in AVS3. This method mainly adds the concept of PU (Prediction Unit) on the basis of the coding unit, that is, further divides the coding unit into PUs, and this method supports six PU partitioning methods, specifically as Figure 8 shown, including three horizontal partitioning methods (i.e., horizontal derived mode, 2N×hN, 2N×nU, 2N×nD) and three vertical partitioning methods (i.e., vertical derived mode, hN×2N, nL×2N, nR×2N). At the same time, the usage conditions of Intra DT include that the size of the coding unit is at most 64x64 and at least 16x16, and the aspect ratio of the coding unit is less than 4.
[0065] In the partitioning method of Intra DT, 2N×hN and hN×2N divide the coding block into 4 prediction blocks, and the other four partitioning modes (i.e., asymmetric derived mode, 2N×nU, 2N×nD, nL×2N, nR×2N) divide the coding block into 2 prediction blocks, and each prediction block encodes a set of intra prediction information. For the asymmetric derived mode, for the larger prediction block among the 2 prediction blocks, it will be further divided into 3 sub-blocks.
[0066] As Figure 8 shown, the three horizontal partitioning modes (i.e., 2N×hN, 2N×nU, 2N×nD) horizontally divide the coding block into 4 identical sub-blocks, and then reconstruct them sequentially from top to bottom. The subsequent reconstructed sub-blocks can refer to the previously reconstructed sub-blocks. The three vertical partitioning modes (i.e., hN×2N, nL×2N, nR×2N) vertically divide the coding block into 4 identical sub-blocks, and then reconstruct them sequentially from left to right. The subsequent reconstructed sub-blocks can refer to the previously reconstructed sub-blocks.
[0067] The derived mode can also be applied to inter-frame coding. Therefore, the derived mode can also be classified into intra-frame derived mode and inter-frame derived mode. Among them, the intra-frame derived mode can be further divided into intra-frame horizontal derived mode and intra-frame vertical derived mode; the inter-frame derived mode can be further divided into inter-frame horizontal derived mode and inter-frame vertical derived mode.
[0068] It can be seen that for the intra-derived modes in the AVS3 standard, for the prediction blocks of 2N×hN and hN×2N and the smaller prediction blocks of the asymmetric derived mode ( Figure 8 the black rectangular boxes filled with white in), no further partitioning is performed and they are directly transformed, quantized, and coefficient-coded. For the larger prediction blocks obtained after asymmetric partitioning ( Figure 8 the shaded areas shown), whose size (width or height) is not an integer power of 2, they are further divided into 3 sub-blocks of the same size, and then the sub-blocks are used as units for transformation, quantization, and coefficient-coding. However, since these 3 sub-blocks share the same intra-prediction information, their residuals are similar, and using a larger transformation block can improve the coding efficiency. Based on this, the embodiments of the present application provide the following improvement solutions:
[0069] Figure 9 FIG. shows a flowchart of a video decoding method according to an embodiment of the present application. This video decoding method can be executed by a device with computing and processing capabilities, such as a terminal device or a server. Referring to Figure 9 shown, this video decoding method at least includes steps S910 to S930, which are introduced in detail as follows:
[0070] In step S910, an encoded block corresponding to a video image frame and the derived mode adopted by the encoded block are obtained.
[0071] In an embodiment of the present application, a video image frame sequence includes a series of images. Each image can be further divided into slices, and a slice can be divided into a series of LCUs (or CTUs). An LCU contains several CUs. Video image frames are encoded in units of blocks during encoding. In some new video coding standards, such as in the H.264 standard, there are macroblocks (MBs), and a macroblock can be further divided into multiple prediction blocks that can be used for predictive coding. In the HEVC standard, basic concepts such as coding units CU, prediction units PU, and transform units (TU) are adopted to functionally divide various block units and use a brand-new tree-based structure for description. For example, a CU can be divided into smaller CUs according to a quadtree, and the smaller CUs can continue to be divided, thus forming a quadtree structure. The encoded block in the embodiment of the present application can be a CU, or a block smaller than a CU, such as a smaller block obtained by dividing a CU.
[0072] In an embodiment of the present application, the derived mode adopted by the encoded block (i.e., one of 2N×hN, 2N×nU, 2N×nD, hN×2N, nL×2N, nR×2N) can be obtained by decoding the bitstream.
[0073] In step S920, multiple sub-blocks in the coding block are decoded according to the target partitioning method corresponding to the derivative mode, where the target partitioning method is selected from the improved partitioning methods of the derivative mode, and the improved partitioning methods of the derivative mode include a partitioning method of dividing a prediction block with a side length that is not a power of 2 in the coding block into two sub-blocks with side lengths that are powers of 2.
[0074] In an embodiment of the present application, if the derivative mode is a horizontal derivative mode, the improved partitioning method of the horizontal derivative mode includes: a partitioning method of dividing a prediction block with a height that is not a power of 2 in the coding block into two sub-blocks with a side length ratio of 1:2 or 2:1 in the height direction.
[0075] As Figure 10 shown, for 2N×nU in the horizontal derivative mode, after asymmetric partitioning, two prediction blocks are obtained, where the height of the larger one of the prediction blocks ( Figure 10 the shaded area in) is not a power of 2. When partitioning by the technical solution of the embodiment of the present application, this prediction block can be divided into two sub-blocks with a side length ratio of 1:2 or 2:1 in the height direction.
[0076] Similarly, as Figure 11 shown, for 2N×nD in the horizontal derivative mode, after asymmetric partitioning, two prediction blocks are obtained, where the height of the larger one of the prediction blocks ( Figure 11 the shaded area in) is not a power of 2. When partitioning by the technical solution of the embodiment of the present application, this prediction block can be divided into two sub-blocks with a side length ratio of 2:1 or 1:2 in the height direction.
[0077] In an embodiment of the present application, if the derivative mode is a vertical derivative mode, the improved partitioning method of the vertical derivative mode includes: a partitioning method of dividing a prediction block with a width that is not a power of 2 in the coding block into two sub-blocks with a side length ratio of 1:2 or 2:1 in the width direction.
[0078] As Figure 12 shown, for nL×2N in the vertical derivative mode, after asymmetric partitioning, two prediction blocks are obtained, where the height of the larger one of the prediction blocks ( Figure 12 the shaded area in) is not a power of 2. When partitioning by the technical solution of the embodiment of the present application, this prediction block can be divided into two sub-blocks with a side length ratio of 1:2 or 2:1 in the width direction.
[0079] Similarly, as Figure 13 shown, for nR×2N in the vertical derivative mode, after asymmetric partitioning, two prediction blocks are obtained, where the larger one of the prediction blocks (Figure 13 The height of the shaded area (in the figure) is not an integer power of 2. When dividing it according to the technical solution of the embodiment of the present application, the prediction block can be divided into two sub-blocks with a side length ratio of 2:1 or 1:2 in the width direction.
[0080] Based on the technical solution of the foregoing embodiment, the division method of each derivative mode can be selected from Figures 10 to 13 the division methods shown in the figure. For example, in an embodiment of the present application, the improved division method of the derivative mode can be as shown in Figure 14 the figure: that is, for 2N×nU in the horizontal derivative mode, the larger prediction block after asymmetric division is divided into two sub-blocks with a side length ratio of 1:2 in the height direction; for 2N×nD in the horizontal derivative mode, the larger prediction block after asymmetric division is divided into two sub-blocks with a side length ratio of 2:1 in the height direction; for nL×2N in the vertical derivative mode, the larger prediction block after asymmetric division is divided into two sub-blocks with a side length ratio of 1:2 in the width direction; for nR×2N in the vertical derivative mode, the larger prediction block after asymmetric division is divided into two sub-blocks with a side length ratio of 2:1 in the width direction.
[0081] In an embodiment of the present application, the target division method in step S920 can be a preset division method selected from the improved division methods of the derivative mode. In this way, the encoding end can divide the prediction block according to the preset division method, and the decoding end can also perform reconstruction according to the preset division method.
[0082] In an embodiment of the present application, the encoding end can also use RDO (Rate–Distortion Optimization) for decision-making to select the target division method from multiple division methods, and then identify the target division method in the bitstream. The decoding end can obtain the identification information by decoding the bitstream. Optionally, these multiple division methods can include the improved division methods of the derivative mode and the original division methods of the derivative mode, where the original division method of the derivative mode is as shown in Figure 8 the figure.
[0083] In an embodiment of the present application, it is also possible to determine which coding blocks need to be block-decoded by the foregoing determined target division method according to the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence.
[0084] Specifically, it is possible to determine whether all the coded blocks using the derivative mode in the coded data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coded data corresponding to the video image frame sequence. For example, if the index identifier in the sequence header is 1 (the value is only an example), it means that all the coded blocks using the derivative mode corresponding to the video image frame sequence need to adopt the target partitioning method for block decoding processing.
[0085] Of course, it is also possible to determine whether all the intra-frame derivative mode coded blocks in the coded data need to adopt the target partitioning method for block decoding processing according to the value of the index identifier included in the sequence header of the coded data corresponding to the video image frame sequence. For example, if the index identifier in the sequence header is 1 (the value is only an example), it means that all the intra-frame derivative mode coded blocks corresponding to the video image frame sequence need to adopt the target partitioning method for block decoding processing.
[0086] In addition, it is also possible to determine whether all the inter-frame derivative mode coded blocks in the coded data need to adopt the target partitioning method for block decoding processing according to the value of the index identifier included in the sequence header of the coded data corresponding to the video image frame sequence. For example, if the index identifier in the sequence header is 1 (the value is only an example), it means that all the inter-frame derivative mode coded blocks corresponding to the video image frame sequence need to adopt the target partitioning method for block decoding processing.
[0087] Continue to refer to Figure 9 As shown, in step S930, a reconstructed image is generated according to the derivative mode adopted by the coded block and the multiple sub-coefficient blocks obtained by performing decoding processing in units of the multiple sub-blocks.
[0088] In an embodiment of the present application, if the coding block adopts an intra-frame derived mode, the inverse quantization process and the inverse transformation process can be sequentially performed on multiple sub-coefficient blocks obtained by decoding processing in a predetermined order, and the images corresponding to the multiple sub-blocks can be sequentially reconstructed according to the reconstructed residuals obtained by the inverse quantization process and the inverse transformation process to generate a reconstructed image. Among them, when reconstructing the image for the sub-block with a later order, the reconstructed image corresponding to the sub-block with an earlier order can be referred to, that is, during the reconstruction process, the reconstructed image corresponding to the sub-block with an earlier order can be added to the intra-frame prediction reference image area of the sub-block with a later order. Specifically, if it is an intra-frame horizontal derived mode, the inverse quantization process and the inverse transformation process are sequentially performed on multiple sub-coefficient blocks in a top-down manner, and the images corresponding to the multiple sub-blocks are sequentially reconstructed according to the reconstructed residuals obtained by the inverse quantization process and the inverse transformation process; if it is an intra-frame vertical derived mode, the inverse quantization process and the inverse transformation process are sequentially performed on multiple sub-coefficient blocks in a left-to-right manner, and the images corresponding to the multiple sub-blocks are sequentially reconstructed according to the reconstructed residuals obtained by the inverse quantization process and the inverse transformation process.
[0089] In an embodiment of the present application, if the coding block adopts an inter-frame derived mode, the inverse quantization process and the inverse transformation process can be respectively performed on multiple sub-coefficient blocks to obtain the reconstructed residuals corresponding to the multiple sub-blocks respectively, that is, each sub-coefficient block can independently and parallelly perform the inverse quantization and inverse transformation processes to obtain the reconstructed residuals, and then the reconstructed residuals corresponding to the multiple sub-blocks are spliced to obtain the reconstructed residuals corresponding to the whole of the multiple sub-blocks, and then a reconstructed image is generated according to the reconstructed residuals corresponding to the whole of the multiple sub-blocks. That is, the reconstructed residuals are superimposed on the prediction information to obtain the reconstructed image.
[0090] The technical solution of the above embodiment of the present application improves the division method of the derived mode, so that the derived mode is applicable not only to intra-frame coding but also to inter-frame coding. At the same time, without increasing the hardware implementation cost, larger sub-blocks can be used to improve the transformation efficiency, thereby improving the final coding efficiency.
[0091] The following introduces the device embodiments of the present application, which can be used to execute the video decoding method in the above embodiments of the present application. For the details not disclosed in the device embodiments of the present application, please refer to the embodiments of the above video decoding method of the present application.
[0092] Figure 15 The block diagram of a video decoding device according to an embodiment of the present application is shown. The video decoding device can be set in a device with computing and processing functions, such as in a terminal device or a server.
[0093] Refer to Figure 15As shown, a video decoding device 1500 according to an embodiment of the present application includes: an acquisition unit 1502, a decoding unit 1504, and a first processing unit 1506.
[0094] Among them, the acquisition unit 1502 is configured to acquire an encoded block corresponding to a video image frame and a derivative mode adopted by the encoded block; the decoding unit 1504 is configured to perform decoding processing on multiple sub-blocks in the encoded block according to a target partitioning method corresponding to the derivative mode, and the target partitioning method is selected from improved partitioning methods of the derivative mode, and the improved partitioning methods of the derivative mode include a partitioning method of dividing a prediction block with a side length that is not a power of 2 in the encoded block into 2 sub-blocks with side lengths that are powers of 2; the first processing unit 1506 is configured to generate a reconstructed image according to the derivative mode adopted by the encoded block and multiple sub-coefficient blocks obtained by performing decoding processing on the basis of the multiple sub-blocks.
[0095] In some embodiments of the present application, based on the foregoing solution, if the derivative mode is a horizontal derivative mode, the improved partitioning method of the horizontal derivative mode includes: a partitioning method of dividing a prediction block with a height that is not a power of 2 in the encoded block into 2 sub-blocks with a side length ratio of 1:2 or 2:1 in the height direction.
[0096] In some embodiments of the present application, based on the foregoing solution, if the derivative mode is a vertical derivative mode, the improved partitioning method of the vertical derivative mode includes: a partitioning method of dividing a prediction block with a width that is not a power of 2 in the encoded block into 2 sub-blocks with a side length ratio of 1:2 or 2:1 in the width direction.
[0097] In some embodiments of the present application, based on the foregoing solution, the first processing unit 1506 is configured to: if the encoded block adopts an intra-frame derivative mode, perform inverse quantization processing and inverse transform processing on the multiple sub-coefficient blocks in a predetermined order, and reconstruct the images corresponding to the multiple sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transform processing, so as to generate the reconstructed image. Among them, during the reconstruction process, the reconstructed image corresponding to the sub-block with a previous order is added to the intra-frame prediction reference image area of the sub-block with a subsequent order.
[0098] In some embodiments of the present application, based on the foregoing solution, the first processing unit 1506 is configured to: if the intra-derived mode is the intra-horizontal-derived mode, perform inverse quantization processing and inverse transformation processing on the multiple sub-coefficient blocks in sequence from top to bottom, and reconstruct the images corresponding to the multiple sub-blocks in sequence according to the reconstructed residuals obtained from the inverse quantization processing and the inverse transformation processing; if the intra-derived mode is the intra-vertical-derived mode, perform inverse quantization processing and inverse transformation processing on the multiple sub-coefficient blocks in sequence from left to right, and reconstruct the images corresponding to the multiple sub-blocks in sequence according to the reconstructed residuals obtained from the inverse quantization processing and the inverse transformation processing.
[0099] In some embodiments of the present application, based on the foregoing solution, the first processing unit 1506 is configured to: if the coding block adopts an inter-derived mode, perform inverse quantization processing and inverse transformation processing on the multiple sub-coefficient blocks respectively to obtain the reconstructed residuals corresponding to the multiple sub-blocks respectively; splice the reconstructed residuals corresponding to the multiple sub-blocks respectively to obtain the reconstructed residual corresponding to the multiple sub-blocks as a whole; generate the reconstructed image according to the reconstructed residual corresponding to the multiple sub-blocks as a whole.
[0100] In some embodiments of the present application, based on the foregoing solution, the target partitioning method is a preset partitioning method selected from the improved partitioning methods of the derived mode.
[0101] In some embodiments of the present application, based on the foregoing solution, the decoding unit 1504 is further configured to: determine the target partitioning method according to the identification information decoded from the bitstream, where the target partitioning method is selected by the encoding end from multiple partitioning methods based on a rate-distortion optimization strategy, and the multiple partitioning methods include the improved partitioning methods of the derived mode and the original partitioning methods of the derived mode.
[0102] In some embodiments of the present application, based on the foregoing solution, the decoding unit 1504 is further configured to: determine whether all the coding blocks adopting the derived mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence; or
[0103] determine whether all the coding blocks adopting the intra-derived mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence; or
[0104] determine whether all the coding blocks adopting the inter-derived mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence.
[0105] Figure 16 The figure shows a schematic structural diagram of a computer system of an electronic device suitable for implementing the embodiments of the present application.
[0106] It should be noted that Figure 16 The computer system 1600 of the shown electronic device is only an example, and should not impose any limitation on the functions and scope of use of the embodiments of the present application.
[0107] As Figure 16 shown, the computer system 1600 includes a central processing unit (CPU) 1601, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1602 or the program loaded from the storage section 1608 into the random access memory (RAM) 1603, such as executing the methods described in the above embodiments. In the RAM 1603, various programs and data required for system operation are also stored. The CPU 1601, ROM 1602, and RAM 1603 are connected to each other via a bus 1604. The input / output (I / O) interface 1605 is also connected to the bus 1604.
[0108] The following components are connected to the I / O interface 1605: an input section 1606 including a keyboard, a mouse, etc.; an output section 1607 including, for example, a cathode ray tube (CRT), a liquid crystal display (LCD), etc. and a speaker, etc.; a storage section 1608 including a hard disk, etc.; and a communication section 1609 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1609 performs communication processing via a network such as the Internet. A drive 1610 is also connected to the I / O interface 1605 as required. A removable medium 1611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1610 as required so that a computer program read from it can be installed into the storage section 1608 as required.
[0109] In particular, according to an embodiment of the present application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication section 1609, and / or installed from the removable medium 1611. When the computer program is executed by the central processing unit (CPU) 1601, various functions defined in the system of the present application are executed.
[0110] It should be noted that the computer-readable medium shown in the embodiments of the present application can be a computer-readable signal medium, a computer-readable storage medium, or any combination of the two. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of the computer-readable storage medium can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, the computer-readable storage medium can be any tangible medium that contains or stores a program, and the program can be used by or combined with an instruction execution system, apparatus, or device. In the present application, the computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable computer program. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer-readable signal medium can also be any computer-readable medium other than the computer-readable storage medium, and the computer-readable medium can send, propagate, or transmit a program for use by or combined with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium can be transmitted by any suitable medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0111] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present application. Among them, each block in the flowchart or block diagram may represent a module, a program segment, or a part of code, and the above-mentioned module, program segment, or part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order from that marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, as well as the combination of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system for performing the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.
[0112] The units involved in the embodiments described in the present application can be implemented in software or in hardware, and the described units can also be provided in a processor. Among them, the names of these units do not constitute a limitation on the units themselves in some cases.
[0113] On the other hand, the present application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiments; or may exist separately without being assembled into the electronic device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by an electronic device, the electronic device implements the methods described in the above embodiments.
[0114] It should be noted that although several modules or units of the devices for performing actions are mentioned in the above detailed description, such a division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of the two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0115] Through the description of the above embodiments, those skilled in the art can easily understand that the example embodiments described here can be implemented by software or by a combination of software and necessary hardware. Therefore, the technical solutions according to the embodiments of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (such as a personal computer, a server, a touch terminal, or a network device, etc.) to execute the methods according to the embodiments of the present application.
[0116] Those skilled in the art will readily conceive of other embodiments of the present application after considering the specification and practicing the embodiments disclosed herein. The present application is intended to cover any variations, uses, or adaptations of the present application, which follow the general principles of the present application and include well-known knowledge or conventional technical means in the technical field not disclosed in the present application.
[0117] It should be understood that the present application is not limited to the exact structures described above and shown in the drawings, and various modifications and changes can be made without departing from its scope. The scope of the present application is only limited by the appended claims.
Claims
1. A video decoding method, characterized in that, it includes: obtaining an encoded block corresponding to a video image frame and a derived mode adopted by the encoded block; performing decoding processing on multiple sub-blocks in the encoded block according to a target partitioning method corresponding to the derived mode, where the target partitioning method is selected from improved partitioning methods of the derived mode, and the improved partitioning methods of the derived mode include a partitioning method of partitioning a prediction block with a side length that is not a power of 2 in the encoded block into 2 sub-blocks with side lengths that are powers of 2; generating a reconstructed image according to the derived mode adopted by the encoded block and multiple sub-coefficient blocks obtained by performing decoding processing on the basis of the multiple sub-blocks.
2. The video decoding method according to claim 1, characterized in that, if the derived mode is a horizontal derived mode, the improved partitioning methods of the horizontal derived mode include: a partitioning method of partitioning a prediction block with a height that is not a power of 2 in the encoded block into 2 sub-blocks with a side length ratio of 1:2 or 2:1 in the height direction.
3. The video decoding method according to claim 1, characterized in that, if the derived mode is a vertical derived mode, the improved partitioning methods of the vertical derived mode include: a partitioning method of partitioning a prediction block with a width that is not a power of 2 in the encoded block into 2 sub-blocks with a side length ratio of 1:2 or 2:1 in the width direction.
4. The video decoding method according to claim 1, characterized in that, generating a reconstructed image according to the derived mode adopted by the encoded block and multiple sub-coefficient blocks obtained by performing decoding processing on the basis of the multiple sub-blocks, includes: if the encoded block adopts an intra-frame derived mode, performing inverse quantization processing and inverse transform processing on the multiple sub-coefficient blocks in a predetermined order, and reconstructing the images corresponding to the multiple sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transform processing, so as to generate the reconstructed image, wherein, during the reconstruction process, the reconstructed image corresponding to the sub-block with a previous order is added to the intra-frame prediction reference image area of the sub-block with a subsequent order.
5. The video decoding method according to claim 4, characterized in that, performing inverse quantization processing and inverse transform processing on the multiple sub-coefficient blocks in a predetermined order, and reconstructing the images corresponding to the multiple sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transform processing, includes: if the intra-frame derived mode is an intra-frame horizontal derived mode, performing inverse quantization processing and inverse transform processing on the multiple sub-coefficient blocks in a top-to-bottom manner, and reconstructing the images corresponding to the multiple sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transform processing; if the intra-frame derived mode is an intra-frame vertical derived mode, performing inverse quantization processing and inverse transform processing on the multiple sub-coefficient blocks in a left-to-right manner, and reconstructing the images corresponding to the multiple sub-blocks in sequence according to the reconstructed residuals obtained by the inverse quantization processing and the inverse transform processing.
6. The video decoding method according to claim 1, characterized in that, Generate a reconstructed image based on the derivation mode adopted by the coding block and a plurality of sub - coefficient blocks obtained by performing decoding processing on the basis of the plurality of sub - blocks, including: If the coding block adopts an inter - frame derivation mode, perform inverse quantization processing and inverse transform processing on the plurality of sub - coefficient blocks respectively to obtain the reconstructed residuals corresponding to the plurality of sub - blocks respectively; Perform splicing processing on the reconstructed residuals corresponding to the plurality of sub - blocks respectively to obtain the reconstructed residual corresponding to the whole of the plurality of sub - blocks; Generate the reconstructed image according to the reconstructed residual corresponding to the whole of the plurality of sub - blocks.
7. The video decoding method according to claim 1, wherein, the target partitioning method is a preset partitioning method selected from the improved partitioning methods of the derivation mode.
8. The video decoding method according to claim 1, wherein, Before performing decoding processing on the plurality of sub - blocks in the coding block according to the target partitioning method corresponding to the derivation mode, the video decoding method further includes: Determine the target partitioning method according to the identification information decoded from the bitstream, where the target partitioning method is selected by the coding end from multiple partitioning methods based on a rate - distortion optimization strategy, and the multiple partitioning methods include the improved partitioning methods of the derivation mode and the original partitioning methods of the derivation mode.
9. The video decoding method according to any one of claims 1 to 8, wherein, Determine whether all coding blocks using the derivation mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence; or Determine whether all coding blocks using the intra - frame derivation mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence; or Determine whether all coding blocks using the inter - frame derivation mode in the coding data need to adopt the target partitioning method according to the value of the index identifier included in the sequence header of the coding data corresponding to the video image frame sequence.
10. A video encoding method, wherein, including: Determine the derivation mode adopted by the coding block corresponding to the video image frame; Partition the prediction block in the coding block according to the target partitioning method corresponding to the derivation mode to obtain a plurality of sub - blocks, where the target partitioning method is selected from the improved partitioning methods of the derivation mode, and the improved partitioning methods of the derivation mode include a partitioning method of partitioning a prediction block with a side length that is not a power of 2 into 2 sub - blocks with side lengths that are powers of 2; Perform encoding processing on the plurality of sub - blocks obtained by partitioning.
11. A video decoding device, wherein, including: An acquisition unit configured to acquire a coding block corresponding to a video image frame and the derivation mode adopted by the coding block; A decoding unit, configured to perform decoding processing on multiple sub-blocks in the coded block according to a target partitioning manner corresponding to the derived mode, where the target partitioning manner is selected from improved partitioning manners of the derived mode, and the improved partitioning manners of the derived mode include a partitioning manner of partitioning a prediction block with a side length that is not a power of 2 in the coded block into 2 sub-blocks with side lengths that are powers of 2; A first processing unit, configured to generate a reconstructed image according to the derived mode adopted by the coded block and multiple sub-coefficient blocks obtained by performing decoding processing on the basis of the multiple sub-blocks.
12. A video encoding device, characterized in that it includes: A determination unit, configured to determine the derived mode adopted by a coded block corresponding to a video image frame; A partitioning unit, configured to partition a prediction block in the coded block according to a target partitioning manner corresponding to the derived mode to obtain multiple sub-blocks, where the target partitioning manner is selected from improved partitioning manners of the derived mode, and the improved partitioning manners of the derived mode include a partitioning manner of partitioning a prediction block with a side length that is not a power of 2 in the coded block into 2 sub-blocks with side lengths that are powers of 2; An encoding unit, configured to perform encoding processing on the multiple sub-blocks obtained by partitioning.
13. A computer-readable medium, on which a computer program is stored, characterized in that when the computer program is executed by a processor, it implements the video decoding method according to any one of claims 1 to 9, or implements the video encoding method according to claim 10.
14. An electronic device, characterized in that it includes: One or more processors; A storage device, configured to store one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the video decoding method according to any one of claims 1 to 9, or implement the video encoding method according to claim 10.
15. A computer program product, characterized in that the computer program product includes a computer program, the computer program is stored in a computer-readable storage medium, and a processor of an electronic device reads and executes the computer program from the computer-readable storage medium, so that the electronic device executes the video decoding method according to any one of claims 1 to 9, or executes the video encoding method according to claim 10.
16. A method for storing a video bitstream, characterized in that the video bitstream is decoded according to the video decoding method according to any one of claims 1 to 9, or the video bitstream is generated according to the video encoding method according to claim 10.
Citation Information
Patent Citations
Video decoding method and video decoder
CN103997650A
Method and apparatus for encoding / decoding video
KR1020150070849A
Block partitioning using tree structures
US20180109812A1
Coding and decoding methods and devices
WO2019219066A1