WO2021251400A1 - Decoding device and program - Google Patents

Decoding device and program Download PDF

Info

Publication number
WO2021251400A1
WO2021251400A1 PCT/JP2021/021816 JP2021021816W WO2021251400A1 WO 2021251400 A1 WO2021251400 A1 WO 2021251400A1 JP 2021021816 W JP2021021816 W JP 2021021816W WO 2021251400 A1 WO2021251400 A1 WO 2021251400A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
filter
unit
control unit
blocks
Prior art date
Application number
PCT/JP2021/021816
Other languages
French (fr)
Japanese (ja)
Inventor
俊輔 岩村
慎平 根本
雄一 近藤
和久 井口
敦郎 市ヶ谷
Original Assignee
日本放送協会
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本放送協会 filed Critical 日本放送協会
Priority to JP2022530592A priority Critical patent/JPWO2021251400A1/ja
Publication of WO2021251400A1 publication Critical patent/WO2021251400A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Definitions

  • the present invention relates to a decoding device and a program.
  • HEVC High Efficiency Video Coding
  • VVC Very Video Coding
  • Deblocking filter is adopted.
  • the boundary filter strength (boundary filtering strength) of the deblocking filter is controlled according to whether or not a non-zero conversion coefficient exists in at least one of the two adjacent blocks. This is because the energy of the predicted residual is distributed over the entire block due to the inverse transformation of the non-zero transformation coefficient, so that there is a high possibility that a discontinuity will occur at the boundary between the two blocks.
  • the decoding device is a decoding device that decodes a block obtained by dividing an original image, and is an entropy decoding unit that outputs a conversion coefficient corresponding to the block by decoding a coded stream. And the inverse quantization / inverse conversion unit that restores the predicted residual corresponding to the block by performing the inverse quantization processing and the inverse conversion processing on the conversion coefficient, and the restored predicted residual and the block. Filtering is performed on the boundary of a pair of blocks consisting of a synthesis unit that restores the block by synthesizing the predicted block obtained by predicting the above, the restored block, and the restored block adjacent to the block.
  • a filter control unit for controlling the boundary filter strength of the deblocking filter based on whether or not it is encoded is provided.
  • the program according to the second aspect causes the computer to function as the decoding device according to the first aspect.
  • FIG. It is a figure which shows the structure of the coding apparatus which concerns on embodiment. It is a figure for demonstrating the operation of the deblocking filter which concerns on embodiment. It is a figure which shows the structure of the decoding apparatus which concerns on embodiment. It is a figure which shows the operation example of the filter control part which concerns on embodiment. It is a figure which shows the operation example of the filter control part which concerns on change example 2.
  • FIG. It is a figure which shows the structure of the coding apparatus which concerns on modification 3. It is a figure which shows the structure of the decoding apparatus which concerns on modification 3.
  • the color space (RGB space) of the predicted residual is converted to the YCgCo space, and the predicted residual after the color space conversion is converted.
  • -A technique called adaptive color conversion (ACT: Adaptive Color Transfer) that performs coding processing such as entropy coding processing is adopted (see Non-Patent Document 1).
  • the coding device can control whether or not to apply the ACT for each coded block, and outputs the ACT application flag for each coded block as a stream.
  • the decoding device restores the predicted residual by performing entropy decoding / inverse conversion processing, etc. on the block encoded using ACT, and reverses the restored color space (YCgCo space) of the predicted residual to the RGB space. Convert.
  • the decoding device when the decoding device has a non-zero conversion coefficient in at least one of two adjacent blocks, the decoding device applies a deblocking filter to the boundary between the two blocks. On the other hand, if there is no non-zero conversion coefficient in both blocks of two adjacent blocks, it is possible not to apply the deblocking filter to the boundary between the two blocks.
  • the predicted residual is restored from the conversion coefficient by the inverse conversion process, and then the color space of the predicted residual is inversely converted from the YCgCo space to the RGB space by the color space inverse conversion. Therefore, when a non-zero conversion coefficient exists in a block of a certain color component, the non-zero conversion coefficient affects the block of another color component at the time of color space inverse transformation.
  • an object of the present invention is to provide a decoding device and a program that suppresses deterioration of image quality.
  • the coding device and the decoding device according to the embodiment will be described with reference to the drawings.
  • the coding device and the decoding device according to the embodiment encode and decode a moving image represented by MPEG, respectively.
  • MPEG moving image represented by MPEG
  • the same or similar parts are designated by the same or similar reference numerals.
  • FIG. 1 is a diagram showing a configuration of a coding device 1 according to the present embodiment.
  • the coding apparatus 1 includes a block dividing unit 100, a residual generation unit 110, a switching unit 111, a color space conversion unit 112, a conversion / quantization unit 120, and an entropy coding unit. It has 130, an inverse quantization / inverse conversion unit 140, a switching unit 143, a color space inverse conversion unit 144, a synthesis unit 150, a deblocking filter 160, a memory 170, and a prediction unit 180.
  • the block division unit 100 divides the original image, which is an input image for each frame (or picture) constituting the moving image, into a plurality of image blocks, and outputs the image block obtained by the division to the residual generation unit 110.
  • the size of the image block is, for example, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, 8 ⁇ 8 pixels, 4 ⁇ 4 pixels, or the like.
  • the shape of the image block is not limited to a square and may be a rectangle (non-square).
  • the image block is a unit in which the coding device 1 performs a coding process (that is, a block to be coded) and a unit in which the decoding device performs a decoding process (that is, a block to be decoded).
  • Such an image block may be called a CU (Coding Unit).
  • the input image may be an RGB signal and the chroma format may be 4: 4: 4.
  • the RGB space is an example of the first color space.
  • the "R” component corresponds to the first component
  • the "G” component corresponds to the second component
  • the "B” component corresponds to the third component.
  • the block division unit 100 outputs a block by performing block division for each of the R component, the G component, and the B component constituting the image. In the following description of the coding device, when each color component is not distinguished, it is simply referred to as a coded block.
  • the residual generation unit 110 calculates a predicted residual representing a difference (error) between the coded block output by the block dividing unit 100 and the predicted block obtained by predicting the coded block by the prediction unit 180. .. Specifically, the residual generation unit 110 calculates the predicted residual by subtracting each pixel value of the predicted block from each pixel value of the coded block, and outputs the calculated predicted residual to the switching unit 111. do. In the present embodiment, the residual generation unit 110 generates a predicted residual of each color component by the difference between the coded block of each color component and the predicted block of each color component.
  • the switching unit 111 outputs the predicted residual of each color component output by the residual generation unit 110 to either the conversion / quantization unit 120 or the color space conversion unit 112.
  • the switching unit 111 outputs the predicted residual to the conversion / quantization unit 120 when the color space conversion processing (ACT processing) is not performed, and outputs the predicted residual to the color space conversion unit 112 when the ACT processing is performed. ..
  • the color space conversion unit 112 performs ACT processing on the predicted residuals of each color component, and outputs the predicted residuals after the ACT processing to the conversion / quantization unit 120.
  • the color space conversion unit 112 generates a new predicted residual by performing the following conversion calculation on the R component, the G component, and the B component of the predicted residual of the coded block.
  • YCgCo space is an example of a second color space.
  • the switching unit 111 and the color space conversion unit 112 can control whether or not to perform color conversion processing for each coded block.
  • the entropy coding unit 130 signals in the bit stream a flag (ACT application flag) indicating whether or not the color conversion process has been performed on the coded block.
  • the ACT process in the color space conversion unit 112 may generate a predicted residual composed of new color components by addition / subtraction / multiplication / division / shift processing for each color component. Also, the ACT process does not have to be a transformation that affects all color components. For example, the color space conversion unit 112 maintains the first component unchanged, sets the average value of the second component and the third component as the new second component, and sets the difference between the second component and the third component. An ACT process of using a new third component may be applied.
  • the conversion / quantization unit 120 performs conversion processing and quantization processing in block units.
  • the conversion / quantization unit 120 includes a conversion unit 121 and a quantization unit 122.
  • the conversion unit 121 performs conversion processing on the predicted residual (referred to as predicted residual regardless of whether or not the ACT processing is applied) output by the switching unit 111 or the color space conversion unit 112, and calculates the conversion coefficient.
  • the calculated conversion coefficient is output to the quantization unit 122.
  • the conversion unit 121 generates a conversion coefficient for each color component by performing a conversion process on the predicted residual of each color component in block units.
  • the conversion process may be frequency conversion such as DCT, DST, and discrete wavelet conversion. Further, the conversion unit 121 outputs information regarding the conversion process to the entropy coding unit 130.
  • the conversion process includes conversion skip without conversion process, which is adopted in HEVC and VVC standard draft.
  • the conversion coefficient is set by scaling the predicted residual without performing the horizontal and vertical conversion processing, but the conversion skip according to the present embodiment is a conversion to which the conversion processing is applied only to the horizontal. Also includes conversions that apply conversion processing only to vertical and vertical.
  • the conversion unit 121 may perform a secondary conversion process in which the conversion process is further applied to the conversion coefficient obtained by the conversion process. Further, the secondary conversion process may be applied only to a part of the area of the conversion coefficient.
  • the quantization unit 122 quantizes the conversion coefficient output from the conversion unit 121 using the quantization parameter and the scaling list, and outputs the quantized conversion coefficient to the entropy coding unit 130 and the inverse quantization / inverse conversion unit 140. do. Further, the quantization unit 122 outputs information regarding the quantization process (specifically, information on the quantization parameters and the scaling list used in the quantization process) to the entropy coding unit 130 and the inverse quantization unit 141. ..
  • the entropy coding unit 130 performs entropy coding on the quantization conversion coefficient output by the quantization unit 122, performs data compression to generate a bit stream (encoded data), and outputs the bit stream to the decoding side. do.
  • a Huffman code Context-based Adaptive Binary Arithmetic Coding
  • CABAC Context-based Adaptive Binary Arithmetic Coding
  • the entropy coding unit 130 includes information on the conversion process input from the conversion unit 121 in the bitstream and signals it to the decoding side, and includes information on the prediction process input from the prediction unit 180 in the bitstream. Signaling to the decryption side.
  • the entropy coding unit 130 includes a color space conversion flag indicating whether or not ACT is applied in the bit stream for each coded block and signals it to the decoding side.
  • a color space conversion flag is also called an ACT application flag.
  • the ACT application flag When the ACT application flag is on (“1”), it indicates that the ACT is applied to the corresponding coded block.
  • the ACT application flag When the ACT application flag is off (“0”), it indicates that ACT is not applied to the corresponding coded block.
  • the ACT non-applicable flag may be used instead of the ACT application flag. In that case, when the ACT non-application flag is on (“1”), it indicates that ACT is not applied to the corresponding coded block.
  • the ACT non-application flag When the ACT non-application flag is off (“0”), it indicates that ACT is applied to the corresponding coded block.
  • the inverse quantization / inverse transformation unit 140 performs inverse quantization processing and inverse transformation processing in block units.
  • the inverse quantization / inverse transformation unit 140 has an inverse quantization unit 141 and an inverse transformation unit 142.
  • the inverse quantization unit 141 performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 122. Specifically, the inverse quantization unit 141 restores and restores the conversion coefficient by inversely quantizing the quantization conversion coefficient output by the quantization unit 122 using the quantization parameter (Qp) and the scaling list. The converted conversion coefficient is output to the inverse conversion unit 142.
  • the reverse conversion unit 142 performs the reverse conversion process corresponding to the conversion process performed by the conversion unit 121. For example, when the conversion unit 121 performs the discrete cosine transform, the inverse transform unit 142 performs the inverse discrete cosine transform.
  • the inverse transformation unit 142 performs an inverse transformation process on the conversion coefficient output by the inverse quantization unit 141 to restore the predicted residual, and outputs the restored predicted residual, which is the restored predicted residual, to the switching unit 143. ..
  • the switching unit 143 outputs the restoration prediction residual of each color component output by the inverse conversion unit 142 to either the synthesis unit 150 or the color space inverse conversion unit 144.
  • the switching unit 143 outputs the restored predicted residual to the synthesis unit 150 for the block to which the ACT is applied, and outputs the restored predicted residual to the color space inverse conversion unit 144 for the block to which the ACT is not applied.
  • the color space reverse conversion unit 144 performs color space reverse conversion processing (reverse ACT processing), which is the reverse processing of the ACT processing performed by the color space conversion unit 112, and outputs the predicted residual after the reverse ACT processing to the synthesis unit 150. .. Specifically, the inverse transformation from the YCgCo space to the RGB space is performed by performing the following inverse transformation calculation using the Y component, the Cg component, and the Co component of the predicted residual after restoration.
  • the synthesizing unit 150 synthesizes the restored prediction residual output by the inverse transformation unit 142 or the color space inverse transformation unit 144 with the prediction block output by the prediction unit 180 in pixel units.
  • the synthesizing unit 150 adds each pixel value of the restoration prediction residual and each pixel value of the prediction block to restore (reconstruct) the coded block, and outputs the restored block to the deblocking filter 160.
  • the restored block may be called a reconstructed block.
  • the deblocking filter 160 performs a filter process on the restored block output by the synthesis unit 150, and outputs the restored block after the filter process to the memory 170.
  • the filter control unit 161 controls the deblocking filter 160. Details of the deblocking filter 160 and the filter control unit 161 will be described later.
  • the memory 170 stores the restored blocks after the filtering process output by the deblocking filter 160, and stores the restored blocks as restored images in frame units.
  • the memory 170 outputs the stored restored block or restored image to the prediction unit 180.
  • the prediction unit 180 performs prediction processing in block units.
  • the prediction unit 180 generates a prediction block for each color component by performing prediction processing such as intra prediction and inter prediction for the coded block.
  • the prediction unit 180 includes an inter prediction unit 181, an intra prediction unit 182, and a switching unit 183.
  • the inter-prediction unit 181 performs inter-prediction using the correlation between frames. Specifically, the inter-prediction unit 181 uses the restored image stored in the memory 170 as a reference image, calculates a motion vector by a method such as block matching, predicts the block to be encoded, and predicts the inter-prediction block. Is generated, and the generated inter-prediction block is output to the switching unit 183.
  • the inter-prediction unit 181 selects the optimum inter-prediction method from among inter-prediction using a plurality of reference images (typically bi-prediction) and inter-prediction using one reference image (one-way prediction). Select and perform inter-prediction using the selected inter-prediction method.
  • the inter-prediction unit 181 outputs information (motion vector and the like) related to the inter-prediction to the entropy coding unit 130.
  • the intra prediction unit 182 performs intra prediction using the spatial correlation in the frame. Specifically, the intra prediction unit 182 generates an intra prediction block by referring to the restored pixels in the vicinity of the coded target block among the restored images stored in the memory 170, and the generated intra prediction block. Is output to the switching unit 183. The intra prediction unit 182 selects an intra prediction mode to be applied to the coded target block from the plurality of intra prediction modes, and predicts the coded target block using the selected intra prediction mode.
  • the switching unit 183 switches between the inter prediction block output by the inter prediction unit 181 and the intra prediction block output by the intra prediction unit 182, and outputs one of the prediction blocks to the residual generation unit 110 and the synthesis unit 150.
  • the deblocking filter 160 performs filtering processing on the block boundary of two blocks consisting of a restored block (first block) and a restored block (second block) adjacent to the restored block, and each after filtering processing is performed.
  • the restored block is output to the memory 170.
  • the filter processing is a processing for reducing signal deterioration caused by processing in block units, and is a filtering processing for smoothing a signal gap at a block boundary between two adjacent blocks.
  • the filter control unit 161 controls the deblocking filter 160. Specifically, the filter control unit 161 controls the boundary filter strength (Bs: Boundary strength) indicating whether or not to perform the filter processing on the block boundary of the block pair, and the filter strength of the deblocking filter 160.
  • the boundary filter strength Bs refers to a parameter for determining whether or not to apply the filtering process and the type of the filtering process.
  • the control of whether or not the filter processing is performed can be regarded as the control of whether the boundary filter strength Bs is 1 or more or zero.
  • FIG. 2 is a diagram for explaining the operation of the deblocking filter 160 according to the present embodiment.
  • the deblocking filter 160 performs filter processing on the block boundary of each block of 8 ⁇ 8 pixels. Further, the deblocking filter 160 performs filter processing in units of 4 rows or 4 columns.
  • the blocks P and Q shown in FIG. 2 show an example in which the deblocking filter 160 is one unit of the filter processing and the block size is 4 ⁇ 4 pixels.
  • Each of the blocks P and Q may be referred to as a subblock.
  • the block Q is a restored block corresponding to the coded block
  • the block P is a restored block adjacent to the block Q.
  • the filter control unit 161 determines the boundary filter strength Bs based on Table 1 below.
  • the value of the boundary filter strength Bs is either 0, 1, or 2.
  • the filter control unit 161 sets the Bs value to 2 when the intra prediction is applied to at least one of the blocks P and Q.
  • the filter control unit 161 Bs.
  • the value is 1, and in other cases, the Bs value is 0.
  • the absolute value of the difference between the motion vectors of blocks P and Q is equal to or greater than the threshold value (for example, 1 pixel).
  • At least one of blocks P and Q contains a significant conversion factor (ie, a non-zero conversion factor).
  • the filter control unit 161 controls the deblocking filter 160 so that the deblocking filter processing is not performed when the value of the boundary filter strength Bs is 0.
  • the vertical block boundary shown in FIG. 2 will be described as an example.
  • the filter control unit 161 may control the deblocking filter 160 so as to perform the deblocking filter processing when the following equation (1) is satisfied.
  • the filter control unit 161 may apply a strong filter when all of the following conditional expressions (2) to (7) are satisfied, and may apply a weak filter in other cases. good.
  • the values of the threshold values ⁇ and t C change according to the average value Q av of the quantization parameters of the adjacent blocks P and Q.
  • FIG. 3 is a diagram showing a configuration of a decoding device 2 according to the present embodiment.
  • the decoding device 2 includes an entropy decoding unit 200, an inverse quantization / inverse conversion unit 210, a switching unit 215, a color space inverse conversion unit 216, a synthesis unit 220, and a deblocking filter 230. And a memory 240 and a prediction unit 250.
  • the entropy decoding unit 200 decodes the coded data (bitstream), acquires the quantization conversion coefficient corresponding to the decoding target block, and outputs the acquired quantization conversion coefficient to the inverse quantization / inverse conversion unit 210. Further, the entropy decoding unit 200 acquires information on the conversion process and the quantization process, and outputs the information on the conversion process and the quantization process to the inverse quantization / inverse conversion unit 210. Further, the entropy decoding unit 200 acquires information on the prediction process and outputs the information on the prediction process to the prediction unit 250. The entropy decoding unit 200 acquires the color space conversion flag for each decoding target block, and outputs the acquired color space conversion flag to the switching unit 215 and the filter control unit 231.
  • the inverse quantization / inverse transformation unit 210 performs inverse quantization processing and inverse transformation processing in block units.
  • the inverse quantization / inverse conversion unit 210 has an inverse quantization unit 211 and an inverse conversion unit 212.
  • the inverse quantization unit 211 performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 122 of the coding apparatus 1.
  • the dequantization unit 211 restores and restores the conversion coefficient of the block to be decoded by dequantizing the quantization conversion coefficient output by the entropy decoding unit 200 using the quantization parameter (Qp) and the scaling list.
  • the converted conversion coefficient is output to the inverse conversion unit 212.
  • the reverse conversion unit 212 performs reverse conversion processing corresponding to the conversion processing performed by the conversion unit 121 of the coding device 1.
  • the inverse transformation unit 212 performs an inverse transformation process on the conversion coefficient output by the inverse quantization unit 211 to restore the predicted residual, and outputs the restored predicted residual to the switching unit 215.
  • the switching unit 215 outputs the predicted residual of each color component output by the inverse conversion unit 212 to either the synthesis unit 220 or the color space inverse conversion unit 216 based on the color space conversion flag.
  • the switching unit 111 outputs the predicted residual to the conversion / quantization unit 120 for the block to which the color space inverse transformation processing (ACT) is applied, and the color space inverse transformation of the predicted residual for the block to which the ACT is applied. Output to unit 216.
  • ACT color space inverse transformation processing
  • the color space reverse conversion unit 216 performs color space reverse conversion processing (reverse ACT processing), which is the reverse processing of the ACT processing performed by the color space conversion unit 112 of the coding apparatus 1, and synthesizes the predicted residual after the reverse ACT processing. Output to unit 220. Specifically, the color space inverse transformation unit 216 performs the following inverse transformation calculation using the Y component, Cg component, and Co component of the predicted residual after restoration.
  • reverse ACT processing color space reverse conversion processing
  • the color space inverse transformation unit 216 performs the following inverse transformation calculation using the Y component, Cg component, and Co component of the predicted residual after restoration.
  • the synthesizing unit 220 decodes (reconstructs) the original block by synthesizing the prediction residual output by the switching unit 215 or the color space inverse conversion unit 216 and the prediction block output by the prediction unit 250 on a pixel-by-pixel basis. Then, the restored block is output to the deblocking filter 230.
  • the deblocking filter 230 performs a filter process on the restored block output by the synthesis unit 220, and outputs the restored block after the filter process to the memory 240. Specifically, the deblocking filter 230 filters the block boundary of two blocks including the restored block (first block) and the restored block (second block) adjacent to the restored block. Each restored block after filtering is output to the memory 240.
  • the function of the deblocking filter 230 is the same as the function of the deblocking filter 160 of the coding device 1.
  • the filter control unit 231 controls the deblocking filter 230.
  • the filter control unit 231 controls the deblocking filter 230.
  • the filter control unit 231 controls the boundary filter strength (Bs: Boundary strength) indicating whether or not to perform the filter processing on the block boundary of the block pair, and the filter strength of the deblocking filter 230.
  • the function of the filter control unit 231 is the same as the function of the filter control unit 161 of the coding device 1.
  • the function of the filter control unit 231 determines the boundary filter strength Bs based on Table 1 above.
  • the filter control unit 231 is a boundary of the deblocking filter 230 based on whether or not at least one of the adjacent blocks P and Q is encoded by using adaptive color conversion (ACT).
  • ACT adaptive color conversion
  • the entropy decoding unit 200 acquires a flag (color space conversion flag) indicating whether or not the code is encoded by using the adaptive color conversion for each of the block P and the block Q.
  • the filter control unit 231 controls the boundary filter intensity Bs of the deblocking filter 230 based on the color space conversion flags for each of the block P and the block Q.
  • the filter control unit 231 controls the boundary filter intensity Bs so as to perform the filtering process by the deblocking filter 230 (that is, the boundary).
  • Filter strength Bs 1 is set).
  • the filter control unit 231 encodes at least one of the block P and the block Q using the adaptive color conversion even when the non-zero conversion coefficient does not exist in both the block P and the block Q. If so, the boundary filter strength Bs is controlled so as to perform the filtering process by the deblocking filter 230.
  • the memory 240 stores the restored blocks output by the compositing unit 220, and stores the restored blocks as restored images in frame units.
  • the memory 240 outputs the restored block or the restored image to the prediction unit 250. Further, the memory 240 outputs the restored image in frame units to the outside of the decoding device 2.
  • the prediction unit 250 makes predictions for each color component in block units.
  • the prediction unit 250 includes an inter-prediction unit 251, an intra-prediction unit 252, and a switching unit 253.
  • the inter-prediction unit 251 performs inter-prediction using the correlation between frames. Specifically, the inter-prediction unit 251 encodes the restored image stored in the memory 240 as a reference image based on the information related to the inter-prediction (for example, motion vector information) output by the entropy decoding unit 200. The target block is predicted to generate an inter-prediction block, and the generated inter-prediction block is output to the switching unit 253.
  • the inter-prediction unit 251 performs inter-prediction using the correlation between frames. Specifically, the inter-prediction unit 251 encodes the restored image stored in the memory 240 as a reference image based on the information related to the inter-prediction (for example, motion vector information) output by the entropy decoding unit 200.
  • the target block is predicted to generate an inter-prediction block, and the generated inter-prediction block is output to the switching unit 253.
  • the intra prediction unit 252 performs intra prediction using the spatial correlation in the frame. Specifically, the intra prediction unit 252 uses an intra prediction mode corresponding to information related to the intra prediction output by the entropy decoding unit 200 (for example, intra prediction mode information), and the restored image stored in the memory 240. An intra prediction block is generated with reference to the restored pixels around the coded block, and the generated intra prediction block is output to the switching unit 253.
  • an intra prediction mode corresponding to information related to the intra prediction output by the entropy decoding unit 200 (for example, intra prediction mode information)
  • An intra prediction block is generated with reference to the restored pixels around the coded block, and the generated intra prediction block is output to the switching unit 253.
  • the switching unit 253 switches between the inter prediction block output by the inter prediction unit 251 and the intra prediction block output by the intra prediction unit 252, and outputs one of the prediction blocks to the synthesis unit 220.
  • the decoding device 2 has the entropy decoding unit 200 that outputs the conversion coefficient corresponding to the block P by decoding the coded stream, and the conversion coefficient output by the entropy decoding unit 200.
  • the inverse quantization / inverse transformation unit 210 that restores the predicted residual corresponding to the block P (first block) by performing the inverse quantization processing and the inverse transformation processing, and the restored predicted residual and the block P are predicted. Filtering is performed on the boundary between the synthesizing unit 220 that restores the block P by synthesizing the predicted blocks obtained in the above process, the restored block P, and the restored block Q (second block) adjacent to the block P.
  • Filter control that controls the boundary filter strength Bs of the deblocking filter 230 based on whether at least one of the deblocking filter 230 and the block P and the block Q is encoded by the adaptive color transformation (ACT). It has a portion 231 and.
  • the predicted residual is restored from the conversion coefficient by the inverse conversion process, and then the color space of the predicted residual is inversely converted from the YCgCo space to the RGB space by the color space inverse conversion (inverse ACT).
  • inverse ACT color space inverse conversion
  • the filter control unit 231 not only controls the boundary filter strength Bs of the deblocking filter 230 based on the presence or absence of a non-zero conversion coefficient, but also considers whether or not the ACT is applied to the deblocking filter 230. Boundary filter strength Bs is controlled. As a result, the boundary filter strength Bs of the deblocking filter 230 can be appropriately controlled, so that deterioration of image quality can be suppressed even when ACT is applied.
  • FIG. 4 is a diagram showing an operation example of the filter control unit 231 according to the present embodiment. The order of determination shown in FIG. 4 is an example, and the order of determination may be changed.
  • step S1 the filter control unit 231 determines whether or not the intra prediction is applied to at least one of the block pairs consisting of the blocks P and Q.
  • step S3 the filter control unit 231 determines whether or not the difference between the motion vectors of the target block pairs is equal to or greater than the threshold value.
  • step S5 the filter control unit 231 determines whether the number of motion vectors of the block pairs or the reference image is different.
  • the filter control unit 231 on the decoding side determines whether or not at least one block of the block pair (block P and block Q) contains a non-zero conversion coefficient based on the flag signaled from the coding device 1. You may.
  • the entropy coding unit 130 of the coding device 1 includes a flag (tu_coded_flag) indicating whether or not a non-zero conversion coefficient is included in the coding stream for each block. For example, the entropy coding unit 130 sets the flag (tu_coded_flag) to "1" for a block containing a non-zero conversion coefficient, and sets the flag (tu_coded_flag) to "0" for a block containing no non-zero conversion coefficient. ..
  • the entropy decoding unit 200 of the decoding device 2 acquires a flag (tu_coded_flag) for each block, and outputs the acquired flag (tu_coded_flag) to the filter control unit 231.
  • the filter control unit 231 interprets that the block whose flag (tu_coded_flag) is "1" does not include the non-zero conversion coefficient. Then, the filter control unit 231 sets the boundary filter strength Bs of the deblocking filter 230 as shown in Table 2 below.
  • the deblocking filter 230 is controlled so as to perform the blocking filter processing.
  • the deblocking filter 230 is controlled to do so.
  • the filter control unit 231 changes the tu_coded_flag corresponding to the block based on whether or not the block is encoded by using ACT, and controls the boundary filter strength Bs of the deblocking filter 230 based on the tu_coded_flag. do.
  • Such a change process of tu_coded_flag may be executed by the color space inverse conversion unit 216. In this case, at least a part of the filter control unit 231 may be incorporated in the color space inverse conversion unit 216.
  • the filter control unit 231 changes tu_coded_flag to indicate that the block contains a non-zero conversion factor when the block is coded using ACT. That is, when the block is encoded by using the ACT, the filter control unit 231 has a tu_y_coded_flag corresponding to the block of the first color component, a tu_cb_coded_flag corresponding to the block of the second color component, and a third color. "1" is set for each of the tu_cr_coded_flag corresponding to the block of the component.
  • FIG. 5 is a diagram showing the operation of the filter control unit 231 according to this modified example.
  • step S11 the filter control unit 231 determines whether or not the block corresponding to the ACT application flag is encoded by using the ACT based on the ACT application flag output by the entropy decoding unit 200. Is determined. If the block is not coded using ACT (step S11: NO), the process ends without changing the tu_coded_flag (tu_y_coded_flag, tu_kb_coded_flag, and tu_cr_coded_flag).
  • step S12 the filter control unit 231 sets “1” for tu_coded_flag (tu_y_coded_flag, tu_cb_coded_flag, and tu_cr_coded_flag). That is, the filter control unit 231 changes tu_coded_flag so that the block includes a non-zero conversion coefficient.
  • the filter control unit 231 sets the boundary filter strength Bs of the deblocking filter 230 according to Table 3.
  • the filter control unit 231 changes the value of tu_coded_flag while maintaining the original value (“1” or “0”) of tu_coded_flag, and then writes it back to the original value in the subsequent stage of the deblocking filter process. May be good.
  • the boundary filter strength Bs of the deblocking filter 230 is controlled based on the predicted residual after the inverse transformation processing, not on the conversion coefficient.
  • the boundary filter intensity Bs of the deblocking filter 230 is set based on the predicted residual after the effect. Can be controlled appropriately.
  • the filter control unit 161 and the filter control unit 231 set the boundary filter strength Bs of the deblocking filter 230 based on Table 4 below.
  • FIG. 6 is a diagram showing a configuration of a coding device 1 according to this modified example.
  • the filter control unit 161 is input with the same predicted residual as the predicted residual (restored predicted residual) input to the synthesis unit 150.
  • the predicted residual after the inverse ACT is input to the filter control unit 161.
  • FIG. 7 is a diagram showing the configuration of the decoding device 2 according to this modified example.
  • the same predicted residual as the predicted residual (restored predicted residual) input to the synthesis unit 220 is input to the filter control unit 231.
  • the predicted residual after the inverse ACT is input to the filter control unit 231.
  • JCCR is a coefficient coding mode for color difference components (see Non-Patent Document 1).
  • the coding apparatus 1 utilizes the correlation of the predicted residuals of the first color difference component (Cb component) and the second color difference component (Cr component) to obtain the predicted residual of the first color difference component and the second.
  • One joint predicted residual is generated from the predicted residual of the color difference component.
  • the coding apparatus 1 generates a joint predicted residual by synthesizing the predicted residual of the second color difference component with the predicted residual of the first color difference component. Then, the coding apparatus 1 performs conversion processing, quantization processing, and entropy coding processing on the generated joint predicted residuals and transmits the generated joint prediction residuals.
  • the decoding device 2 reconstructs the predicted residual of the first color difference component and the predicted residual of the second color difference component from the transmitted joint predicted residual. In this way, the coding efficiency is improved by transmitting only one congruent predicted residual for the two color difference components.
  • the deblocking filter device is a deblocking filter (160, 230) that performs a filtering process on the boundary between the first reconstructed block (block P) and the second reconstructed block (block Q). And JCCR in which at least one of the first reconstructed block (block P) and the second reconstructed block (block Q) generates one congruent predicted residual from the respective predicted residuals of the Cb color difference component and the Cr color difference component. It is provided with a filter control unit (161, 231) for controlling the boundary filter strength Bs of the deblocking filter (160, 230) based on whether or not it is encoded using (Joint coding of chroma residual).
  • the filter control unit (161, 231) is a deblocking filter (160,) when at least one of the first reconstruction block (block P) and the second reconstruction block (block Q) is encoded using JCCR.
  • the boundary filter strength Bs may be controlled so as to perform the filtering process according to 230).
  • the filter control unit (161, 231) performs the first reconstruction even when the non-zero conversion coefficient does not exist in both the first reconstruction block (block P) and the second reconstruction block (block Q).
  • the boundary filter strength is to be filtered by the deblocking filter (160, 230). Bs may be controlled.
  • the entropy decoding unit 200 of the decoding device 2 sets a flag indicating whether or not it is encoded by using JCCR in the first reconstruction block (block P) and the second reconstruction block (block Q). You may get each one.
  • the filter control unit 231 may control the boundary filter strength Bs of the deblocking filter 230 based on the flags for each of the first reconstruction block (block P) and the second reconstruction block (block Q). For example, the filter control unit 231 filters the deblocking filter 230 when the flag of at least one of the first reconstruction block (block P) and the second reconstruction block (block Q) is “1”.
  • the boundary filter strength Bs may be controlled so as to perform the above.
  • the entropy decoding unit 200 of the decoding device 2 has tu_coded_flag indicating whether or not it includes a non-zero conversion coefficient in the first reconstruction block (block P) and the second reconstruction block (block Q), respectively. You may get more about.
  • the filter control unit 231 may further control the boundary filter strength Bs of the deblocking filter 230 based on the tu_coded_flag for each of the first reconstruction block (block P) and the second reconstruction block (block Q). ..
  • the filter control unit 231 performs the filter processing by the deblocking filter 230.
  • the boundary filter strength Bs may be controlled as such.
  • a program for causing a computer to execute each process performed by the above-mentioned coding device 1 may be provided. Further, a program for causing the computer to execute each process performed by the decoding device 2 may be provided.
  • the program may be recorded on a computer-readable medium.
  • Computer-readable media can be used to install programs on a computer.
  • the computer-readable medium on which the program is recorded may be a non-transient recording medium.
  • the non-transient recording medium is not particularly limited, but may be, for example, a recording medium such as a CD-ROM or a DVD-ROM.
  • a circuit that executes each process performed by the coding device 1 may be integrated, and the coding device 1 may be configured by a semiconductor integrated circuit (chipset, SoC).
  • a circuit that executes each process performed by the decoding device 2 may be integrated, and the decoding device 2 may be configured by a semiconductor integrated circuit (chipset, SoC).

