Image decoding device using differential coding
By using differential encoding technology in video decoding, the residual signals in intra prediction encoding are subjected to horizontal and vertical differential processing, and the encoding efficiency and image quality of the prior art under high resolution and high frame rate video data is solved. Problem, achieving higher compression performance and image quality.
Patent Information
- Application Number
- CN202411538722.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-03-13
- Filing Date
- 2020-03-13
- Publication Date
- 2025-01-03
AI Technical Summary
Existing video compression technologies work hard to meet the growing demands when processing video data at high resolution and high frame rate, especially in the transformation skip mode, where frequency domain encoding is less efficient.
In the transform skip mode, the residual signal is processed by differential encoding technology. By using horizontal and vertical differential encoding technologies in intra prediction encoding, the residual signal is modified and reconstructed, thereby improving the compression of video decoding performance.
Through differential encoding technology, the compression performance of video decoding in the transform skip mode is significantly improved, the total energy of residual components of entropy encoding is reduced, and the encoding efficiency and image quality are improved.
Smart Images

Figure CN119254953A_ABST
Abstract
Description
[0001] This application is a divisional application of the PCT patent application entered into China with Chinese patent application number 202080035224.X, invention name “Image decoding device using differential coding”, and application date March 13, 2020.
[0002] CROSS-REFERENCE TO RELATED APPLICATIONS
[0003] This application claims priority under 35 U.S.C. §119(a) to Patent Application No. 10-2019-0028995 filed in Korea on March 13, 2019, the entire contents of which are incorporated herein by reference. Technical Field
[0004] The present invention, in some embodiments, relates to encoding and decoding of images or videos. More specifically, the present invention relates to encoding and decoding of videos using differential encoding techniques performed in transform skip mode. Background Art
[0005] The statements in this section merely provide background information related to the present invention and may not necessarily constitute prior art.
[0006] Since video data has a larger data volume compared to audio data or still image data, a large amount of hardware resources, including memory, are required to store or transmit the data in its original form before compression processing.
[0007] Accordingly, storing or transmitting video data is usually accompanied by compressing it by using an encoder before a decoding unit can receive, decompress and reproduce the compressed video data. Existing video compression technologies include H.264 / AVC and High Efficiency Video Coding (HEVC), which improves the coding efficiency of H.264 / AVC by about 40%.
[0008] However, the continuous increase in size, resolution and frame rate of video images and the resulting increase in the amount of data to be encoded require a new and superior compression technology with better coding efficiency improvement and higher image quality improvement compared to existing compression technologies. Summary of the invention
[0009] Technical issues
[0010] The present invention seeks, in some embodiments, to provide apparatus and methods for decoding video by utilizing differential encoding techniques on residual signals during decoding in transform skip mode.
[0011] Technical Solution
[0012] At least one aspect of the present invention provides a video decoding method for reconstructing a current block encoded using intra-frame prediction. The method includes: decoding direction information indicating the differential encoding direction of a residual block applied to the current block from a bitstream; generating a residual block by reconstructing information about a residual signal from the bitstream; and generating a modified residual block by modifying the residual signal in the residual block based on the direction information. Each target residual signal for modification in the residual block is modified by adding each target residual signal for modification in the residual block to one or more residual signals in the residual block (the residual block is arranged in the direction indicated by the direction information of the target residual signal). The method further includes: inverse quantizing the modified residual block into an inverse quantized residual block; generating a prediction block of the current block using intra-frame prediction; and reconstructing the current block by adding the prediction block to the inverse quantized residual block.
[0013] Another aspect of the present invention provides a video decoding device for reconstructing a current block encoded using intra-frame prediction. The video decoding device includes: an entropy decoding unit, an inverse quantization unit, an intra-frame prediction unit, and an adder. The entropy decoding unit is configured to decode direction information indicating the differential encoding direction of the residual block applied to the current block from the bitstream, and generate a residual block by reconstructing information about the residual signal from the bitstream. The inverse quantization unit is configured to generate a modified residual block by modifying the residual signal in the residual block based on the direction information, and inversely quantize the modified residual block into an inversely quantized residual block. The intra-frame prediction unit is configured to generate a prediction block of the current block by intra-frame prediction. The adder is configured to add the prediction block and the inversely quantized residual block to the reconstructed current block. Here, each target residual signal for modification in the residual block is modified by adding one or more residual signals in the residual block (the residual block is arranged in the direction indicated by the direction information of the target residual signal).
[0014] Beneficial Effects
[0015] As described above, some embodiments of the present invention provide a video decoding apparatus and method that uses a differential encoding technique on a residual signal during decoding in a transform skip mode, thereby improving compression performance. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure 1 is a block diagram showing a video encoding device capable of implementing the technology of the present invention.
[0017] Figure 2 is a schematic diagram for explaining a method of dividing a block by using a QTBTTT structure.
[0018] Figure 3a and Figure 3bis a schematic diagram of multiple intra prediction modes including a wide-angle intra prediction mode.
[0019] Figure 4 is a block diagram showing a video decoding device capable of implementing the technology of the present invention.
[0020] Figure 5a and Figure 5b A differential encoding technique in accordance with at least one embodiment of the present invention is shown.
[0021] Figure 6 is a flowchart of a video decoding method for intra-prediction coded blocks using explicit differential coding techniques according to at least one embodiment of the present invention.
[0022] Figure 7 is a flowchart of a video decoding method for an inter-frame prediction coded block using an explicit differential coding technique according to at least one embodiment of the present invention.
[0023] Figure 8 is a flowchart of a video decoding method for an intra-prediction coded block using an implicit differential coding technique according to another embodiment of the present invention.
[0024] Reference numerals
[0025] 120, 440: prediction unit 130: subtractor
[0026] 140: Transformation unit 170, 450: Adder
[0027] 180, 460: filtering unit 430: inverse transform unit. DETAILED DESCRIPTION
[0028] Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, the same reference numerals preferably represent the same elements, although the elements are shown in different drawings. In addition, in the following description of some embodiments, for the sake of clarity and brevity, the specific description of related known components and functions will be omitted when it is considered to obscure the subject matter of the present invention.
[0029] Embodiments of the present invention relate to encoding and decoding of video. More specifically, the present invention provides an apparatus and method for decoding video by utilizing a differential encoding technique for a residual signal to improve compression performance during encoding in a transform skip mode.
[0030] Figure 1 1 is a block diagram showing a video encoding device capable of implementing the technology of the present invention. Figure 1 A video encoding apparatus and subcomponents of the apparatus are described.
[0031] The video encoding device can be configured to include: a block segmentation unit 110, a prediction unit 120, a subtractor 130, a transform unit 140, a quantization unit 145, a rearrangement unit 150, an entropy encoding unit 155, an inverse quantization unit 160, an inverse transform unit 165, an adder 170, a filtering unit 180 and a memory 190.
[0032] Each component of the video encoding device can be implemented as hardware or software, or a combination of hardware and software. In addition, the function of each component can be implemented by software, and the software function of each component can be implemented as being executed by a microprocessor.
[0033] The video consists of multiple images. The images are divided into multiple regions, and encoding is performed on each region. For example, an image is divided into one or more tiles or / and slices. Here, one or more tiles can be defined as a tile group. Each tile or / and slice is divided into one or more coding tree units (coding treeunit, CTU). And each CTU is divided into one or more coding units (coding unit, CU) through a tree structure. The information applied to each CU is encoded as the syntax of the CU, and the information commonly applied to the CU included in a CTU is encoded as the syntax of the CTU. In addition, the information commonly applied to all blocks in a slice is encoded as the syntax of the slice header, and the information applied to all blocks constituting an image is encoded in the picture parameter set (Picture Parameter Set, PPS) or the picture header. In addition, the information commonly referenced by multiple images is encoded in the sequence parameter set (Sequence Parameter Set, SPS). In addition, the information commonly referenced by one or more SPSs is encoded in the video parameter set (VideoParameter Set, VPS). In the same manner, information commonly applied to one tile or tile group may be encoded as the syntax of a tile header or tile group header.
[0034] The block partitioning unit 110 determines the size of a coding tree unit (CTU). Information on the size of the CTU (CTU size) is encoded as a syntax of an SPS or a PPS and transmitted to a video decoding device.
[0035] The image segmentation unit 110 segments each image constituting a video into a plurality of coding tree units (CTUs) having a predetermined size, and then recursively segments the CTUs using a tree structure. The leaf nodes in the tree structure become coding units (CUs), which are basic units of coding.
[0036] The tree structure can be a quadtree (QuadTree, QT), a binary tree (BinaryTree, BT), a ternary tree (TernaryTree, TT) or a combination of two or more QT structures, BT structures and TT structures, wherein the quadtree (QT) is an upper node (or parent node) divided into four lower nodes (or child nodes) of the same size, the binary tree (BT) is an upper node divided into two lower nodes, and the ternary tree (TT) is an upper node divided into three lower nodes at a size ratio of 1:2:1. For example, a quadtree plus binary tree (QuadTree plus BinaryTree, QTBT) structure can be used, or a quadtree plus binary tree ternary tree (QuadTree plus BinaryTree TernaryTree, QTBTTT) structure can be used. Here, BTTT can be collectively referred to as a multiple-type tree (MTT).
[0037] Figure 2 The QTBTTT partition tree structure is shown. Figure 2 As shown, the CTU can be first split into a QT structure. The quadtree splitting can be repeated until the size of the split block reaches the minimum block size (MinQTSize) of the leaf node allowed in the QT. The first flag (QT_split_flag) indicating whether each node of the QT structure is split into four nodes of the lower layer is encoded by the entropy coding unit 155 and notified to the video decoding device with a signal. When the leaf node of the QT is not larger than the maximum block size (MaxBTSize) of the root node allowed in the BT, it can be further split into any one or more BT structures or TT structures. In the BT structure and / or TT structure, there can be multiple splitting directions. For example, there can be two directions of splitting blocks of related nodes horizontally and vertically. As Figure 2 As shown, when MTT splitting starts, a second flag (mtt_split_flag) indicating whether the node is split is encoded by the entropy coding unit 155 and notified to the video encoding device by a signal. If so, another flag indicating the splitting direction (vertical or horizontal) is encoded by the entropy coding unit 155 and / or a flag indicating the partition or splitting type (binary or trifurcated) is encoded and notified to the video decoding device by a signal.
[0038] Alternatively, before encoding the first flag (QT_split_flag) indicating whether each node is split into four nodes of the lower layer, the CU split flag (split_cu_flag) indicating whether the node is split may be encoded. When the CU split flag (split_cu_flag) value indicates that no splitting is performed, the block of the corresponding node becomes a leaf node in the split tree structure and is used as a coding unit (CU), that is, a basic unit of encoding. When the CU split flag (split_cu_flag) value indicates node splitting, the video encoding device starts encoding from the first flag in the above manner.
[0039] As another example of a tree structure, when using QTBT, there may be two types of partitions, including a type in which the block of the relevant node is horizontally divided into two blocks of equal size (i.e., symmetrical horizontal partitioning) and a type in which the block of the relevant node is vertically divided into two blocks of equal size (i.e., symmetrical vertical partitioning). Encoded by the entropy coding unit 155 and transmitted to the video decoding device is a split flag (split_flag) indicating whether each node of the BT structure is divided into blocks of the lower layer and partition type information indicating its partition type. In addition, there may be another type in which the block of the relevant node is divided into two asymmetrically formed blocks. The asymmetric form may include a form in which the block of the relevant node is divided into two rectangular blocks with a size ratio of 1:3, or a form in which the block of the relevant node is divided in a diagonal direction.
[0040] Depending on the QTBT or QTBTTT partitioning of the CTU, the CU can have different sizes. In the following, the block corresponding to the CU to be encoded or decoded (i.e., the leaf node of the QTBTTT) is referred to as the "current block". With QTBTTT partitioning, the shape of the current block can be not only square but also rectangular.
[0041] The prediction unit 120 predicts the current block to generate a predicted block. The prediction unit 120 includes an intra prediction unit 122 and an inter prediction unit 124.
[0042] Typically, a current block in an image can be predictively encoded, respectively. Prediction of the current block can typically be performed using an intra-frame prediction technique or an inter-frame prediction technique, wherein the intra-frame prediction technique uses data from an image containing the current block, while the inter-frame prediction technique uses data from an image that has been encoded before the image containing the current block. Inter-frame prediction includes unidirectional prediction and bidirectional prediction.
[0043] The intra prediction unit 122 predicts the pixels in the current block by using the neighboring pixels (reference pixels) around the current block in the current image. There are multiple intra prediction modes according to the prediction direction. For example, Figure 3aAs shown, the multiple intra prediction modes may include 2 non-directional modes (including a planar mode and a DC mode) and 65 directional modes. Each prediction mode provides different corresponding definitions of adjacent pixels and calculation formulas to be used.
[0044] For efficient directional prediction of a current block of rectangular shape, additional directional modes can be used, as Figure 3b Illustrated by the dotted arrows for the intra prediction modes (numbered 67 to 80 and -1 to -14). These may be referred to as "wide angle intra prediction modes". Figure 3b The arrows in indicate the corresponding reference samples used for prediction, not the prediction direction. The prediction direction is opposite to the direction indicated by the arrow. The wide-angle intra prediction mode is a mode in which prediction is performed in a direction opposite to a specific direction mode without additional bit transmission when the current block has a rectangular shape. In this case, in the wide-angle intra prediction mode, some wide-angle intra prediction modes that can be used in the current block can be determined by the ratio of the width to the height of the rectangular current block. For example, when the height of the rectangular shape of the current block is less than the width, a wide-angle intra prediction mode with an angle less than 45 degrees (intra prediction modes at numbers 67 to 80) can be used. When the height of the rectangular shape of the current block is greater than the width, a wide-angle intra prediction mode with an angle of -135 degrees or more (intra prediction modes at numbers -1 to -14) can be used.
[0045] The intra-frame prediction unit 122 can determine the intra-frame prediction mode to be used to encode the current block. In some examples, the intra-frame prediction unit 122 can encode the current block by utilizing several intra-frame prediction modes, and select the appropriate intra-frame prediction mode to be used from the tested modes. For example, the intra-frame prediction unit 122 can calculate the rate-distortion value by rate-distortion analysis of several tested intra-frame prediction modes, and select the intra-frame prediction mode with the best rate-distortion characteristics among the tested modes.
[0046] The intra prediction unit 122 selects an intra prediction mode from a plurality of intra prediction modes and predicts the current block by using at least one adjacent pixel (reference pixel) determined according to the selected intra prediction mode and a calculation formula. Information about the selected intra prediction mode is encoded by the entropy encoding unit 155 and transmitted to the video decoding device.
[0047] The inter-frame prediction unit 124 generates a prediction block of the current block through motion compensation processing. The inter-frame prediction unit 124 searches for a block that is most similar to the current block in a reference image that has been encoded and decoded before the current image, and generates a prediction block of the current block by using the searched block. Then, the inter-frame prediction unit 124 generates a motion vector corresponding to the displacement between the current block in the current image and the prediction block in the reference image. Typically, motion estimation is performed on the luminance component, and the motion vector calculated based on the luminance component is used for both the luminance component and the chrominance component. The motion information including information about the reference image and information about the motion vector used to predict the current block is encoded by the entropy encoding unit 155 and transmitted to the video decoding device.
[0048] The subtractor 130 generates a residual block by subtracting a prediction block generated by the intra prediction unit 122 or the inter prediction unit 124 from the current block.
[0049] The transform unit 140 transforms the residual signal in the residual block having pixel values in the spatial domain into a transform coefficient in the frequency domain. The transform unit 140 may transform the residual signal in the residual block by using the entire size of the residual block as a transform unit, or divide the residual block into a plurality of sub-blocks and use the sub-blocks as transform units to perform the transform. Alternatively, the transform unit 140 may separate the residual block into two sub-blocks, namely a transform region and a non-transform region, and use only the transform region sub-block as a transform unit to transform the residual signal. Here, the transform region sub-block may be one of two rectangular blocks having a size ratio of 1:1 based on a horizontal axis (or a vertical axis). In this case, a flag (cu_sbt_flag), direction (vertical / horizontal) information (cu_sbt_horizontal_flag), and / or position information (cu_sbt_pos_flag) indicating that only a single sub-block is transformed are encoded by the entropy encoding unit 155 and signaled to the video decoding device. In addition, the size of the transform region subblock may have a size ratio of 1:3 based on the horizontal axis (or vertical axis). In this case, a flag (cu_sbt_quad_flag) distinguishing the corresponding partition is additionally encoded by the entropy encoder 155 and signaled to the video decoding apparatus.
[0050] In addition, the transform unit 140 can transform the residual block in the horizontal direction and the vertical direction respectively. For the transform operation, various types of transform functions or transform matrices can be used. For example, paired transform functions for horizontal transform and vertical transform can be defined as a multiple transform set (MTS). The transform unit 140 can select a pair of transform functions with the best transform efficiency in the MTS, and transform the residual block in the horizontal direction and the vertical direction respectively. The information (mts_idx) about the transform function pair selected in the MTS is encoded by the entropy encoder 155 and notified to the video decoding device with a signal. The size of the transform block to which the MTS is applied can be limited to 32×32 and below.
[0051] The quantization unit 145 quantizes the transform coefficient output from the transform unit 140 , and outputs the quantized transform coefficient to the entropy encoding unit 155 .
[0052] The rearrangement unit 150 may perform rearrangement of coefficient values using the quantized transform coefficients.
[0053] The rearrangement unit 150 may use coefficient scanning to change the two-dimensional coefficient array into a one-dimensional coefficient sequence. For example, the rearrangement unit 150 may scan the coefficients from the DC coefficient to the coefficients in the high frequency region by zig-zag scanning or diagonal scanning to output a one-dimensional coefficient sequence. Depending on the size of the transform unit and the intra-frame prediction mode, the zig-zag scanning used may be replaced by a vertical scan for scanning the two-dimensional coefficient array in the column direction and a horizontal scan for scanning the two-dimensional block-shaped coefficients in the row direction. In other words, the scanning method to be used may be determined among zig-zag scanning, diagonal scanning, vertical scanning, and horizontal scanning according to the size of the transform unit and the intra-frame prediction mode.
[0054] The entropy encoding unit 155 encodes the sequence of one-dimensional quantized transform coefficients output from the rearrangement unit 150 by using various encoding methods such as Context-based Adaptive Binary Arithmetic Code (CABAC) and Exponential Golomb, thereby encoding to generate a bit stream.
[0055] In addition, the entropy encoding unit 155 encodes information about block partitions (e.g., CTU size, CU partition flag, QT partition flag, MTT partition type, and MTT partition direction), thereby allowing the video decoding device to partition the block in the same manner as the video encoding device. In addition, the entropy encoding unit 155 encodes and further encodes information about the prediction type according to the prediction type, intra-frame prediction information (i.e., information about the intra-frame prediction mode) or inter-frame prediction information (i.e., information about the reference image and motion vector), and the prediction type indicates whether the current block is encoded by intra-frame prediction or inter-frame prediction.
[0056] The inverse quantization unit 160 inversely quantizes the quantized transform coefficient output from the quantization unit 145 to generate a transform coefficient. The inverse transform unit 165 transforms the transform coefficient output from the inverse quantization unit 160 from the frequency domain to the spatial domain to reconstruct a residual block.
[0057] The adder 170 adds the reconstructed residual block and the prediction block generated by the prediction unit 120 to reconstruct the current block. Pixels in the reconstructed current block are used as reference pixels when intra-predicting the next block.
[0058] The filtering unit 180 performs filtering on the reconstructed pixels to reduce blocking artifacts, ringing artifacts, blurring artifacts, etc. generated due to block-based prediction and transform / quantization. The filtering unit 180 may include a deblocking filter 182 and a sample adaptive offset (SAO) filter 184.
[0059] The deblocking filter 180 filters the boundary between the reconstructed blocks to remove the block artifacts caused by block-by-block encoding / decoding, and the SAO filter 184 performs additional filtering on the deblocking filtered video. The SAO filter 184 is a filter for compensating for the difference between the reconstructed pixels and the original pixels caused by lossy encoding.
[0060] The reconstructed blocks are filtered through the deblocking filter 182 and the SAO filter 184 and stored in the memory 190. When all blocks in one image are reconstructed, the reconstructed image can be used as a reference image for inter-frame prediction of blocks in an image to be subsequently encoded.
[0061] Figure 4 1 is a functional block diagram of a video decoding device capable of implementing the technology of the present invention. Figure 4 A video decoding apparatus and subcomponents of the apparatus are described.
[0062] The video decoding apparatus may be configured to include an entropy decoding unit 410 , a rearrangement unit 415 , an inverse quantization unit 420 , an inverse transform unit 430 , a prediction unit 440 , an adder 450 , a filtering unit 460 , and a memory 470 .
[0063] and Figure 1 Like the video encoding device of the present invention, each component of the video decoding device can be implemented as hardware or software, or a combination of hardware and software. In addition, the function of each component can be implemented by software, and the software function of each component can be implemented as being executed by a microprocessor.
[0064] The entropy decoding unit 410 decodes a bit stream generated by the video encoding device and extracts information about block partitions to determine a current block to be decoded, and extracts prediction information and information about a residual signal, etc., required to reconstruct the current block.
[0065] The entropy decoding unit 410 extracts information about the CTU size from a sequence parameter set (SPS) or a picture parameter set (PPS), determines the size of the CTU, and divides the image into CTUs of the determined size. Then, the entropy decoding unit 410 determines the CTU as the highest level of the tree structure, i.e., the root node, and extracts partition information about the CTU, thereby partitioning the CTU by using the tree structure.
[0066] For example, when CTU is segmented by using the QTBTTT structure, the first flag (QT_split_flag) related to QT segmentation is first extracted, and each node is segmented into four nodes of the lower layer. For the node corresponding to the leaf node of QT, the entropy decoding unit 410 extracts the second flag (MTT_split_flag) related to the partition of MTT and the information of the segmentation direction (vertical / horizontal) and / or the segmentation type (binary / tripartite) to segment the corresponding leaf node by the MTT structure. This allows each node below the leaf node of QT to be recursively segmented into a BT or TT structure.
[0067] As another example, when a CTU is segmented by utilizing a QTBTTT structure, the entropy decoding unit 410 may first extract a CU segmentation flag (split_cu_flag) indicating whether the CU is segmented. When the relevant block is segmented, the first flag (QT_split_flag) may be extracted. During the segmentation process, each node may have zero or more recursive QT segmentations, followed by zero or more recursive MTT segmentations. For example, a CTU may immediately enter an MTT segmentation, or conversely, have multiple QT segmentations alone. As yet another example, when a CTU is segmented by utilizing a QTBT structure, the entropy decoding unit 410 extracts a first flag (QT_split_flag) associated with a QT segmentation to segment each node into four nodes of the lower layer. And, for a node corresponding to a leaf node of a QT, the entropy decoding unit 410 extracts a segmentation flag (split_flag) indicating whether the node is further segmented into a BT and segmentation direction information.
[0068] In addition, when the entropy decoding unit 410 determines the current block to be decoded through the tree structure partitioning, the entropy decoding unit 410 extracts information about the prediction type indicating whether the current block is intra-predicted or inter-predicted. When the prediction type information indicates intra-prediction, the entropy decoding unit 410 extracts syntax elements of intra-prediction information (intra-prediction mode) for the current block. When the prediction type information indicates inter-prediction, the entropy decoding unit 410 extracts syntax elements of inter-prediction information, that is, information indicating a motion vector and a reference image referred to by the motion vector.
[0069] Also, the entropy decoding unit 410 extracts information about the quantized transform coefficient of the current block as information about the residual signal.
[0070] The rearrangement unit 415 changes a sequence of one-dimensional quantized transform coefficients entropy-decoded by the entropy decoding unit 410 into a two-dimensional coefficient array (ie, block) in the reverse order of coefficient scanning performed by the video encoding apparatus.
[0071] The inverse quantization unit 420 inversely quantizes the quantized transform coefficients. The inverse transform unit 430 inversely transforms the inversely quantized transform coefficients from the frequency domain to the spatial domain to reconstruct the residual signal, thereby generating a reconstructed residual block of the current block.
[0072] In addition, when the inverse transform unit 430 performs inverse transform on only a partial area (sub-block) of the transform block, the inverse transform unit 430 extracts a flag (cu_sbt_flag) indicating that only the sub-block of the transform block has been transformed, the directional (vertical / horizontal) information (cu_sbt_horizontal_flag) of the sub-block, and / or the position information (cu_sbt_pos_flag) of the sub-block, and inversely transforms the transform coefficient of the sub-block from the frequency domain to the spatial domain to reconstruct the residual signal. At the same time, the inverse transform unit 430 fills the remaining area without inverse transform with a "0" value as a residual signal, thereby generating a final residual block of the current block.
[0073] In addition, when MTS is applied, the inverse transform unit 430 uses the MTS information (mts_idx) notified by a signal from the video encoding device to determine the transformation function or transformation matrix to be applied in the horizontal and vertical directions, respectively, and uses the determined transformation function to perform inverse transformation on the transformation coefficients in the transformation block in the horizontal and vertical directions.
[0074] The prediction unit 440 may include an intra prediction unit 442 and an inter prediction unit 444. The intra prediction unit 442 is activated when the prediction type of the current block is intra prediction, and the inter prediction unit 444 is activated when the prediction type of the current block is inter prediction.
[0075] The intra prediction unit 442 determines an intra prediction mode of a current block among a plurality of intra prediction modes according to the syntax elements of the intra prediction mode extracted by the entropy decoding unit 410, and predicts the current block by using adjacent reference pixels of the current block according to the determined intra prediction mode.
[0076] The inter prediction unit 444 determines a motion vector of a current block and a reference image referred to by the motion vector using the syntax elements for the intra prediction mode extracted by the entropy decoding unit 410 , and predicts the current block using the motion vector and the reference image.
[0077] The adder 450 adds the residual block output from the inverse transform unit to the prediction block output from the inter prediction unit or the intra prediction unit to reconstruct the current block. When intra-predicting the next block to be decoded, the pixels in the reconstructed current block are used as reference pixels.
[0078] The filtering unit 460 may include a deblocking filter 462 and an SAO filter 464. The deblocking filter 462 performs deblocking filtering on the boundaries between the reconstructed blocks to remove block artifacts caused by block-by-block decoding. The SAO filter 464 performs additional filtering on the reconstructed blocks after deblocking filtering to compensate for the difference between the reconstructed pixels and the original pixels caused by lossy encoding. The reconstructed blocks are filtered by the deblocking filter 462 and the SAO filter 464 and stored in the memory 470. When all blocks in one image are reconstructed, the reconstructed image is used as a reference image for inter-frame prediction of blocks within the image to be encoded subsequently.
[0079] As described above, the video encoding device transforms the residual signal into a transform coefficient in the frequency domain, encodes the transform coefficient, and notifies the video decoding device with a signal. The video decoding device inversely transforms the transform coefficient into a spatial residual signal. However, according to the characteristics of the video or residual signal, most of the transform coefficients generated as a result of the transform may be located in a high frequency region. In this case, encoding the transform coefficient in the frequency domain may have reduced efficiency compared to encoding the spatial residual signal.
[0080] The transform skip (TS) mode is a technique for entropy encoding the residual signal directly without transforming it, but it usually does not have excellent coding performance compared with the discrete cosine transform (DCT). However, since the screen content contains a large amount of residual components in the high frequency band, these residual components occur at the boundaries of graphic elements with high color contrast, the transform skip mode is useful for videos with screen content coding (SCC) or similar features.
[0081] When the transform skip mode is applied, the predicted residual signal is quantized and encoded using the transform skip residual coding process. The transform skip residual coding process is a method of modifying the transform coefficient coding process to be applicable to the SCC.
[0082] Information about the transform skip mode (transform_skip_flag [x0] [y0] [cldx], hereinafter transform_skip_flag) can be transmitted in units of transform blocks. Here, (x0, y0) is the upper left position of the transform block, and cldx is an indicator of a color element, where 0 represents luma, 1 represents chroma Cb, and 2 represents Cr. When the transform skip mode "transform_skip_flag" is 1, the transform is skipped, and when the transform skip mode is 0, whether to perform or skip the transform can be determined according to another syntax element.
[0083] In addition, the size of the transform block to which the transform skip mode can be applied can be limited to within 32×32. In this case, for a transform block larger than the size of the transform block to which the transform skip mode can be applied, the encoding of transform_skip_flag can be omitted, and when the transform block is larger than 32×32, the video decoding device does not apply the transform skip mode to the transform block. Alternatively, size information about the size of the transform block to which the transform skip mode can be applied can be encoded as a high-level syntax, for example, a syntax element in an SPS or PPS, and the video decoding device is notified by a signal. For a transform block larger than the size defined by the high-level syntax, the encoding of transform_skip_flag is omitted. The video decoding device decodes the size information about the size of the transform block to which the transform skip mode can be applied, and when the current transform block to be transformed is larger than the size indicated by the size information, the video decoding device neither decodes the transform_skip_flag nor applies the transform skip mode.
[0084] Information about MTS and transform skip mode can be integrated as shown in Table 1 and expressed as a single syntax.
[0085] [Table 1]
[0086]
[0087] As shown in Table 1, the MTS and transform skip mode may be set according to tu_mts_idx. Here, for a range of 0 to 5, tu_mts_idx is represented as a truncated unary code.
[0088] The following describes a differential encoding technique that can improve compression performance in a transform skip mode using a video encoding apparatus and a video decoding apparatus.
[0089] When a transform unit (TU) is encoded in transform skip mode with lossy compression, differential coding techniques can be applied to the residual signal after intra prediction or inter prediction. In transform skip mode, differential coding techniques can reduce the total energy of the residual component used for entropy coding, thereby providing further improved compression performance.
[0090] Figure 5a and Figure 5b A differential encoding technique in accordance with at least one embodiment of the present invention is shown.
[0091] In the horizontal differential coding technique, such as Figure 5a As shown, the current sample is predicted by using the residual component of the most adjacent left column in the horizontal direction of the sample encoded by the video encoding device. Once the horizontal differential coding technique is applied to the residual signal r of the block with a size of N×N (N is a natural number) i,j , the resulting residual signal (0 ≤ i < N, where i is a natural number) can be represented by Equation 1. In particular, the residual signal at position (i, j) is modified by subtracting the residual signal at position (i, j - 1). Here, (i, j) represents the i-th row and the j-th column.
[0092]
[0093] Here, Q(r) is the reconstructed residual signal including quantization noise.
[0094] As shown in Equation 1, using horizontal differential coding, the encoding device performs entropy coding on the residual signal and then sends it to the decoding device, and retains the residual signal after reconstruction to predict the residual signal of the next column. The horizontal prediction process can be sequentially performed on all columns of the block.
[0095] In the vertical differential coding technique, as Figure 5b shown, the current sample is predicted by using the residual component of the uppermost adjacent column in the vertical direction in the samples encoded by the video encoding device. After applying the vertical differential coding technique to the residual signal r of an N×N block i,j the resulting residual signal (0 ≤ i < N, where i is a natural number) can be represented by Equation 2. In particular, the residual signal at position (i, j) is modified by subtracting the residual signal at position (i - 1, j). Here, (i, j) also represents the i-th row and the j-th column.
[0096]
[0097] As shown in Equation 2, using vertical differential coding, the encoding device side performs entropy coding on the residual signal and then sends it to the decoding device side, and retains the residual signal after reconstruction to predict the residual signal of the next row. The vertical prediction process can be sequentially performed on all rows of the block.
[0098] When the horizontal differential coding technique is applied, the video decoding device reconstructs the residual signal as shown in Equation 3. In other words, the residual signal in the residual block reconstructed by the video decoding device from the bitstream is modified according to the horizontal differential coding technique. The target residual signal to be modified in the reconstructed residual block is modified in such a way that the left residual signal on the same row as the left of the target residual signal is added to the target residual signal.
[0099]
[0100] The video decoding apparatus may sequentially add the reconstructed residual signals, thereby reconstructing the residual signal of the jth column. The horizontal reconstruction process may be sequentially performed on all columns of the block.
[0101] When the vertical differential coding technique is applied, the video decoding apparatus reconstructs the residual signal as shown in Equation 4. The residual signal in the residual block reconstructed from the bit stream by the video decoding apparatus is modified according to the vertical differential coding technique. The target residual signal to be modified in the reconstructed residual block is modified in a manner that an upper residual signal located on the same column above the target residual signal is added to the target residual signal.
[0102]
[0103] The video decoding apparatus may sequentially add the reconstructed residual signals, thereby reconstructing the residual signal of the i-th row. The vertical reconstruction process may be sequentially performed on all columns of the block.
[0104] The above description shows differential encoding in the horizontal direction and the vertical direction, however, the differential encoding direction is not necessarily limited to the horizontal direction and the vertical direction. The differential encoding direction may include the horizontal direction and the vertical direction, and the differential encoding direction may further include other directions, for example, a 45-degree diagonal direction and a 135-degree diagonal direction. In this way, the video decoding device can add one or more residual signals in the residual block (the residual block is arranged in the differential encoding direction from the target residual signal) to the target residual signal for modification in the residual block reconstructed from the bitstream, thereby modifying the target residual signal.
[0105] In the case of implicit differential coding, the video decoding device can infer the prediction direction information of differential coding from the pre-decoded intra prediction information. For example, when the current block uses intra prediction and the intra prediction mode is the direction mode numbered 18, horizontal differential coding can be applied to the residual signal. When the current block uses intra prediction and the intra prediction mode is the direction mode numbered 50, vertical differential coding can be applied to the residual signal.
[0106] In another embodiment of the present invention, as shown in Equation 5, when the current block uses intra prediction and the difference between the intra prediction mode and the directional mode numbered 18 is less than a preset threshold range, horizontal differential encoding may be applied to the residual signal.
[0107] |predModeIntra - INTRA_ANGULAR18| < threshold equation 5
[0108] Here, predModeIntra is the intra prediction mode of the current block, and |·| indicates an absolute value.
[0109] In addition, as shown in Equation 6, when the current block uses intra prediction and the difference between the intra prediction mode and the directional mode numbered 50 is less than a preset threshold range, vertical differential encoding may be applied to the residual signal.
[0110] |predModeIntra - INTRA_ANGULAR50| < threshold Equation 6
[0111] Furthermore, in the case of explicit differential encoding, the video decoding apparatus may determine information about the differential encoding prediction mode by decoding information from a bitstream.
[0112] When the transform skip mode (ie, transform_skip_flag) is true, the video decoding apparatus receives differential encoding information diff_cod_idx as shown in Table 2, and determines whether to apply a differential encoding technique to a current block.
[0113] [Table 2]
[0114] diff_cod_idx Differential encoding type Binarization 0 DIFF_COD_OFF 0 (0 or 1) 1 DIFF_COD_VER 10 (or 00) 2 DIFF_COD_HOR 11(or 01)
[0115] In Table 2, DIFF_COD_OFF is a mode in which no additional differential coding is performed after skipping the transform, while DIFF_COD_VER and DIFF_COD_HOR are prediction modes predicted in the vertical direction or the horizontal direction. The index of the prediction mode in the vertical direction or the horizontal direction may be interchangeable. As shown in Table 2, when diff_cod_idx is not 0, the syntax is binarized into 2 bits. The first bit can be represented as 1, and the second bit can be represented as 0 or 1 according to the direction. The video decoding device identifies the application of differential coding from the first bit, and identifies the differential coding direction from the second bit. On the other hand, when diff_cod_idx is 0 (DIFF_COD_OFF), the syntax is binarized to 0. This situation does not require the second bit for indicating the differential coding direction. In the above example, the application or non-application of differential coding and the differential coding direction are represented as one syntax. However, from the binarization result shown in Table 2, it is obvious that the application or non-application of differential coding and the differential coding direction can be encoded as separate syntax. For example, two syntaxes may be used, where a 1-bit flag indicates whether differential encoding is applied or not, and a 1-bit flag indicates the differential encoding direction.
[0116] In another embodiment of the present invention, the transform skip mode information of transform_skip_flag and the differential coding information of diff_cod_idx may be integrated and expressed as shown in Table 3.
[0117] [Table 3]
[0118] transform_skip_idx Differential encoding type Binarization 0 DIFF_COD_OFF 0 (or 1) 1 DIFF_COD_VER 10 (or 00) 2 DIFF_COD_HOR 111 (or 01) -1 Transform Skip Disable -
[0119] Here, "transform_skip_idx = 0" performs the same operation as "transform_skip_flag = 1". In addition, the operation of "transform_skip_idx = -1" is the same as "transform_skip_flag = 0".
[0120] In another embodiment of the present invention, the transform skip mode information of transform_skip_flag, the differential coding information of diff_cod_idx, and the MTS information of tu_mts_idx may be integrated and expressed as shown in Table 4.
[0121] [Table 4]
[0122]
[0123] Explicit differential coding according to the present invention can be applied to both intra prediction mode and inter prediction mode.
[0124] When explicit differential coding is applied to an intra-frame prediction mode, information about the intra-frame prediction mode can be omitted, and only the syntax related to the differential coding can be encoded. The intra-frame prediction mode of the current block is set to be equal to the differential coding direction. As described above, when 67 intra-frame prediction modes are utilized, a large number of bits are required to signal information about the intra-frame prediction mode applied to the current block. The application of explicit differential coding in intra-frame prediction can reduce the number of bits required to encode information about the intra-frame prediction mode by inferring the direction of the intra-frame prediction mode from the differential coding direction. In other words, by inferring the intra-frame prediction mode based on the syntax about the differential coding prediction direction, the amount of code sent is reduced.
[0125] Alternatively, when differential coding is applied, the intra prediction mode of the current block may be limited so that the intra prediction mode is exclusively used within a threshold range from the differential coding direction. For example, when horizontal differential coding is applied, among all intra prediction modes, only the intra prediction mode satisfying equation 5 is made as the intra prediction mode of the current block. When vertical differential coding is applied, among all intra prediction modes, only the intra prediction mode satisfying equation 6 is made as the intra prediction mode of the current block. Accordingly, since the intra prediction mode of the current block is selected from some intra prediction modes similar to the differential coding direction rather than from the entire intra prediction mode, the number of bits required for encoding the intra prediction mode of the current block can be reduced. The video decoding device may generate a candidate set consisting of intra prediction modes within a threshold range from the differential coding direction, and may set the candidate indicated by the intra prediction mode information received from the video encoding device in the candidate set as the intra prediction mode of the current block.
[0126] When the differential encoding technology is applied to both the residual block of the current block and the residual block of the neighboring block, the video encoding apparatus and the video decoding apparatus may not perform deblocking filtering on the boundary between the current block and the neighboring block.
[0127] Figure 6 is a flowchart of a video decoding method for decoding a block encoded by intra-frame prediction using an explicit differential coding technique according to at least one embodiment of the present invention.
[0128] The video decoding apparatus decodes information about differential encoding of a residual block applied to a current block from a bitstream (S610).
[0129] The information about differential coding may include a flag indicating whether differential coding is applied and a flag for indicating the direction of differential coding. The video decoding device may decode the information about differential coding of the residual block applied to the current block. The differential coding information may be sent to the video decoding device as a syntax element of diff_cod_idx as shown in Table 2.
[0130] The video decoding apparatus reconstructs information about the residual signal from the bitstream, and generates a residual block by using the information about the residual signal and the differential encoding information (S620).
[0131] The video decoding apparatus first reconstructs information about the residual signal.
[0132] For example, the video decoding apparatus reconstructs a flag (tu_cbf_luma) indicating whether there is a residual signal relative to the current block. When there is a residual signal (tu_cbf_luma is true), the residual signal for the current block is reconstructed from the bitstream. On the other hand, when tu_cbf_luma is false, all residual signals are set to 0.
[0133] On the other hand, when there is a residual signal (tu_cbf_luma is true), the transform_skip_flag indicating whether to skip the transform can be decoded. Here, when the transform_skip_flag is not sent, the transform_skip_flag is inferred to have the same value as the flag indicating whether differential coding is applied or not. In other words, as described above, since the differential coding technology is applied in the transform skip mode, the transform_skip_flag is not included in the bitstream. When differential coding is applied, the transform_skip_flag can be automatically set to true ("1") so that the conversion can be skipped.
[0134] When the explicit differential coding technique is applied, the video decoding apparatus may use the decoded direction information to generate a residual block from a residual signal reconstructed from a bitstream. Equation 3 is used in the case of horizontal differential coding, and Equation 4 is used in the case of vertical differential coding.
[0135] The video decoding apparatus inversely quantizes the residual block ( S630 ).
[0136] The video decoding apparatus generates a prediction block of the current block through intra prediction (S640). The video decoding apparatus may generate a prediction block of the current block by using sub-steps S642 and S644.
[0137] The video decoding apparatus sets an intra prediction mode of the current block by using the differential encoding information (S642).
[0138] When the differential coding technique is applied, the video decoding device can set the intra prediction mode by using the direction information in the decoded information about the differential coding. Specifically, in the case of horizontal differential coding, the intra prediction mode is set to the horizontal intra prediction mode (e.g., Figure 3a and Figure 3b INTRA_ANGULAR18 in , and in the case of vertical differential coding, the intra prediction mode is set to the vertical intra prediction mode (for example, Figure 3a and Figure 3b INTRA_ANGULAR50 in .
[0139] The video decoding apparatus predicts the current block by using previously reconstructed pixels around the current block according to the intra prediction mode (S644).
[0140] The video decoding apparatus reconstructs the current block by adding the prediction block and the inverse quantized residual block (S650).
[0141] Since the differential coding technology is applied in the transform skip mode, the video decoding device skips the inverse transform of the inverse quantized residual block. Accordingly, the video decoding device can reconstruct the current block by adding the inverse quantized residual block to the intra-frame prediction block of the current block. When intra-frame prediction is performed on the subsequent block to be decoded, the pixels in the reconstructed current block can be used as reference pixels.
[0142] In order to remove the block artifacts caused by block-by-block decoding, the video decoding device may perform deblocking filtering on the boundary between the neighboring block adjacent to the reconstructed current block and the reconstructed current block. However, when both the residual block of the neighboring block and the residual block of the current block have been differentially encoded, the video decoding device may skip the deblocking filtering on the boundary between the neighboring block and the current block.
[0143] Figure 7is a flowchart of a video decoding method for decoding a block encoded by inter-frame prediction using an explicit differential coding technique according to at least one embodiment of the present invention.
[0144] The video decoding apparatus decodes information about differential encoding of a residual block applied to a current block from a bitstream (S710).
[0145] The information about differential coding may include a flag indicating whether differential coding is applied or not and a flag for indicating the direction of differential coding. The video decoding device may decode the information about differential coding of the residual block applied to the current block. The differential coding information may be sent to the video decoding device as a syntax element of diff_cod_idx as shown in Table 2.
[0146] The video decoding apparatus reconstructs information about the residual signal from the bitstream, and generates a residual block by using the information about the residual signal and the differential encoding information (S720).
[0147] The video decoding device first generates a residual signal by reconstructing the information transmitted about the residual signal. Figure 6 The method described is the same, so further description of the method will be omitted.
[0148] When the explicit differential coding technique is applied, the video decoding apparatus may utilize the decoded direction information to generate a residual block according to a residual signal reconstructed from a bitstream. Equation 3 is used in the case of horizontal differential coding, and Equation 4 is used in the case of vertical differential coding.
[0149] The video decoding apparatus inversely quantizes the residual block ( S730 ).
[0150] The video decoding apparatus generates a prediction block of the current block through inter-frame prediction (S740). The video decoding apparatus may generate a prediction block of the current block by using sub-steps S742 and S744.
[0151] The video decoding apparatus uses the extracted syntax element of the inter prediction mode to determine a motion vector of the current block and a reference image referred to by the motion vector (S742).
[0152] The video decoding apparatus predicts the current block by using the motion vector and the reference image (S744).
[0153] The video decoding apparatus reconstructs the current block by adding the prediction block and the inverse quantized residual block (S750).
[0154] Since the differential coding technique is applied in the transform skip mode, the video decoding apparatus skips the inverse transform of the inverse quantized residual block. Accordingly, the video decoding apparatus can reconstruct the current block by adding the inverse quantized residual block to the inter-frame prediction block of the current block.
[0155] In order to remove block artifacts caused by block-by-block decoding, the video decoding device may perform deblocking filtering on the boundary between the neighboring block adjacent to the reconstructed current block and the reconstructed current block. However, when both the residual block of the neighboring block and the residual block of the current block have been differentially encoded, the video decoding device may skip performing deblocking filtering on the boundary between the neighboring block and the current block. When all blocks in one image are reconstructed, the reconstructed image can be used as a reference image for the inter-frame predicted block in the next image to be encoded.
[0156] Figure 8 is a flowchart of a video decoding method for decoding a block encoded by intra-frame prediction using an implicit differential coding technique according to another embodiment of the present invention.
[0157] The video decoding apparatus decodes information about intra prediction applied to the current block from the bitstream and uses the decoded intra prediction information to generate a prediction block of the current block (S810). The video decoding apparatus may generate a prediction block of the current block by using sub-steps S812 and S814.
[0158] The video decoding apparatus uses the decoded intra prediction information to determine an intra prediction mode of a current block (S812).
[0159] The video decoding apparatus may determine an intra prediction mode of a current block from among a plurality of intra prediction modes using the extracted syntax elements of the intra prediction mode.
[0160] The video decoding apparatus predicts the current block by using previously reconstructed pixels around the current block according to the intra prediction mode (S814).
[0161] The video decoding apparatus infers information about a differential encoding direction of a residual block applied to a current block using an intra prediction mode (S820).
[0162] When the implicit differential coding technique is applied, the required information about the differential coding is the differential coding direction. In the transform skip mode (transform_skip_flag is true), the video decoding device can estimate the prediction direction information of the differential coding from the intra prediction information. For example, when the intra prediction mode is the direction mode numbered 18, horizontal differential coding can be applied to the residual block. In addition, when the intra prediction mode is the direction mode numbered 50, vertical differential coding can be applied to the residual block.
[0163] In another embodiment of the present invention, as shown in Equation 5, when the difference between the intra prediction mode and the direction mode numbered 18 is less than a preset threshold range, horizontal differential coding may be applied to the residual block. In addition, as shown in Equation 6, when the difference between the intra prediction mode and the direction mode numbered 50 is less than a preset threshold range, vertical differential coding may be applied to the residual block.
[0164] The video decoding apparatus reconstructs information about the residual signal from the bitstream, and generates a residual block by using the information about the residual signal and the information about the differential encoding direction (S830).
[0165] When the implicit differential coding technique is applied, the video decoding apparatus may utilize the directional information estimated from the intra prediction mode to generate a residual block from the residual signal reconstructed from the bitstream. Equation 3 is used in the case of horizontal differential coding, and Equation 4 is used in the case of vertical differential coding.
[0166] The video decoding apparatus inversely quantizes the residual block (S840).
[0167] The video decoding apparatus reconstructs the current block by adding the predicted block and the inverse quantized residual block (S850).
[0168] Since the differential coding technique is applied in the transform skip mode, the video decoding device skips the inverse transform of the inverse quantized residual block. Accordingly, the video decoding device can reconstruct the current block by adding the inverse quantized residual block to the intra-frame prediction block of the current block. For further intra-frame prediction of the next block to be decoded, the pixels in the reconstructed current block can be used as reference pixels.
[0169] In order to remove the block artifacts caused by block-by-block decoding, the video decoding device may perform deblocking filtering on the boundary between the neighboring block adjacent to the reconstructed current block and the reconstructed current block. However, when both the residual block of the neighboring block and the residual block of the current block have been differentially encoded, the video decoding device may be exempted from performing deblocking filtering on the boundary between the neighboring block and the current block.
[0170] Although the steps in each flow chart are described as being performed sequentially, they only illustrate the technical ideas of some embodiments of the present invention. Therefore, a person skilled in the art can perform the steps by changing the order described in each figure or by performing two or more steps in parallel, so that the steps in each flow chart are not limited to the time sequence shown.
[0171] In addition, the various methods or functions described in the present invention can be implemented as instructions stored in a non-volatile recording medium, which can be read and executed by one or more processors. Non-volatile recording media include, for example, all types of recording devices that store data in a form that can be read by a computer system. For example, non-volatile recording media can include storage media such as erasable programmable read-only memory (EPROM), flash drives, optical drives, magnetic hard drives, and solid-state drives (SSDs), etc.
[0172] Although exemplary embodiments of the present invention have been described for illustrative purposes, it will be appreciated by those skilled in the art that various modifications, additions and substitutions may be made without departing from the thought and scope of the claimed invention. Therefore, exemplary embodiments of the present invention have been described for the sake of brevity and clarity. The scope of the technical thought of the present invention is not limited by the illustrations. Accordingly, it will be appreciated by those skilled in the art that the scope of the claimed invention is not limited by the embodiments explicitly described above, but by the claims and their equivalents.
Claims
1. A video decoding method for reconstructing a current block encoded using intra-frame prediction, the video decoding method comprising: decoding, from the bitstream based on the size of the current block, a flag indicating whether differential coding has been applied to a residual block of the current block; When the flag indicates that differential coding has been applied to the residual block, decoding direction information indicating a direction of differential coding applied to the residual block from the bitstream; generating a residual block by reconstructing information about a residual signal from a bitstream; Based on the directional information, generating a modified residual block by modifying the residual signal in the residual block, wherein each target residual signal to be modified in the residual block is modified by adding each target residual signal to be modified in the residual block to one or more residual signals in the residual block, and the residual blocks are arranged in a direction indicated by the directional information of the target residual signal; Inverse quantizing the modified residual block into an inverse quantized residual block; Inferring the intra prediction mode of the current block according to the direction of differential encoding indicated by the direction information without decoding information about the intra prediction mode of the current block from a bitstream, and generating a prediction block of the current block by intra predicting the current block based on the inferred intra prediction mode; and The current block is reconstructed by adding the prediction block to the inverse quantized residual block.
2. The video decoding method according to claim 1, wherein: The direction information indicates any one of a horizontal direction and a vertical direction.
3. The video decoding method according to claim 2, wherein: When the direction information indicates a horizontal direction, the target residual signal is modified by adding the target residual signal to a left residual signal located to the left of the target residual signal in the same row as the target residual signal.
4. The video decoding method according to claim 2, wherein: When the direction information indicates a vertical direction, the target residual signal is modified by adding the target residual signal to an upper residual signal above the target residual signal located in the same column as the target residual signal.
5. The video decoding method according to claim 1, wherein: The intra prediction mode of the current block is set to have a prediction direction consistent with the direction indicated by the direction information.
6. The video decoding method according to claim 1, wherein: Skip the inverse transform of the residual block for inverse quantization.
7. The video decoding method according to claim 1, wherein: The information about the residual signal includes: Information indicating whether a residual signal exists; and Information indicating whether transform skip mode is used.
8. The video decoding method according to claim 1, further comprising: Deblocking filtering is performed on a boundary between a reconstructed current block and an adjacent block adjacent to the reconstructed current block. Among them, when differential encoding is applied to both the residual block of the neighboring block and the residual block of the current block, deblocking filtering is not performed on the boundary between the reconstructed current block and the neighboring block.
9. A video encoding method for encoding a current block using intra-frame prediction, the video encoding method comprising: determining whether to apply differential encoding to a residual block of the current block based on a size of the current block; When differential coding is applied to the residual block, determining a differential coding direction of the residual block to be applied to the current block; generating a prediction block of the current block by intra-predicting the current block based on the intra-prediction mode of the current block equal to the differential coding direction; Generate a residual block by subtracting the prediction block from the current block; generating a modified residual block by modifying the residual signal in the residual block based on the differential encoding direction, wherein each target residual signal to be modified in the residual block is modified by subtracting a neighboring residual signal adjacent to the target residual signal in the differential encoding direction from the target residual signal; and The modified residual block and information indicating the differential encoding direction are encoded into a bitstream, wherein information about the intra-frame prediction mode of the current block is not encoded, so that the video decoding device infers the intra-frame prediction mode of the current block according to the information indicating the differential encoding direction.
10. A method for sending a bitstream comprising video data to a video decoding device, the method comprising: generating a bitstream by encoding a current block using intra prediction; as well as Sending a bitstream to a video decoding device, The encoding of the current block includes: determining whether to apply differential encoding to a residual block of the current block based on a size of the current block; When differential coding is applied to the residual block, determining a differential coding direction of the residual block to be applied to the current block; generating a prediction block of the current block by intra-predicting the current block based on the intra-prediction mode of the current block equal to the differential coding direction; Generate a residual block by subtracting the prediction block from the current block; generating a modified residual block by modifying the residual signal in the residual block based on the differential encoding direction, wherein each target residual signal to be modified in the residual block is modified by subtracting a neighboring residual signal adjacent to the target residual signal in the differential encoding direction from the target residual signal; and The modified residual block and information indicating the differential encoding direction are encoded into a bitstream, wherein information about the intra-frame prediction mode of the current block is not encoded, so that the video decoding device infers the intra-frame prediction mode of the current block according to the information indicating the differential encoding direction.
