WO2019189899A1 - 画像符号化装置、画像復号装置、及びプログラム - Google Patents
画像符号化装置、画像復号装置、及びプログラム Download PDFInfo
- Publication number
- WO2019189899A1 WO2019189899A1 PCT/JP2019/014359 JP2019014359W WO2019189899A1 WO 2019189899 A1 WO2019189899 A1 WO 2019189899A1 JP 2019014359 W JP2019014359 W JP 2019014359W WO 2019189899 A1 WO2019189899 A1 WO 2019189899A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- image
- transform
- prediction
- evaluation
- Prior art date
Links
- 238000011156 evaluation Methods 0.000 claims abstract description 191
- 238000013139 quantization Methods 0.000 claims description 183
- 238000012545 processing Methods 0.000 claims description 99
- 238000000034 method Methods 0.000 claims description 94
- 230000008569 process Effects 0.000 claims description 80
- 230000015572 biosynthetic process Effects 0.000 claims description 47
- 238000003786 synthesis reaction Methods 0.000 claims description 47
- 238000004364 calculation method Methods 0.000 claims description 32
- 238000006243 chemical reaction Methods 0.000 claims description 32
- 230000002194 synthesizing effect Effects 0.000 claims description 31
- 230000008707 rearrangement Effects 0.000 claims description 13
- 238000001914 filtration Methods 0.000 claims description 10
- 230000009466 transformation Effects 0.000 claims description 7
- 238000010606 normalization Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 25
- 239000011159 matrix material Substances 0.000 description 19
- 230000003044 adaptive effect Effects 0.000 description 16
- 230000015556 catabolic process Effects 0.000 description 7
- 238000006731 degradation reaction Methods 0.000 description 7
- 230000006866 deterioration Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000002457 bidirectional effect Effects 0.000 description 4
- 230000035945 sensitivity Effects 0.000 description 4
- 239000000470 constituent Substances 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
Definitions
- the present invention relates to an image encoding device, an image decoding device, and a program.
- motion compensation prediction is performed using a plurality of reference images, a predicted image corresponding to the target image is generated, and the target image and the predicted image are
- a method of performing orthogonal transformation and quantization on a prediction residual indicating a difference in pixel units is known.
- the image coding apparatus encodes the quantized transform coefficient obtained by orthogonal transform and quantization by entropy coding, and performs inverse quantization and inverse orthogonal transform on the quantized transform coefficient to perform prediction prediction. Restore the difference. Then, the image encoding device reconstructs the target image by combining the reconstructed prediction residual with the predicted image, and uses the reconstructed image for subsequent prediction.
- the image decoding apparatus decodes the entropy-coded quantized transform coefficient and performs motion compensation prediction using a plurality of reference images to generate a predicted image corresponding to the target image.
- the image decoding apparatus restores a prediction residual by inverse quantization and inverse orthogonal transform of the quantized transform coefficient, and combines the restored prediction residual with the prediction image to reconstruct the target image.
- Such an image encoding device and an image decoding device generate a prediction image by, for example, averaging a plurality of reference images in motion compensated prediction using a plurality of reference images (see Non-Patent Document 1).
- the restored prediction residual deteriorated in this way is combined with the predicted image and the target image block is reconstructed, the deterioration of the image quality is propagated to the portion where the highly accurate prediction is performed.
- the image quality deteriorates due to the influence of the quantization of the orthogonal transform coefficient also on the high prediction accuracy, which causes a decrease in coding efficiency. there were.
- an object of the present invention is to provide an image encoding device, an image decoding device, and a program that can improve encoding efficiency when prediction is performed using a plurality of reference images.
- bi-prediction in motion compensated prediction is a representative prediction technique that performs prediction using a plurality of reference images, but is not limited thereto.
- the same technique can be applied when a predicted image is generated by referring to a plurality of images such as IntraBC mode (intra block copy mode) of an image used in the HEVC encoding method.
- IntraBC mode intra block copy mode
- the image encoding device encodes a target image.
- the image coding apparatus includes: a prediction unit that generates a predicted image corresponding to the target image by performing prediction (bidirectional motion compensated prediction as an example of a typical prediction method) using a plurality of reference images; And an evaluation unit that evaluates the prediction accuracy of the predicted image by calculating the similarity between the plurality of reference images.
- such an image encoding apparatus can estimate a portion having a large prediction residual or a portion having a small prediction residual by evaluating the prediction accuracy of a predicted image for each image portion, and therefore, degradation in image quality. Can be efficiently suppressed. Therefore, it is possible to provide an image encoding device that can improve encoding efficiency when performing prediction using a plurality of reference images.
- prediction unit can be used for the prediction performed by the prediction unit, regardless of what prediction method is used as long as a plurality of reference images are used.
- An example of a typical prediction method is bi-directional motion compensation prediction, but may be prediction in a multi-reference intra BC mode (intra block copy mode) used in the HEVC scheme.
- the image decoding apparatus decodes the target image.
- the image decoding apparatus performs prediction using a plurality of reference images (bidirectional motion compensation prediction as an example of a typical prediction method), thereby generating a prediction image corresponding to the target image;
- the gist is to include an evaluation unit that evaluates the prediction accuracy of the predicted image by calculating a similarity between the plurality of reference images.
- the image decoding apparatus can estimate a portion having a large prediction residual or a portion having a small prediction residual by evaluating the prediction accuracy of the predicted image for each image portion. Can be suppressed. Therefore, it is possible to provide an image decoding apparatus that can improve the encoding efficiency when performing prediction using a plurality of reference images.
- the gist of the program according to the third feature is a program for causing a computer to function as the image encoding device according to the first feature.
- the gist of the fourth feature is a program for causing a computer to function as an image decoding device according to the second feature.
- the image encoding device and the image decoding device according to the embodiment will be described with reference to the drawings.
- the image encoding device and the image decoding device according to the embodiment encode and decode a moving image represented by MPEG.
- MPEG moving image represented by MPEG.
- FIG. 1 is a diagram illustrating a configuration of an image encoding device 1 according to the first embodiment.
- the image encoding device 1 includes a block division unit 100, a subtraction unit 101, a conversion unit 102a, a quantization unit 102b, an entropy encoding unit 103, an inverse quantization unit 104a, An inverse transform unit 104b, a synthesis unit 105, an intra prediction unit 106, a loop filter 107, a frame memory 108, a motion compensation prediction unit 109, a switching unit 110, and an evaluation unit 111 are provided.
- the block dividing unit 100 divides an input image in units of frames (or pictures) into block-like small regions, and outputs the image blocks to the subtracting unit 101 (and the motion compensation prediction unit 109).
- the size of the image block is, for example, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, 8 ⁇ 8 pixels, or 4 ⁇ 4 pixels.
- An image block is a unit in which the image encoding device 1 performs encoding and a unit in which the image decoding device 2 performs decoding. Such an image block is referred to as a target image block.
- the subtracting unit 101 calculates a prediction residual indicating a difference in pixel units between the target image block input from the block dividing unit 100 and a predicted image (predicted image block) corresponding to the target image block. Specifically, the subtraction unit 101 calculates a prediction residual by subtracting each pixel value of the predicted image from each pixel value of the encoding target block, and outputs the calculated prediction residual to the conversion unit 102a. Note that the predicted image is input to the subtraction unit 101 from the intra prediction unit 106 or the motion compensation prediction unit 109 described later via the switching unit 110.
- the transform unit 102a and the quantization unit 102b constitute a transform / quantization unit 102 that performs orthogonal transform processing and quantization processing in units of blocks.
- the transform unit 102a performs orthogonal transform on the prediction residual input from the subtraction unit 101 to calculate transform coefficients, and outputs the calculated transform coefficients to the quantization unit 102b.
- the orthogonal transform refers to, for example, discrete cosine transform (DCT), discrete sine transform (DST), Karhunen-Loeve Transform (KLT), and the like.
- the quantization unit 102b quantizes the transform coefficient input from the transform unit 102a using a quantization parameter (Qp) and a quantization matrix, and generates a quantized transform coefficient.
- the quantization parameter (Qp) is a parameter that is commonly applied to each transform coefficient in the block, and is a parameter that determines the roughness of quantization.
- the quantization matrix is a matrix having a quantization value at the time of quantizing each transform coefficient as an element.
- the quantization unit 102b outputs the quantization control information, the generated quantization transform coefficient information, and the like to the entropy encoding unit 103 and the inverse quantization unit 104a.
- the entropy encoding unit 103 performs entropy encoding on the quantized transform coefficient input from the quantization unit 102b, performs data compression to generate encoded data (bit stream), and converts the encoded data into an image code Output to the outside of the converter 1.
- entropy coding Huffman code, CABAC (Context-based Adaptive Binary Arithmetic Coding), or the like can be used.
- CABAC Context-based Adaptive Binary Arithmetic Coding
- the entropy coding unit 103 receives information related to prediction from the intra prediction unit 106 and the motion compensation prediction unit 109, and receives information related to filter processing from the loop filter 107.
- the entropy encoding unit 103 also performs entropy encoding of these pieces of information.
- the inverse quantization unit 104a and the inverse transform unit 104b constitute an inverse quantization / inverse transform unit 104 that performs an inverse quantization process and an inverse orthogonal transform process in units of blocks.
- the inverse quantization unit 104a performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 102b. Specifically, the inverse quantization unit 104a restores the transform coefficient by inversely quantizing the quantized transform coefficient input from the quantization unit 102b using the quantization parameter (Qp) and the quantization matrix. Then, the restored transform coefficient is output to the inverse transform unit 104b.
- Qp quantization parameter
- the inverse transform unit 104b performs an inverse orthogonal transform process corresponding to the orthogonal transform process performed by the transform unit 102a. For example, when the transform unit 102a performs discrete cosine transform, the inverse transform unit 104b performs inverse discrete cosine transform. The inverse transform unit 104 b performs inverse orthogonal transform on the transform coefficient input from the inverse quantization unit 104 a to restore the prediction residual, and outputs the restored prediction residual that is the restored prediction residual to the synthesis unit 105. To do.
- the synthesizing unit 105 synthesizes the restored prediction residual input from the inverse transform unit 104b with the predicted image input from the switching unit 110 in units of pixels.
- the synthesizing unit 105 adds each pixel value of the restored prediction residual and each pixel value of the predicted image to reconstruct the target image block, and reconstructs the reconstructed image that is the reconstructed target image block into the intra prediction unit 106 and the loop. Output to the filter 107.
- the intra prediction unit 106 performs intra prediction using the reconstructed image input from the synthesis unit 105 to generate an intra prediction image, and outputs the intra prediction image to the switching unit 110. Also, the intra prediction unit 106 outputs information on the selected intra prediction mode and the like to the entropy encoding unit 103.
- the loop filter 107 performs filter processing as post-processing on the reconstructed image input from the synthesis unit 105 and outputs the reconstructed image after the filter processing to the frame memory 108. Further, the loop filter 107 outputs information related to the filter process to the entropy encoding unit 103.
- the filter process includes a deblocking filter process and a sample adaptive offset process.
- the deblocking filter process is a process for reducing signal degradation caused by block-based processing, and is a process for smoothing a signal gap at the boundary between adjacent blocks. By this deblocking filter processing, the strength (filter strength) of the deblocking filter processing is controlled using the signal gap at the boundary and the quantization parameter indicating the degree of quantization.
- the sample adaptive offset process is an image quality improvement filter process adopted in, for example, HEVC (see Non-Patent Document 1), and categorizes each pixel according to a relative relationship with an adjacent pixel of the pixel in the block.
- This is a process of calculating an offset value for improving the image quality for each category and uniformly assigning the offset value to each pixel belonging to the same category. Since stronger filter processing is applied as the offset value increases, the offset value can be regarded as a value that determines the filter strength of the sample adaptive offset processing.
- the frame memory 108 stores the reconstructed image input from the loop filter 107 in units of frames.
- the motion compensation prediction unit 109 performs inter prediction using one or a plurality of reconstructed images stored in the frame memory 108 as reference images. Specifically, the motion compensation prediction unit 109 calculates a motion vector by a technique such as block matching, generates a motion compensation prediction image based on the motion vector, and outputs the motion compensation prediction image to the switching unit 110. In addition, the motion compensation prediction unit 109 outputs information on the motion vector to the entropy encoding unit 103.
- the switching unit 110 switches between the intra prediction image input from the intra prediction unit 106 and the motion compensation prediction image input from the motion compensation prediction unit 109, and subtracts the prediction image (intra prediction image or motion compensation prediction image). Output to the unit 101 and the combining unit 105.
- the evaluation unit 111 calculates a similarity between a plurality of reference images used for prediction for each image portion including one or a plurality of pixels. Then, the prediction accuracy of the predicted image is evaluated for each image portion based on the similarity, and the evaluation result information is output to the synthesis unit 105.
- the evaluation unit 111 calculates the similarity between a plurality of reference images used for prediction in units of one pixel, and evaluates the prediction accuracy of the predicted image in units of one pixel.
- the evaluation unit 111 uses a plurality of reference images.
- the similarity between the plurality of reference images is calculated, the prediction accuracy of the predicted image is evaluated in units of pixels, and the evaluation result is output to the synthesis unit 105.
- the combining unit 105 controls the restored prediction residual to be combined with the predicted image on a pixel basis based on the evaluation result by the evaluation unit 111. Details of the evaluation unit 111 and the combining unit 105 will be described later.
- FIG. 2 is a diagram illustrating a configuration of the image decoding device 2 according to the first embodiment.
- the image decoding apparatus 2 includes an entropy code decoding unit 200, an inverse quantization unit 201a, an inverse transform unit 201b, a synthesis unit 202, an intra prediction unit 203, a loop filter 204, a frame, A memory 205, a motion compensation prediction unit 206, a switching unit 207, and an evaluation unit 208 are provided.
- the entropy code decoding unit 200 decodes the encoded data generated by the encoding device 1 and outputs the quantized transform coefficient to the inverse quantization unit 201a. In addition, the entropy code decoding unit 200 decodes encoded data, acquires information related to prediction (intra prediction and motion compensation prediction) and information related to filter processing, and stores information related to prediction to the intra prediction unit 203 and the motion compensated prediction unit. The information about the filter processing is output to the loop filter 204.
- the inverse quantization unit 201a and the inverse transform unit 201b constitute an inverse quantization / inverse transform unit 201 that performs an inverse quantization process and an inverse orthogonal transform process in units of blocks.
- the inverse quantization unit 201a performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 102b of the image encoding device 1.
- the inverse quantization unit 201a restores and restores the transform coefficient by inversely quantizing the quantized transform coefficient input from the entropy code decoding unit 200 using the quantization parameter (Qp) and the quantization matrix.
- the transform coefficient is output to the inverse transform unit 201b.
- the inverse transform unit 201b performs an inverse orthogonal transform process corresponding to the orthogonal transform process performed by the transform unit 102a of the image encoding device 1.
- the inverse transform unit 201 b performs inverse orthogonal transform on the transform coefficient input from the inverse quantization unit 201 a to restore the prediction residual, and outputs the restored prediction residual (restored prediction residual) to the synthesis unit 202. To do.
- the synthesizing unit 202 reconstructs the original target image block by synthesizing the prediction residual input from the inverse transform unit 201b and the predicted image input from the switching unit 207 in units of pixels, and reconstructed image Is output to the intra prediction unit 203 and the loop filter 204.
- the intra prediction unit 203 refers to the reconstructed coded block image input from the synthesis unit 202, generates an intra prediction image by performing intra prediction according to the intra prediction information input from the entropy code decoding unit 200, and generates an intra prediction image.
- the predicted image is output to the switching unit 207.
- the loop filter 204 is similar to the filter processing performed by the loop filter 107 of the image encoding device 1 on the reconstructed image input from the synthesis unit 202 based on the filter processing information input from the entropy code decoding unit 200. Filter processing is performed, and the reconstructed image after the filter processing is output to the frame memory 205.
- the frame memory 205 stores the reconstructed image input from the loop filter 204 in units of frames.
- the frame memory 205 outputs the stored reconstructed images to the outside of the image decoding device 2 in the display order.
- the motion compensation prediction unit 206 performs motion compensation prediction (inter prediction) according to the motion vector information input from the entropy code decoding unit 200, using one or a plurality of reconstructed images stored in the frame memory 205 as reference images. As a result, a motion compensated predicted image is generated, and the motion compensated predicted image is output to the switching unit 207.
- inter prediction motion compensation prediction
- the switching unit 207 switches between the intra prediction image input from the intra prediction unit 203 and the motion compensated prediction image input from the motion compensation prediction unit 206, and synthesizes a prediction image (intra prediction image or motion compensation prediction image). To the unit 202.
- the evaluation unit 208 performs the same operation as the evaluation unit 111 of the image encoding device 1. Specifically, when the motion compensation prediction unit 206 performs motion compensation prediction using a plurality of reference images, the evaluation unit 208 calculates the similarity between the plurality of reference images in units of pixels, thereby predicting the predicted image. And the evaluation result information is output to the synthesis unit 202. The combining unit 202 controls the restored prediction residual to be combined with the predicted image on a pixel basis based on the evaluation result by the evaluation unit 208.
- FIG. 3 is a diagram illustrating an example of motion compensation prediction.
- FIG. 4 is a diagram illustrating an example of a predicted image generated by motion compensation prediction.
- bi-prediction used in HEVC, particularly forward and backward prediction (bidirectional prediction) is used will be described.
- the motion compensation prediction refers to the previous and subsequent frames in time with respect to the target frame (current frame).
- the motion compensation prediction of the block in the image of the t frame is performed with reference to the t ⁇ 1 frame and the t + 1 frame.
- a portion (block) similar to the target image block is detected from the reference range set in the system from the reference frames of the t ⁇ 1 and t + 1 frames.
- Detected location is a reference image.
- Information indicating the relative position of the reference image with respect to the target image block is an arrow shown in the figure, which is called a motion vector.
- the motion vector information is encoded by entropy encoding together with the frame information of the reference image in the image encoding device 1.
- the image decoding device 2 detects a reference image based on the motion vector information generated by the image encoding device 1.
- the reference images 1 and 2 detected by motion compensation are similar partial images that are aligned in the reference frame with respect to the target image block.
- the image is similar to the encoding target image.
- the target image block includes a star pattern and a partial circle pattern.
- the reference image 1 includes a star pattern and an overall circle pattern.
- the reference image 2 includes a star pattern, but does not include a circle pattern.
- a prediction image is generated from the reference images 1 and 2.
- reference images 1 and 2 having different characteristics but partially similar are averaged to generate a prediction image having the characteristics of each reference image.
- a predicted image may be generated by using more advanced processing, for example, signal enhancement processing using a low-pass filter, a high-pass filter, or the like.
- the reference image 1 includes a circle pattern and the reference image 2 does not include a circle pattern, when the reference images 1 and 2 are averaged to generate a predicted image, the circle pattern in the predicted image is the reference image. Compared to 1, the signal is halved.
- the difference between the prediction image obtained from the reference images 1 and 2 and the target image block (encoding target image) is the prediction residual.
- the prediction residual shown in FIG. 4 a large difference occurs only in the edge shift portion of the star pattern and the shift portion (shaded portion) of the circle pattern, but the other portions are predicted accurately.
- the difference is reduced (the difference is not generated in the example of FIG. 4).
- the part where the difference does not occur is a part where the similarity between the reference image 1 and the reference image 2 is high, and the part where the high-precision prediction is performed. is there.
- a portion where a large difference is generated is a portion specific to each reference image, that is, a portion where the similarity between the reference image 1 and the reference image 2 is extremely low. Therefore, it can be seen that a portion where the similarity between the reference image 1 and the reference image 2 is extremely low has low prediction accuracy and causes a large difference (residual).
- the prediction image restored by inverse quantization and inverse orthogonal transform (reconstructed prediction residual) is combined with the prediction image to reconstruct the target image block, the non-edge portion and background of the star pattern shown in FIG.
- the degradation of the image quality is propagated to a portion where a highly accurate prediction is performed, such as the portion.
- the evaluation unit 111 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels. Then, based on the result of evaluation by the evaluation unit 111, the synthesis unit 105 controls the restored prediction residual to be synthesized with the predicted image in units of pixels.
- the evaluation unit 208 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between a plurality of reference images in units of pixels. Then, the synthesis unit 202 controls the restored prediction residual to be synthesized with the predicted image on a pixel basis based on the result of the evaluation by the evaluation unit 208.
- FIG. 5 is a diagram illustrating an example of the configuration of the evaluation unit 111 in the image encoding device 1.
- the evaluation unit 111 includes a difference calculation unit (subtraction unit) 111a, a normalization unit 111b, and a weight adjustment unit 111c.
- the difference calculation unit 111a calculates the absolute value of the difference value between the reference image 1 and the reference image 2 in units of pixels, and outputs the calculated absolute value of the difference value to the normalization unit 111b.
- the absolute value of the difference value is an example of a value indicating similarity. It can be said that the smaller the absolute value of the difference value is, the higher the similarity is, and the larger the absolute value of the difference value is, the lower the similarity is.
- the difference calculation unit 111a may calculate the absolute value of the difference value after performing filter processing on each reference image.
- the difference calculation unit 111a may calculate a statistic such as a square error and use the statistic as the similarity.
- the normalization unit 111b uses the difference value of each pixel input from the difference calculation unit 111a as the absolute value of the difference value of the pixel having the maximum absolute value of the difference value in the block (that is, the absolute value of the difference value in the block). Normalized difference value, which is an absolute value of the normalized difference value, is output to the weight adjustment unit 111c. In the first embodiment, the normalized difference value is used as a weight for weighting the restored prediction residual combined with the predicted image in the combining unit 105 in units of pixels.
- the weight adjustment unit 111c adjusts the normalized difference value (weight) input from the normalization unit 111b based on the quantization parameter (Qp) that determines the roughness of quantization, and outputs this weight. Since the degree of deterioration of the restored prediction residual is higher as the quantization roughness is larger, the weight adjustment unit 111c adjusts the normalized difference value (weight) based on the quantization parameter (Qp), thereby reducing the degree of deterioration.
- the restoration prediction residual can be weighted in consideration.
- the weight Wij of each pixel (ij) output from the evaluation unit 111 can be expressed as, for example, the following equation (1).
- Wij (abs (Xij-Yij) / maxD x Scale (Qp)) (1)
- Xij is the pixel value of the pixel ij of the reference image 1
- Yij is the pixel value of the pixel ij of the reference image 2
- abs is a function for obtaining an absolute value.
- the difference calculation unit 111a shown in FIG. 5 outputs abs (Xij ⁇ Yij).
- maxD is the maximum value of the difference value abs (Xij ⁇ Yij) in the block.
- maxD it is necessary to obtain difference values for all the pixels in the block, but in order to omit this process, the maximum value of an adjacent block that has already been encoded may be substituted. If there is more than that value, normalization of maxD may be performed by clipping with the maximum value used. Alternatively, maxD may be obtained from the quantization parameter (Qp) using a table that defines the correspondence between the quantization parameter (Qp) and maxD. Alternatively, a fixed value defined in advance by specifications may be used as maxD.
- the normalization unit 111b outputs abs (Xij ⁇ Yij) / maxD.
- Scale (Qp) is a coefficient that is multiplied according to the quantization parameter (Qp). Scale (Qp) is designed to approach 1.0 when Qp is large and close to 0 when Qp is small, and the degree is adjusted by the system. Alternatively, a fixed value defined in advance by specifications may be used as Scale (Qp). Furthermore, in order to simplify the processing, Scale (QP) may be a fixed value designed according to the system such as 1.0.
- Clip (x, max, min) indicates a process of clipping at max when x exceeds max, and at min when x is below min.
- the weight Wij calculated in this way is a value in the range from 0 to 1.0. Basically, the weight Wij approaches 1.0 when the absolute value of the difference value of the pixel ij between the reference images is large (that is, the prediction accuracy is low), and the absolute value of the difference value of the pixel ij between the reference images. It approaches 0 when the value is small (that is, the prediction accuracy is high).
- the evaluation unit 111 outputs map information including the weight Wij of each pixel ij in the block to the synthesis unit 105 in units of blocks.
- the evaluation unit 111 performs evaluation (calculation of the weight Wij) only when motion compensated prediction using a plurality of reference images is applied, and performs other modes such as unidirectional prediction and intra prediction without using a plurality of reference images. In the processing, the evaluation is not performed and 1.0 is uniformly set as the weight Wij.
- FIG. 6 is a diagram illustrating an example of the configuration of the synthesis unit 105 in the image encoding device 1.
- the synthesis unit 105 includes a weighting unit (multiplication unit) 105a and an addition unit 105b.
- the weighting unit 105a uses the map information (weight Wij) input from the evaluation unit 111 to weight the restored prediction residual input from the inverse transform unit 104b on a pixel basis, and the weighted restored prediction residual. The difference is output to the adding unit 105b.
- the adding unit 105b adds the reconstructed image after weighting input from the weighting unit 105a to the predicted image input from the motion compensation prediction unit 109 via the switching unit 110 in units of pixels. Generate and output the generated reconstructed image.
- Such processing of the synthesizing unit 105 can be expressed as, for example, the following equation (2).
- Recij Dij ⁇ Wij + Pij (2)
- Recij is the pixel value of the pixel ij in the reconstructed image
- Dij is the pixel value of the pixel ij in the restored prediction residual
- Wij is the weight of the pixel ij in the map information
- Pij is the prediction This is the pixel value of the pixel ij in the image.
- the synthesis unit 105 performs weighting processing only when motion compensated prediction using a plurality of reference images is applied, and does not perform weighting processing in other modes, for example, unidirectional prediction or intra prediction processing.
- the evaluation unit 111 and the synthesis unit 105 in the image encoding device 1 have been described, but the evaluation unit 208 and the synthesis unit 202 in the image decoding device 2 are the same as the evaluation unit 111 and the synthesis unit 105 in the image encoding device 1. Composed. Specifically, the evaluation unit 208 in the image decoding device 2 includes a difference calculation unit 208a, a normalization unit 208b, and a weight adjustment unit 208c. The synthesizing unit 202 in the image decoding device 2 includes a weighting unit (multiplication unit) 202a and an addition unit 202b.
- FIG. 7 is a diagram illustrating a processing flow in the image encoding device 1 according to the first embodiment.
- step S1101 the motion compensation prediction unit 109 predicts a target image block by performing motion compensation prediction using a plurality of reference images, and generates a predicted image corresponding to the target image block.
- the motion compensation prediction information is encoded as part of the encoded data by the entropy encoding unit 103, and the entropy encoding unit 103 outputs encoded data including the motion compensation prediction information.
- step S1102 the evaluation unit 111 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels, or averages the prediction accuracy of the plurality of pixels. Evaluation is performed on an image-by-image basis, and map information including the weight of each pixel or partial image in the block is generated.
- step S1103 the subtraction unit 101 calculates a prediction residual indicating a difference in pixel units between the target image block and the predicted image.
- step S1104 the transform / quantization unit 102 generates a quantized transform coefficient by performing orthogonal transform and quantization on the prediction residual calculated by the subtracting unit 101.
- step S1105 the entropy encoding unit 103 performs entropy encoding on the quantized transform coefficient and outputs encoded data.
- step S1106 the inverse quantization / inverse transform unit 104 restores the prediction residual by performing inverse quantization and inverse orthogonal transform on the quantized transform coefficient, and generates a restored prediction residual.
- step S1107 the synthesizing unit 105 controls the restored prediction residual to be synthesized with the predicted image on a pixel basis based on the evaluation result (map information) by the evaluation unit 111. Specifically, the synthesizing unit 105 performs the weighting process in units of pixels as described above on the restored prediction residual.
- step S1108 the synthesizing unit 105 reconstructs the target image block by synthesizing the weighted restored prediction residual with the predicted image in units of pixels, and generates a reconstructed image.
- step S1109 the loop filter 107 performs filter processing on the reconstructed image. Also, information regarding the loop filter (such as offset and category information to which the offset is applied) is encoded as part of the encoded data by the entropy encoding unit 103, and the entropy encoding unit 103 is a code including information regarding the loop filter. Output data.
- information regarding the loop filter such as offset and category information to which the offset is applied
- the entropy encoding unit 103 is a code including information regarding the loop filter.
- step S1110 the frame memory 108 stores the reconstructed image after the filter processing in units of frames.
- FIG. 8 is a diagram illustrating a processing flow in the image decoding device 2 according to the first embodiment.
- step S1201 the entropy code decoding unit 200 decodes the encoded data and acquires information related to the quantized transform coefficient, motion vector information, and loop filter.
- step S1202 the motion compensation prediction unit 206 predicts the target image block by performing motion compensation prediction using a plurality of reference images based on the motion vector information, and generates a predicted image corresponding to the target image block.
- the evaluation unit 208 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels, and includes the weight of each pixel or partial image in the block. Generate map information.
- step S1204 the inverse quantization / inverse transform unit 201 restores the prediction residual by performing inverse quantization and inverse orthogonal transform on the quantized transform coefficient, and generates a restored prediction residual.
- step S1205 the synthesis unit 202 controls the restored prediction residual to be synthesized with the predicted image on a pixel basis, based on the evaluation result (map information) by the evaluation unit 208. Specifically, the synthesizing unit 202 performs the weighting process in units of pixels as described above on the restored prediction residual.
- step S1206 the synthesizer 202 reconstructs the target image block by synthesizing the weighted restored prediction residual with the predicted image in units of pixels, and generates a reconstructed image.
- step S1207 the loop filter 204 performs filter processing on the reconstructed image.
- step S1208 the frame memory 205 stores and outputs the reconstructed image after the filter processing in units of frames.
- the evaluation unit 111 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels. Then, based on the result of evaluation by the evaluation unit 111, the synthesis unit 105 controls the restored prediction residual to be synthesized with the predicted image in units of pixels.
- the evaluation unit 208 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels. Then, the synthesis unit 202 controls the restored prediction residual to be synthesized with the predicted image on a pixel basis based on the result of the evaluation by the evaluation unit 208.
- Second Embodiment> The difference between the image encoding device and the image decoding device according to the second embodiment and the first embodiment will be mainly described.
- the prediction accuracy evaluation result is used in the signal synthesis process.
- the prediction accuracy evaluation result is used in the filter process.
- FIG. 9 is a diagram illustrating a configuration of the image encoding device 1 according to the second embodiment.
- the evaluation unit 111 outputs an evaluation result (map information) to the loop filter 107.
- the evaluation unit 111 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels, as in the first embodiment.
- the loop filter 107 controls the filter strength in the filter processing in units of pixels based on the evaluation result by the evaluation unit 111.
- the loop filter 107 performs a filter process (sample adaptive offset process) by adding the offset value controlled in pixel units to the reconstructed image input from the synthesizing unit 105 in pixel units, and performs re-processing after the filter process.
- the constituent image is output to the frame memory 108.
- FIG. 10 is a diagram illustrating a configuration of the image decoding device 2 according to the second embodiment.
- the evaluation unit 208 outputs an evaluation result (map information) to the loop filter 204.
- the evaluation unit 208 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels, as in the first embodiment.
- the loop filter 204 controls the filter strength in the filter process in units of pixels based on the evaluation result by the evaluation unit 208. Then, the loop filter 204 performs filter processing (sample adaptive offset processing) by adding the offset value controlled in pixel units to the reconstructed image input from the synthesis unit 202 in pixel units, and performs re-processing after the filter processing.
- the constituent image is output to the frame memory 205.
- FIG. 11 is a diagram illustrating an example of the configuration of the loop filter 107 in the image encoding device 1.
- the loop filter 107 includes a weighting unit (multiplication unit) 107a and an addition unit 107b.
- the weighting unit 107a uses the map information (weight Wij) input from the evaluation unit 111 to weight the offset value that determines the filter strength in units of pixels.
- the offset value that determines the filter strength the offset value used in the sample adaptive offset process (see Non-Patent Document 1) can be used.
- the loop filter 107 categorizes each pixel according to the relative relationship between the pixels in the block and the adjacent pixels, and sets an offset value for improving the image quality for each category. calculate.
- the weighting unit 107a weights the offset value used for the sample adaptive offset processing in units of pixels, and outputs the weighted offset value to the adding unit 107b.
- the adding unit 107b performs a filtering process (sample adaptive offset process) by adding the weighted offset value input from the weighting unit 107a to the reconstructed image input from the synthesizing unit 105 in units of pixels.
- the later reconstructed image is output.
- Such processing of the loop filter 107 can be expressed as, for example, the following equation (3).
- Recij ' Recij + dij ⁇ Wij (3)
- Recij ′ is the pixel value of the pixel ij in the reconstructed image after the filter process
- Recij is the pixel value of the pixel ij in the reconstructed image before the filter process
- dij is assigned to the pixel ij The offset value to be used
- Wij is the weight of the pixel ij in the map information.
- the loop filter 107 performs weighting processing based on map information only when motion compensated prediction using a plurality of reference images is applied. In other modes, such as unidirectional prediction or intra prediction processing, No weighting process based on it.
- the loop filter 204 in the image decoding device 2 is configured in the same manner as the loop filter 107 in the image encoding device 1.
- the loop filter 204 in the image decoding device 2 includes a weighting unit (multiplication unit) 204a and an addition unit 204b.
- FIG. 12 is a diagram illustrating a processing flow in the image encoding device 1 according to the second embodiment.
- step S2101 the motion compensation prediction unit 109 predicts a target image block by performing motion compensation prediction using a plurality of reference images, and generates a predicted image corresponding to the target image block.
- the motion compensation prediction information is encoded as part of the encoded data by the entropy encoding unit 103, and the entropy encoding unit 103 generates and outputs encoded data including the motion compensation prediction information.
- step S2102 the evaluation unit 111 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels, and obtains map information including the weights of the pixels in the block. Generate.
- step S2103 the subtraction unit 101 calculates a prediction residual indicating a difference in pixel units between the target image block and the predicted image.
- step S2104 the transform / quantization unit 102 generates a quantized transform coefficient by performing orthogonal transform and quantization on the prediction residual calculated by the subtracting unit 101.
- step S2105 the entropy encoding unit 103 performs entropy encoding on the quantized transform coefficient and outputs encoded data.
- step S2106 the inverse quantization / inverse transform unit 104 restores the prediction residual by performing inverse quantization and inverse orthogonal transform on the quantized transform coefficient, and generates a restored prediction residual.
- step S2107 the synthesizing unit 105 reconstructs the target image block by synthesizing the restored prediction residual with the predicted image in units of pixels, and generates a reconstructed image.
- the loop filter 107 controls the filter strength in the filter process in units of pixels based on the evaluation result (map information) by the evaluation unit 111. Specifically, as described above, the loop filter 107 weights the offset value that determines the filter strength in units of pixels. Also, information regarding the loop filter (such as offset and category information that provides the offset) is encoded as part of the encoded data by the entropy encoding unit 103, and the entropy encoding unit 103 is a code including information regarding the loop filter. Output data.
- step S2109 the loop filter 107 performs filter processing (sample adaptive offset processing) by adding the weighted offset value to the reconstructed image in units of pixels, and outputs the reconstructed image after the filter processing.
- filter processing sample adaptive offset processing
- step S2110 the frame memory 108 stores the reconstructed image after the filter processing in units of frames.
- FIG. 13 is a diagram illustrating a processing flow in the image decoding device 2 according to the second embodiment.
- step S2201 the entropy code decoding unit 200 decodes the encoded data and acquires information related to the quantized transform coefficient, motion vector information, and loop filter.
- step S2202 the motion compensation prediction unit 206 predicts the target image block by performing motion compensation prediction using a plurality of reference images based on the motion vector information, and generates a prediction image corresponding to the target image block.
- step S2203 the evaluation unit 208 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels, and obtains map information including the weight of each pixel in the block. Generate.
- step S2204 the inverse quantization / inverse transform unit 201 restores the prediction residual by performing inverse quantization and inverse orthogonal transform on the quantized transform coefficient, and generates a restored prediction residual.
- step S2205 the synthesizing unit 202 reconstructs the target image block by synthesizing the restored prediction residual with the predicted image in units of pixels, and generates a reconstructed image.
- step S2206 the loop filter 204 controls the filter strength in the filter process in units of pixels based on the evaluation result (map information) by the evaluation unit 208. Specifically, as described above, the loop filter 204 weights the offset value that determines the filter strength in units of pixels.
- step S2207 the loop filter 204 performs filter processing (sample adaptive offset processing) by adding the weighted offset value to the reconstructed image in units of pixels, and outputs the reconstructed image after the filter processing.
- filter processing sample adaptive offset processing
- step S2208 the frame memory 205 stores and outputs the reconstructed image after the filtering process in units of frames.
- the evaluation unit 111 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels. Then, the loop filter 107 controls the filter strength in the filter process in units of pixels based on the evaluation result by the evaluation unit 111.
- the evaluation unit 208 evaluates the prediction accuracy of the predicted image in units of pixels by calculating the similarity between the plurality of reference images in units of pixels. Then, the loop filter 204 controls the filter strength in the filter processing in units of pixels based on the evaluation result by the evaluation unit 208.
- the target image block is divided into N sub-blocks (N: an integer equal to or greater than 2).
- N an integer equal to or greater than 2.
- each sub-block is composed of m ⁇ n pixels, and at least one of m and n is an integer of 2 or more.
- the evaluation unit 111 calculates the average value Wk of the weight Wij for each kth sub-block (however, 0 ⁇ k ⁇ N) .
- the evaluation unit 111 outputs the weighted average value Wk calculated for each sub-block to the synthesis unit 105.
- the combining unit 105 controls the restored prediction residual to be combined with the predicted image for each sub-block using the weighted average value Wk.
- the synthesizing unit 105 uses the weighted average value Wk input from the evaluation unit 111 to weight the restored prediction residual input from the inverse transform unit 104b in units of subblocks, and after weighting
- the reconstructed image is generated by adding the reconstructed prediction residual to the predicted image in units of pixels.
- the image decoding device 2 performs similar processing.
- the evaluation unit 111 outputs the weighted average value Wk calculated for each sub-block to the loop filter 107.
- the loop filter 107 controls the filter strength in the filter processing for each sub-block using the weighted average value Wk. Specifically, the loop filter 107 weights the offset value used for the sample adaptive offset processing in units of sub-blocks, and adds the weighted offset value to the reconstructed image in units of pixels to perform filter processing (sample Adaptive offset processing).
- the image decoding device 2 performs similar processing.
- FIG. 16 is a diagram illustrating a configuration of the image encoding device 1 according to the third embodiment.
- the image encoding device 1 includes a block division unit 100, a subtraction unit 101, a conversion unit 102a, a quantization unit 102b, an entropy encoding unit 103, an inverse quantization unit 104a, An inverse transform unit 104b, a synthesis unit 105, an intra prediction unit 106, a loop filter 107, a frame memory 108, a motion compensation prediction unit 109, a switching unit 110, and an evaluation unit 111 are provided.
- the block dividing unit 100 divides an input image in units of frames (or pictures) into block-like small regions, and outputs the image blocks to the subtracting unit 101 (and the motion compensation prediction unit 109).
- the size of the image block is, for example, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, 8 ⁇ 8 pixels, or 4 ⁇ 4 pixels.
- An image block is a unit in which the image encoding device 1 performs encoding and a unit in which the image decoding device 2 performs decoding. Such an image block is referred to as a target image block.
- the subtracting unit 101 calculates a prediction residual indicating a difference in pixel units between the target image block input from the block dividing unit 100 and a predicted image (predicted image block) corresponding to the target image block. Specifically, the subtraction unit 101 calculates a prediction residual by subtracting each pixel value of the predicted image from each pixel value of the encoding target block, and outputs the calculated prediction residual to the conversion unit 102a. Note that the predicted image is input to the subtraction unit 101 from the intra prediction unit 106 or the motion compensation prediction unit 109 described later via the switching unit 110.
- the transform unit 102a and the quantization unit 102b constitute a transform / quantization unit 102 that performs orthogonal transform processing and quantization processing in units of blocks.
- the transform unit 102a performs orthogonal transform on the prediction residual input from the subtraction unit 101, calculates transform coefficients for each frequency component, and outputs the calculated transform coefficients to the quantization unit 102b.
- the orthogonal transform refers to, for example, discrete cosine transform (DCT), discrete sine transform (DST), Karhunen-Loeve Transform (KLT), and the like.
- the orthogonal transform is a process for transforming the residual signal in the pixel area into the frequency domain.
- the quantization unit 102b quantizes the transform coefficient input from the transform unit 102a using a quantization parameter (Qp) and a quantization matrix, and generates a quantized transform coefficient (quantized transform coefficient).
- the quantization parameter (Qp) is a parameter that is commonly applied to each transform coefficient in the block, and is a parameter that determines the roughness of quantization.
- the quantization matrix is a matrix having a quantization value at the time of quantizing each transform coefficient as an element.
- the quantization unit 102b outputs the quantization control information, the generated quantization transform coefficient information, and the like to the entropy encoding unit 103 and the inverse quantization unit 104a.
- the entropy encoding unit 103 performs entropy encoding on the quantized transform coefficient input from the quantization unit 102b, performs data compression to generate encoded data (bit stream), and converts the encoded data into an image code Output to the outside of the converter 1.
- Entropy coding includes a process called serialization that reads transform coefficients arranged in two dimensions in a predetermined scan order and transforms them into a one-dimensional transform coefficient sequence.
- the last significant coefficient (non-zero coefficient) in the predetermined scan order is set as the end position, and the transform coefficients up to this end position are efficiently encoded.
- the entropy encoding unit 103 receives information related to prediction from the intra prediction unit 106 and the motion compensation prediction unit 109, and receives information related to filter processing from the loop filter 107.
- the entropy encoding unit 103 also performs entropy encoding of these pieces of information.
- the inverse quantization unit 104a and the inverse transform unit 104b constitute an inverse quantization / inverse transform unit 104 that performs an inverse quantization process and an inverse orthogonal transform process in units of blocks.
- the inverse quantization unit 104a performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 102b. Specifically, the inverse quantization unit 104a restores the transform coefficient by inversely quantizing the quantized transform coefficient input from the quantization unit 102b using the quantization parameter (Qp) and the quantization matrix. Then, the restored transform coefficient is output to the inverse transform unit 104b.
- Qp quantization parameter
- the inverse transform unit 104b performs an inverse orthogonal transform process corresponding to the orthogonal transform process performed by the transform unit 102a. For example, when the transform unit 102a performs discrete cosine transform, the inverse transform unit 104b performs inverse discrete cosine transform. The inverse transform unit 104 b performs inverse orthogonal transform on the transform coefficient input from the inverse quantization unit 104 a to restore the prediction residual, and outputs the restored prediction residual that is the restored prediction residual to the synthesis unit 105. To do.
- the synthesizing unit 105 synthesizes the restored prediction residual input from the inverse transform unit 104b with the predicted image input from the switching unit 110 in units of pixels.
- the synthesizing unit 105 adds each pixel value of the restored prediction residual and each pixel value of the predicted image to reconstruct the target image block, and reconstructs the reconstructed image that is the reconstructed target image block into the intra prediction unit 106 and the loop. Output to the filter 107.
- the intra prediction unit 106 performs intra prediction using the reconstructed image input from the synthesis unit 105 to generate an intra prediction image, and outputs the intra prediction image to the switching unit 110. Also, the intra prediction unit 106 outputs information on the selected intra prediction mode and the like to the entropy encoding unit 103.
- the loop filter 107 performs filter processing as post-processing on the reconstructed image input from the synthesis unit 105 and outputs the reconstructed image after the filter processing to the frame memory 108. Further, the loop filter 107 outputs information related to the filter process to the entropy encoding unit 103.
- the filtering process includes a deblocking filtering process and a sample adaptive offset process.
- the frame memory 108 stores the reconstructed image input from the loop filter 107 in units of frames.
- the motion compensation prediction unit 109 performs inter prediction using one or a plurality of reconstructed images stored in the frame memory 108 as reference images. Specifically, the motion compensation prediction unit 109 calculates a motion vector by a technique such as block matching, generates a motion compensation prediction image based on the motion vector, and outputs the motion compensation prediction image to the switching unit 110. In addition, the motion compensation prediction unit 109 outputs information on the motion vector to the entropy encoding unit 103.
- the switching unit 110 switches between the intra prediction image input from the intra prediction unit 106 and the motion compensation prediction image input from the motion compensation prediction unit 109, and subtracts the prediction image (intra prediction image or motion compensation prediction image). Output to the unit 101 and the combining unit 105.
- the evaluation unit 111 evaluates the similarity between the plurality of reference images for each frequency component, and entropy-encodes the evaluation result information. Output to the unit 103.
- intra prediction for example, intra block copy mode
- the evaluation unit 111 uses the plurality of reference images.
- the similarity between a plurality of reference images is evaluated for each frequency component, and the evaluation result is output to the entropy encoding unit 103.
- the entropy encoding unit 103 rearranges and encodes the transform coefficients input from the quantization unit 102b based on the evaluation result by the evaluation unit 111. Details of the evaluation unit 111 and the entropy encoding unit 103 will be described later.
- FIG. 17 is a diagram illustrating a configuration of the image decoding device 2 according to the third embodiment.
- the image decoding apparatus 2 includes an entropy code decoding unit 200, an inverse quantization unit 201a, an inverse transform unit 201b, a synthesis unit 202, an intra prediction unit 203, a loop filter 204, a frame A memory 205, a motion compensation prediction unit 206, a switching unit 207, and an evaluation unit 208 are provided.
- the entropy code decoding unit 200 decodes the encoded data generated by the encoding device 1 and outputs the quantized transform coefficient to the inverse quantization unit 201a. In addition, the entropy code decoding unit 200 decodes encoded data, acquires information related to prediction (intra prediction and motion compensation prediction) and information related to filter processing, and stores information related to prediction to the intra prediction unit 203 and the motion compensated prediction unit. The information about the filter processing is output to the loop filter 204.
- the inverse quantization unit 201a and the inverse transform unit 201b constitute an inverse quantization / inverse transform unit 201 that performs an inverse quantization process and an inverse orthogonal transform process in units of blocks.
- the inverse quantization unit 201a performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 102b of the image encoding device 1.
- the inverse quantization unit 201a restores and restores the transform coefficient by inversely quantizing the quantized transform coefficient input from the entropy code decoding unit 200 using the quantization parameter (Qp) and the quantization matrix.
- the transform coefficient is output to the inverse transform unit 201b.
- the inverse transform unit 201b performs an inverse orthogonal transform process corresponding to the orthogonal transform process performed by the transform unit 102a of the image encoding device 1.
- the inverse transform unit 201b performs inverse orthogonal transform on the transform coefficient input from the inverse quantization unit 201a to restore the prediction residual, and outputs the restored prediction residual that is the restored prediction residual to the synthesis unit 202 To do.
- the synthesizing unit 202 reconstructs the original target image block by synthesizing the prediction residual input from the inverse transform unit 201b and the predicted image input from the switching unit 207 in units of pixels, and reconstructed image Is output to the intra prediction unit 203 and the loop filter 204.
- the intra prediction unit 203 refers to the reconstructed block image input from the synthesis unit 202, generates an intra prediction image by performing intra prediction according to the intra prediction information input from the entropy code decoding unit 200, and generates an intra prediction image. Is output to the switching unit 207.
- the loop filter 204 is similar to the filter processing performed by the loop filter 107 of the image encoding device 1 on the reconstructed image input from the synthesis unit 202 based on the filter processing information input from the entropy code decoding unit 200. Filter processing is performed, and the reconstructed image after the filter processing is output to the frame memory 205.
- the frame memory 205 stores the reconstructed image input from the loop filter 204 in units of frames.
- the frame memory 205 outputs the stored reconstructed image to the outside of the image decoding apparatus 2 in the display order in the same manner as the processing of the entropy encoding unit 103.
- the motion compensation prediction unit 206 performs motion compensation prediction (inter prediction) according to the motion vector information input from the entropy code decoding unit 200, using one or a plurality of reconstructed images stored in the frame memory 205 as reference images. As a result, a motion compensated predicted image is generated, and the motion compensated predicted image is output to the switching unit 207.
- inter prediction motion compensation prediction
- the switching unit 207 switches between the intra prediction image input from the intra prediction unit 203 and the motion compensated prediction image input from the motion compensation prediction unit 206, and synthesizes a prediction image (intra prediction image or motion compensation prediction image). To the unit 202.
- the evaluation unit 208 performs the same operation as the evaluation unit 111 of the image encoding device 1. Specifically, when the motion compensation prediction unit 206 performs motion compensation prediction using a plurality of reference images, the evaluation unit 208 evaluates the similarity between the plurality of reference images for each frequency component, and the evaluation result Information is output to the entropy code decoding unit 200.
- the entropy code decoding unit 200 decodes the encoded data, acquires transform coefficients for each frequency component, rearranges the transform coefficients based on the evaluation result by the evaluation unit 208, and outputs the rearranged coefficients. Details of the evaluation unit 208 and the entropy code decoding unit 200 will be described later.
- FIG. 3 is a diagram illustrating an example of motion compensation prediction.
- FIG. 4 is a diagram illustrating an example of a predicted image generated by motion compensation prediction.
- bi-prediction used in HEVC, particularly forward and backward prediction (bidirectional prediction) is used will be described.
- the motion compensation prediction refers to the previous and subsequent frames in time with respect to the target frame (current frame).
- the motion compensation prediction of the block in the image of the t frame is performed with reference to the t ⁇ 1 frame and the t + 1 frame.
- a portion (block) similar to the target image block is detected from the reference range set in the system from the reference frames of the t ⁇ 1 and t + 1 frames.
- Detected location is a reference image.
- Information indicating the relative position of the reference image with respect to the target image block is an arrow shown in the figure, which is called a motion vector.
- the motion vector information is encoded by entropy encoding together with the frame information of the reference image in the image encoding device 1.
- the image decoding device 2 detects a reference image based on the motion vector information generated by the image encoding device 1.
- the reference images 1 and 2 detected by motion compensation are similar partial images that are aligned in the reference frame with respect to the target image block.
- the image is similar to the encoding target image.
- the target image block includes a star pattern and a partial circle pattern.
- the reference image 1 includes a star pattern and an overall circle pattern.
- the reference image 2 includes a star pattern, but does not include a circle pattern.
- a prediction image is generated from the reference images 1 and 2.
- the prediction process averages partially similar reference images 1 and 2 that have different features, but generates an image with higher prediction accuracy having the features of each reference image. I can do it.
- a predicted image may be generated by using more advanced processing, for example, signal enhancement processing using a low-pass filter, a high-pass filter, or the like.
- the reference image 1 shown in the figure includes a circular pattern and the reference image 2 does not include a circular pattern, when the reference images 1 and 2 are averaged to generate a predicted image, the reference image 2 cannot be predicted. Can be reflected in the prediction.
- the signal of the circle pattern in the predicted image is halved compared to the reference image 1.
- the difference between the prediction image obtained from the reference images 1 and 2 and the target image block (encoding target image) is the prediction residual.
- the prediction residual shown in FIG. 4 a large difference occurs only in the edge shift portion of the star pattern and the shift portion (shaded portion) of the circle pattern, but the other portions are predicted accurately.
- the difference is reduced (the difference is not generated in the example of FIG. 4).
- the part where the difference does not occur is a part where the similarity between the reference image 1 and the reference image 2 is high, and the part where the high-precision prediction is performed. is there.
- a portion where a large difference is generated is a portion specific to each reference image, that is, a portion where the similarity between the reference image 1 and the reference image 2 is extremely low. Therefore, it can be seen that the portion where the similarity between the reference image 1 and the reference image 2 is extremely low has low reliability of prediction and is likely to cause a large difference (residual).
- the evaluation unit 111 evaluates the similarity between a plurality of reference images for each frequency component, and outputs evaluation result information to the entropy encoding unit 103.
- the entropy encoding unit 103 rearranges and encodes the transform coefficients input from the quantization unit 102b based on the evaluation result by the evaluation unit 111.
- frequency components with low similarity between a plurality of reference images can be regarded as having large power.
- a frequency component having a high degree of similarity between a plurality of reference images can be considered that the power is close to zero. Therefore, according to the rearrangement order of the transform coefficients determined by the evaluation unit 111, the entropy coding unit 103 rearranges the transform coefficients of frequency components with low similarity so as to concentrate (consolidate) the transform coefficients. Can be encoded automatically.
- FIG. 18 is a diagram illustrating an example of the configuration of the evaluation unit 111 in the image encoding device 1.
- the evaluation unit 111 includes a first conversion unit 111a, a second conversion unit 111b, a similarity calculation unit 111c, and a normalization unit 111d.
- the present invention aims to determine the coding order of coefficients based on the degree of similarity, and thus the evaluation unit 111 is not necessarily the normalization unit. 111d may not be provided.
- the first transform unit 111a calculates the first transform coefficient for each frequency component by performing orthogonal transform on the reference image 1 (first reference image) input from the motion compensation prediction unit 109, and calculates the calculated first transform coefficient.
- One conversion coefficient is output to the similarity calculation unit 111c.
- the second transform unit 111b performs orthogonal transform on the reference image 2 (second reference image) input from the motion compensation prediction unit 109, thereby calculating a second transform coefficient for each frequency component, and calculating the calculated second transform coefficient. 2 conversion coefficients are output to the similarity calculation unit 111c.
- the similarity calculation unit 111c calculates, for each frequency component, the similarity between the first conversion coefficient input from the first conversion unit 111a and the second conversion coefficient input from the second conversion unit 111b, and the calculated similarity Is output to the normalization unit 111d.
- the similarity for example, the absolute value of the difference value can be used. It can be said that the smaller the absolute value of the difference value is, the higher the similarity is, and the larger the absolute value of the difference value is, the lower the similarity is.
- the similarity calculation unit 111c may calculate a difference value after performing a filtering process on each reference image.
- the similarity calculation unit 111c may calculate a statistic such as a square error and use the statistic as the similarity. In the following, an example in which the absolute value of the difference value is used as the similarity will be described.
- the normalization unit 111d uses the absolute value of the difference value between the transform coefficients input from the similarity calculation unit 111c as the magnitude of the frequency component that maximizes the absolute value of the difference value within the block (that is, the difference within the block). Normalized by the absolute maximum value) and output.
- the normalized difference value is used as the importance for determining the coding order of the transform coefficients in the entropy coding unit 103. The smaller the absolute value between transform coefficients, the higher the degree of similarity and the higher the prediction accuracy. Therefore, the importance of encoding the transform coefficient of the prediction error signal is low.
- the entropy encoding unit 103 preferentially encodes the transform coefficient of the frequency component having high importance.
- the normalization unit 111d receives an input from the normalization unit 111d based on at least one of a quantization parameter (Qp) that determines the roughness of quantization and a quantization matrix to which a different quantization value is applied for each transform coefficient.
- Qp quantization parameter
- the normalized normalized difference value (importance) may be adjusted, and the adjusted importance may be output. Since the degree of degradation of the restoration prediction residual is higher as the quantization roughness is larger, the degree of degradation is considered by adjusting the normalized difference value based on the quantization parameter (Qp) or the quantization value of the quantization matrix. And the importance can be set.
- the importance Rij of each frequency component (ij) output by the evaluation unit 111 can be expressed as, for example, the following equation (4).
- Rij (abs (Xij-Yij) / maxD x Scale (Qp)) (4)
- Xij is a conversion coefficient of the frequency component ij of the reference image 1
- Yij is a conversion coefficient of the frequency component ij of the reference image 2
- abs is a function for obtaining an absolute value.
- the similarity calculation unit 111c outputs abs (Xij ⁇ Yij).
- maxD is the maximum value of the difference value abs (Xij ⁇ Yij) in the block.
- maxD it is necessary to obtain a difference value between transform coefficients for all frequency components in the block.
- the maximum value of an adjacent block that has already been encoded is substituted. For example, if there is more than that value, normalization of maxD may be performed by clipping with the maximum value used.
- maxD can be obtained from the quantization parameter (Qp) or the quantization value of the quantization matrix using a table that defines the correspondence between the quantization parameter (Qp) or the quantization value of the quantization matrix and maxD. Good.
- a fixed value defined in advance by specifications may be used as maxD.
- the normalization unit 111d outputs abs (Xij ⁇ Yij) / maxD.
- Scale (Qp) is a coefficient that is multiplied according to the quantization parameter (Qp) or the quantization value of the quantization matrix.
- Scale (Qp) is designed to approach 1.0 when the quantization value of Qp or the quantization matrix is large, and to approach 0 when the quantization value is small, and the degree thereof is adjusted by the system.
- a fixed value defined in advance by specifications may be used as Scale (Qp).
- Scale (QP) may be a fixed value designed according to the system such as 1.0.
- the normalization unit 111d outputs abs (Xij ⁇ Yij) / maxD ⁇ Scale (Qp) as the importance Rij.
- Clip (x, max, min) indicates a process of clipping at max when x exceeds max, and at min when x is below min.
- the importance Rij calculated in this way is a value in the range from 0 to 1.0. Basically, the importance Rij approaches 1.0 when the difference value between the transform coefficients of the frequency component ij is large (that is, the prediction accuracy is low), and is 0 when the difference value is small (that is, the prediction accuracy is high). Get closer to.
- the evaluation unit 111 outputs map information including the importance Rij of each frequency component ij in the block (hereinafter referred to as “importance map”) to the entropy encoding unit 103.
- the evaluation unit 111 performs evaluation (calculation of importance Rij) only when motion compensated prediction using a plurality of reference images is applied, and does not use other modes, such as unidirectional prediction or a plurality of reference images. In the intra prediction process, evaluation (calculation of importance Rij) is not performed, or 1.0 is uniformly set as importance Rij.
- the evaluation unit 208 in the image decoding device 2 is configured in the same manner as the evaluation unit 111 in the image encoding device 1. Specifically, the evaluation unit 208 in the image decoding device 2 includes a first conversion unit 208a, a second conversion unit 208b, a similarity calculation unit 208c, and a normalization unit 208d. The evaluation unit 208 in the image decoding device 2 outputs an importance map composed of the importance Rij of each frequency component ij in the block to the entropy code decoding unit 200.
- FIG. 19 is a diagram illustrating an example of the configuration of the entropy encoding unit 103.
- the entropy encoding unit 103 includes a sorting unit 103a, a serialization unit 103b, and an encoding unit 103c.
- the sort unit 103a and the serialization unit 103b constitute a rearrangement unit.
- the sorting unit 103a sorts the importance Rij in the importance map input from the evaluation unit 111 in descending order. Since the importance level Rij is two-dimensionally arranged in the importance level map, the sorting unit 103a serializes the importance level map in a predetermined scan order, for example, to obtain the importance level column R [i], and stores the index label i. To do. Then, the sorting unit 103a rearranges the index labels i in descending order of importance Rij in the importance sequence R [i], and outputs the index labels i rearranged in order of importance to the serialization unit 103b.
- the serialization unit 103b performs serialization processing that reads the transform coefficients input from the quantization unit 102b in a predetermined scan order and outputs the transform coefficient sequence to the encoding unit 103c. Since the transform coefficients input from the quantization unit 102b are two-dimensionally arranged, the serialization unit 103b, for example, serializes the two-dimensionally arranged transform coefficients in a predetermined scan order, thereby converting the transform coefficient sequence C [i]. And Here, the same scan order is used in the serialization unit 103b and the sorting unit 103a.
- the serialization unit 103b rearranges and outputs the transform coefficients in the transform coefficient sequence C [i] in descending order of importance based on the index label i input from the sorting unit 103a. That is, the serialization unit 103b performs serialization processing based on the result of the evaluation by the evaluation unit 111 so that the transform coefficients are included in the transform coefficient sequence in order from the frequency component having the low similarity between the transform coefficients. Thereby, significant coefficients (non-zero coefficients) can be collected.
- the serialization unit 103b determines the scan order so that the transform coefficients are scanned in descending order of importance, and performs a scan in the determined scan order, thereby outputting a transform coefficient sequence in which the transform coefficients are arranged in descending order of importance. May be.
- the encoding unit 103c encodes the transform coefficient in the transform coefficient sequence input from the serialization unit 103b and outputs encoded data.
- the encoding unit 103c encodes the transform coefficients up to the end position using the last significant coefficient of the transform coefficient sequence input from the serialization unit 103b as the end position. By collecting significant coefficients as described above, the number of transform coefficients up to the end position can be reduced, and the length of the transform coefficient sequence to be encoded can be shortened.
- the entropy encoding unit 103 performs rearrangement processing based on importance only when motion compensated prediction using a plurality of reference images is applied, and is important in other modes such as unidirectional prediction and intra prediction processing. It is not necessary to perform the sorting process according to the degree.
- FIG. 20 is a diagram illustrating an example of the configuration of the entropy code decoding unit 200.
- the entropy code decoding unit 200 includes a decoding unit 200a, a sorting unit 200b, and a deserialization unit 200c.
- the sort unit 200b and the deserialization unit 200c constitute a rearrangement unit.
- the decoding unit 200a decodes the encoded data generated by the image encoding device 1, acquires a transform coefficient sequence (quantized transform coefficient) and information related to prediction (intra prediction and motion compensation prediction), The transform coefficient sequence is output to the deserialization unit 200c, and information related to prediction is output to the intra prediction unit 203 and the motion compensation prediction unit 206.
- the sorting unit 200b sorts the importance Rij in the importance map input from the evaluation unit 208 in descending order. Since the importance level Rij is two-dimensionally arranged in the importance level map, the sorting unit 200b serializes the importance level map in a predetermined scan order, for example, to obtain the importance level column R [i], and stores the index label i. To do. Then, the sorting unit 200b rearranges the index labels i in descending order of importance Rij in the importance sequence R [i], the index label i rearranged in order of importance, and the coordinate value (frequency) corresponding to the index label i. The component ij) is output to the deserialization unit 200c.
- the deserialization unit 200c deserializes the transform coefficient sequence input from the decoding unit 200a based on the index label i and the coordinate value (frequency component ij) input from the sort unit 200b, and is arranged in two dimensions
- the transform coefficient is output to the inverse quantization unit 201a.
- the entropy code decoding unit 200 performs the reordering process based on the importance only when motion compensated prediction using a plurality of reference images is applied, and is important in other modes such as unidirectional prediction and intra prediction processing. It is not necessary to perform the sorting process according to the degree.
- FIG. 21 is a diagram illustrating a processing flow in the image encoding device 1 according to the third embodiment.
- operations related to the present invention will be mainly described, and descriptions of operations having a low degree of relationship with the present invention will be omitted.
- step S3101 the motion compensation prediction unit 109 predicts a target image block by performing motion compensation prediction using a plurality of reference images, and generates a predicted image corresponding to the target image block.
- step S3102 the evaluation unit 111 evaluates the similarity between a plurality of reference images for each frequency component, and generates an importance map indicating the importance of each frequency component in the block.
- step S3103 the subtraction unit 101 calculates a prediction residual indicating a difference in pixel units between the target image block and the predicted image.
- step S3104 the transform / quantization unit 102 generates a quantized transform coefficient by performing orthogonal transform and quantization on the prediction residual calculated by the subtraction unit 101.
- step S3105 the entropy encoding unit 103 uses the transform coefficient input from the transform / quantization unit 102 (quantization unit 102b) based on the evaluation result (importance map) by the evaluation unit 111 with high importance.
- the data are rearranged in the order (that is, the order of low similarity between transform coefficients) and output.
- step S3106 the entropy encoding unit 103 encodes the transform coefficients rearranged in order of importance by entropy encoding, and outputs encoded data.
- step S ⁇ b> 3107 the inverse quantization / inverse transformation unit 104 performs prediction quantization residual by performing inverse quantization and inverse orthogonal transformation on the transform coefficient input from the transformation / quantization unit 102 (quantization unit 102 b). Restore and generate a restored prediction residual.
- step S3108 the synthesizing unit 105 reconstructs the target image block by synthesizing the restored prediction residual with the predicted image in units of pixels, and generates a reconstructed image.
- step S3109 the loop filter 107 performs filter processing on the reconstructed image.
- step S3110 the frame memory 108 stores the reconstructed image after the filter processing in units of frames.
- FIG. 22 is a diagram illustrating a processing flow in the image decoding device 2 according to the third embodiment.
- operations related to the present invention will be mainly described, and descriptions of operations having a low degree of relationship with the present invention will be omitted.
- step S3201 the entropy code decoding unit 200 acquires motion vector information by decoding encoded data, and outputs the acquired motion vector information to the motion compensation prediction unit 206.
- step S3202 the motion compensation prediction unit 206 predicts the target image block by performing motion compensation prediction using a plurality of reference images based on the motion vector information, and generates a prediction image corresponding to the target image block.
- step S3203 the evaluation unit 208 calculates the similarity between a plurality of reference images for each frequency component, and generates an importance map indicating the importance of each frequency component in the block.
- step S3204 the entropy code decoding unit 200 decodes the encoded data to acquire a transform coefficient sequence, rearranges the acquired transform coefficient sequence, and performs inverse quantization and inverse transform on the transform coefficients arranged in two dimensions. Output to the unit 201.
- step S3205 the inverse quantization / inverse transform unit 201 restores the prediction residual by performing inverse quantization and inverse orthogonal transform on the transform coefficient (quantized transform coefficient), and obtains the restored prediction residual. Generate.
- step S3206 the synthesizing unit 202 reconstructs the target image block by synthesizing the restored prediction residual with the predicted image in units of pixels, and generates a reconstructed image.
- step S3207 the loop filter 204 performs filter processing on the reconstructed image.
- step S3208 the frame memory 205 stores and outputs the reconstructed image after the filter processing in units of frames.
- the evaluation unit 111 evaluates the similarity between a plurality of reference images for each frequency component, and outputs evaluation result information to the entropy encoding unit 103.
- the entropy encoding unit 103 rearranges and encodes the transform coefficients input from the quantization unit 102b based on the evaluation result by the evaluation unit 111. By rearranging and encoding so that the conversion coefficients of frequency components with low similarity are concentrated (combined), it is possible to efficiently encode the conversion coefficients and perform efficient entropy encoding. Efficiency can be improved.
- the evaluation unit 208 evaluates the similarity between a plurality of reference images for each frequency component, and outputs evaluation result information to the entropy code decoding unit 200.
- the entropy code decoding unit 200 decodes the encoded data, acquires transform coefficients for each frequency component, rearranges the transform coefficients based on the evaluation result by the evaluation unit 208, and outputs the rearranged coefficients. In this manner, by rearranging the transform coefficients based on the evaluation result by the evaluation unit 208, the entropy code decoding unit 200 is autonomous even if information specifying the details of the rearrangement is not transmitted from the image decoding device 1.
- the conversion coefficients can be rearranged. Therefore, it is not necessary to transmit information specifying the details of the rearrangement from the image decoding apparatus 1, and a decrease in encoding efficiency can be avoided.
- FIG. 23 is a diagram illustrating a modification example of the configuration of the evaluation unit 111 in the image encoding device 1.
- the evaluation unit 111A according to this modification includes a similarity calculation unit 111c, a conversion unit 111e, and a normalization unit 111d.
- the evaluation unit 111 does not necessarily include the normalization unit 111d.
- the similarity calculation unit 111c calculates the similarity between the reference image 1 (first reference image) and the reference image 2 (second reference image) input from the motion compensation prediction unit 109 in units of pixels, and calculates in units of pixels.
- the similarity is output to the conversion unit 111e.
- the similarity for example, the absolute value of the difference value can be used. It can be said that the smaller the absolute value, the higher the similarity, and the larger the absolute value, the lower the similarity.
- the similarity calculation unit 111c may calculate a difference value after performing a filtering process on each reference image.
- the similarity calculation unit 111c may calculate a statistic such as a square error and use the statistic as the similarity. In the following, an example in which the absolute value of the difference value is used as the similarity will be described.
- the similarity calculation unit 111c calculates a similarity for each frequency component by performing orthogonal transformation on the similarity (difference value) in units of pixels input from the similarity calculation unit 111c.
- the normalization unit 111d uses the frequency component difference value (transform coefficient) input from the similarity calculation unit 111c as the difference value of the frequency component having the maximum difference value in the block (that is, the difference value in the block). Normalize (maximum absolute value) and output.
- the normalization unit 111d receives an input from the normalization unit 111d based on at least one of a quantization parameter (Qp) that determines the roughness of quantization and a quantization matrix to which a different quantization value is applied for each transform coefficient.
- Qp quantization parameter
- the normalized normalized difference value (importance) may be adjusted and output.
- Rij abs (Dij) / maxD ⁇ Scale (Qp) (5)
- Dij is a conversion coefficient of the frequency component ij
- abs is a function for obtaining an absolute value.
- the conversion unit 111e outputs abs (Dij).
- maxD is the maximum value of the transform coefficient in the block. In order to obtain maxD, it is necessary to obtain transform coefficients for all frequency components in the block, but in order to omit this process, the maximum value of an adjacent block that has already been subjected to encoding processing may be substituted.
- maxD can be obtained from the quantization parameter (Qp) or the quantization value of the quantization matrix using a table that defines the correspondence between the quantization parameter (Qp) or the quantization value of the quantization matrix and maxD. Good.
- a fixed value defined in advance by specifications may be used as maxD.
- the normalization unit 111d outputs abs (Dij) / maxD.
- Scale (Qp) is the same as that in the third embodiment described above.
- the evaluation unit 111A generates an importance map including the importance Rij of each frequency component ij in the block, and outputs the generated importance map to the entropy encoding unit 103.
- the evaluation unit 111A according to the modified example since the number of orthogonal transform units can be reduced as compared with the evaluation unit 111 according to the third embodiment described above, the processing load can be reduced. In general, since the orthogonal transform used for video encoding is almost orthonormal, the evaluation unit 111A according to the modified example can obtain the same performance as the evaluation unit 111 according to the third embodiment.
- the evaluation unit 208A in the image decoding device 2 is configured in the same manner as the evaluation unit 111A in the image coding device 1. Specifically, the evaluation unit 208A in the image decoding device 2 includes a similarity calculation unit 208c, a conversion unit 208e, and a normalization unit 208d. The evaluation unit 208A in the image decoding device 2 outputs an importance map composed of the importance Rij of each frequency component ij in the block to the entropy code decoding unit 200.
- FIG. 14 is a diagram illustrating a configuration of the image encoding device 1 when the first embodiment and the second embodiment are used together.
- the evaluation unit 111 outputs the evaluation result (map information) to both the synthesis unit 105 and the loop filter 107.
- FIG. 15 is a diagram illustrating a configuration of the image decoding device 2 when the first embodiment and the second embodiment are used together.
- the evaluation unit 208 outputs the evaluation result (map information) to both the synthesis unit 202 and the loop filter 204.
- the entropy encoding unit 103 reads out all the transform coefficients arranged in two dimensions in order of importance and performs serialization processing.
- the conversion order arranged two-dimensionally may be incremented or decremented by a predetermined number depending on the importance.
- a zigzag scan such as that employed in MPEG2 can be used as the scan order of transform coefficients.
- HEVC see Non-Patent Document 1
- the rearrangement of the transform coefficients is performed in units called CG grouped for each 4 ⁇ 4 transform coefficient in the block. It is determined whether or not there is a non-zero coefficient in the CG. If there is a non-zero coefficient in the CG, the transform coefficient in the CG is serialized and encoded.
- the operation according to the third embodiment described above can also be applied to rearrangement of transform coefficients when reading transform coefficients in CG.
- the present invention can be applied to serialization for determining the reading order of CG, and can be applied to rearrangement of reading order by calculating the average of the similarity of orthogonal transform coefficients in CG and comparing the similarity for each CG. .
- inter prediction has been mainly described as motion compensation prediction.
- inter prediction a reference image in a frame different from the current frame is used for prediction of a target image block in the current frame.
- the present invention is not limited to motion compensation prediction, and can be applied to a plurality of reference blocks in a technique called intra-block copy, for example.
- intra-block copy a reference image in the same frame as the current frame is used for prediction of a target image block in the current frame.
- the specific example of the present invention described above may be provided by a program that causes a computer to execute each process performed by the image encoding device 1 and a program that causes a computer to execute each process performed by the image decoding device 2.
- the program may be recorded on a computer readable medium. If a computer-readable medium is used, a program can be installed in the computer.
- the computer-readable medium on which the program is recorded may be a non-transitory recording medium.
- the non-transitory recording medium is not particularly limited, but may be a recording medium such as a CD-ROM or a DVD-ROM.
- a circuit that executes each process performed by the image encoding device 1 may be integrated, and the image encoding device 1 may be configured as a semiconductor integrated circuit (chip set, SoC).
- a circuit that executes each process performed by the image decoding device 2 may be integrated, and the image decoding device 2 may be configured as a semiconductor integrated circuit (chip set, SoC).
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
第1実施形態に係る画像符号化装置及び画像復号装置について説明する。
図1は、第1実施形態に係る画像符号化装置1の構成を示す図である。図1に示すように、画像符号化装置1は、ブロック分割部100と、減算部101と、変換部102aと、量子化部102bと、エントロピー符号化部103と、逆量子化部104aと、逆変換部104bと、合成部105と、イントラ予測部106と、ループフィルタ107と、フレームメモリ108と、動き補償予測部109と、切替部110と、評価部111とを備える。
図2は、第1実施形態に係る画像復号装置2の構成を示す図である。図2に示すように、画像復号装置2は、エントロピー符号復号部200と、逆量子化部201aと、逆変換部201bと、合成部202と、イントラ予測部203と、ループフィルタ204と、フレームメモリ205と、動き補償予測部206と、切替部207と、評価部208とを備える。
図3は、動き補償予測の一例を示す図である。図4は、動き補償予測により生成される予測画像の一例を示す図である。動き補償予測のシンプルな例として、HEVCで用いられている双予測、特に前方向と後方向予測(両方向予測)を用いる場合について説明する。
画像符号化装置1において、評価部111は、複数の参照画像間の類似度を画素単位で算出することにより、予測画像の予測精度を画素単位で評価する。そして、合成部105は、評価部111による評価の結果に基づいて、予測画像と合成する復元予測残差を画素単位で制御する。
式(1)において、Xijは参照画像1の画素ijの画素値であり、Yijは参照画像2の画素ijの画素値であり、absは絶対値を得る関数である。図5に示す差分算出部111aでは、abs(Xij-Yij)を出力する。
式(2)において、Recijは再構成画像における画素ijの画素値であり、Dijは復元予測残差における画素ijの画素値であり、Wijはマップ情報における画素ijの重みであり、Pijは予測画像における画素ijの画素値である。
図7は、第1実施形態に係る画像符号化装置1における処理フローを示す図である。
図8は、第1実施形態に係る画像復号装置2における処理フローを示す図である。
画像符号化装置1において、評価部111は、複数の参照画像間の類似度を画素単位で算出することにより、予測画像の予測精度を画素単位で評価する。そして、合成部105は、評価部111による評価の結果に基づいて、予測画像と合成する復元予測残差を画素単位で制御する。
第2実施形態に係る画像符号化装置及び画像復号装置について、第1実施形態との相違点を主として説明する。第1実施形態では予測精度の評価結果を信号合成処理において利用していたが、第2実施形態では予測精度の評価結果をフィルタ処理において利用する。
図9は、第2実施形態に係る画像符号化装置1の構成を示す図である。図9に示すように、第2実施形態において、評価部111は、評価結果(マップ情報)をループフィルタ107に出力する。具体的には、評価部111は、第1実施形態と同様に、複数の参照画像間の類似度を画素単位で算出することにより、予測画像の予測精度を画素単位で評価する。
図10は、第2実施形態に係る画像復号装置2の構成を示す図である。図10に示すように、第2実施形態において、評価部208は、評価結果(マップ情報)をループフィルタ204に出力する。具体的には、評価部208は、第1実施形態と同様に、複数の参照画像間の類似度を画素単位で算出することにより、予測画像の予測精度を画素単位で評価する。
図11は、画像符号化装置1におけるループフィルタ107の構成の一例を示す図である。図11に示すように、ループフィルタ107は、重み付け部(乗算部)107aと、加算部107bとを備える。
式(3)において、Recij'はフィルタ処理後の再構成画像における画素ijの画素値であり、Recijはフィルタ処理前の再構成画像における画素ijの画素値であり、dijは画素ijに付与されるべきオフセット値であり、Wijはマップ情報における画素ijの重みである。
図12は、第2実施形態に係る画像符号化装置1における処理フローを示す図である。
図13は、第2実施形態に係る画像復号装置2における処理フローを示す図である。
画像符号化装置1において、評価部111は、複数の参照画像間の類似度を画素単位で算出することにより、予測画像の予測精度を画素単位で評価する。そして、ループフィルタ107は、評価部111による評価の結果に基づいて、フィルタ処理におけるフィルタ強度を画素単位で制御する。
上述した第1実施形態及び第2実施形態において、評価部111が、予測に用いる複数の参照画像間の類似度を1画素ごとに算出して予測画像の予測精度を1画素ごとに評価する一例を説明した。また、上述した第1実施形態において、合成部105が、評価部111による評価の結果に基づいて、予測画像と合成する復元予測残差を1画素ごとに制御する一例を説明した。また、上述した第2実施形態において、ループフィルタ107が、評価部111による評価の結果に基づいて、フィルタ処理におけるフィルタ強度を1画素ごとに制御する一例を説明した。
(3.1.画像符号化装置の構成)
図16は、第3実施形態に係る画像符号化装置1の構成を示す図である。図16に示すように、画像符号化装置1は、ブロック分割部100と、減算部101と、変換部102aと、量子化部102bと、エントロピー符号化部103と、逆量子化部104aと、逆変換部104bと、合成部105と、イントラ予測部106と、ループフィルタ107と、フレームメモリ108と、動き補償予測部109と、切替部110と、評価部111とを備える。
図17は、第3実施形態に係る画像復号装置2の構成を示す図である。図17に示すように、画像復号装置2は、エントロピー符号復号部200と、逆量子化部201aと、逆変換部201bと、合成部202と、イントラ予測部203と、ループフィルタ204と、フレームメモリ205と、動き補償予測部206と、切替部207と、評価部208とを備える。
図3は、動き補償予測の一例を示す図である。図4は、動き補償予測により生成される予測画像の一例を示す図である。動き補償予測のシンプルな例として、HEVCで用いられている双予測、特に前方向と後方向予測(両方向予測)を用いる場合について説明する。
図18は、画像符号化装置1における評価部111の構成の一例を示す図である。図18に示すように、評価部111は、第1変換部111aと、第2変換部111bと、類似度算出部111cと、正規化部111dとを備える。なお、評価部111が正規化部111dを備える一例を説明するが、本発明は類似度の大小にもとづく係数の符号化順を決定することが目的であるため、評価部111は必ずしも正規化部111dを備えていなくてもよい。
式(4)において、Xijは参照画像1の周波数成分ijの変換係数であり、Yijは参照画像2の周波数成分ijの変換係数であり、absは絶対値を得る関数である。類似度算出部111cは、abs(Xij-Yij)を出力する。
図19は、エントロピー符号化部103の構成の一例を示す図である。図19に示すように、エントロピー符号化部103は、ソート部103aと、シリアライズ部103bと、符号化部103cとを備える。ソート部103a及びシリアライズ部103bは、並び替え部を構成する。
図20は、エントロピー符号復号部200の構成の一例を示す図である。図20に示すように、エントロピー符号復号部200は、復号部200aと、ソート部200bと、デシリアライズ部200cとを備える。ソート部200b及びデシリアライズ部200cは、並び替え部を構成する。
図21は、第3実施形態に係る画像符号化装置1における処理フローを示す図である。ここでは、本発明に関連する動作を主として説明し、本発明との関連度の低い動作については説明を省略する。
図22は、第3実施形態に係る画像復号装置2における処理フローを示す図である。ここでは、本発明に関連する動作を主として説明し、本発明との関連度の低い動作については説明を省略する。
画像符号化装置1において、評価部111は、複数の参照画像間の類似度を周波数成分ごとに評価し、評価結果の情報をエントロピー符号化部103に出力する。エントロピー符号化部103は、評価部111による評価の結果に基づいて、量子化部102bから入力された変換係数を並び替えて符号化する。類似度の低い周波数成分の変換係数を集中させる(まとめる)よう並び替えて符号化することにより、変換係数を効率的に符号化し、効率的なエントロピー符号化を行うことが可能となるため、符号化効率を改善することができる。
図23は、画像符号化装置1における評価部111の構成の変更例を示す図である。図23に示すように、本変更例に係る評価部111Aは、類似度算出部111cと、変換部111eと、正規化部111dとを備える。なお、評価部111が正規化部111dを備える一例を説明するが、評価部111は必ずしも正規化部111dを備えていなくてもよい。
式(5)において、Dijは周波数成分ijの変換係数であり、absは絶対値を得る関数である。変換部111eは、abs(Dij)を出力する。
上述した第1実施形態及び第2実施形態を併用してもよい。図14は、第1実施形態及び第2実施形態を併用する場合の画像符号化装置1の構成を示す図である。図14に示すように、評価部111は、評価結果(マップ情報)を合成部105及びループフィルタ107の両方に出力する。図15は、第1実施形態及び第2実施形態を併用する場合の画像復号装置2の構成を示す図である。図15に示すように、評価部208は、評価結果(マップ情報)を合成部202及びループフィルタ204の両方に出力する。
Claims (23)
- 対象画像を符号化する画像符号化装置であって、
複数の参照画像を用いて予測を行うことにより、前記対象画像に対応する予測画像を生成する予測部と、
前記複数の参照画像間の類似度を算出することにより、前記予測画像の予測精度を評価する評価部と、を備える、画像符号化装置。 - 前記評価部は、前記複数の参照画像間の類似度を、1又は複数の画素からなる画像部分ごとに算出することにより、前記予測画像の予測精度を前記画像部分ごとに評価する、請求項1に記載の画像符号化装置。
- 前記対象画像と前記予測画像との間の画素単位での差分を示す予測残差に対して直交変換及び量子化を行う変換・量子化部と、
前記変換・量子化部から入力された量子化変換係数に対して逆量子化及び逆直交変換を行うことにより、前記予測残差を復元する逆量子化・逆変換部と、
前記逆量子化・逆変換部から入力された復元予測残差を画素単位で前記予測画像と合成することにより、前記対象画像を再構成する合成部と、をさらに備え、
前記合成部は、前記評価部による評価の結果に基づいて、前記予測画像と合成する前記復元予測残差を前記画像部分ごとに制御する、請求項2に記載の画像符号化装置。 - 前記合成部は、
前記予測画像と合成する前記復元予測残差に対して前記画像部分ごとに重み付けを行う重み付け部と、
前記重み付け後の前記復元予測残差を画素単位で前記予測画像に加算する加算部と、を含み、
前記評価部は、前記評価の結果に基づいて、前記重み付けに用いる重みを前記画像部分ごとに設定する、請求項3に記載の画像符号化装置。 - 前記対象画像と前記予測画像との間の画素単位での差分を示す予測残差に対して直交変換及び量子化を行う変換・量子化部と、
前記変換・量子化部から入力された量子化変換係数に対して逆量子化及び逆直交変換を行うことにより、前記予測残差を復元する逆量子化・逆変換部と、
前記逆量子化・逆変換部から入力された復元予測残差を画素単位で前記予測画像と合成することにより、前記対象画像を再構成する合成部と、
前記合成部から入力された再構成画像に対してフィルタ処理を行うループフィルタと、をさらに備え、
前記ループフィルタは、前記評価部による評価の結果に基づいて、前記フィルタ処理におけるフィルタ強度を前記画像部分ごとに制御する、請求項2に記載の画像符号化装置。 - 前記ループフィルタは、
前記フィルタ強度を定めるオフセット値に対して前記画像部分ごとに重み付けを行う重み付け部と、
前記重み付け後の前記オフセット値を画素単位で前記再構成画像に加算する加算部と、を含み、
前記評価部は、前記評価の結果に基づいて、前記重み付けに用いる重みを前記画像部分ごとに設定する、請求項5に記載の画像符号化装置。 - 前記評価部は、前記複数の参照画像間の類似度を1又は複数の周波数成分ごとに評価する、請求項1に記載の画像符号化装置。
- 前記対象画像と前記予測画像との間の画素単位での差分を示す予測残差に対して直交変換を行うことにより、周波数成分ごとに変換係数を算出する変換部と、
前記評価部による評価の結果に基づいて前記変換係数を並び替える並び替え部と、
前記並び替え部による並び替え後の前記変換係数を符号化する符号化部と、を備える、請求項7に記載の画像符号化装置。 - 前記評価部は、
前記複数の参照画像に含まれる第1参照画像に対して直交変換を行うことにより、周波数成分ごとに第1変換係数を算出する第1変換部と、
前記複数の参照画像に含まれる第2参照画像に対して直交変換を行うことにより、周波数成分ごとに第2変換係数を算出する第2変換部と、
前記第1変換係数と前記第2変換係数との類似度を1又は複数の周波数成分ごとに算出する類似度算出部と、を備える、請求項7又は8に記載の画像符号化装置。 - 前記評価部は、
前記複数の参照画像に含まれる第1及び第2参照画像の類似度を画素単位で算出する類似度算出部と、
前記類似度算出部により画素単位で算出された前記類似度に対して直交変換を行うことにより、周波数成分ごとに前記類似度を算出する変換部と、を備える、請求項7又は8に記載の画像符号化装置。 - 前記並び替え部は、2次元に配列された前記変換係数を所定のスキャン順で読み出して変換係数列を出力するシリアライズ処理を行い、
前記符号化部は、前記変換係数列のうち非ゼロ係数を符号化し、
前記並び替え部は、前記評価部による評価の結果に基づいて、前記類似度が所定の条件を満たす周波数成分に対応する前記変換係数が前記変換係数列に集中的に含まれるように前記シリアライズ処理を行う、請求項7乃至10のいずれか一項に記載の画像符号化装置。 - 対象画像を復号する画像復号装置であって、
複数の参照画像を用いて予測を行うことにより、前記対象画像に対応する予測画像を生成する予測部と、
前記複数の参照画像間の類似度を算出することにより、前記予測画像の予測精度を評価する評価部と、を備える、画像復号装置。 - 前記評価部は、前記複数の参照画像間の類似度を、1又は複数の画素からなる画像部分ごとに算出することにより、前記予測画像の予測精度を前記画像部分ごとに評価する、請求項12に記載の画像復号装置。
- 前記対象画像と前記予測画像との間の画素単位での差分を示す予測残差を画像符号化装置において直交変換及び量子化して得られた量子化変換係数に対して逆量子化及び逆直交変換を行うことにより、前記予測残差を復元する逆量子化・逆変換部と、
前記逆量子化・逆変換部から入力された復元予測残差を画素単位で前記予測画像と合成することにより、前記対象画像を再構成する合成部と、をさらに備え、
前記合成部は、前記評価部による評価の結果に基づいて、前記予測画像と合成する前記復元予測残差を前記画像部分ごとに制御する、請求項13に記載の画像復号装置。 - 前記合成部は、
前記予測画像と合成する前記復元予測残差に対して前記画像部分ごとに重み付けを行う重み付け部と、
前記重み付け後の前記復元予測残差を画素単位で前記予測画像に加算する加算部と、を含み、
前記評価部は、前記評価の結果に基づいて、前記重み付けに用いる重みを前記画像部分ごとに設定する、請求項14に記載の画像復号装置。 - 前記対象画像と前記予測画像との間の画素単位での差分を示す予測残差を画像符号化装置において直交変換及び量子化して得られた量子化変換係数に対して逆量子化及び逆直交変換を行うことにより、前記予測残差を復元する逆量子化・逆変換部と、
前記逆量子化・逆変換部から入力された復元予測残差を画素単位で前記予測画像と合成することにより、前記対象画像を再構成する合成部と、
前記合成部から入力された再構成画像に対してフィルタ処理を行うループフィルタと、をさらに備え、
前記ループフィルタは、前記評価部による評価の結果に基づいて、前記フィルタ処理におけるフィルタ強度を前記画像部分ごとに制御する、請求項13に記載の画像復号装置。 - 前記ループフィルタは、
前記フィルタ強度を定めるオフセット値に対して前記画像部分ごとに重み付けを行う重み付け部と、
前記重み付け後の前記オフセット値を画素単位で前記再構成画像に加算する加算部と、を含み、
前記評価部は、前記評価の結果に基づいて、前記重み付けに用いる重みを前記画像部分ごとに設定する、請求項16に記載の画像復号装置。 - 前記評価部は、前記複数の参照画像間の類似度を1又は複数の周波数成分ごとに評価する、請求項12に記載の画像復号装置。
- 前記符号化データを復号して周波数成分ごとに変換係数を取得する復号部と、
前記評価部による評価の結果に基づいて前記変換係数を並べ替えて出力する並び替え部と、を備える、請求項18に記載の画像復号装置。 - 前記評価部は、
前記複数の参照画像に含まれる第1参照画像に対して直交変換を行うことにより、周波数成分ごとに第1変換係数を算出する第1変換部と、
前記複数の参照画像に含まれる第2参照画像に対して直交変換を行うことにより、周波数成分ごとに第2変換係数を算出する第2変換部と、
前記第1変換係数と前記第2変換係数との類似度を1又は複数の周波数成分ごとに算出する類似度算出部と、を備える、請求項18又は19に記載の画像復号装置。 - 前記評価部は、
前記複数の参照画像に含まれる第1及び第2参照画像の類似度を画素単位で算出する類似度算出部と、
前記類似度算出部により画素単位で算出された前記類似度に対して直交変換を行うことにより、周波数成分ごとに前記類似度を算出する変換部と、を備える、請求項18又は19に記載の画像復号装置。 - コンピュータを請求項1乃至11のいずれか一項に記載の画像符号化装置として機能させるためのプログラム。
- コンピュータを請求項12乃至21のいずれか一項に記載の画像復号装置として機能させるためのプログラム。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19774775.1A EP3780598A4 (en) | 2018-03-29 | 2019-03-29 | PICTURE CODING DEVICE, PICTURE DECODING DEVICE, AND PROGRAM |
JP2020509368A JP6892555B2 (ja) | 2018-03-29 | 2019-03-29 | 画像符号化装置、画像復号装置、及びプログラム |
CN201980028417.XA CN112020859A (zh) | 2018-03-29 | 2019-03-29 | 图像编码装置、图像解码装置以及程序 |
KR1020227019455A KR20220085841A (ko) | 2018-03-29 | 2019-03-29 | 화상 부호화 장치, 화상 복호 장치 및 프로그램 |
KR1020207030463A KR102409138B1 (ko) | 2018-03-29 | 2019-03-29 | 화상 부호화 장치, 화상 복호 장치 및 프로그램 |
US17/035,208 US11394958B2 (en) | 2018-03-29 | 2020-09-28 | Image encoding device, image decoding device and program |
US17/841,461 US11818360B2 (en) | 2018-03-29 | 2022-06-15 | Image encoding device, image decoding device and program |
US18/482,140 US20240040128A1 (en) | 2018-03-29 | 2023-10-06 | Image encoding device, image decoding device and program |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018065886 | 2018-03-29 | ||
JP2018-065895 | 2018-03-29 | ||
JP2018-065886 | 2018-03-29 | ||
JP2018065895 | 2018-03-29 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/035,208 Continuation US11394958B2 (en) | 2018-03-29 | 2020-09-28 | Image encoding device, image decoding device and program |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019189899A1 true WO2019189899A1 (ja) | 2019-10-03 |
Family
ID=68058216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/014359 WO2019189899A1 (ja) | 2018-03-29 | 2019-03-29 | 画像符号化装置、画像復号装置、及びプログラム |
Country Status (6)
Country | Link |
---|---|
US (3) | US11394958B2 (ja) |
EP (1) | EP3780598A4 (ja) |
JP (2) | JP6892555B2 (ja) |
KR (2) | KR102409138B1 (ja) |
CN (1) | CN112020859A (ja) |
WO (1) | WO2019189899A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114731421A (zh) * | 2019-09-24 | 2022-07-08 | 弗劳恩霍夫应用研究促进协会 | 现代混合图像和视频编码方案中的多级残差编码 |
US11689743B2 (en) * | 2020-11-12 | 2023-06-27 | Tencent America LLC | Method and apparatus for video coding |
KR20220085283A (ko) | 2020-12-15 | 2022-06-22 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
CN112905829A (zh) * | 2021-03-25 | 2021-06-04 | 王芳 | 一种跨模态人工智能信息处理系统及检索方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010010942A1 (ja) * | 2008-07-25 | 2010-01-28 | ソニー株式会社 | 画像処理装置および方法 |
WO2011080807A1 (ja) * | 2009-12-28 | 2011-07-07 | 富士通株式会社 | 動画像符号化装置および動画像復号装置 |
WO2011080806A1 (ja) * | 2009-12-28 | 2011-07-07 | 富士通株式会社 | 動画像符号化装置および動画像復号装置 |
JP2018065886A (ja) | 2016-10-17 | 2018-04-26 | 国立大学法人山口大学 | 含硫黄樹脂 |
JP2018065895A (ja) | 2016-10-17 | 2018-04-26 | 西工業株式会社 | 可塑剤抽出装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000059785A (ja) * | 1998-08-06 | 2000-02-25 | Hitachi Ltd | 予測復号装置 |
KR100597402B1 (ko) * | 2003-12-01 | 2006-07-06 | 삼성전자주식회사 | 스케일러블 비디오 코딩 및 디코딩 방법, 이를 위한 장치 |
KR20130034566A (ko) * | 2011-09-28 | 2013-04-05 | 한국전자통신연구원 | 제한된 오프셋 보상 및 루프 필터를 기반으로 하는 영상 부호화 및 복호화 방법 및 그 장치 |
TWI577181B (zh) * | 2011-12-28 | 2017-04-01 | Jvc Kenwood Corp | Dynamic video coding device, dynamic image coding method and dynamic image coding program |
JP6012014B2 (ja) * | 2012-03-30 | 2016-10-25 | サン パテント トラスト | 画像符号化方法および画像復号方法 |
KR101373704B1 (ko) * | 2012-05-29 | 2014-03-14 | 주식회사 코아로직 | 적응적 가중치 예측을 이용한 영상 처리 방법 |
KR102480191B1 (ko) | 2016-05-13 | 2022-12-21 | 브이아이디 스케일, 인크. | 비디오 코딩을 위한 일반화된 다중-가설 예측 시스템 및 방법 |
US11082708B2 (en) * | 2018-01-08 | 2021-08-03 | Qualcomm Incorporated | Multiple-model local illumination compensation |
WO2019189900A1 (ja) * | 2018-03-29 | 2019-10-03 | 日本放送協会 | 画像符号化装置、画像復号装置、及びプログラム |
JP2021520710A (ja) * | 2018-04-06 | 2021-08-19 | ヴィド スケール インコーポレイテッド | 簡易化された勾配導出による双方向オプティカルフロー方法 |
JP7022731B2 (ja) | 2019-11-12 | 2022-02-18 | Kddi株式会社 | 多数のアンテナを選択的に使用する制御装置、制御方法、及びプログラム。 |
-
2019
- 2019-03-29 WO PCT/JP2019/014359 patent/WO2019189899A1/ja active Application Filing
- 2019-03-29 KR KR1020207030463A patent/KR102409138B1/ko active IP Right Grant
- 2019-03-29 KR KR1020227019455A patent/KR20220085841A/ko not_active Application Discontinuation
- 2019-03-29 EP EP19774775.1A patent/EP3780598A4/en not_active Ceased
- 2019-03-29 CN CN201980028417.XA patent/CN112020859A/zh active Pending
- 2019-03-29 JP JP2020509368A patent/JP6892555B2/ja active Active
-
2020
- 2020-09-28 US US17/035,208 patent/US11394958B2/en active Active
-
2021
- 2021-05-27 JP JP2021089573A patent/JP7203149B2/ja active Active
-
2022
- 2022-06-15 US US17/841,461 patent/US11818360B2/en active Active
-
2023
- 2023-10-06 US US18/482,140 patent/US20240040128A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010010942A1 (ja) * | 2008-07-25 | 2010-01-28 | ソニー株式会社 | 画像処理装置および方法 |
WO2011080807A1 (ja) * | 2009-12-28 | 2011-07-07 | 富士通株式会社 | 動画像符号化装置および動画像復号装置 |
WO2011080806A1 (ja) * | 2009-12-28 | 2011-07-07 | 富士通株式会社 | 動画像符号化装置および動画像復号装置 |
JP2018065886A (ja) | 2016-10-17 | 2018-04-26 | 国立大学法人山口大学 | 含硫黄樹脂 |
JP2018065895A (ja) | 2016-10-17 | 2018-04-26 | 西工業株式会社 | 可塑剤抽出装置 |
Non-Patent Citations (1)
Title |
---|
IWAMURA, SHUNSUKE ET AL.: "Description of SDR and HDR video coding technology proposal by NHK and SHARP", 10. JVET MEETING; 10-4-2018 - 20-4-2018; SAN DIEGO; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET-J0027, 2 April 2018 (2018-04-02), San Diego, US, pages 1 - 10, XP030151195 * |
Also Published As
Publication number | Publication date |
---|---|
CN112020859A (zh) | 2020-12-01 |
US11394958B2 (en) | 2022-07-19 |
US20220321877A1 (en) | 2022-10-06 |
EP3780598A1 (en) | 2021-02-17 |
JPWO2019189899A1 (ja) | 2021-02-12 |
US11818360B2 (en) | 2023-11-14 |
JP2021141604A (ja) | 2021-09-16 |
JP7203149B2 (ja) | 2023-01-12 |
US20240040128A1 (en) | 2024-02-01 |
JP6892555B2 (ja) | 2021-06-23 |
KR20200136443A (ko) | 2020-12-07 |
KR102409138B1 (ko) | 2022-06-16 |
EP3780598A4 (en) | 2022-01-26 |
KR20220085841A (ko) | 2022-06-22 |
US20210014481A1 (en) | 2021-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7203149B2 (ja) | 画像符号化装置、画像復号装置、及びプログラム | |
US20070237236A1 (en) | Estimating sample-domain distortion in the transform domain with rounding compensation | |
JP7092920B2 (ja) | 画像復号装置及びプログラム | |
US20070160298A1 (en) | Image encoder, image decoder, image encoding method, and image decoding method | |
JP2015164349A (ja) | ビデオの画像コーディング及びイントラコーディングのための暗黙の係数予測及び走査適合化を提供するビデオコーダー | |
JP2024087082A (ja) | 画像符号化装置、画像復号装置、及びプログラム | |
JP2024133699A (ja) | 画像復号装置及び画像復号方法 | |
JP6402520B2 (ja) | 符号化装置、方法、プログラム及び機器 | |
JP7291471B2 (ja) | 画像符号化装置、画像復号装置、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19774775 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020509368 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20207030463 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2019774775 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2019774775 Country of ref document: EP Effective date: 20201029 |