Abstract

Provided is a decoding device for decoding a block obtained by dividing an original image, the decoding device comprising: an entropy decoding unit for outputting a conversion coefficient corresponding to the block by decoding an encoded stream; an inverse quantization/inverse conversion unit for recovering a prediction residual corresponding to the block by performing an inverse quantization process and an inverse conversion process on the conversion coefficient; a synthesizing unit for recovering the block by synthesizing the recovered prediction residual and a predicted block obtained by predicting the block; a deblocking filter for performing a filter process with respect to a boundary of a pair of blocks comprising the recovered block and a previously recovered block adjacent to the block; and a filter control unit for controlling the boundary filtering strength of the deblocking filter on the basis of whether at least one of the pair of blocks is encoded using joint coding of chroma residual (JCCR) where one combined prediction residual is generated from the prediction residual of each of a Cb color difference component and a Cr color difference component.

Description

復号装置及びプログラムDecoding device and program
 本発明は、復号装置及びプログラムに関する。 The present invention relates to a decoding device and a program.
 HEVC(High Efficiency Video Coding)、及び次世代の符号化方式であるVVC(Versatile Video Coding)では、ループ内フィルタとして、ブロック単位で符号化処理を行うときのブロックの境界部分の歪みを抑制するためのデブロッキングフィルタが採用されている。デブロッキングフィルタの制御では、隣接する2つのブロックのうち少なくとも一方のブロックに非ゼロの変換係数が存在するか否かに応じて、デブロッキングフィルタの境界フィルタ強度(boundary filtering strength)を制御する。これは、非ゼロの変換係数の逆変換により、予測残差のエネルギーがブロック全体に分布するため、両ブロックの境界に不連続性が生じる可能性が高いためである。 In HEVC (High Efficiency Video Coding) and VVC (Versatile Video Coding), which is a next-generation coding method, as an in-loop filter, in order to suppress distortion at the boundary of blocks when coding processing is performed on a block-by-block basis. Deblocking filter is adopted. In the control of the deblocking filter, the boundary filter strength (boundary filtering strength) of the deblocking filter is controlled according to whether or not a non-zero conversion coefficient exists in at least one of the two adjacent blocks. This is because the energy of the predicted residual is distributed over the entire block due to the inverse transformation of the non-zero transformation coefficient, so that there is a high possibility that a discontinuity will occur at the boundary between the two blocks.
 第1の態様に係る復号装置は、原画像を分割して得たブロックを復号する復号装置であって、符号化ストリームを復号することで、前記ブロックに対応する変換係数を出力するエントロピー復号部と、前記変換係数に対して逆量子化処理及び逆変換処理を行うことで、前記ブロックに対応する予測残差を復元する逆量子化・逆変換部と、前記復元した予測残差と前記ブロックを予測して得た予測ブロックとを合成することで前記ブロックを復元する合成部と、前記復元したブロックと、前記ブロックに隣接する復元済ブロックとからなる一対のブロックの境界に対するフィルタ処理を行うデブロッキングフィルタと、前記一対のブロックの少なくとも一方のブロックが、Cb色差成分及びCr色差成分のそれぞれの予測残差から1つの合同予測残差を生成するJCCR(Joint coding of chroma residual)を用いて符号化されているか否かに基づいて、前記デブロッキングフィルタの境界フィルタ強度を制御するフィルタ制御部と、を備える。 The decoding device according to the first aspect is a decoding device that decodes a block obtained by dividing an original image, and is an entropy decoding unit that outputs a conversion coefficient corresponding to the block by decoding a coded stream. And the inverse quantization / inverse conversion unit that restores the predicted residual corresponding to the block by performing the inverse quantization processing and the inverse conversion processing on the conversion coefficient, and the restored predicted residual and the block. Filtering is performed on the boundary of a pair of blocks consisting of a synthesis unit that restores the block by synthesizing the predicted block obtained by predicting the above, the restored block, and the restored block adjacent to the block. Using a deblocking filter and JCCR (Joint coding of chroma resin) in which at least one block of the pair of blocks generates one joint predicted residual from the predicted residuals of the Cb color difference component and the Cr color difference component, respectively. A filter control unit for controlling the boundary filter strength of the deblocking filter based on whether or not it is encoded is provided.
 第2の態様に係るプログラムは、コンピュータを第1の態様に係る復号装置として機能させる。 The program according to the second aspect causes the computer to function as the decoding device according to the first aspect.
実施形態に係る符号化装置の構成を示す図である。It is a figure which shows the structure of the coding apparatus which concerns on embodiment. 実施形態に係るデブロッキングフィルタの動作を説明するための図である。It is a figure for demonstrating the operation of the deblocking filter which concerns on embodiment. 実施形態に係る復号装置の構成を示す図である。It is a figure which shows the structure of the decoding apparatus which concerns on embodiment. 実施形態に係るフィルタ制御部の動作例を示す図である。It is a figure which shows the operation example of the filter control part which concerns on embodiment. 変更例2に係るフィルタ制御部の動作例を示す図である。It is a figure which shows the operation example of the filter control part which concerns on change example 2. FIG. 変更例3に係る符号化装置の構成を示す図である。It is a figure which shows the structure of the coding apparatus which concerns on modification 3. 変更例3に係る復号装置の構成を示す図である。It is a figure which shows the structure of the decoding apparatus which concerns on modification 3.
 VVC規格案では、入力映像のクロマフォーマットが4:4:4である場合、予測残差の色空間(RGB空間)をYCgCo空間に変換し、色空間変換後の予測残差に対して変換処理・エントロピー符号化処理等の符号化処理を行う適応色変換(ACT:Adaptive Colour Transform)と呼ばれる技術が採用されている(非特許文献1参照)。符号化装置は、符号化対象ブロックごとにACTを適用するか否かを制御可能であり、符号化対象ブロックごとにACT適用フラグをストリーム出力する。復号装置は、ACTを用いて符号化されたブロックに対してエントロピー復号・逆変換処理等を行って予測残差を復元し、復元した予測残差の色空間(YCgCo空間)をRGB空間に逆変換する。 In the draft VVC standard, when the chroma format of the input video is 4: 4: 4, the color space (RGB space) of the predicted residual is converted to the YCgCo space, and the predicted residual after the color space conversion is converted. -A technique called adaptive color conversion (ACT: Adaptive Color Transfer) that performs coding processing such as entropy coding processing is adopted (see Non-Patent Document 1). The coding device can control whether or not to apply the ACT for each coded block, and outputs the ACT application flag for each coded block as a stream. The decoding device restores the predicted residual by performing entropy decoding / inverse conversion processing, etc. on the block encoded using ACT, and reverses the restored color space (YCgCo space) of the predicted residual to the RGB space. Convert.
 上述した従来の技術では、復号装置は、隣接する2つのブロックのうち少なくとも一方のブロックに非ゼロの変換係数が存在する場合、当該2つのブロックの境界にデブロッキングフィルタを適用する。一方、隣接する2つのブロックの両ブロックに非ゼロの変換係数が存在しない場合、当該2つのブロックの境界にデブロッキングフィルタを適用しないことも可能である。 In the conventional technique described above, when the decoding device has a non-zero conversion coefficient in at least one of two adjacent blocks, the decoding device applies a deblocking filter to the boundary between the two blocks. On the other hand, if there is no non-zero conversion coefficient in both blocks of two adjacent blocks, it is possible not to apply the deblocking filter to the boundary between the two blocks.
 しかしながら、ACTが適用されたブロックについては、逆変換処理により変換係数から予測残差が復元された後、色空間逆変換により予測残差の色空間がYCgCo空間からRGB空間に逆変換される。このため、ある色成分のブロックに非ゼロの変換係数が存在する場合、色空間逆変換の際に当該非ゼロの変換係数が他の色成分のブロックに影響を与えることになる。 However, for the block to which the ACT is applied, the predicted residual is restored from the conversion coefficient by the inverse conversion process, and then the color space of the predicted residual is inversely converted from the YCgCo space to the RGB space by the color space inverse conversion. Therefore, when a non-zero conversion coefficient exists in a block of a certain color component, the non-zero conversion coefficient affects the block of another color component at the time of color space inverse transformation.
 よって、ACTを用いて符号化されたブロックに対して、非ゼロの変換係数の有無に基づくデブロッキングフィルタ制御を適用すると、デブロッキングフィルタの境界フィルタ強度を適切に制御できずに画質の劣化を引き起こす懸念がある。 Therefore, if deblocking filter control based on the presence or absence of a non-zero conversion coefficient is applied to a block encoded using ACT, the boundary filter strength of the deblocking filter cannot be appropriately controlled and the image quality deteriorates. There is a concern that it will cause.
 他の符号化ツールである予測残差合同符号化(Joint coding of chroma residual:JCCR)が適用される場合も、上記と同様な問題が生じ得る。 The same problem as described above may occur when another coding tool, predicted residual joint coding (Joint coding of chroma error: JCCR), is applied.
 そこで、本発明は、画質の劣化を抑制する復号装置及びプログラムを提供することを目的とする。 Therefore, an object of the present invention is to provide a decoding device and a program that suppresses deterioration of image quality.
 図面を参照して、実施形態に係る符号化装置及び復号装置について説明する。実施形態に係る符号化装置及び復号装置は、MPEGに代表される動画像の符号化及び復号をそれぞれ行う。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。 The coding device and the decoding device according to the embodiment will be described with reference to the drawings. The coding device and the decoding device according to the embodiment encode and decode a moving image represented by MPEG, respectively. In the description of the drawings below, the same or similar parts are designated by the same or similar reference numerals.
 [第1実施形態]
 <符号化装置の構成>
 まず、本実施形態に係る符号化装置の構成について説明する。図1は、本実施形態に係る符号化装置1の構成を示す図である。
[First Embodiment]
<Configuration of coding device>
First, the configuration of the coding apparatus according to the present embodiment will be described. FIG. 1 is a diagram showing a configuration of a coding device 1 according to the present embodiment.
 図1に示すように、符号化装置1は、ブロック分割部100と、残差生成部110と、切替部111と、色空間変換部112と、変換・量子化部120と、エントロピー符号化部130と、逆量子化・逆変換部140と、切替部143と、色空間逆変換部144と、合成部150と、デブロッキングフィルタ160と、メモリ170と、予測部180とを有する。 As shown in FIG. 1, the coding apparatus 1 includes a block dividing unit 100, a residual generation unit 110, a switching unit 111, a color space conversion unit 112, a conversion / quantization unit 120, and an entropy coding unit. It has 130, an inverse quantization / inverse conversion unit 140, a switching unit 143, a color space inverse conversion unit 144, a synthesis unit 150, a deblocking filter 160, a memory 170, and a prediction unit 180.
 ブロック分割部100は、動画像を構成するフレーム(或いはピクチャ)単位の入力画像である原画像を複数の画像ブロックに分割し、分割により得た画像ブロックを残差生成部110に出力する。画像ブロックのサイズは、例えば32×32画素、16×16画素、8×8画素、又は4×4画素等である。画像ブロックの形状は正方形に限らず長方形(非正方形)であってもよい。画像ブロックは、符号化装置1が符号化処理を行う単位(すなわち、符号化対象ブロック)であり、且つ復号装置が復号処理を行う単位(すなわち、復号対象ブロック)である。このような画像ブロックはCU(Coding Unit)と呼ばれることがある。 The block division unit 100 divides the original image, which is an input image for each frame (or picture) constituting the moving image, into a plurality of image blocks, and outputs the image block obtained by the division to the residual generation unit 110. The size of the image block is, for example, 32 × 32 pixels, 16 × 16 pixels, 8 × 8 pixels, 4 × 4 pixels, or the like. The shape of the image block is not limited to a square and may be a rectangle (non-square). The image block is a unit in which the coding device 1 performs a coding process (that is, a block to be coded) and a unit in which the decoding device performs a decoding process (that is, a block to be decoded). Such an image block may be called a CU (Coding Unit).
 入力画像は、RGB信号であって、クロマフォーマットが4:4:4であってもよい。RGB空間は、第1色空間の一例である。「R」成分は第1成分に相当し、「G」成分は第2成分に相当し、「B」成分は第3成分に相当する。ブロック分割部100は、画像を構成するR成分、G成分、及びB成分のそれぞれに対してブロック分割を行うことでブロックを出力する。以下の符号化装置の説明において、各色成分を区別しないときは単に符号化対象ブロックと呼ぶ。 The input image may be an RGB signal and the chroma format may be 4: 4: 4. The RGB space is an example of the first color space. The "R" component corresponds to the first component, the "G" component corresponds to the second component, and the "B" component corresponds to the third component. The block division unit 100 outputs a block by performing block division for each of the R component, the G component, and the B component constituting the image. In the following description of the coding device, when each color component is not distinguished, it is simply referred to as a coded block.
 残差生成部110は、ブロック分割部100が出力する符号化対象ブロックと、符号化対象ブロックを予測部180が予測して得た予測ブロックとの差分(誤差)を表す予測残差を算出する。具体的には、残差生成部110は、符号化対象ブロックの各画素値から予測ブロックの各画素値を減算することにより予測残差を算出し、算出した予測残差を切替部111に出力する。本実施形態において、残差生成部110は、各色成分の符号化対象ブロックと、各色成分の予測ブロックとの差分により各色成分の予測残差を生成する。 The residual generation unit 110 calculates a predicted residual representing a difference (error) between the coded block output by the block dividing unit 100 and the predicted block obtained by predicting the coded block by the prediction unit 180. .. Specifically, the residual generation unit 110 calculates the predicted residual by subtracting each pixel value of the predicted block from each pixel value of the coded block, and outputs the calculated predicted residual to the switching unit 111. do. In the present embodiment, the residual generation unit 110 generates a predicted residual of each color component by the difference between the coded block of each color component and the predicted block of each color component.
 切替部111は、残差生成部110が出力する各色成分の予測残差を変換・量子化部120及び色空間変換部112のいずれか一方に出力する。切替部111は、色空間変換処理(ACT処理)を行わない場合は予測残差を変換・量子化部120に出力し、ACT処理を行う場合は予測残差を色空間変換部112に出力する。 The switching unit 111 outputs the predicted residual of each color component output by the residual generation unit 110 to either the conversion / quantization unit 120 or the color space conversion unit 112. The switching unit 111 outputs the predicted residual to the conversion / quantization unit 120 when the color space conversion processing (ACT processing) is not performed, and outputs the predicted residual to the color space conversion unit 112 when the ACT processing is performed. ..
 色空間変換部112は、各色成分の予測残差に対してACT処理を行い、ACT処理後の予測残差を変換・量子化部120に出力する。色空間変換部112は、符号化対象ブロックの予測残差のR成分、G成分、及びB成分について下記のような変換計算を行うことで、新たな予測残差を生成する。 The color space conversion unit 112 performs ACT processing on the predicted residuals of each color component, and outputs the predicted residuals after the ACT processing to the conversion / quantization unit 120. The color space conversion unit 112 generates a new predicted residual by performing the following conversion calculation on the R component, the G component, and the B component of the predicted residual of the coded block.
  Co=R-B
  t=B+(Co>>1)
  Cg=G-t
  Y=t+(Cg>>1)
Co = RB
t = B + (Co >> 1)
Cg = Gt
Y = t + (Cg >> 1)
 但し、「>>」は右シフト演算を表す。また、「Y」成分は第1成分に相当し、「Cg」成分は第2成分に相当し、「Co」成分は第3成分に相当する。このようなYCgCo空間は、第2色空間の一例である。 However, ">>" represents a right shift operation. Further, the "Y" component corresponds to the first component, the "Cg" component corresponds to the second component, and the "Co" component corresponds to the third component. Such a YCgCo space is an example of a second color space.
 切替部111及び色空間変換部112は、符号化対象ブロックごとに色変換処理を行うか否かを制御可能である。エントロピー符号化部130は、当該符号化ブロックに対して色変換処理を行ったか否かを示すフラグ(ACT適用フラグ)をビットストリーム中でシグナリングする。 The switching unit 111 and the color space conversion unit 112 can control whether or not to perform color conversion processing for each coded block. The entropy coding unit 130 signals in the bit stream a flag (ACT application flag) indicating whether or not the color conversion process has been performed on the coded block.
 なお、色空間変換部112におけるACT処理は各色成分に対する加算・減算・乗算・除算・シフト処理などにより新たな色成分により構成される予測残差を生成すればよい。また、ACT処理は、すべての色成分に影響を及ぼす変換である必要はない。例えば、色空間変換部112は、第1成分を変更せずに維持し、第2成分と第3成分との平均値を新たな第2成分とし、第2成分と第3成分との差分を新たな第3成分とする、というACT処理を適用してもよい。 The ACT process in the color space conversion unit 112 may generate a predicted residual composed of new color components by addition / subtraction / multiplication / division / shift processing for each color component. Also, the ACT process does not have to be a transformation that affects all color components. For example, the color space conversion unit 112 maintains the first component unchanged, sets the average value of the second component and the third component as the new second component, and sets the difference between the second component and the third component. An ACT process of using a new third component may be applied.
 変換・量子化部120は、ブロック単位で変換処理及び量子化処理を行う。変換・量子化部120は、変換部121と、量子化部122とを有する。 The conversion / quantization unit 120 performs conversion processing and quantization processing in block units. The conversion / quantization unit 120 includes a conversion unit 121 and a quantization unit 122.
 変換部121は、切替部111又は色空間変換部112が出力する予測残差(ACT処理の適用の有無にかかわらず予測残差と呼ぶ)に対して変換処理を行って変換係数を算出し、算出した変換係数を量子化部122に出力する。具体的には、変換部121は、各色成分の予測残差に対してブロック単位で変換処理を行うことで各色成分の変換係数を生成する。変換処理は、例えばDCTやDST、離散ウェーブレット変換などの周波数変換であればよい。また、変換部121は、変換処理に関する情報をエントロピー符号化部130に出力する。 The conversion unit 121 performs conversion processing on the predicted residual (referred to as predicted residual regardless of whether or not the ACT processing is applied) output by the switching unit 111 or the color space conversion unit 112, and calculates the conversion coefficient. The calculated conversion coefficient is output to the quantization unit 122. Specifically, the conversion unit 121 generates a conversion coefficient for each color component by performing a conversion process on the predicted residual of each color component in block units. The conversion process may be frequency conversion such as DCT, DST, and discrete wavelet conversion. Further, the conversion unit 121 outputs information regarding the conversion process to the entropy coding unit 130.
 変換処理には、HEVCやVVC規格案で採用されている、変換処理を行わない変換スキップを含む。HEVCの変換スキップモードでは水平及び垂直の変換処理を行わずに、予測残差に対しスケーリングを施すことによって変換係数としているが、本実施形態に係る変換スキップは、水平のみ変換処理を適用する変換や垂直のみ変換処理を適用する変換も含む。また、変換部121は、変換処理により得られた変換係数に対してさらに変換処理を適用する二次変換処理を行ってもよい。また、二次変換処理は、変換係数の一部の領域のみに適用してもよい。 The conversion process includes conversion skip without conversion process, which is adopted in HEVC and VVC standard draft. In the conversion skip mode of HEVC, the conversion coefficient is set by scaling the predicted residual without performing the horizontal and vertical conversion processing, but the conversion skip according to the present embodiment is a conversion to which the conversion processing is applied only to the horizontal. Also includes conversions that apply conversion processing only to vertical and vertical. Further, the conversion unit 121 may perform a secondary conversion process in which the conversion process is further applied to the conversion coefficient obtained by the conversion process. Further, the secondary conversion process may be applied only to a part of the area of the conversion coefficient.
 量子化部122は、変換部121から出力される変換係数を量子化パラメータ及びスケーリングリストを用いて量子化し、量子化した変換係数をエントロピー符号化部130及び逆量子化・逆変換部140に出力する。また、量子化部122は、量子化処理に関する情報(具体的には、量子化処理で用いた量子化パラメータ及びスケーリングリストの情報)を、エントロピー符号化部130及び逆量子化部141に出力する。 The quantization unit 122 quantizes the conversion coefficient output from the conversion unit 121 using the quantization parameter and the scaling list, and outputs the quantized conversion coefficient to the entropy coding unit 130 and the inverse quantization / inverse conversion unit 140. do. Further, the quantization unit 122 outputs information regarding the quantization process (specifically, information on the quantization parameters and the scaling list used in the quantization process) to the entropy coding unit 130 and the inverse quantization unit 141. ..
 エントロピー符号化部130は、量子化部122が出力する量子化変換係数に対してエントロピー符号化を行い、データ圧縮を行ってビットストリーム(符号化データ)を生成し、ビットストリームを復号側に出力する。エントロピー符号化には、ハフマン符号やCABAC(Context-based Adaptive Binary Arithmetic Coding)等を用いることができる。また、エントロピー符号化部130は、変換部121から入力された変換処理に関する情報をビットストリームに含めて復号側にシグナリングしたり、予測部180から入力された予測処理に関する情報をビットストリームに含めて復号側にシグナリングしたりする。 The entropy coding unit 130 performs entropy coding on the quantization conversion coefficient output by the quantization unit 122, performs data compression to generate a bit stream (encoded data), and outputs the bit stream to the decoding side. do. For the entropy coding, a Huffman code, CABAC (Context-based Adaptive Binary Arithmetic Coding) or the like can be used. Further, the entropy coding unit 130 includes information on the conversion process input from the conversion unit 121 in the bitstream and signals it to the decoding side, and includes information on the prediction process input from the prediction unit 180 in the bitstream. Signaling to the decryption side.
 さらに、エントロピー符号化部130は、ACTの適用有無を示す色空間変換フラグを符号化対象ブロックごとにビットストリームに含めて復号側にシグナリングする。このような色空間変換フラグをACT適用フラグとも呼ぶ。ACT適用フラグがオン(“1”)の場合、対応する符号化対象ブロックにACTが適用されることを示す。ACT適用フラグがオフ(“0”)の場合、対応する符号化対象ブロックにACTが適用されないことを示す。なおACT適用フラグの代わりにACT非適用フラグを用いてもよい。その場合には、ACT非適用フラグがオン(“1”)の場合、対応する符号化対象ブロックにACTが適用されないことを示す。ACT非適用フラグがオフ(“0”)の場合、対応する符号化対象ブロックにACTが適用されることを示す。 Further, the entropy coding unit 130 includes a color space conversion flag indicating whether or not ACT is applied in the bit stream for each coded block and signals it to the decoding side. Such a color space conversion flag is also called an ACT application flag. When the ACT application flag is on (“1”), it indicates that the ACT is applied to the corresponding coded block. When the ACT application flag is off (“0”), it indicates that ACT is not applied to the corresponding coded block. The ACT non-applicable flag may be used instead of the ACT application flag. In that case, when the ACT non-application flag is on (“1”), it indicates that ACT is not applied to the corresponding coded block. When the ACT non-application flag is off (“0”), it indicates that ACT is applied to the corresponding coded block.
 逆量子化・逆変換部140は、ブロック単位で逆量子化処理及び逆変換処理を行う。逆量子化・逆変換部140は、逆量子化部141と、逆変換部142とを有する。 The inverse quantization / inverse transformation unit 140 performs inverse quantization processing and inverse transformation processing in block units. The inverse quantization / inverse transformation unit 140 has an inverse quantization unit 141 and an inverse transformation unit 142.
 逆量子化部141は、量子化部122が行う量子化処理に対応する逆量子化処理を行う。具体的には、逆量子化部141は、量子化部122が出力する量子化変換係数を、量子化パラメータ(Qp)及びスケーリングリストを用いて逆量子化することにより変換係数を復元し、復元した変換係数を逆変換部142に出力する。 The inverse quantization unit 141 performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 122. Specifically, the inverse quantization unit 141 restores and restores the conversion coefficient by inversely quantizing the quantization conversion coefficient output by the quantization unit 122 using the quantization parameter (Qp) and the scaling list. The converted conversion coefficient is output to the inverse conversion unit 142.
 逆変換部142は、変換部121が行う変換処理に対応する逆変換処理を行う。例えば、変換部121が離散コサイン変換を行った場合、逆変換部142は逆離散コサイン変換を行う。逆変換部142は、逆量子化部141が出力する変換係数に対して逆変換処理を行って予測残差を復元し、復元した予測残差である復元予測残差を切替部143に出力する。 The reverse conversion unit 142 performs the reverse conversion process corresponding to the conversion process performed by the conversion unit 121. For example, when the conversion unit 121 performs the discrete cosine transform, the inverse transform unit 142 performs the inverse discrete cosine transform. The inverse transformation unit 142 performs an inverse transformation process on the conversion coefficient output by the inverse quantization unit 141 to restore the predicted residual, and outputs the restored predicted residual, which is the restored predicted residual, to the switching unit 143. ..
 切替部143は、逆変換部142が出力する各色成分の復元予測残差を合成部150及び色空間逆変換部144のいずれか一方に出力する。切替部143は、ACTが適用されたブロックについては復元予測残差を合成部150に出力し、ACTが適用されていないブロックについては復元予測残差を色空間逆変換部144に出力する。 The switching unit 143 outputs the restoration prediction residual of each color component output by the inverse conversion unit 142 to either the synthesis unit 150 or the color space inverse conversion unit 144. The switching unit 143 outputs the restored predicted residual to the synthesis unit 150 for the block to which the ACT is applied, and outputs the restored predicted residual to the color space inverse conversion unit 144 for the block to which the ACT is not applied.
 色空間逆変換部144は、色空間変換部112が行うACT処理の逆処理である色空間逆変換処理(逆ACT処理)を行い、逆ACT処理後の予測残差を合成部150に出力する。具体的には、復元後の予測残差のY成分、Cg成分、Co成分を用いて下記のような逆変換計算を行うことにより、YCgCo空間からRGB空間への逆変換を行う。 The color space reverse conversion unit 144 performs color space reverse conversion processing (reverse ACT processing), which is the reverse processing of the ACT processing performed by the color space conversion unit 112, and outputs the predicted residual after the reverse ACT processing to the synthesis unit 150. .. Specifically, the inverse transformation from the YCgCo space to the RGB space is performed by performing the following inverse transformation calculation using the Y component, the Cg component, and the Co component of the predicted residual after restoration.
  t=Y-(Cg>>1)
  G=Cg+t
  B=t-(Co>>1)
  R=Co+B
t = Y- (Cg >> 1)
G = Cg + t
B = t- (Co >> 1)
R = Co + B
 合成部150は、逆変換部142又は色空間逆変換部144が出力する復元予測残差を、予測部180が出力する予測ブロックと画素単位で合成する。合成部150は、復元予測残差の各画素値と予測ブロックの各画素値を加算して符号化対象ブロックを復元(再構成)し、復元済みブロックをデブロッキングフィルタ160に出力する。なお、復元済みブロックは、再構成ブロックと呼ばれることもある。 The synthesizing unit 150 synthesizes the restored prediction residual output by the inverse transformation unit 142 or the color space inverse transformation unit 144 with the prediction block output by the prediction unit 180 in pixel units. The synthesizing unit 150 adds each pixel value of the restoration prediction residual and each pixel value of the prediction block to restore (reconstruct) the coded block, and outputs the restored block to the deblocking filter 160. The restored block may be called a reconstructed block.
 デブロッキングフィルタ160は、合成部150が出力する復元済みブロックに対してフィルタ処理を行い、フィルタ処理後の復元済みブロックをメモリ170に出力する。フィルタ制御部161は、デブロッキングフィルタ160を制御する。デブロッキングフィルタ160及びフィルタ制御部161の詳細については後述する。 The deblocking filter 160 performs a filter process on the restored block output by the synthesis unit 150, and outputs the restored block after the filter process to the memory 170. The filter control unit 161 controls the deblocking filter 160. Details of the deblocking filter 160 and the filter control unit 161 will be described later.
 メモリ170は、デブロッキングフィルタ160が出力するフィルタ処理後の復元済みブロックを記憶し、復元済みブロックをフレーム単位で復元済み画像として蓄積する。メモリ170は、記憶している復元済みブロック若しくは復元済み画像を予測部180に出力する。 The memory 170 stores the restored blocks after the filtering process output by the deblocking filter 160, and stores the restored blocks as restored images in frame units. The memory 170 outputs the stored restored block or restored image to the prediction unit 180.
 予測部180は、ブロック単位で予測処理を行う。予測部180は、符号化対象ブロックに対するイントラ予測及びインター予測などの予測処理を施すことにより色成分ごとの予測ブロックを生成する。予測部180は、インター予測部181と、イントラ予測部182と、切替部183とを有する。 The prediction unit 180 performs prediction processing in block units. The prediction unit 180 generates a prediction block for each color component by performing prediction processing such as intra prediction and inter prediction for the coded block. The prediction unit 180 includes an inter prediction unit 181, an intra prediction unit 182, and a switching unit 183.
 インター予測部181は、フレーム間の相関を利用したインター予測を行う。具体的には、インター予測部181は、メモリ170に記憶された復元済み画像を参照画像として用いて、ブロックマッチングなどの手法により動きベクトルを算出し、符号化対象ブロックを予測してインター予測ブロックを生成し、生成したインター予測ブロックを切替部183に出力する。ここで、インター予測部181は、複数の参照画像を用いるインター予測(典型的には、双予測)や、1つの参照画像を用いるインター予測(片方向予測)の中から最適なインター予測方法を選択し、選択したインター予測方法を用いてインター予測を行う。インター予測部181は、インター予測に関する情報(動きベクトル等)をエントロピー符号化部130に出力する。 The inter-prediction unit 181 performs inter-prediction using the correlation between frames. Specifically, the inter-prediction unit 181 uses the restored image stored in the memory 170 as a reference image, calculates a motion vector by a method such as block matching, predicts the block to be encoded, and predicts the inter-prediction block. Is generated, and the generated inter-prediction block is output to the switching unit 183. Here, the inter-prediction unit 181 selects the optimum inter-prediction method from among inter-prediction using a plurality of reference images (typically bi-prediction) and inter-prediction using one reference image (one-way prediction). Select and perform inter-prediction using the selected inter-prediction method. The inter-prediction unit 181 outputs information (motion vector and the like) related to the inter-prediction to the entropy coding unit 130.
 イントラ予測部182は、フレーム内の空間的な相関を利用したイントラ予測を行う。具体的には、イントラ予測部182は、メモリ170に記憶された復元済み画像のうち、符号化対象ブロックの周辺にある復元済み画素を参照してイントラ予測ブロックを生成し、生成したイントラ予測ブロックを切替部183に出力する。イントラ予測部182は、複数のイントラ予測モードの中から、符号化対象ブロックに適用するイントラ予測モードを選択し、選択したイントラ予測モードを用いて符号化対象ブロックを予測する。 The intra prediction unit 182 performs intra prediction using the spatial correlation in the frame. Specifically, the intra prediction unit 182 generates an intra prediction block by referring to the restored pixels in the vicinity of the coded target block among the restored images stored in the memory 170, and the generated intra prediction block. Is output to the switching unit 183. The intra prediction unit 182 selects an intra prediction mode to be applied to the coded target block from the plurality of intra prediction modes, and predicts the coded target block using the selected intra prediction mode.
 切替部183は、インター予測部181が出力するインター予測ブロックとイントラ予測部182が出力するイントラ予測ブロックとを切り替えて、いずれかの予測ブロックを残差生成部110及び合成部150に出力する。 The switching unit 183 switches between the inter prediction block output by the inter prediction unit 181 and the intra prediction block output by the intra prediction unit 182, and outputs one of the prediction blocks to the residual generation unit 110 and the synthesis unit 150.
 次に、本実施形態に係るデブロッキングフィルタ160及びフィルタ制御部161について説明する。 Next, the deblocking filter 160 and the filter control unit 161 according to the present embodiment will be described.
 デブロッキングフィルタ160は、復元済みブロック(第1ブロック)と当該復元済みブロックに隣接する復元済みブロック(第2ブロック)とからなる2つのブロックのブロック境界に対するフィルタ処理を行い、フィルタ処理後の各復元済みブロックをメモリ170に出力する。フィルタ処理は、ブロック単位の処理に起因する信号劣化を軽減するための処理であって、隣り合う2つのブロックのブロック境界における信号のギャップを平滑化するフィルタ処理である。 The deblocking filter 160 performs filtering processing on the block boundary of two blocks consisting of a restored block (first block) and a restored block (second block) adjacent to the restored block, and each after filtering processing is performed. The restored block is output to the memory 170. The filter processing is a processing for reducing signal deterioration caused by processing in block units, and is a filtering processing for smoothing a signal gap at a block boundary between two adjacent blocks.
 フィルタ制御部161は、デブロッキングフィルタ160を制御する。具体的には、フィルタ制御部161は、ブロック対のブロック境界に対するフィルタ処理を行うか否かを示す境界フィルタ強度(Bs:Boundary strength)、及びデブロッキングフィルタ160のフィルタ強度を制御する。境界フィルタ強度Bsとは、フィルタ処理を適用するか否か、及びそのフィルタ処理の種類を決定するためのパラメータをいう。なお、フィルタ処理を行うか否かの制御は、境界フィルタ強度Bsを1以上とするか又はゼロとするかの制御とみなすことができる。 The filter control unit 161 controls the deblocking filter 160. Specifically, the filter control unit 161 controls the boundary filter strength (Bs: Boundary strength) indicating whether or not to perform the filter processing on the block boundary of the block pair, and the filter strength of the deblocking filter 160. The boundary filter strength Bs refers to a parameter for determining whether or not to apply the filtering process and the type of the filtering process. The control of whether or not the filter processing is performed can be regarded as the control of whether the boundary filter strength Bs is 1 or more or zero.
 図2は、本実施形態に係るデブロッキングフィルタ160の動作を説明するための図である。図2に示す例では、デブロッキングフィルタ160は、8×8画素のブロックごとのブロック境界を対象としてフィルタ処理を行う。また、デブロッキングフィルタ160は、4行又は4列を単位としてフィルタ処理を行う。図2に示すブロックP及びQでは、デブロッキングフィルタ160のフィルタ処理の1単位であり、ブロックサイズが4×4画素である一例を示している。ブロックP及びQのそれぞれは、サブブロックと呼ばれてもよい。ブロックQは、符号化対象ブロックに対応する復元済みブロックであり、ブロックPは、このブロックQに隣接する復元済みブロックである。 FIG. 2 is a diagram for explaining the operation of the deblocking filter 160 according to the present embodiment. In the example shown in FIG. 2, the deblocking filter 160 performs filter processing on the block boundary of each block of 8 × 8 pixels. Further, the deblocking filter 160 performs filter processing in units of 4 rows or 4 columns. The blocks P and Q shown in FIG. 2 show an example in which the deblocking filter 160 is one unit of the filter processing and the block size is 4 × 4 pixels. Each of the blocks P and Q may be referred to as a subblock. The block Q is a restored block corresponding to the coded block, and the block P is a restored block adjacent to the block Q.
 フィルタ制御部161は、下記の表1に基づいて境界フィルタ強度Bsを決定する。本実施形態では、境界フィルタ強度Bsの値は0,1,2のいずれかとする。 The filter control unit 161 determines the boundary filter strength Bs based on Table 1 below. In the present embodiment, the value of the boundary filter strength Bs is either 0, 1, or 2.
Figure JPOXMLDOC01-appb-T000001
Figure JPOXMLDOC01-appb-T000001
 図2及び表1に示すように、フィルタ制御部161は、ブロックP及びQの少なくとも一方にイントラ予測が適用されている場合、Bs値を2とする。 As shown in FIG. 2 and Table 1, the filter control unit 161 sets the Bs value to 2 when the intra prediction is applied to at least one of the blocks P and Q.
 フィルタ制御部161は、ブロックP及びQの両方に動き補償予測(インター予測)が適用されており、且つ少なくとも以下の(a)乃至(d)の中の1つの条件を満たす場合には、Bs値を1とし、その他の場合には、Bs値を0とする。 When the motion compensation prediction (inter prediction) is applied to both the blocks P and Q, and at least one of the following conditions (a) to (d) is satisfied, the filter control unit 161 Bs. The value is 1, and in other cases, the Bs value is 0.
 (a)ブロックP及びQの動きベクトルの差の絶対値が閾値(例えば1画素)以上であること。 (A) The absolute value of the difference between the motion vectors of blocks P and Q is equal to or greater than the threshold value (for example, 1 pixel).
 (b)ブロックP及びQの動きベクトルの数又は参照画像が異なること。 (B) The number of motion vectors of blocks P and Q or the reference image is different.
 (c)ブロックP及びQの少なくとも一方が有意な変換係数(すなわち、非ゼロの変換係数)を含むこと。 (C) At least one of blocks P and Q contains a significant conversion factor (ie, a non-zero conversion factor).
 (d)ブロックP及びQの少なくとも一方にACTが適用されていること。 (D) ACT is applied to at least one of blocks P and Q.
 フィルタ制御部161は、境界フィルタ強度Bsの値が0の場合にはデブロッキングフィルタ処理を行わないようデブロッキングフィルタ160を制御する。以下、図2に示す垂直ブロック境界を例に説明する。 The filter control unit 161 controls the deblocking filter 160 so that the deblocking filter processing is not performed when the value of the boundary filter strength Bs is 0. Hereinafter, the vertical block boundary shown in FIG. 2 will be described as an example.
 フィルタ制御部161は、境界フィルタ強度Bsの値が1又は2の場合には、次式(1)を満たす場合に、デブロッキングフィルタ処理を行うようデブロッキングフィルタ160を制御してもよい。 When the value of the boundary filter strength Bs is 1 or 2, the filter control unit 161 may control the deblocking filter 160 so as to perform the deblocking filter processing when the following equation (1) is satisfied.
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000002
 なお、フィルタ制御部161は、デブロッキングフィルタ処理を行う場合、以下の条件式(2)~(7)を全て満たす場合に強いフィルタを適用し、それ以外の場合に弱いフィルタを適用してもよい。 When the deblocking filter process is performed, the filter control unit 161 may apply a strong filter when all of the following conditional expressions (2) to (7) are satisfied, and may apply a weak filter in other cases. good.
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000003
 但し、閾値β及びtの値は、隣接するブロックPとブロックQの量子化パラメータの平均値Qavに応じて変わる。 However, the values of the threshold values β and t C change according to the average value Q av of the quantization parameters of the adjacent blocks P and Q.
 <復号装置の構成>
 次に、本実施形態に係る復号装置について、符号化装置1との相違点を主として説明する。図3は、本実施形態に係る復号装置2の構成を示す図である。
<Configuration of decryption device>
Next, the decoding device according to the present embodiment will be mainly described as being different from the coding device 1. FIG. 3 is a diagram showing a configuration of a decoding device 2 according to the present embodiment.
 図3に示すように、復号装置2は、エントロピー復号部200と、逆量子化・逆変換部210と、切替部215と、色空間逆変換部216と、合成部220と、デブロッキングフィルタ230と、メモリ240と、予測部250とを有する。 As shown in FIG. 3, the decoding device 2 includes an entropy decoding unit 200, an inverse quantization / inverse conversion unit 210, a switching unit 215, a color space inverse conversion unit 216, a synthesis unit 220, and a deblocking filter 230. And a memory 240 and a prediction unit 250.
 エントロピー復号部200は、符号化データ(ビットストリーム)を復号し、復号対象ブロックに対応する量子化変換係数を取得し、取得した量子化変換係数を逆量子化・逆変換部210に出力する。また、エントロピー復号部200は、変換処理及び量子化処理に関する情報を取得し、変換処理及び量子化処理に関する情報を逆量子化・逆変換部210に出力する。さらに、エントロピー復号部200は、予測処理に関する情報を取得し、予測処理に関する情報を予測部250に出力する。エントロピー復号部200は、復号対象ブロックごとの色空間変換フラグを取得し、取得した色空間変換フラグを切替部215及びフィルタ制御部231に出力する。 The entropy decoding unit 200 decodes the coded data (bitstream), acquires the quantization conversion coefficient corresponding to the decoding target block, and outputs the acquired quantization conversion coefficient to the inverse quantization / inverse conversion unit 210. Further, the entropy decoding unit 200 acquires information on the conversion process and the quantization process, and outputs the information on the conversion process and the quantization process to the inverse quantization / inverse conversion unit 210. Further, the entropy decoding unit 200 acquires information on the prediction process and outputs the information on the prediction process to the prediction unit 250. The entropy decoding unit 200 acquires the color space conversion flag for each decoding target block, and outputs the acquired color space conversion flag to the switching unit 215 and the filter control unit 231.
 逆量子化・逆変換部210は、ブロック単位で逆量子化処理及び逆変換処理を行う。逆量子化・逆変換部210は、逆量子化部211と、逆変換部212とを有する。 The inverse quantization / inverse transformation unit 210 performs inverse quantization processing and inverse transformation processing in block units. The inverse quantization / inverse conversion unit 210 has an inverse quantization unit 211 and an inverse conversion unit 212.
 逆量子化部211は、符号化装置1の量子化部122が行う量子化処理に対応する逆量子化処理を行う。逆量子化部211は、エントロピー復号部200が出力する量子化変換係数を、量子化パラメータ(Qp)及びスケーリングリストを用いて逆量子化することにより、復号対象ブロックの変換係数を復元し、復元した変換係数を逆変換部212に出力する。 The inverse quantization unit 211 performs an inverse quantization process corresponding to the quantization process performed by the quantization unit 122 of the coding apparatus 1. The dequantization unit 211 restores and restores the conversion coefficient of the block to be decoded by dequantizing the quantization conversion coefficient output by the entropy decoding unit 200 using the quantization parameter (Qp) and the scaling list. The converted conversion coefficient is output to the inverse conversion unit 212.
 逆変換部212は、符号化装置1の変換部121が行う変換処理に対応する逆変換処理を行う。逆変換部212は、逆量子化部211が出力する変換係数に対して逆変換処理を行って予測残差を復元し、復元予測残差を切替部215に出力する。 The reverse conversion unit 212 performs reverse conversion processing corresponding to the conversion processing performed by the conversion unit 121 of the coding device 1. The inverse transformation unit 212 performs an inverse transformation process on the conversion coefficient output by the inverse quantization unit 211 to restore the predicted residual, and outputs the restored predicted residual to the switching unit 215.
 切替部215は、色空間変換フラグに基づいて、逆変換部212が出力する各色成分の予測残差を合成部220及び色空間逆変換部216のいずれか一方に出力する。切替部111は、色空間逆変換処理(ACT)が適用されたブロックについては予測残差を変換・量子化部120に出力し、ACTが適用されたブロックについては予測残差を色空間逆変換部216に出力する。 The switching unit 215 outputs the predicted residual of each color component output by the inverse conversion unit 212 to either the synthesis unit 220 or the color space inverse conversion unit 216 based on the color space conversion flag. The switching unit 111 outputs the predicted residual to the conversion / quantization unit 120 for the block to which the color space inverse transformation processing (ACT) is applied, and the color space inverse transformation of the predicted residual for the block to which the ACT is applied. Output to unit 216.
 色空間逆変換部216は、符号化装置1の色空間変換部112が行うACT処理の逆処理である色空間逆変換処理(逆ACT処理)を行い、逆ACT処理後の予測残差を合成部220に出力する。具体的には、色空間逆変換部216は、復元後の予測残差のY成分、Cg成分、Co成分を用いて下記のような逆変換計算を行う。 The color space reverse conversion unit 216 performs color space reverse conversion processing (reverse ACT processing), which is the reverse processing of the ACT processing performed by the color space conversion unit 112 of the coding apparatus 1, and synthesizes the predicted residual after the reverse ACT processing. Output to unit 220. Specifically, the color space inverse transformation unit 216 performs the following inverse transformation calculation using the Y component, Cg component, and Co component of the predicted residual after restoration.
  t=Y-(Cg>>1)
  G=Cg+t
  B=t-(Co>>1)
  R=Co+B
t = Y- (Cg >> 1)
G = Cg + t
B = t- (Co >> 1)
R = Co + B
 合成部220は、切替部215又は色空間逆変換部216が出力する予測残差と、予測部250が出力する予測ブロックとを画素単位で合成することにより、元のブロックを復号(再構成)し、復元済みブロックをデブロッキングフィルタ230に出力する。 The synthesizing unit 220 decodes (reconstructs) the original block by synthesizing the prediction residual output by the switching unit 215 or the color space inverse conversion unit 216 and the prediction block output by the prediction unit 250 on a pixel-by-pixel basis. Then, the restored block is output to the deblocking filter 230.
 デブロッキングフィルタ230は、合成部220が出力する復元済みブロックに対してフィルタ処理を行い、フィルタ処理後の復元済みブロックをメモリ240に出力する。具体的には、デブロッキングフィルタ230は、復元済みブロック(第1ブロック)と当該復元済みブロックに隣接する復元済みブロック(第2ブロック)とからなる2つのブロックのブロック境界に対するフィルタ処理を行い、フィルタ処理後の各復元済みブロックをメモリ240に出力する。デブロッキングフィルタ230の機能は、符号化装置1のデブロッキングフィルタ160の機能と同様である。 The deblocking filter 230 performs a filter process on the restored block output by the synthesis unit 220, and outputs the restored block after the filter process to the memory 240. Specifically, the deblocking filter 230 filters the block boundary of two blocks including the restored block (first block) and the restored block (second block) adjacent to the restored block. Each restored block after filtering is output to the memory 240. The function of the deblocking filter 230 is the same as the function of the deblocking filter 160 of the coding device 1.
 フィルタ制御部231は、デブロッキングフィルタ230を制御する。フィルタ制御部231は、デブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、ブロック対のブロック境界に対するフィルタ処理を行うか否かを示す境界フィルタ強度(Bs:Boundary strength)、及びデブロッキングフィルタ230のフィルタ強度を制御する。フィルタ制御部231の機能は、符号化装置1のフィルタ制御部161の機能と同様である。フィルタ制御部231の機能は、上記の表1に基づいて境界フィルタ強度Bsを決定する。 The filter control unit 231 controls the deblocking filter 230. The filter control unit 231 controls the deblocking filter 230. Specifically, the filter control unit 231 controls the boundary filter strength (Bs: Boundary strength) indicating whether or not to perform the filter processing on the block boundary of the block pair, and the filter strength of the deblocking filter 230. The function of the filter control unit 231 is the same as the function of the filter control unit 161 of the coding device 1. The function of the filter control unit 231 determines the boundary filter strength Bs based on Table 1 above.
 すなわち、本実施形態に係るフィルタ制御部231は、隣接するブロックP及びブロックQの少なくとも一方が適応色変換(ACT)を用いて符号化されているか否かに基づいて、デブロッキングフィルタ230の境界フィルタ強度Bsを制御する。 That is, the filter control unit 231 according to the present embodiment is a boundary of the deblocking filter 230 based on whether or not at least one of the adjacent blocks P and Q is encoded by using adaptive color conversion (ACT). The filter strength Bs is controlled.
 上述したように、エントロピー復号部200は、適応色変換を用いて符号化されているか否かを示すフラグ(色空間変換フラグ)をブロックP及びブロックQのそれぞれについて取得する。フィルタ制御部231は、ブロックP及びブロックQのそれぞれについての色空間変換フラグに基づいて、デブロッキングフィルタ230の境界フィルタ強度Bsを制御する。 As described above, the entropy decoding unit 200 acquires a flag (color space conversion flag) indicating whether or not the code is encoded by using the adaptive color conversion for each of the block P and the block Q. The filter control unit 231 controls the boundary filter intensity Bs of the deblocking filter 230 based on the color space conversion flags for each of the block P and the block Q.
 フィルタ制御部231は、ブロックP及びブロックQの少なくとも一方が適応色変換を用いて符号化されている場合、デブロッキングフィルタ230によるフィルタ処理を行うように境界フィルタ強度Bsを制御する(すなわち、境界フィルタ強度Bs=1を設定する)。具体的には、フィルタ制御部231は、ブロックP及びブロックQの両方に非ゼロの変換係数が存在しない場合であっても、ブロックP及びブロックQの少なくとも一方が適応色変換を用いて符号化されている場合には、デブロッキングフィルタ230によるフィルタ処理を行うように境界フィルタ強度Bsを制御する。 When at least one of the block P and the block Q is encoded by using the adaptive color conversion, the filter control unit 231 controls the boundary filter intensity Bs so as to perform the filtering process by the deblocking filter 230 (that is, the boundary). Filter strength Bs = 1 is set). Specifically, the filter control unit 231 encodes at least one of the block P and the block Q using the adaptive color conversion even when the non-zero conversion coefficient does not exist in both the block P and the block Q. If so, the boundary filter strength Bs is controlled so as to perform the filtering process by the deblocking filter 230.
 メモリ240は、合成部220が出力する復元済みブロックを記憶し、復元済みブロックをフレーム単位で復元済み画像として蓄積する。メモリ240は、復元済みブロック若しくは復元済み画像を予測部250に出力する。また、メモリ240は、フレーム単位の復元済み画像を復号装置2の外部に出力する。 The memory 240 stores the restored blocks output by the compositing unit 220, and stores the restored blocks as restored images in frame units. The memory 240 outputs the restored block or the restored image to the prediction unit 250. Further, the memory 240 outputs the restored image in frame units to the outside of the decoding device 2.
 予測部250は、ブロック単位で色成分ごとに予測を行う。予測部250は、インター予測部251と、イントラ予測部252と、切替部253とを有する。 The prediction unit 250 makes predictions for each color component in block units. The prediction unit 250 includes an inter-prediction unit 251, an intra-prediction unit 252, and a switching unit 253.
 インター予測部251は、フレーム間の相関を利用したインター予測を行う。具体的には、インター予測部251は、エントロピー復号部200が出力するインター予測に関する情報(例えば、動きベクトル情報)に基づいて、メモリ240に記憶された復元済み画像を参照画像として用いて符号化対象ブロックを予測してインター予測ブロックを生成し、生成したインター予測ブロックを切替部253に出力する。 The inter-prediction unit 251 performs inter-prediction using the correlation between frames. Specifically, the inter-prediction unit 251 encodes the restored image stored in the memory 240 as a reference image based on the information related to the inter-prediction (for example, motion vector information) output by the entropy decoding unit 200. The target block is predicted to generate an inter-prediction block, and the generated inter-prediction block is output to the switching unit 253.
 イントラ予測部252は、フレーム内の空間的な相関を利用したイントラ予測を行う。具体的には、イントラ予測部252は、エントロピー復号部200が出力するイントラ予測に関する情報(例えば、イントラ予測モード情報)に応じたイントラ予測モードを用いて、メモリ240に記憶された復元済み画像のうち符号化対象ブロックの周辺にある復元済み画素を参照してイントラ予測ブロックを生成し、生成したイントラ予測ブロックを切替部253に出力する。 The intra prediction unit 252 performs intra prediction using the spatial correlation in the frame. Specifically, the intra prediction unit 252 uses an intra prediction mode corresponding to information related to the intra prediction output by the entropy decoding unit 200 (for example, intra prediction mode information), and the restored image stored in the memory 240. An intra prediction block is generated with reference to the restored pixels around the coded block, and the generated intra prediction block is output to the switching unit 253.
 切替部253は、インター予測部251が出力するインター予測ブロックとイントラ予測部252が出力するイントラ予測ブロックとを切り替えて、いずれかの予測ブロックを合成部220に出力する。 The switching unit 253 switches between the inter prediction block output by the inter prediction unit 251 and the intra prediction block output by the intra prediction unit 252, and outputs one of the prediction blocks to the synthesis unit 220.
 このように、本実施形態に係る復号装置2は、符号化ストリームを復号することで、ブロックPに対応する変換係数を出力するエントロピー復号部200と、エントロピー復号部200が出力する変換係数に対して逆量子化処理及び逆変換処理を行うことで、ブロックP(第1ブロック)に対応する予測残差を復元する逆量子化・逆変換部210と、復元した予測残差とブロックPを予測して得た予測ブロックとを合成することでブロックPを復元する合成部220と、復元したブロックPと、ブロックPに隣接する復元済みのブロックQ(第2ブロック)との境界に対するフィルタ処理を行うデブロッキングフィルタ230と、ブロックP及びブロックQの少なくとも一方が適応色変換(ACT)を用いて符号化されているか否かに基づいて、デブロッキングフィルタ230の境界フィルタ強度Bsを制御するフィルタ制御部231とを有する。 As described above, the decoding device 2 according to the present embodiment has the entropy decoding unit 200 that outputs the conversion coefficient corresponding to the block P by decoding the coded stream, and the conversion coefficient output by the entropy decoding unit 200. The inverse quantization / inverse transformation unit 210 that restores the predicted residual corresponding to the block P (first block) by performing the inverse quantization processing and the inverse transformation processing, and the restored predicted residual and the block P are predicted. Filtering is performed on the boundary between the synthesizing unit 220 that restores the block P by synthesizing the predicted blocks obtained in the above process, the restored block P, and the restored block Q (second block) adjacent to the block P. Filter control that controls the boundary filter strength Bs of the deblocking filter 230 based on whether at least one of the deblocking filter 230 and the block P and the block Q is encoded by the adaptive color transformation (ACT). It has a portion 231 and.
 ACTが適用されたブロックについては、逆変換処理により変換係数から予測残差が復元された後、色空間逆変換(逆ACT)により予測残差の色空間がYCgCo空間からRGB空間に逆変換される。このため、ある色成分のブロックに非ゼロの変換係数が存在する場合、色空間逆変換の際に当該非ゼロの変換係数が他の色成分のブロックに影響を与えることになる。 For the block to which ACT is applied, the predicted residual is restored from the conversion coefficient by the inverse conversion process, and then the color space of the predicted residual is inversely converted from the YCgCo space to the RGB space by the color space inverse conversion (inverse ACT). To. Therefore, when a non-zero conversion coefficient exists in a block of a certain color component, the non-zero conversion coefficient affects the block of another color component at the time of color space inverse transformation.
 このため、本実施形態に係るフィルタ制御部231は、非ゼロの変換係数の有無に基づくデブロッキングフィルタ230の境界フィルタ強度Bsの制御だけではなく、ACTの適用有無を考慮してデブロッキングフィルタ230の境界フィルタ強度Bsを制御する。これにより、デブロッキングフィルタ230の境界フィルタ強度Bsを適切に制御可能になるため、ACTを適用する場合であっても画質の劣化を抑制できる。 Therefore, the filter control unit 231 according to the present embodiment not only controls the boundary filter strength Bs of the deblocking filter 230 based on the presence or absence of a non-zero conversion coefficient, but also considers whether or not the ACT is applied to the deblocking filter 230. Boundary filter strength Bs is controlled. As a result, the boundary filter strength Bs of the deblocking filter 230 can be appropriately controlled, so that deterioration of image quality can be suppressed even when ACT is applied.
 <フィルタ制御部の動作>
 次に、本実施形態に係るフィルタ制御部161及びフィルタ制御部231の動作について説明する。符号化側のフィルタ制御部161及び復号側のフィルタ制御部231は同じ動作を行うため、ここでは復号側のフィルタ制御部231を例に挙げて説明する。図4は、本実施形態に係るフィルタ制御部231の動作例を示す図である。なお、図4に示す判定の順序は一例であって、判定の順序を変更してもよい。
<Operation of filter control unit>
Next, the operations of the filter control unit 161 and the filter control unit 231 according to the present embodiment will be described. Since the filter control unit 161 on the coding side and the filter control unit 231 on the decoding side perform the same operation, the filter control unit 231 on the decoding side will be described here as an example. FIG. 4 is a diagram showing an operation example of the filter control unit 231 according to the present embodiment. The order of determination shown in FIG. 4 is an example, and the order of determination may be changed.
 図4に示すように、ステップS1において、フィルタ制御部231は、ブロックP及びQからなるブロック対の少なくとも一方にイントラ予測が適用されているか否かを判定する。ブロック対の少なくとも一方にイントラ予測が適用されている場合(ステップS1:YES)、ステップS2において、フィルタ制御部231は、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=2を設定する。 As shown in FIG. 4, in step S1, the filter control unit 231 determines whether or not the intra prediction is applied to at least one of the block pairs consisting of the blocks P and Q. When the intra prediction is applied to at least one of the block pairs (step S1: YES), in step S2, the filter control unit 231 controls the deblocking filter 230 to perform the deblocking filter processing. Specifically, the filter control unit 231 sets the boundary filter strength Bs = 2.
 ブロック対のいずれもイントラ予測が適用されていない場合(ステップS1:NO)、ステップS3において、フィルタ制御部231は、対象ブロック対の動きベクトルの差が閾値以上であるか否かを判定する。対象ブロック対の動きベクトルの差が閾値以上である場合(ステップS3:YES)、ステップS4において、フィルタ制御部231は、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=1を設定する。 When the intra prediction is not applied to any of the block pairs (step S1: NO), in step S3, the filter control unit 231 determines whether or not the difference between the motion vectors of the target block pairs is equal to or greater than the threshold value. When the difference between the motion vectors of the target block pair is equal to or greater than the threshold value (step S3: YES), in step S4, the filter control unit 231 controls the deblocking filter 230 so as to perform the deblocking filter processing. Specifically, the filter control unit 231 sets the boundary filter strength Bs = 1.
 ブロック対の動きベクトルの差が閾値以上ではない場合(ステップS3:NO)、ステップS5において、フィルタ制御部231は、ブロック対の動きベクトルの数又は参照画像が異なるか否かを判定する。ブロック対の動きベクトルの数又は参照画像が異なる場合(ステップS5:YES)、ステップS4において、フィルタ制御部231は、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=1を設定する。 When the difference between the motion vectors of the block pairs is not equal to or greater than the threshold value (step S3: NO), in step S5, the filter control unit 231 determines whether the number of motion vectors of the block pairs or the reference image is different. When the number of motion vectors of the block pair or the reference image is different (step S5: YES), in step S4, the filter control unit 231 controls the deblocking filter 230 so as to perform the deblocking filter processing. Specifically, the filter control unit 231 sets the boundary filter strength Bs = 1.
 ブロック対の動きベクトルの数又は参照画像が同じである場合(ステップS5:NO)、ステップS6において、フィルタ制御部231は、ブロック対の少なくとも一方のブロックに非ゼロの変換係数が含まれるか否かを判定する。ブロック対の少なくとも一方に非ゼロの変換係数が含まれている場合(ステップS6:YES)、ステップS4において、フィルタ制御部231は、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=1を設定する。 If the number of motion vectors of the block pair or the reference image is the same (step S5: NO), in step S6, the filter control unit 231 determines whether or not at least one block of the block pair contains a non-zero conversion coefficient. Is determined. When at least one of the block pairs contains a non-zero conversion coefficient (step S6: YES), in step S4, the filter control unit 231 controls the deblocking filter 230 to perform the deblocking filter processing. Specifically, the filter control unit 231 sets the boundary filter strength Bs = 1.
 ブロック対のいずれのブロックにも非ゼロの変換係数が含まれていない場合(ステップS6:NO)、ステップS7において、フィルタ制御部231は、エントロピー復号部200が出力する各ブロックの色空間変換フラグに基づいて、ブロック対の少なくとも一方のブロックがACTを用いて符号化されているか否かを判定する。ブロック対の少なくとも一方のブロックがACTを用いて符号化されている場合(ステップS7:YES)、ステップS4において、フィルタ制御部231は、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=1を設定する。一方、ブロック対のいずれのブロックもACTを用いて符号化されていない場合(ステップS7:NO)、ステップS8において、フィルタ制御部231は、デブロッキングフィルタ処理を行わないようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=0を設定する。 When none of the blocks of the block pair contains a non-zero conversion coefficient (step S6: NO), in step S7, the filter control unit 231 outputs the color space conversion flag of each block output by the entropy decoding unit 200. Based on, it is determined whether at least one block of the block pair is encoded using ACT. When at least one block of the block pair is encoded by using ACT (step S7: YES), in step S4, the filter control unit 231 controls the deblocking filter 230 to perform the deblocking filter processing. Specifically, the filter control unit 231 sets the boundary filter strength Bs = 1. On the other hand, when none of the blocks of the block pair is encoded by using ACT (step S7: NO), in step S8, the filter control unit 231 controls the deblocking filter 230 so as not to perform the deblocking filter processing. do. Specifically, the filter control unit 231 sets the boundary filter strength Bs = 0.
 <変更例1>
 復号側のフィルタ制御部231は、ブロック対(ブロックP及びブロックQ)の少なくとも一方のブロックが非ゼロの変換係数を含むか否かを、符号化装置1からシグナリングされるフラグに基づいて判定してもよい。
<Change example 1>
The filter control unit 231 on the decoding side determines whether or not at least one block of the block pair (block P and block Q) contains a non-zero conversion coefficient based on the flag signaled from the coding device 1. You may.
 具体的には、符号化装置1のエントロピー符号化部130は、非ゼロの変換係数を含むか否かを示すフラグ(tu_coded_flag)をブロックごとに符号化ストリームに含める。例えば、エントロピー符号化部130は、非ゼロの変換係数を含むブロックについてはフラグ(tu_coded_flag)を“1”とし、非ゼロの変換係数を含まないブロックについてはフラグ(tu_coded_flag)を“0”とする。 Specifically, the entropy coding unit 130 of the coding device 1 includes a flag (tu_coded_flag) indicating whether or not a non-zero conversion coefficient is included in the coding stream for each block. For example, the entropy coding unit 130 sets the flag (tu_coded_flag) to "1" for a block containing a non-zero conversion coefficient, and sets the flag (tu_coded_flag) to "0" for a block containing no non-zero conversion coefficient. ..
 復号装置2のエントロピー復号部200は、ブロックごとにフラグ(tu_coded_flag)を取得し、取得したフラグ(tu_coded_flag)をフィルタ制御部231に出力する。フィルタ制御部231は、フラグ(tu_coded_flag)が“1”であるブロックについては非ゼロの変換係数を含まないと解釈する。そして、フィルタ制御部231は、下記の表2に示すようにデブロッキングフィルタ230の境界フィルタ強度Bsを設定する。 The entropy decoding unit 200 of the decoding device 2 acquires a flag (tu_coded_flag) for each block, and outputs the acquired flag (tu_coded_flag) to the filter control unit 231. The filter control unit 231 interprets that the block whose flag (tu_coded_flag) is "1" does not include the non-zero conversion coefficient. Then, the filter control unit 231 sets the boundary filter strength Bs of the deblocking filter 230 as shown in Table 2 below.
Figure JPOXMLDOC01-appb-T000004
Figure JPOXMLDOC01-appb-T000004
 表2に示すように、フィルタ制御部231は、ブロック対の少なくとも一方のブロックのtu_coded_flagが“1”である場合、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=1を設定する。 As shown in Table 2, the filter control unit 231 controls the deblocking filter 230 to perform the deblocking filter processing when the tu_coded_flag of at least one block of the block pair is "1". Specifically, the filter control unit 231 sets the boundary filter strength Bs = 1.
 <変更例2>
 上述した変更例1において、フィルタ制御部231は、ブロック対(ブロックP及びブロックQ)の少なくとも一方のブロックのtu_coded_flagが“1”である場合、境界フィルタ強度Bs=1を設定することにより、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御している。
<Change example 2>
In the above-mentioned modification 1, the filter control unit 231 sets the boundary filter strength Bs = 1 when the tu_coded_flag of at least one block of the block pair (block P and block Q) is “1”. The deblocking filter 230 is controlled so as to perform the blocking filter processing.
 また、フィルタ制御部231は、ブロック対(ブロックP及びブロックQ)の少なくとも一方のブロックにACTが適用されている場合においても、境界フィルタ強度Bs=1を設定することにより、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。 Further, the filter control unit 231 performs the deblocking filter processing by setting the boundary filter strength Bs = 1 even when the ACT is applied to at least one block of the block pair (block P and block Q). The deblocking filter 230 is controlled to do so.
 本変更例では、このような2段階の判定を1つにまとめることを可能とする。具体的には、フィルタ制御部231は、ブロック対の少なくとも一方のブロックにACTが適用されている場合、tu_coded_flag=“1”を設定する。これにより、境界フィルタ強度Bs=1が設定され、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御される(表3参照)。 In this modified example, it is possible to combine such two-step judgments into one. Specifically, the filter control unit 231 sets tu_coded_flag = "1" when ACT is applied to at least one block of the block pair. As a result, the boundary filter strength Bs = 1 is set, and the deblocking filter 230 is controlled so as to perform the deblocking filter processing (see Table 3).
Figure JPOXMLDOC01-appb-T000005
Figure JPOXMLDOC01-appb-T000005
 例えば、フィルタ制御部231は、ACTを用いてブロックが符号化されているか否かに基づいて、当該ブロックに対応するtu_coded_flagを変更し、tu_coded_flagに基づいてデブロッキングフィルタ230の境界フィルタ強度Bsを制御する。このようなtu_coded_flagの変更処理は、色空間逆変換部216により実行されてもよい。この場合、フィルタ制御部231の少なくとも一部が色空間逆変換部216に組み込まれていてもよい。 For example, the filter control unit 231 changes the tu_coded_flag corresponding to the block based on whether or not the block is encoded by using ACT, and controls the boundary filter strength Bs of the deblocking filter 230 based on the tu_coded_flag. do. Such a change process of tu_coded_flag may be executed by the color space inverse conversion unit 216. In this case, at least a part of the filter control unit 231 may be incorporated in the color space inverse conversion unit 216.
 具体的には、フィルタ制御部231は、ACTを用いてブロックが符号化されている場合、当該ブロックが非ゼロの変換係数を含むことを示すようにtu_coded_flagを変更する。すなわち、フィルタ制御部231は、ACTを用いてブロックが符号化されている場合、第1色成分の当該ブロックに対応するtu_y_coded_flagと、第2色成分の当該ブロックに対応するtu_cb_coded_flagと、第3色成分の当該ブロックに対応するtu_cr_coded_flagとのそれぞれに“1”を設定する。ここで、元々のtu_y_coded_flag、tu_cb_coded_flag、及びtu_cr_coded_flagが“0”であった場合でも、ACTが適用されたブロックについては、tu_y_coded_flag、tu_cb_coded_flag、及びtu_cr_coded_flagのいずれも“1”に変更されることになる。 Specifically, the filter control unit 231 changes tu_coded_flag to indicate that the block contains a non-zero conversion factor when the block is coded using ACT. That is, when the block is encoded by using the ACT, the filter control unit 231 has a tu_y_coded_flag corresponding to the block of the first color component, a tu_cb_coded_flag corresponding to the block of the second color component, and a third color. "1" is set for each of the tu_cr_coded_flag corresponding to the block of the component. Here, even if the original tu_y_coded_flag, tu_cb_coded_flag, and tu_cr_coded_flag are "0", the block to which the ACT is applied is changed to "tu_y_coded_flag, tu_cb_coded_flag", and both are changed to "code_flag".
 図5は、本変更例に係るフィルタ制御部231の動作を示す図である。 FIG. 5 is a diagram showing the operation of the filter control unit 231 according to this modified example.
 図5に示すように、ステップS11において、フィルタ制御部231は、エントロピー復号部200が出力するACT適用フラグに基づいて、当該ACT適用フラグに対応するブロックがACTを用いて符号化されているか否かを判定する。当該ブロックがACTを用いて符号化されていない場合(ステップS11:NO)、tu_coded_flag(tu_y_coded_flag、tu_cb_coded_flag、及びtu_cr_coded_flag)を変更することなく、処理が終了する。 As shown in FIG. 5, in step S11, the filter control unit 231 determines whether or not the block corresponding to the ACT application flag is encoded by using the ACT based on the ACT application flag output by the entropy decoding unit 200. Is determined. If the block is not coded using ACT (step S11: NO), the process ends without changing the tu_coded_flag (tu_y_coded_flag, tu_kb_coded_flag, and tu_cr_coded_flag).
 当該ブロックがACTを用いて符号化されている場合(ステップS11:YES)、ステップS12において、フィルタ制御部231は、tu_coded_flag(tu_y_coded_flag、tu_cb_coded_flag、及びtu_cr_coded_flag)に“1”を設定する。すなわち、フィルタ制御部231は、当該ブロックが非ゼロの変換係数を含むことを示すようにtu_coded_flagを変更する。 When the block is coded using ACT (step S11: YES), in step S12, the filter control unit 231 sets “1” for tu_coded_flag (tu_y_coded_flag, tu_cb_coded_flag, and tu_cr_coded_flag). That is, the filter control unit 231 changes tu_coded_flag so that the block includes a non-zero conversion coefficient.
 その後、フィルタ制御部231は、表3に従ってデブロッキングフィルタ230の境界フィルタ強度Bsを設定する。 After that, the filter control unit 231 sets the boundary filter strength Bs of the deblocking filter 230 according to Table 3.
 なお、本変更例では、tu_coded_flagそのものを書き換える一例について説明した。しかしながら、フィルタ制御部231は、tu_coded_flagの元の値(“1”又は“0”)を保持しつつ、tu_coded_flagの値を変更し、その後、デブロッキングフィルタ処理の後段で元の値に書き戻してもよい。 In this modification example, an example of rewriting tu_coded_flag itself has been described. However, the filter control unit 231 changes the value of tu_coded_flag while maintaining the original value (“1” or “0”) of tu_coded_flag, and then writes it back to the original value in the subsequent stage of the deblocking filter process. May be good.
 <変更例3>
 上述したように、ACTが適用されたブロックについては、逆変換処理により変換係数から予測残差が復元された後、逆ACTにより予測残差の色空間がYCgCo空間からRGB空間に逆変換される。このため、ある色成分のブロックに非ゼロの変換係数が存在する場合、逆ACTの際に当該非ゼロの変換係数が他の色成分のブロックに影響を与える。
<Change example 3>
As described above, for the block to which the ACT is applied, the predicted residual is restored from the conversion coefficient by the inverse transformation process, and then the color space of the predicted residual is inversely converted from the YCgCo space to the RGB space by the inverse ACT. .. Therefore, when a non-zero conversion coefficient exists in a block of a certain color component, the non-zero conversion coefficient affects the block of another color component at the time of inverse ACT.
 このため、ACTが適用される場合、非ゼロの変換係数の有無に基づくデブロッキングフィルタ230の境界フィルタ強度Bsの制御は適切に機能しない。このため、本変更例では、変換係数ではなく、逆変換処理後の予測残差に基づいてデブロッキングフィルタ230の境界フィルタ強度Bsを制御する。これにより、逆ACTの際に非ゼロの変換係数が他の色成分のブロックに影響を与えても、当該影響を受けた後の予測残差に基づいてデブロッキングフィルタ230の境界フィルタ強度Bsを適切に制御できる。 Therefore, when ACT is applied, the control of the boundary filter strength Bs of the deblocking filter 230 based on the presence or absence of the non-zero conversion coefficient does not function properly. Therefore, in this modification, the boundary filter strength Bs of the deblocking filter 230 is controlled based on the predicted residual after the inverse transformation processing, not on the conversion coefficient. As a result, even if the non-zero conversion coefficient affects the blocks of other color components during inverse ACT, the boundary filter intensity Bs of the deblocking filter 230 is set based on the predicted residual after the effect. Can be controlled appropriately.
 すなわち、本変更例に係るフィルタ制御部161及びフィルタ制御部231は、下記の表4に基づいてデブロッキングフィルタ230の境界フィルタ強度Bsを設定する。 That is, the filter control unit 161 and the filter control unit 231 according to this modification set the boundary filter strength Bs of the deblocking filter 230 based on Table 4 below.
Figure JPOXMLDOC01-appb-T000006
Figure JPOXMLDOC01-appb-T000006
 図6は、本変更例に係る符号化装置1の構成を示す図である。 FIG. 6 is a diagram showing a configuration of a coding device 1 according to this modified example.
 図6に示すように、符号化装置1において、フィルタ制御部161には、合成部150に入力される予測残差(復元予測残差)と同じ予測残差が入力される。ACTが適用されるブロックについては、逆ACT後の予測残差がフィルタ制御部161に入力されることになる。フィルタ制御部161は、ブロック対(ブロックP及びブロックQ)の少なくとも一方のブロックの復元予測残差が非ゼロの値を含む場合、デブロッキングフィルタ処理を行うようデブロッキングフィルタ160を制御する。具体的には、フィルタ制御部161は、境界フィルタ強度Bs=1を設定する。 As shown in FIG. 6, in the coding apparatus 1, the filter control unit 161 is input with the same predicted residual as the predicted residual (restored predicted residual) input to the synthesis unit 150. For the block to which the ACT is applied, the predicted residual after the inverse ACT is input to the filter control unit 161. The filter control unit 161 controls the deblocking filter 160 to perform the deblocking filter processing when the restored predicted residual of at least one block of the block pair (block P and block Q) contains a non-zero value. Specifically, the filter control unit 161 sets the boundary filter strength Bs = 1.
 図7は、本変更例に係る復号装置2の構成を示す図である。 FIG. 7 is a diagram showing the configuration of the decoding device 2 according to this modified example.
 図7に示すように、復号装置2において、フィルタ制御部231には、合成部220に入力される予測残差(復元予測残差)と同じ予測残差が入力される。ACTが適用されるブロックについては、逆ACT後の予測残差がフィルタ制御部231に入力されることになる。フィルタ制御部231は、ブロック対(ブロックP及びブロックQ)の少なくとも一方のブロックの復元予測残差が非ゼロの値を含む場合、デブロッキングフィルタ処理を行うようデブロッキングフィルタ230を制御する。具体的には、フィルタ制御部231は、境界フィルタ強度Bs=1を設定する。 As shown in FIG. 7, in the decoding device 2, the same predicted residual as the predicted residual (restored predicted residual) input to the synthesis unit 220 is input to the filter control unit 231. For the block to which the ACT is applied, the predicted residual after the inverse ACT is input to the filter control unit 231. The filter control unit 231 controls the deblocking filter 230 to perform the deblocking filter processing when the restored predicted residual of at least one block of the block pair (block P and block Q) contains a non-zero value. Specifically, the filter control unit 231 sets the boundary filter strength Bs = 1.
 [第2実施形態]
 上述の実施形態及びその変更例において、符号化ツールの1つであるACTが適用される一例について説明した。しかしながら、他の符号化ツールである予測残差合同符号化(Joint coding of chroma residual:JCCR)が適用される場合も、上記と同様な問題が生じ得る。このため、上述の実施形態及びその変更例をJCCRに適用し、上述の実施形態及びその変更例におけるACTをJCCRと適宜読み替えてもよい。例えば、次の表5に示すような境界フィルタ強度Bsの制御とすることができる。
[Second Embodiment]
In the above-described embodiment and its modification, an example in which ACT, which is one of the coding tools, is applied has been described. However, when another coding tool, Joint coding of chroma error (JCCR), is applied, the same problem as described above may occur. Therefore, the above-described embodiment and its modification may be applied to JCCR, and the ACT in the above-mentioned embodiment and its modification may be appropriately read as JCCR. For example, the boundary filter strength Bs can be controlled as shown in Table 5 below.
Figure JPOXMLDOC01-appb-T000007
Figure JPOXMLDOC01-appb-T000007
 JCCRは、色差成分の係数符号化モードである(非特許文献1参照)。JCCRでは、符号化装置1は、第1色差成分(Cb成分)及び第2色差成分(Cr成分)のそれぞれの予測残差の相関を利用して、第1色差成分の予測残差及び第2色差成分の予測残差から、1つの合同予測残差を生成する。例えば、符号化装置1は、第2色差成分の予測残差を正負反転したものを第1色差成分の予測残差と合成して合同予測残差を生成する。そして、符号化装置1は、生成した合同予測残差に対して変換処理、量子化処理及びエントロピー符号化処理を行って伝送する。 JCCR is a coefficient coding mode for color difference components (see Non-Patent Document 1). In JCCR, the coding apparatus 1 utilizes the correlation of the predicted residuals of the first color difference component (Cb component) and the second color difference component (Cr component) to obtain the predicted residual of the first color difference component and the second. One joint predicted residual is generated from the predicted residual of the color difference component. For example, the coding apparatus 1 generates a joint predicted residual by synthesizing the predicted residual of the second color difference component with the predicted residual of the first color difference component. Then, the coding apparatus 1 performs conversion processing, quantization processing, and entropy coding processing on the generated joint predicted residuals and transmits the generated joint prediction residuals.
 復号装置2は、伝送された合同予測残差から第1色差成分の予測残差及び第2色差成分の予測残差を再構成する。このように、2つの色差成分について1つの合同予測残差のみを伝送することで、符号化効率を向上させている。 The decoding device 2 reconstructs the predicted residual of the first color difference component and the predicted residual of the second color difference component from the transmitted joint predicted residual. In this way, the coding efficiency is improved by transmitting only one congruent predicted residual for the two color difference components.
 このように、本実施形態に係るデブロッキングフィルタ装置は、第1再構成ブロック(ブロックP)と第2再構成ブロック(ブロックQ)との境界に対するフィルタ処理を行うデブロッキングフィルタ(160、230)と、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)の少なくとも一方が、Cb色差成分及びCr色差成分のそれぞれの予測残差から1つの合同予測残差を生成するJCCR(Joint coding of chroma residual)を用いて符号化されているか否かに基づいて、デブロッキングフィルタ(160、230)の境界フィルタ強度Bsを制御するフィルタ制御部(161、231)と、を備える。 As described above, the deblocking filter device according to the present embodiment is a deblocking filter (160, 230) that performs a filtering process on the boundary between the first reconstructed block (block P) and the second reconstructed block (block Q). And JCCR in which at least one of the first reconstructed block (block P) and the second reconstructed block (block Q) generates one congruent predicted residual from the respective predicted residuals of the Cb color difference component and the Cr color difference component. It is provided with a filter control unit (161, 231) for controlling the boundary filter strength Bs of the deblocking filter (160, 230) based on whether or not it is encoded using (Joint coding of chroma residual).
 フィルタ制御部(161、231)は、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)の少なくとも一方がJCCRを用いて符号化されている場合、デブロッキングフィルタ(160、230)によるフィルタ処理を行うように境界フィルタ強度Bsを制御してもよい。 The filter control unit (161, 231) is a deblocking filter (160,) when at least one of the first reconstruction block (block P) and the second reconstruction block (block Q) is encoded using JCCR. The boundary filter strength Bs may be controlled so as to perform the filtering process according to 230).
 フィルタ制御部(161、231)は、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)の両方に非ゼロの変換係数が存在しない場合であっても、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)の少なくとも一方がJCCRを用いて符号化されている場合には、デブロッキングフィルタ(160、230)によるフィルタ処理を行うように境界フィルタ強度Bsを制御してもよい。 The filter control unit (161, 231) performs the first reconstruction even when the non-zero conversion coefficient does not exist in both the first reconstruction block (block P) and the second reconstruction block (block Q). When at least one of the block (block P) and the second reconstruction block (block Q) is encoded using JCCR, the boundary filter strength is to be filtered by the deblocking filter (160, 230). Bs may be controlled.
 本実施形態において、復号装置2のエントロピー復号部200は、JCCRを用いて符号化されているか否かを示すフラグを第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)のそれぞれについて取得してもよい。フィルタ制御部231は、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)のそれぞれについてのフラグに基づいて、デブロッキングフィルタ230の境界フィルタ強度Bsを制御してもよい。例えば、フィルタ制御部231は、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)の少なくとも一方のブロックの前記フラグが“1”である場合、デブロッキングフィルタ230によるフィルタ処理を行うように境界フィルタ強度Bsを制御してもよい。 In the present embodiment, the entropy decoding unit 200 of the decoding device 2 sets a flag indicating whether or not it is encoded by using JCCR in the first reconstruction block (block P) and the second reconstruction block (block Q). You may get each one. The filter control unit 231 may control the boundary filter strength Bs of the deblocking filter 230 based on the flags for each of the first reconstruction block (block P) and the second reconstruction block (block Q). For example, the filter control unit 231 filters the deblocking filter 230 when the flag of at least one of the first reconstruction block (block P) and the second reconstruction block (block Q) is “1”. The boundary filter strength Bs may be controlled so as to perform the above.
 本実施形態において、復号装置2のエントロピー復号部200は、非ゼロの変換係数を含むか否かを示すtu_coded_flagを第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)のそれぞれについてさらに取得してもよい。フィルタ制御部231は、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)のそれぞれについてのtu_coded_flagにさらに基づいて、デブロッキングフィルタ230の境界フィルタ強度Bsを制御してもよい。例えば、フィルタ制御部231は、第1再構成ブロック(ブロックP)及び第2再構成ブロック(ブロックQ)の少なくとも一方のブロックのtu_coded_flagが“1”である場合、デブロッキングフィルタ230によるフィルタ処理を行うように境界フィルタ強度Bsを制御してもよい。 In the present embodiment, the entropy decoding unit 200 of the decoding device 2 has tu_coded_flag indicating whether or not it includes a non-zero conversion coefficient in the first reconstruction block (block P) and the second reconstruction block (block Q), respectively. You may get more about. The filter control unit 231 may further control the boundary filter strength Bs of the deblocking filter 230 based on the tu_coded_flag for each of the first reconstruction block (block P) and the second reconstruction block (block Q). .. For example, when the tu_coded_flag of at least one of the first reconstructed block (block P) and the second reconstructed block (block Q) is "1", the filter control unit 231 performs the filter processing by the deblocking filter 230. The boundary filter strength Bs may be controlled as such.
 JCCRが適用される第1色差成分(Cb成分)及び第2色差成分(Cr成分)の各ブロックについては、上述したtu_coded_flagが“1”に設定されるものの、実際には一方の色成分に変換係数が存在しないことになる。このため、上述した変更例2と同様に、ある色成分について、非ゼロの変換係数が存在するか否かの判定に変えて、再構成された予測残差が非ゼロの値を含むか否かの判定を用いることが好ましい。 For each block of the first color difference component (Cb component) and the second color difference component (Cr component) to which JCCR is applied, although the above-mentioned tu_coded_flag is set to "1", it is actually converted to one color component. There will be no coefficient. Therefore, as in the above-mentioned modification 2, whether or not the reconstructed predicted residual includes a non-zero value instead of determining whether or not a non-zero conversion coefficient exists for a certain color component. It is preferable to use the determination.
 [その他の実施形態]
 上述した実施形態において、デブロッキングフィルタ230の制御として境界フィルタ強度Bsを制御する一例について主として説明した。しかしながら、境界フィルタ強度Bsの制御に限らず、フィルタ長の制御や、複数のフィルタの切り替え制御を行ってもよい。
[Other embodiments]
In the above-described embodiment, an example of controlling the boundary filter strength Bs as the control of the deblocking filter 230 has been mainly described. However, the control is not limited to the control of the boundary filter strength Bs, and the filter length may be controlled or a plurality of filters may be switched.
 上述した符号化装置1が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。また、復号装置2が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記録媒体であってもよい。 A program for causing a computer to execute each process performed by the above-mentioned coding device 1 may be provided. Further, a program for causing the computer to execute each process performed by the decoding device 2 may be provided. The program may be recorded on a computer-readable medium. Computer-readable media can be used to install programs on a computer. Here, the computer-readable medium on which the program is recorded may be a non-transient recording medium. The non-transient recording medium is not particularly limited, but may be, for example, a recording medium such as a CD-ROM or a DVD-ROM.
 符号化装置1が行う各処理を実行する回路を集積化し、符号化装置1を半導体集積回路(チップセット、SoC)により構成してもよい。復号装置2が行う各処理を実行する回路を集積化し、復号装置2を半導体集積回路(チップセット、SoC)により構成してもよい。 A circuit that executes each process performed by the coding device 1 may be integrated, and the coding device 1 may be configured by a semiconductor integrated circuit (chipset, SoC). A circuit that executes each process performed by the decoding device 2 may be integrated, and the decoding device 2 may be configured by a semiconductor integrated circuit (chipset, SoC).
 以上、図面を参照して実施形態について詳しく説明したが、具体的な構成は上述のものに限られることはなく、要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。 Although the embodiments have been described in detail with reference to the drawings above, the specific configuration is not limited to the above, and various design changes and the like can be made within a range that does not deviate from the gist.
 本願は、日本国特許出願第2020-101293号(2020年6月10日出願)及び日本国特許出願第2020-101913号(2020年6月11日出願)の優先権を主張し、その内容のすべてが参照により本願明細書に組み込まれている。 This application claims the priority of Japanese Patent Application No. 2020-101293 (filed on June 10, 2020) and Japanese Patent Application No. 2020-101913 (filed on June 11, 2020). All are incorporated herein by reference.

Claims (8)

  1.  原画像を分割して得たブロックを復号する復号装置であって、
     符号化ストリームを復号することで、前記ブロックに対応する変換係数を出力するエントロピー復号部と、
     前記変換係数に対して逆量子化処理及び逆変換処理を行うことで、前記ブロックに対応する予測残差を復元する逆量子化・逆変換部と、
     前記復元した予測残差と前記ブロックを予測して得た予測ブロックとを合成することで前記ブロックを復元する合成部と、
     前記復元したブロックと、前記ブロックに隣接する復元済ブロックとからなる一対のブロックの境界に対するフィルタ処理を行うデブロッキングフィルタと、
     前記一対のブロックの少なくとも一方のブロックが、Cb色差成分及びCr色差成分のそれぞれの予測残差から1つの合同予測残差を生成するJCCR(Joint coding of chroma residual)を用いて符号化されているか否かに基づいて、前記デブロッキングフィルタの境界フィルタ強度を制御するフィルタ制御部と、を備えることを特徴とする復号装置。
    It is a decoding device that decodes the block obtained by dividing the original image.
    An entropy decoding unit that outputs the conversion coefficient corresponding to the block by decoding the coded stream, and
    An inverse quantization / inverse transformation unit that restores the predicted residual corresponding to the block by performing inverse quantization processing and inverse transformation processing on the conversion coefficient.
    A compositing unit that restores the block by synthesizing the restored predicted residual and the predicted block obtained by predicting the block.
    A deblocking filter that filters the boundary of a pair of blocks consisting of the restored block and the restored block adjacent to the block.
    Is at least one of the pair of blocks encoded using a JCCR (Joint coding of chroma manual) that produces one joint predicted residual from the respective predicted residuals of the Cb color difference component and the Cr color difference component? A decoding device including a filter control unit that controls the boundary filter strength of the deblocking filter based on whether or not the deblocking filter is used.
  2.  前記フィルタ制御部は、前記一対のブロックの少なくとも一方のブロックが前記JCCRを用いて符号化されている場合、前記フィルタ処理を行うように前記境界フィルタ強度を制御する
     請求項1に記載の復号装置。
    The decoding device according to claim 1, wherein the filter control unit controls the boundary filter strength so as to perform the filter processing when at least one block of the pair of blocks is encoded by using the JCCR. ..
  3.  前記フィルタ制御部は、前記一対のブロックの両方に非ゼロの変換係数が存在しない場合であっても、前記一対のブロックの少なくとも一方のブロックが前記JCCRを用いて符号化されている場合には、前記フィルタ処理を行うように前記境界フィルタ強度を制御する
     請求項2に記載の復号装置。
    The filter control unit may use the JCCR to encode at least one block of the pair of blocks, even if both of the pair of blocks do not have a non-zero conversion factor. The decoding device according to claim 2, wherein the boundary filter strength is controlled so as to perform the filtering process.
  4.  前記エントロピー復号部は、前記JCCRを用いて符号化されているか否かを示すフラグを前記一対のブロックの各ブロックについて取得し、
     前記フィルタ制御部は、前記一対のブロックの各ブロックについての前記フラグに基づいて、前記デブロッキングフィルタの境界フィルタ強度を制御する
     請求項1乃至3のいずれか1項に記載の復号装置。
    The entropy decoding unit acquires a flag indicating whether or not it is encoded using the JCCR for each block of the pair of blocks.
    The decoding device according to any one of claims 1 to 3, wherein the filter control unit controls the boundary filter strength of the deblocking filter based on the flag for each block of the pair of blocks.
  5.  前記フィルタ制御部は、前記一対のブロックの少なくとも一方のブロックの前記フラグが“1”である場合、前記フィルタ処理を行うように前記境界フィルタ強度を制御する
     請求項4に記載の復号装置。
    The decoding device according to claim 4, wherein the filter control unit controls the boundary filter strength so as to perform the filter processing when the flag of at least one block of the pair of blocks is "1".
  6.  前記エントロピー復号部は、非ゼロの変換係数を含むか否かを示すtu_coded_flagを前記一対のブロックの各ブロックについてさらに取得し、
     前記フィルタ制御部は、前記一対のブロックの各ブロックについての前記tu_coded_flagにさらに基づいて、前記デブロッキングフィルタの境界フィルタ強度を制御する
     請求項4又は5に記載の復号装置。
    The entropy decoding unit further acquires tu_coded_flag indicating whether or not it contains a non-zero conversion coefficient for each block of the pair of blocks.
    The decoding device according to claim 4 or 5, wherein the filter control unit controls the boundary filter strength of the deblocking filter based on the tu_coded_flag for each block of the pair of blocks.
  7.  前記フィルタ制御部は、前記一対のブロックの少なくとも一方のブロックの前記tu_coded_flagが“1”である場合、前記フィルタ処理を行うように前記境界フィルタ強度を制御する
     請求項6に記載の復号装置。
    The decoding device according to claim 6, wherein the filter control unit controls the boundary filter strength so as to perform the filter processing when the tu_coded_flag of at least one of the pair of blocks is "1".
  8.  コンピュータを請求項1乃至7のいずれか1項に記載の復号装置として機能させることを特徴とするプログラム。 A program characterized in that a computer functions as the decryption device according to any one of claims 1 to 7.
PCT/JP2021/021816 2020-06-10 2021-06-08 Decoding device and program WO2021251400A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022530592A JPWO2021251400A1 (en) 2020-06-10 2021-06-08

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2020101293 2020-06-10
JP2020-101293 2020-06-10
JP2020101913 2020-06-11
JP2020-101913 2020-06-11

Publications (1)

Publication Number Publication Date
WO2021251400A1 true WO2021251400A1 (en) 2021-12-16

Family

ID=78845740

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/021816 WO2021251400A1 (en) 2020-06-10 2021-06-08 Decoding device and program

Country Status (2)

Country Link
JP (1) JPWO2021251400A1 (en)
WO (1) WO2021251400A1 (en)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
C. HELMRICH (FRAUNHOFER), H. SCHWARZ, T. NGUYEN, C. RUDAT, D. MARPE, T. WIEGAND (FRAUNHOFER HHI, B. RAY, G. VAN DER AUWERA, A. K. : "CE7-related: Alternative configuration of CE7-2.2 joint chroma residual coding", 15. JVET MEETING; 20190703 - 20190712; GOTHENBURG; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET 00935- V1, 2 July 2019 (2019-07-02), XP030220566 *

Also Published As

Publication number Publication date
JPWO2021251400A1 (en) 2021-12-16

Similar Documents

Publication Publication Date Title
JP7357736B2 (en) Encoding device, decoding device, and program
US11936885B2 (en) Decoding device, program, and decoding method
JP7357721B2 (en) Deblocking filter control device and program
WO2021251400A1 (en) Decoding device and program
WO2021251398A1 (en) Deblocking filter device, decoding device, and program
JP7418152B2 (en) Image encoding device, image encoding method, image decoding device, image decoding method
JP7069421B2 (en) Encoding device, decoding device, and program
WO2021054380A1 (en) Encoding device, decoding device, and program
WO2021045059A1 (en) Encoding device, decoding device, and program
JP7474772B2 (en) Encoding device, decoding device, and program
WO2021132404A1 (en) Encoding device, decoding device, and program
WO2021215454A1 (en) Encoding device, decoding device, and program
WO2021040036A1 (en) Encoding device, decoding device, and program
JP2021129148A (en) Prediction device, encoding device, decoding device, and program
JP2021052249A (en) Encoding device, decoding device, and program

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: 21821108

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022530592

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21821108

Country of ref document: EP

Kind code of ref document: A1