WO2020175145A1 - 画像処理装置及び画像処理方法 - Google Patents
画像処理装置及び画像処理方法 Download PDFInfo
- Publication number
- WO2020175145A1 WO2020175145A1 PCT/JP2020/005472 JP2020005472W WO2020175145A1 WO 2020175145 A1 WO2020175145 A1 WO 2020175145A1 JP 2020005472 W JP2020005472 W JP 2020005472W WO 2020175145 A1 WO2020175145 A1 WO 2020175145A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- block
- filter
- boundary
- unit
- image
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods 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 technology relates to an image processing device and an image processing method, and more particularly, for example, to an image processing device and an image processing method capable of suppressing block distortion.
- JVET Joint Video Experts
- VVC Very Video Coding
- Non-Patent Document 1 proposes that a block can be set to ISP (Intra Sub-Part it ions).
- a block set in the ISP can be divided into a plurality of sub-blocks (Sub-Part itions), and orthogonal transform can be performed in units of sub-blocks.
- Non-Patent Document 1 JVET-M0102-v5: CE3: Intra Sub-Partitions Coding Mode (version 7-date 2019-01-17)
- Block distortion may occur at a sub-block boundary that is a sub-block boundary obtained by dividing a block set in the ISP.
- the sub-block boundary (pixels in a line orthogonal to the sub-block boundary) is applied with a deblock filter. Not targeted.
- the present technology has been made in view of such a situation, and makes it possible to suppress block distortion.
- a first image processing device of the present technology is a decoding device that decodes a bit stream according to a block structure having a hierarchical structure in which a transform block, a prediction block, and a coding block are unified to generate a decoded image.
- a first image processing method of the present technique is to decode a bit stream according to a block structure having a hierarchical structure in which a transform block, a prediction block, and a coding block are unified to generate a decoded image. And applying a deblocking filter to pixels in a line orthogonal to a sub-block boundary which is a boundary of sub-blocks obtained by dividing the transform block of the decoded image.
- a bitstream is decoded according to a block structure having a unified hierarchical structure of a transform block, a prediction block, and a coding block, and a decoded image is obtained. Is generated. Then, the deblocking filter is applied to the pixels of the line orthogonal to the sub-block boundary which is the boundary of the sub-block obtained by dividing the transform block of the decoded image.
- the second image processing device is capable of oral-decoded images when encoding an image according to a block structure having a hierarchical structure in which a transform block, a prediction block, and a coding block are unified.
- a filter unit that applies a deblocking filter to pixels of a line orthogonal to a sub-block boundary that is a boundary of sub-blocks obtained by dividing the transform block in which intra prediction is performed in a local decoded image;
- An image processing apparatus comprising: an encoding unit that encodes the image using the filtered image generated by the filter unit.
- a second image processing method of the present technology is that a decoded oral image is encoded when an image is encoded according to a block structure having a hierarchical structure in which a transform block, a prediction block, and an encoding block are unified. Intra prediction of decoded image is performed ⁇ 2020/175 145 3 units (: 170? 2020 /005472
- the de-blocking filter is applied to the pixels of the line orthogonal to the sub-block boundary, which is the boundary of the sub-block dividing the transform block in which intra prediction is performed, of the verbal-decoded oral-decoded image to generate a filtered image. It Then, the image is encoded using the filtered image.
- the image processing device can be realized by causing a computer to execute a program.
- the program can be provided by recording it on a recording medium or by transmitting it via a transmission medium.
- Fig. 2 is a diagram for explaining a method of setting the clearance 3 in another application method of the deblocking filter.
- Fig. 3 is a diagram showing an example of two adjacent blocks that are adjacent to each other with a vertical block boundary, which is a block boundary in the vertical direction, and pixels (the pixel values of the pixels) within the block.
- Fig. 5 is a diagram showing an example of a filter type of a deblocking filter.
- FIG. 6 is a diagram for explaining inconvenience that may occur when deblocking filters are applied in parallel.
- FIG. 7 is a block diagram showing a configuration example of an embodiment of an image processing system to which the present technology is applied.
- FIG. 8 is a block diagram showing a detailed configuration example of the encoder 11.
- Fig. 9 is a flowchart explaining an example of encoding processing of the encoder 11 1.
- FIG. 10 is a block diagram showing a detailed configuration example of the decoder 51.
- FIG. 11 is a flowchart explaining an example of the decoding process of the decoder 51.
- FIG. 12 A block diagram showing a configuration example of a deblocking filter (DF) 3 1 a.
- FIG. 13 is a diagram showing an example of a setting method of the boundary strength setting unit 26 10b S.
- FIG. 14 A flow chart illustrating an example of block boundary determination processing for determining a block boundary to which a deblock filter can be applied.
- FIG. 15 is a flowchart illustrating an example of the process of the deblocking filter 3 1 a performed on a partial block boundary determined to be a sub-block boundary in the block boundary determination process.
- FIG. 16 is a block diagram showing a configuration example of an embodiment of a computer to which the present technology is applied.
- REF6 J. Boyce (Intel), Y. Ye (InterDigital), Y. -W. Huang (Mediatek ), M. Karczewicz (Qualcomm), E. Francois (Technicolor), W. Husak (Dol by), J. Ridge (Nokia), A. Abbas (GoPro), “Two tier test model” ,JVET-J0093 ,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO /IEC JTC 1/SC 29/WG 11 10th Meeting: San Diego, US, 1020 Apr. 2018
- REF7 S. De-Luxan-Hernandez, V. George, J. Ma, T. Nguyen, H.
- REF8 M. Ikeda, T. Suzuki (Sony), D. Rusanovskyy, M. Karczewicz (Qu alcomm), W. Zhu, K. Misra, P. Cowan, A. Segal l (Sharp Labs of America ), K. Andersson, J. Enhorn, Z. Zhang, R. Sjoberg (Ericsson) ,”CE 11.1 ⁇ 02020/175 145 6 boxes (: 17 2020 /005472
- the processing relating to the deblocking filter in the existing image coding system such as HEVC includes filter determination (application necessity determination and filter strength determination) and filtering (filter application).
- filter determination application necessity determination and filter strength determination
- filtering filter application
- the necessity of applying the deblocking filter means whether or not the deblocking filter is applied. Determining whether to apply the deblock filter means determining whether to apply the deblock filter. In addition, the determination result of the application necessity determination is the result of determining whether to apply the deblocking filter. The determination result of the necessity/unnecessity determination may be information indicating whether to apply or not to apply.
- the filter strength determination means when a deblocking filter is applied, to determine (determine) the filter strength of the deblocking filter to be applied. For example, if the deblocking filter includes a weak filter and a strong filter that has more taps than the weak filter, that is, if the filter strength is strong, the deblocking filter applied to the pixel is determined by the weak filter. It is determined (determined) whether to use a filter or a strong filter.
- whether the deblocking filter is not applied or the type of the deblocking filter to be applied is determined by the application necessity determination and the filter strength determination.
- the deblocking filter when there are a weak filter and a strong filter as the deblocking filter, the deblocking filter is not applied, the weak filter is applied, or the strobe filter is used in the application necessity determination and the filter strength determination. It is determined to apply the filtering filter.
- the application necessity determination and the filter strength determination are collectively referred to as a filter determination.
- the decoded image includes a oral-decoded image that is orally-decoded at the time of encoding.
- filter determination is performed.
- the application necessity determination is performed to determine whether to apply the deblocking filter to the block boundary (B lock Boundary) of the decoded image.
- the block boundary is specified based on the block structure of the Quad-Tree Block Structure described in Reference REF2. Specifically, of the 8 ⁇ 8 pixel block (sample grid) edge, which is the smallest block unit, the TU (Transform Un it) boundary or the PU (Pred i ct i on Un it) boundary Edges that satisfy at least one of the conditions are specified as block boundaries in HEVC.
- the application necessity determination is performed based on the boundary strength of a block boundary (Boundary Strength: hereinafter, also referred to as bS).
- b S is 4 lines in the direction orthogonal to the partial block boundary (part of the block boundary) which is the processing unit when performing the filter judgment (application necessity judgment) of the deblock filter on the block boundary.
- the filter application unit for applying the deblock filter is set every 4 lines of the filter application unit.
- the block boundary is a vertical block boundary
- the line of the filter application unit is a horizontal line (row) orthogonal to the vertical block boundary.
- the line of the filter application unit is a vertical line (column) orthogonal to the horizontal block boundary.
- FIG. 1 is a diagram illustrating a method of setting b S in HEVC.
- b S is a condition A that is a condition related to intra prediction, a condition B 1 that is a condition related to a significant coefficient of the Y component, and a motion vector (MV) and a reference image. It is set based on the truth of condition B2 (whether or not it is satisfied), which is the condition for (reference picture).
- B S is set to 2 if condition A is true. Further, b S is set to 1 when condition A is false and at least one of condition B 1 and condition B 2 is true. Then, b S is set to 0 when condition A, condition B 1, and condition B 2 are all false.
- the condition A, condition B 1, and condition B 2 shown in FIG. 1 are as follows. Also, here, to simplify the explanation, the block boundary is, for example, a vertical block boundary.
- Condition A Of b sandwich the block boundary includes pixels uppermost line out of the lines orthogonal to the block boundary to be set S CU (Cod i ng Un it ), _ how any even rather small
- the prediction mode of is the intra prediction mode.
- Condition B 1 The block boundary is a TU boundary, and at least one of the two TUs that sandwich the block boundary and include the pixel of the uppermost line of the lines orthogonal to the block boundary for which b S is set Condition where there is a significant coefficient of the Y component B 2: The difference in MV between two CUs that include the pixel of the uppermost line orthogonal to the block boundary for which b S is set and that sandwiches the block boundary is eliminated. The pair value is 1 pixel or more, or the reference image for motion compensation is different, or the number of MVs is different.
- the deblock filter for the luminance component (Y component) of the decoded image can be applied to the block boundary in which b S set as described above is set to 1 or more.
- the determination result of whether or not to apply the deblocking filter to the luminance component of the decoded image may differ depending on whether or not the conditions B 1 and B 2 are satisfied.
- a strong filter having a large filter strength and a weak filter having a small filter strength are prepared as deblocking filters for the luminance component of the decoded image.
- b S is 1 or more
- the process related to the deblocking filter for the brightness component of the decoded image is followed by the determination of the filter strength and the filtering after further application necessity determination based on the additional conditions is performed. Details of these processes are described in reference REF2, The description here is omitted.
- the deblocking filter for the color difference components (U component, V component) of the decoded image in HEVC is applied only to the block boundary where b S is 2. Therefore, as shown in Fig. 1, whether or not the conditions B 1 and B 2 are satisfied does not affect the determination of whether or not the deblocking filter is applied to the color difference components of the decoded image in HEVC.
- the deblock filter that can be applied to the color difference component of the decoded image is only the weak filter. Therefore, it is not necessary to determine the filter strength for the chrominance component of the decoded image, and when b S is 2, the weak filter is applied to the chrominance component of the decoded image.
- a block having a larger size than the block division by the Quad-Tree B lock Structure in the HEVC is used. Can be selected. If the block size is large in the flat area (area where the pixel value changes within the area is small), block distortion is likely to occur. Therefore, in a VVC in which a block of a larger size can be selected, if a weak filter is the only deblocking filter that can be applied to the chrominance component of the decoded image as in HEVC, there is significant block distortion in the chrominance component. There was a risk that they would remain. In view of such a situation, it is desired to improve the deblocking filter for the color difference component of the decoded image.
- the deblocking filter that can be applied to the chrominance component is changed to two types in the same way as the deblocking filter that can be applied to the luminance component, and the chrominance component is also strengthened. It is proposed that a filter can be applied. Also, it has been proposed that the deblocking filter can be applied to the color difference components of the decoded image not only when b S is 2, but also when b S is 1.
- FIG. 2 illustrates a method of setting b S in another application method of the deblocking filter. ⁇ 2020/175 145 10 boxes (: 170? 2020 /005472
- FIG. 1 A first figure.
- the case 3 is set based on the above-mentioned conditions, condition 1 and condition 2. However, as mentioned above, not only when the slag 3 is 2,
- the deblocking filter can be applied to the color difference components of the decoded image. As shown in Fig. 2, depending on whether Condition 1 and Condition 2 are satisfied, the judgment result of the decision whether or not to apply the deblocking filter to the color difference components (re-component, V-component) of the decoded image Can be different.
- FIG. 3 is a diagram showing an example of two adjacent blocks, which are adjacent to each other across a vertical block boundary, which is a vertical block boundary, and pixels (pixel values of) the pixels in the block. Is.
- FIG. 3 shows an example in which the block edge and the block edge are blocks of 4 ⁇ 4 pixels, but the matters described here are similarly applicable to blocks of other sizes.
- the pixel value (and the pixel) in the block is It is indicated by the symbol.
- _1 is the column index, and ⁇ is the row index.
- the column indexes are numbered 0, 1, 2, 3 in order from the column closest to the vertical block boundary, Tomomi (from left to right in the figure).
- the line index” is numbered 0, 1, 2, 3 from top to bottom.
- the pixel value (and pixel) in block 9 is indicated by the symbol. Is the column index and is the row index.
- the column indexes are numbered 0, 1, 2, 3 in order from the column closest to the vertical block boundary Mimi (from right to left in the figure).
- the pixel value is a brightness component or a color difference component.
- the block boundary is defined as a vertical block boundary. However, the block boundary is considered as a horizontal block boundary and the block boundary is defined as a horizontal block boundary. ⁇ 2020/175 145 1 1 ⁇ (: 170? 2020 /005472
- a wall and a wall block can be regarded as two adjacent blocks that are adjacent to each other with the horizontal block boundary wall between them.
- ⁇ is the row index and ⁇ is the column index. Is also the same.
- the filter determination is performed using the following three conditions after the threshold 3 is set as described with reference to Fig. 2.
- the filter determination is performed in units of four lines for the luminance component, and for the color difference component, in units of line of the color difference component corresponding to the four lines of the luminance component.
- the horizontal and vertical densities of the pixels of the color difference component are respectively the horizontal and vertical directions of the luminance component pixels. It is 1/2 of the density in the direction.
- the color difference component is subjected to the filter determination in units of two lines of color difference components corresponding to four lines of the luminance component. Be seen.
- the deblock filter is applied to the vertical block boundary Tami (horizontal pixel orthogonal to the vertical block boundary) for the color difference component.
- the partial vertical block boundary which is the processing unit when determining whether to apply, is the vertical block boundary for two lines of the color difference components that are continuous in the vertical direction (of the vertical block boundaries, the horizontal color difference component is continuous. It is a part orthogonal to the two lines). The color difference component filter determination is performed for each such partial vertical block boundary.
- the block edges and the block edges shown in Fig. 3 are the blocks of the luminance component.
- the filter judgment of the luminance component is performed for the line 1--11, the line !_ 1 2, and the line !_ 2 1 and the line !_ 2 2 for the four vertical partial block boundaries. ..
- the block and the block shown in Fig. 3 are blocks of the color difference component.
- the filter judgment of the color difference component is performed on lines 1-111 and ⁇ 2020/175 145 12 (: 170? 2020 /005472
- the filter judgment for the partial vertical block boundary 1 is performed using the horizontal (color difference component) lines !_ 1 1 and line !_ 1 2 (pixels) that are orthogonal to the partial vertical block boundary 1 Is done.
- the filter judgment for the partial vertical block boundary 2 is performed using the horizontal lines !_ 2 1 and line !_ 2 2 which are orthogonal to the partial vertical block boundary 2.
- condition ⁇ 91 and condition ⁇ 9 2 are true in the application necessity determination.
- variable 6 3 in the condition ⁇ 9 2 is an edge determination threshold value, and the variable 6 3 is given according to the quantization parameter.
- the variables under Condition 0 92 are set by the following equations (1) to (7).
- ⁇ 1 90 ( ⁇ 0+( ⁇ 0
- ⁇ ⁇ 1 ⁇ 1 ⁇ 1 + ( ⁇ 1
- ⁇ 1 ⁇ 1 ⁇ 90 + ⁇ 1 ⁇ 91
- Condition 092 is different except that the lines used for filter determination are different. This is the same as the condition used in the filter judgment of the deblocking filter applied to the luminance component in (hereinafter, referred to as the condition for the luminance component).
- the condition for the luminance component the pixels of the first line and the pixels of the fourth line are used to define the partial vertical block boundaries for four lines (segments) (four of the vertical block boundaries that are continuous in the vertical direction). Filter judgment is performed for each (orthogonal portion).
- the color format is the 112 420 format
- the density of each pixel in the horizontal and vertical directions of the color difference component (II component, V component) is half that of the brightness component.
- the four lines of the luminance component correspond to the two lines of the color difference component. Therefore, as described above, in the color format component, the color difference component has a partial vertical block boundary (for example, a partial vertical block boundary 1 or 2) corresponding to two lines of the color difference component corresponding to four lines of the luminance component. 2) every time, the filter judgment is performed by using the pixels of the first line and the pixels of the second line of the color difference component orthogonal to the partial vertical block boundary.
- the filter strength determination as a determination of which of the strong filter and the weak filter is to be applied, for example, it is determined whether or not the condition ⁇ 93 is true. 6 ⁇ 9 is condition ⁇ 9
- the size of the block in the horizontal direction on the boundary of the partial vertical block that is the target of the filter determination as in 1 ⁇ 1 ⁇ 1/ ⁇ /_1°11;11 and 1 ⁇ 1 ⁇ 116_19111; in 1, and The vertical size.
- ⁇ and ⁇ are the indexes of the columns in the above-mentioned block and block 9, respectively, and since the row indices are the same in Eqs. (8) to (13), they are omitted.
- % is a parameter given according to the quantization parameter.
- _1 3 (3, 1), (;) has the value ⁇ Represents the clibbing process of clipping in the range of.
- a weak filter applied to the color difference component and the luminance component Therefore, a weak filter applied to the luminance component can be adopted.
- the block structure is a transform block that is a unit of orthogonal transform! 11 (1>3 1 : ⁇ "111 _
- the master _1 ( ⁇ ⁇ , and the ⁇ strike, which is the coding block that is the unit of coding) has a unified hierarchical structure in the same block.
- the block set to 13? is divided into sub-blocks by dividing into two blocks in the same horizontal or vertical direction (one-dimensional direction) for blocks with 64 or more pixels (the number of luminance components). Or it can be performed by selecting 4 divisions.
- the block set in step 2 can be divided into two equal or four equal parts in the horizontal or vertical direction. Therefore, if the horizontal and vertical lengths of a block are expressed as WX H, the block consists of 2 subblocks of 1X ⁇ 2, 2 subblocks of W/2 XH, and 4 subblocks of 1X ⁇ 4. It can be divided into blocks or 4 sub-blocks of W/4X H.
- the block boundary (sub-block boundary) of the sub block is not a target to which the deblock filter is applied.
- the deblock filter can be applied with the subblock boundary (pixels of the line orthogonal to the subblock boundary) as the target of the deblock filter application. As a result, it is possible to suppress block distortion that occurs at the sub-block boundary.
- b S that is the same as b S (BS) set at the block boundary is set as b S at the sub block boundary.
- Deblock filter can be applied to sub-block boundary.
- b S set at the block boundary is 2 when the block adjacent to the block boundary is an intra-predicted block.
- b S of the sub-block boundary can be set to 1, for example.
- FIG. 5 is a diagram showing an example of a filter type of a deblocking filter.
- the filter type (type) of the deblocking filter for example, a long filter, a strong filter, and a weak filter can be adopted.
- the long filter, strong filter, and weak filter are filters with strong filter strength (high smoothness) in that order.
- the deblocking filter is applied to a predetermined number of pixels that are consecutively adjacent to the block boundary BB among the pixels on the line orthogonal to the block boundary BB. here ⁇ 2020/175 145 17 ⁇ (: 170? 2020/005472
- the pixel to which the deblocking filter is applied is also referred to as an application target pixel.
- a pixel that is not a target pixel but is referred to when the deblocking filter is applied, that is, a pixel used for a filter operation as the application of the deblocking filter is also referred to as a reference pixel.
- the target pixel may be referred to when the deblock filter is applied.
- the block boundary is a vertical block boundary
- the eighth pixel from the block boundary is the reference pixel.
- the long filter can be applied to (a pixel of) a block whose one side is 32 pixels or more.
- the strong filter among the pixels on the line orthogonal to the block boundary, the three pixels that are adjacent to the left of the block boundary and are adjacent to the right of the block boundary. Three adjacent pixels are the applicable pixels.
- the fourth pixel from the block boundary is the reference pixel.
- the two pixels that are adjacent to the left of the block boundary and are adjacent to the right of the block boundary are the applicable pixels.
- the third pixel from the block boundary is the reference pixel.
- the first pixel from the block boundary that is, the one pixel adjacent to the left of the block boundary, and Only one pixel adjacent to the right can be the applicable pixel.
- the second and third pixels from the block boundary are the reference pixels.
- a block of 64 pixels or more set to 13? may be divided into sub-blocks by dividing horizontally or vertically into two or four in the same direction. it can. Therefore, the block may be divided into sub-blocks of block size I X, 1, 2 X 1X1, 2, 4 X 1X1, X 4. For example, if the block is a 4 ⁇ 16 pixel block, the block may be divided into 2 ⁇ 16 pixel or 1 ⁇ 16 pixel block size sub-blocks.
- the deblocking filter can be applied in parallel to a plurality of block boundaries (pixels adjacent to each other).
- the deblock filter can be applied in parallel (simultaneously) to the pixels adjacent to each vertical block boundary Tami in a certain horizontal line.
- applying deblocking filters in parallel to a plurality of vertical block boundaries is also referred to as applying deblocking filters in parallel.
- Fig. 6 is a diagram for explaining the inconvenience that may occur when the deblocking filters are applied in parallel.
- Figure 6 shows a horizontal line where subblocks with a size of 2 x 1 ⁇ 1 may be arranged horizontally! -Represents a pixel.
- the pixels 1 to 3 are the target pixels.
- the pixels 92 and 92 to be applied pixels, and the reference pixel 3 are subjected to the weak filter to the vertical block boundary 2, In this case, it also becomes the applicable pixel.
- the pixel value (luminance component) of the pixels 91 to 93 is before and after the weak filter is applied to the vertical block boundary ⁇ 1 and before and after the weak filter is applied to the vertical block boundary ⁇ 2. Changes. Then, due to the change, the pixel values of the application target pixels 1 and 2 change due to the timing when the weak filter is applied to the vertical block boundaries MINIMAMI 1 and MINMI 2.
- the target pixels 91 and Regarding 2 there may be a conflict in writing pixel values depending on whether the weak filter is applied to the vertical block boundary method 1 and the weak filter is applied to the vertical block boundary method 12.
- the deblock filter is suitable at the subblock boundary of 1. ⁇ 2020/175 145 20 units (: 170? 2020 /005472
- the deblocking filter at the subblock boundary which is an adjacent subblock boundary, is 1.
- the deblocking filter cannot be applied so that it does not include pixel 1 or blocks 3 and 1 to 3 referred to in the application. Therefore, the application of the deblocking filter is limited.
- the deblock filter when the size of the subblock in the direction orthogonal to the subblock boundary is 1 or 2 pixels, that is, the block size of the subblock adjacent to the subblock boundary is 1 X 1 ⁇ 1, X 1, 2 X 1X1, or 2, the deblock filter is applied at the subblock boundary of 1 and the deblock filter at the adjacent subblock boundary is applied It is not possible to apply a deblock filter so that the referenced pixel is not included.
- the application of the deblocking filter is limited at the sub-block boundary of the sub-block having a block size of I X 1 ⁇ 1, 1, 2 X 1X1, or 2. This makes it possible to prevent inconveniences when the deblocking filters are applied in parallel.
- the target pixel to which the weak filter is applied at the sub-block boundary of 1 includes the pixel referenced by the application of the weak filter at the adjacent sub-block boundary. You can apply a weak filter to prevent it from happening.
- the deblock filter selected by a predetermined method from the weak filter, the strong filter, and the long filter can be applied.
- FIG. 7 is a block diagram showing a configuration example of an embodiment of an image processing system to which the present technology is applied.
- the image processing system 10 has an image processing device as an encoder 11 and an image processing device as a decoder 5 1.
- the encoder 11 encodes the original image to be encoded supplied thereto and outputs an encoded bit stream obtained by the encoding.
- the encoded bit stream is supplied to the decoder 51 via a recording medium or transmission medium (not shown).
- the decoder 51 decodes the coded bit stream supplied thereto and outputs a decoded image obtained by the decoding.
- the (conversion block), the block (prediction block), and the (encoding block) are unified into the same block. Coding and decoding are performed according to the structured block structure, respectively.
- FIG. 8 is a block diagram showing a detailed configuration example of the encoder 11 of FIG.
- the encoder 11 includes an A/D conversion unit 21, a rearrangement buffer 22, an operation unit 23, an orthogonal transformation unit 24, a quantization unit 25, and a lossless coding unit 26. , And a storage buffer 27. Further, the encoder 11 includes an inverse quantization unit 28, an inverse orthogonal transform unit 29, a calculation unit 30, a frame memory 32, a selection unit 33, an intra prediction unit 34, a motion prediction compensation unit 35, It has a prediction image selection unit 36 and a rate control unit 37. Also, the encoder 11 has a deblocking filter 31a, an adaptive offset filter 41, and an ALF (adaptive loop loop iter) 42.
- ALF adaptive loop loop iter
- the A/D conversion unit 21 performs A/D conversion of the original image of the analog signal (encoding target) into the original image of the digital signal and supplies the original image to the rearrangement buffer 22 for storage.
- the encoder 11 can be configured without the A/D converter 21.
- the reordering buffer 22 reorders the frames of the original image in the order from the display order to the coding (decoding) according to the GOP (Group Of Picture), and the operation section 2 3 and the intra prediction section 3 4 and the motion prediction/compensation unit 35.
- GOP Group Of Picture
- the calculation unit 23 is a prediction image selection unit based on the original image from the rearrangement buffer 22.
- the prediction image supplied from the intra prediction unit 34 or the motion prediction compensation unit 35 is subtracted via 36, and the residual (prediction residual) obtained by the subtraction is supplied to the orthogonal transformation unit 24. ..
- the orthogonal transform unit 24 performs an orthogonal transform such as discrete Cosine transform or Karhunen-Loeve transform on the residual supplied from the arithmetic unit 23, and The obtained orthogonal transform coefficient is supplied to the quantizer 25.
- an orthogonal transform such as discrete Cosine transform or Karhunen-Loeve transform
- the quantization unit 25 quantizes the orthogonal transformation coefficient supplied from the orthogonal transformation unit 24.
- the quantization unit 25 sets the quantization parameter based on the target value of the code amount (code amount target value) supplied from the rate control unit 37, and quantizes the orthogonal transform coefficient.
- the quantization unit 25 supplies the quantized coded data, which is the orthogonal transform coefficient, to the lossless coding unit 26.
- the lossless encoding unit 26 encodes the quantized orthogonal transform coefficient as the encoded data from the quantization unit 25 using a predetermined lossless encoding method.
- the lossless encoding unit 26 obtains, from each block, the encoding information necessary for the decoding in the decoding device 170 out of the encoding information regarding the predictive encoding in the encoder 1 1. To do.
- the coding information for example, prediction modes of intra prediction and inter prediction, motion information such as motion vectors, code amount target values, quantization parameters, picture types (I, P, B), There are filter parameters for the deblock filter 3 1 a and the adaptive offset filter 4 1.
- the prediction mode can be acquired from the intra prediction unit 34 and the motion prediction compensation unit 35.
- the motion information can be acquired from the motion prediction/compensation unit 35.
- the filter parameters of the deblocking filter 3 1a and the adaptive offset filter 41 can be obtained from the deblocking filter 3 1a and the adaptive offset filter 4 1, respectively.
- the lossless encoding unit 26 converts the encoded information into, for example, CAVLC (Context-Adapt i ve ar i ab le Length Cod i ng) and CABAC (Context-Adapt i ve Binary Ar i thmet ic). Coding) such as variable length coding or arithmetic coding or other lossless coding, and includes the coded information after coding and the coded data from the quantizer 25 (multiplexed ) Generates an encoded bit stream and supplies it to the accumulation buffer 27.
- CAVLC Context-Adapt i ve ar i ab le Length Cod i ng
- CABAC Context-Adapt i ve Binary Ar i thmet ic
- the accumulation buffer 27 temporarily accumulates the encoded bit stream supplied from the lossless encoding unit 26. Encoded bits stored in storage buffer 27 ⁇ 2020/175 145 24 ⁇ (: 170? 2020 /005472
- the stream is read and transmitted at a predetermined timing.
- the encoded data that is the orthogonal transform coefficient quantized in the quantization unit 25 is supplied to the lossless encoding unit 26 and also to the inverse quantization unit 28.
- the inverse quantization unit 28 inversely quantizes the quantized orthogonal transform coefficient by a method corresponding to the quantization by the quantization unit 25, and converts the orthogonal transform coefficient obtained by the inverse quantization into an inverse orthogonal transform coefficient. Supply to part 29.
- the inverse orthogonal transform unit 29 performs an inverse orthogonal transform on the orthogonal transform coefficient supplied from the inverse quantization unit 28 by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 24, and then performs the inverse orthogonal transform.
- the residual obtained as a result of the conversion is supplied to the arithmetic unit 30.
- the calculation unit 30 adds the residual image supplied from the inverse orthogonal transform unit 29 to the prediction image selection unit.
- Predicted images supplied from the intra prediction unit 34 or the motion prediction/compensation unit 35 are added via 36, thereby obtaining (a part of) the decoded image obtained by decoding the original image and outputting it.
- the decoded image output from the arithmetic unit 30 is supplied to the deblocking filter 3 13 or the frame memory 3 2.
- the frame memory 32 includes the decoded image supplied from the arithmetic unit 30 and the eight!
- Deblocking filter 3 1 3, adaptive offset filter 4 1, and 4 Temporarily stores the decoded image (filter image) to which 2 is applied.
- the decoded image stored in the frame memory 32 is supplied to the selection unit 33 at a necessary timing as a reference image used for generating a predicted image.
- the selection unit 33 selects the supply destination of the reference image supplied from the frame memory 32.
- intra prediction is performed in the intra prediction unit 34
- the selection unit 33 supplies the reference image supplied from the frame memory 32 to the intra prediction unit 34.
- inter prediction is performed in the motion prediction/compensation unit 35
- the selection unit 33 supplies the reference image supplied from the frame memory 32 to the motion prediction compensation unit 35.
- the intra prediction unit 34 uses the original image supplied from the rearrangement buffer 22 and the reference image supplied from the frame memory 3 2 via the selection unit 3 3, ⁇ 2020/175 145 25 horses (: 170? 2020 /005472
- Intra prediction is performed.
- the intra-prediction unit 34 obtains a predetermined cost function (for example, The optimal intra prediction mode is selected based on the cost) and the predicted image generated from the reference image in the optimal intra prediction mode is supplied to the predicted image selection unit 36.
- the intra prediction unit 34 appropriately supplies the prediction mode indicating the intra prediction mode selected based on the cost function to the lossless encoding unit 26 and the like.
- the motion prediction/compensation unit 35 uses the original image supplied from the rearrangement buffer 22 and the reference image supplied from the frame memory 3 2 via the selection unit 3 3 to perform motion prediction (inter prediction). ) I do. Furthermore, the motion prediction/compensation unit 35 performs motion compensation according to the motion vector detected by motion prediction, and generates a predicted image. The motion prediction/compensation unit 35 performs inter prediction using a plurality of inter prediction modes prepared in advance, and generates a predicted image from a reference image.
- the motion prediction/compensation unit 35 selects the optimum inter prediction mode based on the predetermined cost function of the predicted image obtained for each of the plurality of inter prediction modes. Further, the motion prediction/compensation unit 35 supplies the prediction image generated in the optimum inter prediction mode to the prediction image selection unit 36.
- the motion prediction/compensation unit 35 is necessary when decoding the prediction mode indicating the inter prediction mode selected based on the cost function or the coded data encoded in the inter prediction mode.
- the motion information such as the motion vector is supplied to the lossless encoding unit 26.
- the prediction image selection unit 36 selects the source of the prediction image to be supplied to the calculation unit 23 and the calculation unit 30 from the intra prediction unit 34 and the motion prediction/compensation unit 35, and then The predicted image supplied from the selected supplier is supplied to the arithmetic units 23 and 30.
- the rate control unit 37 Based on the code amount of the encoded bit stream accumulated in the accumulation buffer 27, the rate control unit 37 prevents the occurrence of overflow or underflow by the quantization unit 25. Controls the rate of activation. That is, the laser control unit 37 determines the overflow and underflow of the accumulation buffer 27. ⁇ 2020/175 145 26 ⁇ (: 170? 2020 /005472
- the target code amount of the coded bit stream is set so as not to occur and is supplied to the quantization unit 25.
- the deblocking filter 3 13 applies a deblocking filter to the decoded image from the operation unit 30 as necessary, and a decoded image (filter image) to which the deblocking filter is applied or a deblocking filter is applied.
- the decoded image to which the filter has not been applied is supplied to the adaptive offset filter 41.
- the adaptive offset filter 41 applies the adaptive offset filter to the decoded image from the deblocking filter 3 1 3 as needed, and the decoded image to which the adaptive offset filter is applied (filter image). , Or supply the decoded image to which the adaptive offset filter has not been applied to 8!
- Eight!_d 4 2 is the decoded image from the adaptive offset filter 4 1. Apply as needed, The decoded image to which is applied, or The decoded image to which is not applied is supplied to the frame memory 3 2.
- FIG. 9 is a flowchart illustrating an example of the encoding process of the encoder 11 of FIG.
- the 8/ ⁇ conversion unit 21 converts the original image into 8/, and supplies it to the rearrangement buffer 2 2 and the process proceeds to step 3 1 2. ..
- step 312 the rearrangement buffer 22 stores the original image from the eight/transformer 21 and rearranges and outputs the original image in the encoding order, and the process proceeds to step 313.
- step 3 13 the intra prediction unit 34 performs the intra prediction process in the intra prediction mode, and the process proceeds to step 3 14.
- the motion prediction/compensation unit 35 uses motion prediction and motion compensation in the inter prediction mode. ⁇ 2020/175 145 27 ⁇ (: 170? 2020 /005472
- the inter motion prediction process is performed, and the process proceeds to step 3 15.
- step 315 the prediction image selection unit 36 determines the optimum prediction mode based on each cost function obtained by the intra prediction unit 34 and the motion prediction compensation unit 35. Then, the prediction image selection unit 36 selects and outputs the prediction image in the optimum prediction mode among the prediction image generated by the intra prediction unit 34 and the prediction image generated by the motion prediction compensation unit 35. Then, the process proceeds from step 3 15 to step 3 16.
- step 316 the arithmetic unit 23 returns the residual image between the target image to be encoded, which is the original image output from the rearrangement buffer 22 and the predicted image output from the predicted image selection unit 36. The difference is calculated and supplied to the orthogonal transform unit 24, and the process proceeds to step 3 17.
- step 317 orthogonal transform section 24 orthogonally transforms the residual from computing section 23, supplies the resulting orthogonal transform coefficient to quantizing section 25, and performs processing. , Go to step 3 18.
- step 3 18 the quantizer 25 quantizes the orthogonal transform coefficient from the orthogonal transformer 24, and the quantized coefficient obtained by the quantization is used by the lossless encoder 26 and the inverse encoder. The data is supplied to the quantizer 28, and the process proceeds to step 3 19.
- step 319 the inverse quantization unit 28 inversely quantizes the quantized coefficient from the quantization unit 25, and supplies the resulting orthogonal transform coefficient to the inverse orthogonal transform unit 29. Then, the process proceeds to step 320.
- step 320 the inverse orthogonal transform unit 29 inversely orthogonally transforms the orthogonal transform coefficient from the inverse quantization unit 28 and supplies the resulting residual to the arithmetic unit 30 for processing. Proceed to step 3 2 1.
- step 3 21 the operation unit 30 adds the residual from the inverse orthogonal transform unit 29 and the prediction image output by the prediction image selection unit 36, and the operation unit 2 3 A decoded image corresponding to the original image for which the residual is calculated is generated.
- the calculation unit 30 ⁇ 2020/175 145 28 ⁇ (: 170? 2020 /005472
- the No. image is supplied to the deblocking filter 3 1 3, and the process proceeds from step 3 2 1 to step 3 2 2.
- Step 3 2 2 the deblocking filter 3 1 3 applies the deblocking filter to the decoded image from the arithmetic unit 30 and the resulting filtered image is applied to the adaptive offset filter 4 1. Supply and processing proceeds to step 3 2 3
- step 3 2 3 the adaptive offset filter 4 1 applies the adaptive offset filter to the filter image from the deblock filter 3 1 3 and outputs the resulting filtered image as 8!_. And the process proceeds to step 3 2 4.
- step 3 2 8!_ 4 2 is the filter image from the adaptive offset filter 4 1. Is applied to the frame memory 32, and the resulting filtered image is supplied to the frame memory 32, and the process proceeds to step 3 25.
- step 325 the frame memory 32 stores the filter image supplied from the eight memory 42, and the process proceeds to step 326.
- the filtered image stored in the frame memory 3 2 is used as a reference image from which a predicted image is generated in steps 3 1 3 and 3 1 4.
- the lossless encoding unit 26 encodes the encoded data, which is the quantization coefficient from the quantization unit 25, and generates an encoded bit stream including the encoded data. To do. Further, the lossless encoding unit 26 includes a quantization parameter used for quantization in the quantization unit 25, a prediction mode obtained by the intra prediction process in the intra prediction unit 34, and a motion prediction compensation unit 3 Coding information such as the prediction mode and motion information obtained by the inter motion prediction processing in 5 and the filter parameters of the deblocking filter 3 1 3 and the adaptive offset filter 4 1 are coded as necessary, and coded. Include in bitstream.
- the lossless encoding unit 26 outputs the encoded bit stream to the storage buffer.
- step 3 26 the process proceeds from step 3 26 to step 3 27.
- step 327 the accumulation buffer 27 is supplied from the lossless encoding unit 26. ⁇ 2020/175 145 29 ⁇ (: 170? 2020 /005472
- the encoded bit stream is accumulated, and the process proceeds to step 328.
- the encoded bit stream stored in the storage buffer 27 is read out as appropriate and transmitted.
- step 328 the rate control unit 37 determines whether the flow rate is underflow or underflow based on the code amount (generated code amount) of the encoded bit stream accumulated in the accumulation buffer 27.
- the rate of the quantizing operation of the quantizing unit 25 is controlled so that the error does not occur, and the encoding process ends.
- FIG. 10 is a block diagram showing a detailed configuration example of the decoder 51 in FIG.
- the decoder 5 1 includes a storage buffer 61, a lossless decoding section 62, an inverse quantization section 63, an inverse orthogonal transformation section 64, an arithmetic section 65, a rearrangement buffer 67, and , ⁇ /8 conversion unit 68. Further, the decoder 5 1 has a frame memory 69, a selection unit 70, an intra prediction unit 71, a motion prediction compensation unit 7 2, and a selection unit 7 3. Also, the decoder 5 1 has a deblocking filter 3 1, a adaptive filter 8 1 and an 8!_de 8 2.
- the accumulation buffer 61 temporarily stores the encoded bit stream transmitted from the encoder 11 and supplies the encoded bit stream to the lossless decoding unit 62 at a predetermined timing.
- the lossless decoding unit 62 receives the encoded bit stream from the storage buffer 61 and decodes the encoded bit stream by a method corresponding to the encoding method of the lossless encoding unit 26 in Fig. 8.
- the lossless decoding unit 62 supplies the dequantization unit 63 with the quantization coefficient as the encoded data included in the decoding result of the encoded bit stream.
- the lossless decoding unit 62 has a function of performing parsing.
- the lossless decoding unit 6 2 parses the necessary coding information included in the decoding result of the coded bit stream, and outputs the coding information to the intra prediction unit 7 1, the motion prediction compensation unit 7 2, and the deblock filter 3 1 13, Adaptive offset filter 8 1 Supply to other necessary blocks.
- the dequantization unit 6 3 is a quantization coefficient as the encoded data from the lossless decoding unit 6 2. ⁇ 2020/175 145 30 units (: 170? 2020 /005472
- the number is inversely quantized by a method corresponding to the quantization method of the quantization unit 25 in FIG. 8, and the orthogonal transform coefficient obtained by the inverse quantization is supplied to the inverse orthogonal transform unit 64.
- the inverse orthogonal transform unit 64 calculates the orthogonal transform coefficient supplied from the inverse quantization unit 63.
- Inverse orthogonal transform is performed by a method corresponding to the orthogonal transform method of the orthogonal transform section 24 of 8 and the residual obtained as a result is supplied to the computing section 65.
- the calculation unit 65 is supplied with the residual from the inverse orthogonal transform unit 6 4 and is also supplied with the prediction image from the intra prediction unit 7 1 or the motion prediction/compensation unit 7 2 via the selection unit 7 3. To be done.
- the arithmetic unit 65 adds the residual from the inverse orthogonal transform unit 64 and the prediction image from the selection unit 73, generates a decoded image, and supplies the decoded image to the deblocking filter 31.
- the reordering buffer 6 7 temporarily stores the decoded image supplied from the eight!_de 8 2 and rearranges the sequence of frames (pictures) of the decoded image from the coding (decoding) order to the display order. ⁇ /8 Supply to the conversion unit 68.
- the 0/8 conversion unit 68 converts the decoded image supplied from the rearrangement buffer 67 into 0/8 and outputs it to a display (not shown) for display.
- the decoder 5 1 can be configured without providing the 1 ⁇ 8 conversion unit 68.
- Frame memory 6 9 The decoded image supplied from 8 2 is temporarily stored.
- the frame memory 69 uses the decoded image as a reference image used for generating the predicted image at a predetermined timing, or based on an external request from the intra prediction unit 71, the motion prediction compensation unit 72, etc. , To the selection unit 70.
- the selection unit 70 selects the supply destination of the reference image supplied from the frame memory 69.
- the selection unit 70 supplies the reference image supplied from the frame memory 69 to the intra prediction unit 7 1. Further, when the image encoded by inter prediction is decoded, the selection unit 70 supplies the reference image supplied from the frame memory 69 to the motion prediction compensation unit 72. ⁇ 2020/175 145 31 ⁇ (: 170? 2020/005472
- the intra prediction unit 7 1 follows the prediction mode included in the encoded information supplied from the lossless decoding unit 6 2 in the intra prediction mode used in the intra prediction unit 34 in Fig. 8 and uses the frame memory 6 Intra prediction is performed using the reference image supplied from 9 through the selection unit 70. Then, the intra prediction unit 71 supplies the prediction image obtained by the intra prediction to the selection unit 73.
- the motion prediction/compensation unit 7 2 follows the prediction mode included in the encoded information supplied from the lossless decoding unit 6 2 in the prediction mode included in the motion prediction/compensation unit 35 of Fig. Inter prediction is performed using the reference image supplied from the frame memory 69 via the selecting unit 70. The inter prediction is performed by using the motion information included in the encoded information supplied from the lossless decoding unit 62 as necessary.
- the motion prediction/compensation unit 72 selects the prediction image obtained by inter prediction from the selection unit.
- the selection unit 73 selects the prediction image supplied from the intra prediction unit 71 or the prediction image supplied from the motion prediction/compensation unit 72, and supplies it to the calculation unit 65.
- the deblocking filter 31 applies the deblock filter to the decoded image from the arithmetic unit 65 according to the filter parameter included in the encoded information supplied from the lossless decoding unit 62.
- the deblocking filter 3 1 13 supplies the decoded image to which the deblocking filter is applied (filtered image) or the decoded image to which the deblocking filter is not applied to the adaptive offset filter 8 1.
- the adaptive offset filter 8 1 requires the adaptive offset filter in the decoded image from the deblocking filter 3 1 according to the filter parameter included in the encoding information supplied from the lossless decoding unit 6 2. Apply accordingly.
- the adaptive concave set filter 81 supplies the decoded image to which the adaptive offset filter is applied (filled image) or the decoded image to which the adaptive offset filter is not applied to the 8!
- Eight!_d 8 2 is the decoded image from the adaptive offset filter 8 1. Apply as needed, The decoded image to which is applied, or Is not applied ⁇ 2020/175 145 32 units (: 170? 2020 /005472
- the No. image is supplied to the rearrangement buffer 67 and the frame memory 69.
- FIG. 11 is a flowchart explaining an example of the decoding process of the decoder 5 1 of FIG.
- step 3 5 the storage buffer 6 1 temporarily stores the encoded bit stream transmitted from the encoder 11 and supplies it to the lossy decoding unit 6 2 as appropriate. , The process proceeds to step 3 52.
- step 3 52 the lossless decoding unit 6 2 receives and decodes the encoded bit stream supplied from the accumulation buffer 61, and outputs the encoded bit stream as encoded data included in the decoding result of the encoded bit stream.
- the quantized coefficient of is supplied to the inverse quantization unit 63.
- the lossless decoding unit 62 parses the coding information included in the decoding result of the coded bitstream.
- the lossless decoding unit 62 supplies the necessary coding information to the intra prediction unit 71, the motion prediction/compensation unit 72, the deblocking filter 31, the adaptive offset filter 81, and other necessary blocks. To do.
- Step 3 52 the process proceeds from Step 3 52 to Step 3 53, and the intra prediction unit 7 1 or the motion prediction/compensation unit 7 2 is supplied from the frame memory 6 9 via the selection unit 70.
- intra prediction processing or inter motion prediction processing for generating a prediction image is performed.
- the intra prediction unit 71 or the motion prediction/compensation unit 7 2 supplies the prediction image obtained by the intra prediction process or the inter motion prediction process to the selection unit 7 3, and the process is performed from step 3 5 3 to step 3 5 Go to 4.
- Step 3 54 the selection unit 7 3 selects the prediction image supplied from the intra prediction unit 7 1 or the motion prediction compensation unit 7 2 and supplies it to the calculation unit 65, and the processing is Proceed to step 3 5 5.
- step 355 the inverse quantizer 63 dequantizes the quantization coefficient from the lossless decoder 62, and supplies the resulting orthogonal transform coefficient to the inverse orthogonal transformer 6 4. And the process proceeds to steps 3 5 6. ⁇ 2020/175 145 33 ⁇ (: 170? 2020 /005472
- step 3 56 the inverse orthogonal transformer 6 4 inversely orthogonally transforms the orthogonal transform coefficient from the inverse quantizer 6 3 and supplies the resulting residual to the calculator 65. Then, the process proceeds to step 357.
- step 357 calculation section 65 adds the residual from inverse orthogonal transformation section 64 and the prediction image from selection section 73 to generate a decoded image. Then, the arithmetic unit 65 supplies the decoded image to the deblocking filter 3 1, and the processing proceeds from step 3 5 7 to step 3 5 8.
- step 3 58 the deblocking filter 3 1 according to the filter parameter included in the coding information supplied from the lossless decoding unit 6 2 adds the deblocking filter to the decoded image from the calculation unit 6 5. Apply.
- the deblocking filter 3 1 supplies the filter image obtained as a result of applying the deblocking filter to the adaptive offset filter 81, and the processing proceeds from step 3 58 to step 3 59.
- step 3 59 the adaptive offset filter 8 1 adapts to the filter image from the deblocking filter 3 1 13 according to the filter parameter included in the coding information supplied from the lossless decoding unit 6 2. Apply an offset filter.
- the adaptive offset filter 81 supplies the filter image obtained as a result of the application of the adaptive offset filter to the 8!_mode 8 2 and the processing is started from step 3 59 to step 60. move on.
- Eight!_d 8 2 is the filtered image from the adaptive offset filter 8 1.
- the resulting filtered image is supplied to the reordering buffer 67 and the frame memory 69, and the process proceeds to step 3 61.
- step 3 61 the frame memory 69 stores temporarily the filter image supplied from the 8!_d 8 2, and the process proceeds to step 3 62.
- the filtered image (decoded image) stored in the frame memory 69 is used as a reference image from which a predicted image is generated in the intra prediction process or the inter motion prediction process of step 353.
- step 3 62 the sort buffer Supplied from ⁇ 2020/175 145 34 ⁇ (: 170? 2020 /005472
- the filter images are rearranged in the display order and supplied to the 1 ⁇ 8 conversion unit 68, and the process proceeds to Step 3 63.
- step 3 63 the /8 conversion unit 68 converts the filter image from the rearrangement buffer 67 into 0/8 conversion, and the decoding process ends.
- ⁇ /8 The filtered image (decoded image) after conversion is output and displayed on a display not shown.
- Fig. 12 is a block diagram showing a configuration example of the deblocking filter ( ⁇ ) 318.
- deblock filter 3 113 is configured similarly to the deblock filter 3 13.
- the deblocking filter 3 1 3 includes a boundary strength setting unit 2 61, a determination unit 3 1 0, a filtering unit 3 2 0, a line buffer 3 3 0, and a deaf I control unit 3 Has 40.
- the boundary strength setting unit 2 61 sets a squeeze 3 (boundary strength) according to the characteristics of the adjacent block adjacent to the block boundary, targeting the block boundary of the decoded image.
- the boundary strength setting unit 2 61 sets the block boundary corresponding to four lines orthogonal to the block boundary as the partial block boundary, and sets 3 in the partial block boundary.
- the boundary intensity setting unit 2 61 sets the color difference components of the decoded image to the color difference components corresponding to 4 lines of the luminance component, for example, when the signal of the 11 4 20 0 format is the target of the setting of 3.
- the block boundary corresponding to the two lines of the component is set as the partial block boundary, and 3 is set for the partial block boundary.
- the threshold 3 is set, for example, by using the pixel-related parameter regarding the pixel in the adjacent block as a parameter indicating the characteristic of the adjacent block adjacent to the partial block boundary.
- the pixel-related parameters include a luminance-related parameter and a color difference-related parameter.
- Luminance-related parameters and color difference-related/ ⁇ Parameters mean all parameters related to luminance and color difference, respectively.
- the luminance-related parameter and the color-difference-related parameter are TU (Transform Unit), PU (Prediction Unit), CU (Coding Unit), and the orthogonal transformation coefficient (L) Quantized coefficient).
- brightness-related parameters and color-difference-related/ ⁇ parameters are related to orthogonal transformation coefficients of luminance components and chrominance components, such as flags that indicate the presence or absence of significant coefficients (non-zero orthogonal transformation coefficients) of luminance components and chrominance components in each block.
- Each may include information.
- the brightness related parameter and the color difference related parameter are not limited to such an example, and may be various parameters related to the brightness and the color difference.
- the pixel-related parameter used by the boundary strength setting unit 26 1 to set b S is the presence/absence of significant coefficients of the luminance component and the color difference components (U and V) in the block where the block boundary is located in the grid. Including a flag to indicate.
- the boundary strength setting unit 26 1 is supplied with such pixel-related parameters from the control unit 340.
- information from the control unit 340 to the boundary strength setting unit 26 1 includes information such as whether or not the adjacent block is set in the ISP and the block size of the sub-block obtained by dividing the adjacent block set in the ISP. It is supplied as a parameter indicating the characteristics of adjacent blocks.
- the boundary strength setting unit 261 sets b S according to the parameter or the like from the control unit 340 that represents the characteristic of the adjacent block.
- the boundary strength setting unit 26 1 supplies b S to the determination unit 3 10.
- b S As a method of setting b S, for example, the method described in reference document REF4 or any other method can be adopted. Further, as b S, any value indicating the boundary strength can be adopted. Here, the values 0, 1, and 2 that divide the boundary strength into three levels are adopted as b S, and the stronger the boundary strength, the larger the value of b S.
- the determination unit 310 includes an application necessity determination unit 311 and a filter strength determination unit 312, and performs filter determination. ⁇ 2020/175 145 36 ⁇ (: 170? 2020 /005472
- the applicability determination unit 3 1 1 is supplied with the slag 3 from the boundary strength setting unit 2 6 1.
- the application necessity determination unit 311 receives the decoded image from the outside of the deblocking filter 313 (the calculation unit 30 in FIG. 8 and the calculation unit 65 in FIG. 10) and the line buffer 330. Supplied.
- the application necessity determination unit 3 1 1 uses the depth 3 from the boundary strength setting unit 2 6 1, and further, the decoded image from the outside of the deblocking filter 3 1 3 or the line buffer 3 3 0. , Applicability judgment is performed.
- the application necessity determination unit 3 11 supplies the determination result of the application necessity determination to the filter strength determination unit 3 12.
- the filter strength determination unit 3 12 is supplied with the determination result of the application necessity determination from the application necessity determination unit 3 11 and also from the outside of the deblocking filter 3 1 3 and the line buffer 3 30. The decoded image is supplied.
- the filter strength determination unit 3 1 2 determines that the deblocking filter 3 1 3 Using the decoded image from the outside or the line buffer 330, the filter strength determination that determines the filter strength of the deblocking filter applied to the decoded image is performed. Then, the filter strength judgment unit 3 12 supplies the judgment result of the filter strength judgment to the filtering unit 3 20 as the judgment result of the filter judgment.
- the filter strength indicates a weak filter, a strong filter, and a long filter.
- the strong filter has a larger number of taps and stronger filter strength than the weak filter.
- the long filter has a larger number of taps and stronger filter strength than the strong filter.
- the filter strength determination unit 3 12 is required to be applied from the application necessity determination unit 3 1 1. ⁇ 2020/175 145 37 ⁇ (: 170? 2020 /005472
- the determination result of the application necessity determination is supplied to the filtering unit 320 as the determination result of the filter determination.
- the filtering unit 3 20 is supplied with the determination result of the filter determination from the filter strength determination unit 3 12 and also with the decoded image from the outside of the deblocking filter 3 1 3 and the line buffer 3 30. To be done.
- the filtering unit 3 2 0 When the determination result of the filter determination from (the filter strength determination unit 3 1 2 of) the determination unit 3 1 0 indicates that the deblocking filter is not applied, the filtering unit 3 2 0 The decoded image is output as is without applying the deblocking filter.
- the filtering unit 3 20 when the filtering result from the filter strength determination unit 3 12 indicates the filter type (here, weak filter, strong filter, or long filter), the filtering unit 3 20 The deblocking filter of the filter type indicated by the result of the filter determination is applied to the decoded image.
- the filter type here, weak filter, strong filter, or long filter
- the filtering unit 320 filters the pixels to be applied, which are the pixels to be filtered, in the decoded image from the outside of the deblocking filter 313 or the line buffer 330.
- the filter calculation as above is performed using pixels in the vicinity of the applied pixel.
- the filtering unit 320 sets the pixel value obtained by the filtering process of the application target pixel to the filter pixel that forms the filter image (decoded image after the filter process) obtained by applying the deblocking filter to the decoded image. It is output as the pixel value of.
- the decoded image is supplied to the line buffer 3 30 from the outside of the deblocking filter 3 13.
- the line buffer 3 30 appropriately stores (the pixel value of) the decoded image from the outside of the deblocking filter 3 13.
- the line buffer 330 has a storage capacity for storing pixel values for a predetermined number of lines (rows). When the pixel values for the storage capacity are stored, the new pixel value is stored as the oldest pixel. Overwrite to value ⁇ 2020/175 145 38 ⁇ (: 170? 2020 /005472
- the deblocking filter 3 13 3 processes, for example, a decoded image in the raster scan order.
- deblocking filter 3 13 for example, processing is performed in units of blocks in which Ding II, 11, and ⁇ II are unified.
- the deblock filter 3 13 can process a plurality of blocks such as one row in raster scan order, or can process them in parallel.
- the determination unit 3 10 and the filtering unit 3 20 are the deblocking filter 3
- the determination unit 3 10 and the filtering unit 3 20 store the pixel values of the horizontal lines included in the target block in the internal buffer, and use the pixel values stored in the internal buffer as necessary. Process the target block using
- the pixel value of the pixel in the target block and the pixel value of the pixel in the block adjacent to the upper side of the target block are May be needed.
- the pixel values of the pixels in the target block are stored in the internal buffer when the target block is processed.
- the pixel value of the pixel in the block adjacent to the upper side of the target block is not the pixel value of the pixel in the target block, it is not stored in the internal buffer when the target block is processed.
- the line buffer 330 sets the deblock filter 3 13 at the upper horizontal block boundary of the target block among the horizontal lines included in the block adjacent to the upper side of the target block.
- the pixel value of the pixel of the line (pixel belonging to the line) necessary for applying is stored. Pixels in the line necessary to apply the deblocking filter 3 13 are pixels used for filter judgment and pixels used for filter processing.
- the control unit 340 controls each block constituting the deblocking filter 3 1 3. To do. Further, the control unit 340 obtains the parameter necessary for setting b S by generating it, etc., and supplies it to the boundary strength setting unit 2 61.
- the deblocking filter 31a processes, for example, a decoded image in raster scan order.
- the deblocking filter 3 1 a can perform the decoded image in an order other than the raster scan order.
- the deblocking filter 3 1 a can repeat processing of a decoded image from top to bottom, from left to right. In this case, the horizontal (horizontal) (left and right) and the vertical (vertical) (upper and lower) described below are reversed (swapped).
- Fig. 13 is a diagram showing an example of a setting method of b S in the boundary strength setting unit 2 61.
- P(p) and Q(q) are in the block of one of two blocks (including subblocks) adjacent to the block boundary (including subblock boundary). , And pixels in the other block are respectively represented.
- b S is set according to the characteristics of two blocks (including sub-blocks) adjacent to the block boundary (including sub-block boundary).
- the pixel P in one of the two blocks (adjacent blocks) adjacent to the block boundary, or the pixel Q in the other block is the intra prediction mode.
- B S is set to 2 if the pixel is within a block (block that is intra-predicted).
- one of the two sub-blocks adjacent to the sub-block boundary (Sub-Part initiation boundary) of the sub-block configured by the ISP is divided.
- B S is set to 2 if pixel P in the block or pixel Q in the other subblock is a pixel in the block in intra prediction mode.
- the block set to the ISP is only the block of the luminance component (Y), and the block of the color difference component (i and) is not set to the ISP.
- the pixels P or Q in two blocks adjacent to the block boundary of the CU or TU are If it is a pixel, b S is set to 2.
- b S is set to 1 when one or more significant coefficients (non-zero orthogonal transform coefficients) exist in the block adjacent to the block boundary of the CU or TU. It
- b S is set to 1 when the pixels P or Q in the two blocks adjacent to the block boundary are pixels in the block of CIPP. ..
- b S is set to 0 if none of the above is true.
- FIG. 14 is a flowchart illustrating an example of block boundary determination processing for determining a block boundary to which a deblocking filter can be applied.
- the block boundary determination process is performed by the boundary strength setting unit 2 61 in the deblock filter 3 1 a (Fig. 12) before setting b S.
- step S1 1 the boundary strength setting unit 2 61 performs the filter judgment at the block boundary (including the sub-block boundary) located in the grid. ⁇ 2020/175 145 41 ⁇ (: 170? 2020 /005472
- step 3 1 1 1 1 1 If it is determined in step 3 1 1 1 1 that the partial block boundary is the block boundary of Ding II, the process proceeds to step 3 1 1 2 and the boundary strength setting unit 2 6 1 determines the partial block boundary. Judge whether the boundary is the block boundary of ⁇ II.
- step 3 1 1 1 2 If it is determined in step 3 1 1 1 2 that the partial block boundary is not the block boundary of ⁇ II, the process proceeds to step 3 1 1 3 and the boundary strength setting unit 2 6 1 determines the partial block boundary.
- the boundary is determined to be a sub-block boundary, and the block boundary determination processing ends.
- step 3 1 1 If it is determined that the partial block boundary is the block boundary of ⁇ II in step 3 1 1 1, the process proceeds to step 3 1 1 4, and the boundary strength setting part 2 6 1 It is determined that the partial block boundary is a block boundary, and the block boundary determination processing ends.
- step 3 1 1 1 1 determines whether the partial block boundary is the block boundary of Ding II.
- step 3 1 15 If it is determined in step 3 1 15 that the partial block boundary is not the II block boundary, the block boundary determination process ends.
- step 3115 If it is determined in step 3115 that the partial block boundary is the block boundary of II, the process proceeds to step 3116, and the boundary strength setting unit 261 determines whether the partial block boundary is a partial boundary. Judge whether the block boundary is the block boundary of II.
- step 3 1 1 1 6 If it is determined in step 3 1 1 1 6 that the partial block boundary is the block boundary of ⁇ II, the process proceeds to step 3 1 1 7 and the boundary strength setting unit 2 6 1 uses the partial block boundary. The boundary is determined to be the block boundary, and the block boundary determination processing ends. [0262] If it is determined in step S116 that the partial block boundary is not the block boundary of the CU, the process proceeds to steps S118, S119, and S120. ..
- step S1 18 the boundary strength setting unit 2 61 determines that the prediction mode of the adjacent block adjacent to the partial block boundary is intra prediction mode, the inter prediction mode is affine or merge, and ATMVP ( advanced tempora l mot i on ve ctor pred i ct i on).
- step S1 19 the boundary strength setting unit 2 61 determines whether the prediction mode of the adjacent block adjacent to the partial block boundary is the intra prediction mode and the inter prediction mode is CIIP. ..
- step S1200 the boundary strength setting unit 261 determines whether or not the adjacent block adjacent to the partial block boundary is set to the ISP.
- step S1 18 If the determination result in step S1 18 is true, the process proceeds to step S1 2 1, and the boundary strength setting unit 2 61 determines that the partial block boundary is a sub block boundary. The block boundary determination process ends.
- step S119 If the determination result in step S119 is true, the process proceeds to step S1222, and the boundary strength setting unit 261 determines that the partial block boundary is a block boundary.
- the block boundary determination process ends.
- step S120 If the determination result in step S120 is true, the process proceeds to step S123, and the boundary strength setting part 261 determines that the partial block of the adjacent block adjacent to the partial block boundary is Determine whether the size in the direction orthogonal to the boundary is 4 pixels or more.
- step S123 If it is determined in step S123 that the size of the adjacent block adjacent to the partial block boundary in the direction orthogonal to the partial block boundary is not 4 pixels or more, the block boundary determination process ends.
- step S1233 adjacent blocks adjacent to the partial block boundary are ⁇ 2020/175 145 43 ⁇ (: 170? 2020 /005472
- step 3 1 2 the boundary strength setting unit 2 61 determines that the partial block boundary is a sub block boundary, and the block boundary determination processing ends.
- the deblock filter is not applied to the partial block boundary that is not determined to be the block boundary or the sub-block boundary, and the subsequent processing is performed in the deblock filter 3 1 3. Absent.
- deblock filter 3 1 Settings For partial block boundaries that are determined to be block boundaries or sub-block boundaries, the deblock filter 3 1 Settings, filter judgment, and filter processing are performed.
- FIG. 15 is a flow chart illustrating an example of the processing of the deblocking filter 3 13 which is performed for the partial block boundary determined to be the sub-block boundary in the block boundary determination processing.
- step 3 1 5 the boundary strength setting unit 2 6 1 follows the setting method described in Fig. 13 for the sub-block boundary 3 that is determined to be a sub-block boundary in the block boundary determination processing. Set (calculate). The boundary strength setting unit 2 61 supplies the sill 3 of the partial block boundary to the determination unit 3 10 and the process proceeds from step 3 1 5 1 to step 3 1 5 2.
- step 3 1 5 2 the determination unit 3 1 0 determines whether or not the subway block boundary cave 3 is greater than 0 (is 1 or 2), and determines that it is not greater than 0. If so, ie, if 0, then the process proceeds to step 3 16 3.
- step 3 1 5 2 determines that the subway block boundary 3 is greater than 0, that is, when it is 1 or 2, the process proceeds to step 3 1 5 3.
- step 3153 determination section 310 determines the block size of an adjacent subblock adjacent to a partial block boundary among subblocks obtained by dividing the block set to 13?. ⁇ 2020/175 145 44 ⁇ (: 170? 2020 /005472
- step 3 1 5 3 the block size of the adjacent sub-block is 8 X.
- step 3 If it is judged to be 1 ⁇ 1 or more or X 8 or more, that is, if the size of the adjacent sub-block in the direction orthogonal to the partial block boundary is 8 pixels or more, the process proceeds to step 3 1 5 4. move on.
- step 3 1 5 determination section 3 1 0 performs long deblocking on/off determination.
- step 3 154 If the determination result of the long deblocking on/off determination in step 3 154 is true, the process proceeds to step 3 155, and the determination unit 3 10 makes a long deblocking inclination determination.
- step 3 1 5 5 If the long deblocking slope determination in step 3 1 5 5 is true, the process proceeds to step 3 1 5 6, and the determination unit 3 10 determines to apply the long filter, and the long filter Set the apply. Then, the filtering unit 320 executes the filter process of applying the long filter to the boundary of the partial blocks, and the process ends.
- step 3 1 5 4 the judgment result of the long deblocking on/off judgment in step 3 1 5 4 is false, or if the long deblocking slope judgment in step 3 1 5 5 is false, the process proceeds to step 3 Continue to 1 5 7.
- Step 3 15 7 A blocking on/off determination is performed, and the process proceeds to step 3158.
- step 3158 the judgment unit 310 makes a strong filter judgment.
- step 3 158 If the strong filter judgment in step 3 158 is true, the process proceeds to step 3 159, and the judgment section 3 10 judges that the strong filter is applied and applies the strong filter. Set. Then, the filtering unit 320 performs filter processing for applying the strong filter to the partial block boundary, and the processing ends.
- step 3 158 If the strong filter determination in step 3 158 is false, the process proceeds to step 3 16 1. ⁇ 2020/175 145 45 ⁇ (: 170? 2020 /005472
- step 3153 determines whether the size of the adjacent sub-block in the direction orthogonal to the partial block boundary is 8 pixels or more. If it is determined in step 3153 that the size of the adjacent sub-block in the direction orthogonal to the partial block boundary is not 8 pixels or more, the process proceeds to step 3160.
- step 3160 the determination unit 3110 determines the block size of the adjacent subblock adjacent to the partial block boundary among the subblocks obtained by dividing the block set to 13?.
- step 3150 the block size of the adjacent sub-block is 4 X
- step 3 16 If it is determined to be 1 ⁇ 1 or X 4, that is, if the size of the adjacent sub-block in the direction orthogonal to the partial block boundary is 4 pixels, the process proceeds to step 3 16 1.
- step 3161 the determination unit 3110 performs weak filter determination.
- step 3 16 1 If the weak filter decision of step 3 16 1 is false, the process proceeds to step 3 16 3.
- step 3 16 1 If the weak filter judgment in step 3 16 1 is true, the process proceeds to step 3 1 6 2, and the judgment unit 3 10 judges that the weak filter is applied, and the weak filter is applied. To set. Then, the filtering unit 320 performs filter processing for applying a weak filter to the partial block boundary, and the processing ends.
- step 3160 determines that the size of the adjacent subblock in the direction orthogonal to the partial block boundary is not 4 pixels. If it is determined in step 3160 that the size of the adjacent subblock in the direction orthogonal to the partial block boundary is not 4 pixels, the process proceeds to step 3163. In step 3 16 3, the judgment unit 3 10 judges that the deblocking filter is not applied, and the filtering unit 3 20 applies the deblocking filter to the partial block boundary (pixels in the line orthogonal to the partial block boundary). Without doing so, the process ends.
- the block size of the adjacent sub-block adjacent to the vertical partial block boundary is 1 X 1 ⁇ 1. Or 2 ⁇ 1 ⁇ 1, or a block of adjacent sub-blocks adjacent to a horizontal partial block boundary ⁇ 2020/175 145 46 ⁇ (: 170? 2020 /005472
- the application of the deblocking filter is limited (no deblocking filter is applied).
- the deblocking filter 3 1 3 Regarding the sub-block boundary of the sub-block dividing the block set in, whether the block size of the adjacent sub-block adjacent to the sub-block boundary is 8 X 1X1 or 8 or more, that is, orthogonal to the sub-block boundary. It is determined whether the size of the sub-block in the direction to move is 8 pixels or more. When the size of the sub-block in the direction orthogonal to the sub-block boundary is 8 pixels or more, any one of the long filter, the strong filter and the weak filter can be applied.
- the deblocking filter 3 1 For sub-block boundaries of sub-blocks that divide the block set to, if the block size of the adjacent sub-blocks adjacent to the sub-block boundary is neither 8 X 1 ⁇ 1 nor 8 or more, 4 X 1 ⁇ 1 or 4, that is, whether or not the size of the sub-block in the direction orthogonal to the sub-block boundary is 4 pixels. Then, if the size of the sub-block in the direction orthogonal to the sub-block boundary is 4 pixels, a weak filter can be applied.
- the deblock filter 3 1 3 Regarding the sub-block boundaries of the sub-blocks obtained by dividing the block set in, it is determined whether to apply the de-block filter according to the block size of the adjacent sub-blocks adjacent to the sub-block boundaries. it can.
- the applicable deblocking block It can be said that the filter types (long filter, strong filter, and weak filter) of the black filter are set (determined).
- transform inverse transform
- quantization inverse quantization
- a “block” (not a block indicating a processing unit) used for description as a partial region of an image (picture) or a processing unit indicates an arbitrary partial region in a picture, unless otherwise specified.
- the size, shape, characteristics, etc. are not limited.
- "block” includes TB (Transform Block), TU (Transform Unit), PB (Prediction Block), PU (Prediction Unit), SCU (Smallest Coding Unit), and SCU (Smallest Coding Unit) described in References REF 1 to REF3, etc.
- CU Coding Unit
- LCU Large Coding Unit
- CTB Coding Tree Block
- % CTU Coning Tree Unit
- the data units in which the various types of information described above are set and the data units targeted for various processes are arbitrary and are not limited to the above-mentioned examples.
- these information and processing are respectively TU (Transform Unit), TB (Transform block), PU (Prediction Unit), PB (Pred i ct i on Block), CU (Cod i ng Unit), and LCU. (Largest Coding Unit), sub-block, block, file, slice, picture, sequence, or each component may be set, or the data of those data units may be targeted.
- TU Transform Unit
- TB Transform block
- PU Prediction Unit
- PB Pred i ct i on Block
- CU Cod i ng Unit
- LCU Large Coding Unit
- sub-block, block, file, slice, picture, sequence, or each component may be set, or the data of those data units may be targeted.
- this data unit can be set for each information or process, and it is not necessary that all data units for information and processes be unified. It should be noted that the storage location of these pieces of information is arbitrary, and may be stored in the header or parameter set of the above-described data unit. Also, it may be stored in a plurality of locations.
- the control information related to the present technology described above may be transmitted from the encoding side to the decoding side. For example, you may make it transmit the control information (for example, 6 1 ⁇ 60 1_ ⁇ 39) that controls whether to permit (or prohibit) the application of the present technology described above. Further, for example, control information indicating an object to which the present technology described above is applied (or an object to which the present technology is not applied) may be transmitted. For example, control information specifying the block size (the upper limit, the lower limit, or both) to which the present technology is applied (or the application is permitted or prohibited), the frame, the component, or the layer may be transmitted. ..
- the block size may be directly specified, but the block size may be indirectly specified.
- the block size may be designated using identification information for identifying the size.
- the block size may be designated by a ratio or a difference from the size of a reference block (for example, shiya).
- the block size specification also includes specification of the block size range (for example, specification of the allowable block size range).
- the “flag” is information for identifying a plurality of states. ⁇ 2020/175 145 49 ⁇ (: 170? 2020 /005472
- the information is not only the information used to identify the two states of true (1) or false (8), but
- the value that this “flag” can take may be, for example, a binary value of 1/0, or a ternary value or more.
- the number of 1) 4 that composes this "flag” is arbitrary, and it may be 1) 4 or multiple numbers.
- the identification information including flags
- the difference information of the identification information with respect to certain reference information is included in the bit stream.
- “flag” and “identification information” include not only that information but also difference information with respect to the reference information.
- various types of information (metadata, etc.) regarding the encoded data may be transmitted or recorded in any form as long as it is associated with the encoded data.
- the term “associate” means, for example, that when processing one data, the other data can be used (linked). That is, the data associated with each other is
- the information associated with the encoded data (image) may be transmitted on a transmission path different from that of the encoded data (image).
- the information associated with the encoded data (image) is recorded on a recording medium (or another recording area of the same recording medium) different from that of the encoded data (image).
- this "association" may be a part of the data instead of the entire data.
- an image and information corresponding to the image may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
- a processor such as SI (Large Scale Integration), a module that uses multiple processors, a unit that uses multiple modules, a set in which other functions are added to the unit, etc. ).
- Fig. 16 is a block diagram showing a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.
- the program can be recorded in advance on a hard disk 905 or R0M903 as a recording medium built in the computer.
- the program can be stored (recorded) in the removable recording medium 9 11 driven by the drive 909.
- Such removable recording medium 9 11 can be provided as so-called package software.
- the removable recording medium 9 11 is, for example, a flexible disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Mag neto Optical) disc, a DVD (Digital Versatile Disc), a magnetic disc, a semiconductor memory, or the like. There is.
- the program is also downloaded to the computer via the communication network or broadcasting network and installed in the built-in hard disk 905. be able to. That is, the program is wirelessly transferred from a download site to a computer via an artificial satellite for digital satellite broadcasting, or a computer such as a LAN (Loca I Area Network) or the Internet. It can be transferred by wire.
- the computer has a CPU (Central Process Engine) 92 0, and the CPU 9 02 is connected to the input/output interface 9 10 via the bus 9 01. It is being touched.
- CPU Central Process Engine
- the CPU 902 When the user inputs a command via the input/output interface 910 to operate the input unit 907, the CPU 902 reads R 0M (Read On ly Memory) Execute the program stored in 903. Alternatively, the CPU 902 executes the program stored in the hard disk 905 by executing it in RAM (Random Access Memory) 904.
- R 0M Read On ly Memory
- RAM Random Access Memory
- the CPU 902 performs the processing according to the above-described flow chart, or the processing performed by the configuration of the above-described block diagram. Then, the CPU 902 outputs the processing result as necessary, for example, from the output unit 906 via the input/output interface 910 or from the communication unit 908, and further. , Record on the hard disk 905.
- the input unit 907 is composed of a keyboard, a mouse, a microphone, and the like.
- the output unit 906 is composed of an LCD (Liquid Crystal Dsplay), a speaker, or the like.
- the processing performed by the computer according to the program does not necessarily have to be performed in time series in the order described as the flow chart.
- the processing performed by the computer according to the program also includes processing that is executed in parallel or individually (for example, parallel processing or object-based processing).
- the program may be processed by one computer (processor), or may be processed by a plurality of computers in a distributed manner. Further, the program may be transferred to a remote computer and executed.
- the system means a set of a plurality of constituent elements (devices, modules (parts), etc.), and it does not matter whether or not all the constituent elements are in the same housing. Absent. Therefore, it is housed in a separate housing and connected via the network. ⁇ 2020/175 145 52 ⁇ (: 170? 2020 /005472
- a plurality of devices that are connected together and a device that contains a plurality of modules in one housing are all systems.
- the present technology can have a configuration of cloud computing in which one device is shared by a plurality of devices via a network, and processes jointly.
- each step described in the above-described flow chart can be executed by one device or shared by a plurality of devices.
- one step includes a plurality of processes
- the plurality of processes included in the one step are executed by one device or shared by a plurality of devices. be able to.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本技術は、ブロック歪みを抑制することができるようにする画像処理装置及び画像処理方法に関する。 変換ブロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブロック構造に従って、ビットストリームが復号されて復号画像が生成される。復号画像の変換ブロックを分割したサブブロックの境界であるサブブロック境界と直交するラインの画素に、デブロックフィルタが適用される。本技術は、例えば、画像の符号化及び復号を行う場合に適用することができる。
Description
\¥02020/175145 1 卩(:17 2020 /005472 明 細 書
発明の名称 : 画像処理装置及び画像処理方法
技術分野
[0001] 本技術は、 画像処理装置及び画像処理方法に関し、 特に、 例えば、 ブロッ ク歪みを抑制することができるようにする画像処理装置及び画像処理方法に 関する。
背景技術
[0002] ITU-Tと IS0/IECとの共同の標準化団体である JVET (Joint Video Experts
Team) では、 H.265/HEVCよりも符号化効率をさらに向上することを目的と して、 次世代の画像符号化方式である VVC (Versatile Video Coding) の標 準化作業が進められている。
[0003] VVCの標準化作業では、 非特許文献 1 において、 ブロックを、 ISP(Intra Su b-Part i t ions)に設定することができることが提案されている。
[0004] ISPに設定されたブロックは、 複数のサブブロック (Sub-Part it ion)に分割 することができ、 サブブロックの単位で、 直交変換を行うことができる。 先行技術文献
非特許文献
[0005] 非特許文献 1 : JVET-M0102-v5: CE3: Intra Sub-Partitions Coding Mode (ve rsion 7 - date 2019-01-17)
発明の概要
発明が解決しようとする課題
[0006] ISPに設定されたブロックを分割したサブブロックの境界であるサブブロッ ク境界には、 ブロック歪みが生じ得るが、 サブブロック境界 (に直交するラ インの画素) は、 デブロックフイルタの適用対象にされていない。
[0007] 本技術は、 このような状況に鑑みてなされたものであり、 ブロック歪みを 抑制することができるようにするものである。
課題を解決するための手段
〇 2020/175145 2 卩(:170? 2020 /005472
[0008] 本技術の第 1の画像処理装置は、 変換ブロックと予測ブロックと符号化ブ ロックとが統一された階層構造を有するブロック構造に従って、 ビッ トスト リームを復号して復号画像を生成する復号部と、 前記復号部により生成され た復号画像の前記変換ブロックを分割したサブブロックの境界であるサブブ ロック境界と直交するラインの画素に、 デブロックフィルタを適用するフィ ルタ部とを備える画像処理装置である。
[0009] 本技術の第 1の画像処理方法は、 変換ブロックと予測ブロックと符号化ブ ロックとが統一された階層構造を有するブロック構造に従って、 ビッ トスト リームを復号して復号画像を生成することと、 前記復号画像の前記変換ブロ ックを分割したサブブロックの境界であるサブブロック境界と直交するライ ンの画素に、 デブロックフィルタを適用することとを含む画像処理方法であ る。
[0010] 本技術の第 1の画像処理装置及び画像処理方法においては、 変換ブロック と予測ブロックと符号化ブロックとが統一された階層構造を有するブロック 構造に従って、 ビッ トストリームを復号して復号画像が生成される。 そして 、 前記復号画像の前記変換ブロックを分割したサブブロックの境界であるサ ブブロック境界と直交するラインの画素に、 デブロックフィルタが適用され る。
[001 1 ] 本技術の第 2の画像処理装置は、 画像を変換ブロックと予測ブロックと符 号化ブロックとが統一された階層構造を有するブロック構造に従って符号化 する際に口ーカル復号された口ーカル復号画像の、 イントラ予測が行われる 前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と 直交するラインの画素に、 デブロックフィルタを適用してフィルタ画像を生 成するフィルタ部と、 前記フィルタ部により生成されたフィルタ画像を用い て、 前記画像を符号化する符号化部とを備える画像処理装置である。
[0012] 本技術の第 2の画像処理方法は、 画像を変換ブロックと予測ブロックと符 号化ブロックとが統一された階層構造を有するブロック構造に従って符号化 する際に口ーカル復号された口ーカル復号画像の、 イントラ予測が行われる
〇 2020/175145 3 卩(:170? 2020 /005472
前記変換ブロックを分割したサブブロックの境界であるサブブロック境界と 直交するラインの画素に、 デブロックフィルタを適用してフィルタ画像を生 成することと、 前記フィルタ画像を用いて、 前記画像を符号化することとを 含む画像処理方法である。
[0013] 本技術の第 2の画像処理装置及び画像処理方法においては、 画像を変換ブ ロックと予測ブロックと符号化ブロックとが統一された階層構造を有するブ ロック構造に従って符号化する際に口ーカル復号された口ーカル復号画像の 、 イントラ予測が行われる前記変換ブロックを分割したサブブロックの境界 であるサブブロック境界と直交するラインの画素に、 デブロックフィルタを 適用してフィルタ画像が生成される。 そして、 前記フィルタ画像を用いて、 前記画像が符号化される。
[0014] なお、 画像処理装置は、 コンピュータにプログラムを実行させることによ り実現することができる。 プログラムは、 記録媒体に記録して、 又は、 伝送 媒体を介して伝送することにより、 提供することができる。
図面の簡単な説明
[0015] における匕 3の設定方法を説明する図である。
[図 2]デブロックフィルタの他の適用方法における匕 3の設定方法を説明する 図である。
[図 3]垂直方向のブロック境界である垂直ブロック境界巳巳を挟んで隣接する 、 2つの隣接ブロックとしてのブロック巳 及びブロック巳 内の画素 (の 画素値) の例を示す図である。
[図 5]デブロックフィルタのフィルタタイプの例を示す図である。
[図 6]デブロックフィルタの並列適用を行うときに生じ得る不都合を説明する 図である。
[図 7]本技術を適用した画像処理システムの一実施の形態の構成例を示すブロ ック図である。
[図 8]エンコーダ 1 1の詳細な構成例を示すブロック図である。
[図 9]エンコーダ 1 1の符号化処理の例を説明するフローチヤートである。
[図 10]デコーダ 5 1の詳細な構成例を示すブロック図である。
[図 11]デコーダ 5 1の復号処理の例を説明するフローチヤートである。
[図 12]デブロックフィルタ (D F) 3 1 aの構成例を示すブロック図である
[図 13]境界強度設定部 26 10b Sの設定方法の例を示す図である。
[図 14]デブロックフィルタが適用され得るブロック境界を判定するブロック 境界判定処理の例を説明するフローチヤートである。
[図 15]ブロック境界判定処理においてサブブロック境界であると判定された 部分ブロック境界を対象として行われるデブロックフィルタ 3 1 aの処理の 例を説明するフローチヤートである。
[図 16]本技術を適用したコンピュータの一実施の形態の構成例を示すブロッ ク図である。
発明を実施するための形態
[0016] 本明細書で開示される範囲は、 実施の形態の内容に限定されるものではな く、 出願当時において公知となっている以下の参照文献 REF 1 -REF8の内容も、 参照により本明細書に組み込まれる。 つまり、 以下の参照文献 REF1-REF8に記 載されている内容もサボート要件について判断する際の根拠となる。 例えば 、 参照文献 REF2に記載されている Quad-Tree B lock Structure、 参照文献 REF3 に記載されている QTBT(Quad Tree Plus Binary Tree) B lock Structure、 参 照文献 REF4, REF5, 及び REF8に記載されている MTT(MuUi-type Tree) Block St ructu reが発明の詳細な説明において直接的に定義されていない場合でも、 本開示の範囲内であり、 請求の範囲のサボート要件を満たすものとする。 ま た、 例えば、 パース (Parsing)、 シンタックス (Syntax)、 セマンティクス (Sem a n t i c s )等の技術用語についても同様に、 発明の詳細な説明において直接的に 定義されていない場合でも、 本開示の範囲内であり、 請求の範囲のサポ _卜 要件を満たすものとする。
[0017] REF1 : Recommendat ion ITU-T H.264 (04/2017) “Advanced video coding f
or generic audiovisual services” , April 2017
REF2:Recommendat ion ITU-T H.265 (12/2016) ’’High efficiency video co ding” , December 2016
REF3:J. Chen, E. Alshina, G. J. Sullivan, J.-R. Ohm, J. Boyce,’’Algo rithm Description of Joint Exploration Test Model (JEM7)” , JVET-G100 1, Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/I EC JTC 1/SC 29/WG 11 7th Meeting: Torino, IT, 13-21 July 2017
REF4: B. Bross, J. Chen, S. Liu , “Versatile Video Coding (Draft 3 ), ” JVET-L1001 , Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macau, CN, 312 Oct. 201
8
REF5:J. J. Chen, Y. Ye, S. Kim,’’Algor i thm description for Versatile Video Coding and Test Model 3 (VTM 3)” , JVET-L1002, Joint Video Exp erts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 1 2th Meeting: Macau, CN, 312 Oct. 2018
REF6: J. Boyce (Intel), Y. Ye (InterDigital), Y. -W. Huang (Mediatek ), M. Karczewicz (Qualcomm), E. Francois (Technicolor), W. Husak (Dol by), J. Ridge (Nokia), A. Abbas (GoPro),”Two tier test model” , JVET - J0093 , Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO /IEC JTC 1/SC 29/WG 11 10th Meeting: San Diego, US, 1020 Apr. 2018 REF7 : S. De-Luxan-Hernandez, V. George, J. Ma, T. Nguyen, H. Schwar z, D. Marpe, T. Wiegand (HHI) ,”CE3: Intra Sub-Partitions Coding Mode (Tests 1.1.1 and 1.1.2)” , JVET- M0102 , Joint Video Experts Team ( JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, 918 Jan. 2019
REF8: M. Ikeda, T. Suzuki (Sony), D. Rusanovskyy, M. Karczewicz (Qu alcomm), W. Zhu, K. Misra, P. Cowan, A. Segal l (Sharp Labs of America ), K. Andersson, J. Enhorn, Z. Zhang, R. Sjoberg (Ericsson) ,”CE 11.1
\¥02020/175145 6 卩(:17 2020 /005472
.6, CE11.1./ and Ct 11.1.8: Joint proposals for Long deblocking from b ony, Qua Lcomm, Sharp, Ericsson” , JVET- M0471 , Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Me eting: Marrakesh, MA, 918 Jan. 2019
[0018] <デブロックフィルタの概要 >
[0019] HEVC等の既存の画像符号化方式におけるデブロックフィルタに関する処理 は、 フィルタ判定 (適用要否判定及びフィルタ強度判定) 、 及び、 フィルタ リング (フィルタの適用) を含む。 以下では、 HEVCを例に、 デブロックフィ ルタの概要を説明する。
[0020] なお、 デブロックフィルタの適用要否とは、 デブロックフィルタを適用す るか否かを意味する。 デブロックフィルタの適用要否判定とは、 デブロック フィルタを適用するか否かを判定することを意味する。 また、 適用要否判定 の判定結果とは、 デブロックフィルタを適用するか否かを判定した結果であ る。 適用要否判定の判定結果は、 適用する、 又は、 適用しない、 のいずれか を示す情報であり得る。
[0021] フィルタ強度判定とは、 デブロックフィルタを適用する場合に、 その適用 するデブロックフィルタのフィルタ強度を判定 (決定) することを意味する 。 例えば、 デブロックフィルタとして、 ウイークフィルタと、 ウイークフィ ルタよりもタップ数が多い、 すなわち、 フィルタ強度が強いストロングフィ ルタとがある場合、 フィルタ強度判定では、 画素に適用するデブロックフィ ルタを、 ウイークフィルタ及びストロングフィルタのうちのいずれとするか が判定 (決定) される。
[0022] デブロックフィルタについては、 適用要否判定及びフィルタ強度判定によ つて、 デブロックフィルタを適用しないこと、 又は、 適用するデブロックフ ィルタの種類が判定される。
[0023] 例えば、 デブロックフィルタとして、 ウイークフィルタとストロングフィ ルタとがある場合、 適用要否判定及びフィルタ強度判定では、 デブロックフ ィルタを適用しないこと、 ウイークフィルタを適用すること、 又は、 ストロ
ングフィルタを適用することが判定される。 以下、 適用要否判定及びフィル 夕強度判定を、 まとめて、 フィルタ判定ともいう。
[0024] また、 本明細書において、 復号画像には、 符号化時に口ーカル復号された 口ーカル復号画像が含まれる。
[0025] デブロックフィルタに関する処理では、 まず、 フィルタ判定が行われる。
フィルタ判定では、 まず、 復号画像のブロック境界 (B lock Boundary) にデ ブロックフィルタを適用するか否かを判定する適用要否判定が行われる。
[0026] なお、 HEVCにおいて、 ブロック境界は、 参照文献 REF2に記載されている Qua d-Tree B lock St ructureのブロック構造に基づいて特定される。 具体的に は、 最小のブロック単位である 8 X 8画素ブロック(サンプルグリッ ド)のエ ッジのうち、 T U (Transform Un i t) 境界又は P U (Pred i ct i on Un i t) 境 界のうち少なくともいずれか一方であるという条件を満たすエッジが、 HEVC におけるブロック境界として特定される。
[0027] 適用要否判定は、 ブロック境界の境界強度 (Boundary St rength :以下、 b Sとも記載する) に基づいて行われる。 HEVCにおいて b Sは、 ブロック境 界に対してデブロックフィルタのフィルタ判定 (適用要否判定) を行う際の 処理単位である部分ブロック境界 (ブロック境界の一部) と直交する方向の 4ラインを、 デブロックフィルタを適用するフィルタ適用単位として、 その フィルタ適用単位の 4ラインごとに設定される。 ブロック境界が垂直方向の 垂直ブロック境界である場合、 フィルタ適用単位のラインとは、 垂直ブロッ ク境界と直交する水平方向のライン (行) である。 また、 ブロック境界が水 平方向の水平ブロック境界である場合、 フィルタ適用単位のラインとは、 水 平ブロック境界と直交する垂直方向のライン (列) である。
[0028] 図 1は、 HEVCにおける b Sの設定方法を説明する図である。
[0029] 図 1 に示すように、 HEVCにおいて b Sは、 イントラ予測に関する条件であ る条件 A、 Y成分の有意係数に関する条件である条件 B 1、 及び動きべクト ル (M V) と参照画像 (参照ピクチャ) に関する条件である条件 B 2の真偽 (満たされるか満たされないか) に基づいて設定される。 図 1 を参照すると
、 条件 Aが真である場合に b Sは 2に設定される。 また、 条件 Aが偽であり 、 条件 B 1、 条件 B 2のうち少なくとも一方が真である場合に b Sは 1 に設 定される。 そして、 条件 A、 条件 B 1、 及び条件 B 2がいずれも偽である場 合に b Sは 0に設定される。 なお、 図 1 に示す条件 A、 条件 B 1、 条件 B 2 は、 以下のような条件である。 また、 ここでは、 説明を簡単にするため、 ブ ロック境界は、 例えば、 垂直ブロック境界であることとする。
[0030] 条件 A : b Sの設定対象のブロック境界と直交するラインのうち最も上の ラインの画素を含みブロック境界を挟む C U (Cod i ng Un i t) のうち、 少な くともいずれか _方の予測モードがイントラ予測モードである。
条件 B 1 : ブロック境界が T U境界であり、 b Sの設定対象のブロック境 界と直交するラインのうち最も上のラインの画素を含みブロック境界を挟む 2つの T Uのうち、 少なくともいずれか一方に Y成分の有意係数が存在する 条件 B 2 : b Sの設定対象のブロック境界と直交するラインのうち最も上 のラインの画素を含みブロック境界を挟む 2つの C Uの間で、 M Vの差の絶 対値が 1画素以上、 又は、 動き補償の参照画像が異なるか、 M Vの数が異な る。
[0031 ] HEVCにおいては、 上述のように設定された b Sが 1以上に設定されたブロ ック境界を対象に、 復号画像の輝度成分 ( Y成分) に対するデブロックフィ ルタが適用され得る。 HEVCにおいて、 条件 B 1、 条件 B 2が満たされるか否 かに応じて、 復号画像の輝度成分に対するデブロックフィルタの適用要否判 定の判定結果は異なり得る。
[0032] なお、 HEVCでは、 復号画像の輝度成分に対するデブロックフィルタとして 、 フィルタ強度が大きいストロングフィルタと、 フィルタ強度が小さいウイ —クフィルタとが用意されている。 b Sが 1以上である場合、 復号画像の輝 度成分に対するデブロックフィルタに関する処理は、 さらなる条件に基づく さらなる適用要否判定が行われた後に、 フィルタ強度の判定、 フィルタリン グと続く。 これらの処理の詳細については参照文献 REF2に記載されており、
ここでの説明は省略する。
[0033] 一方で、 HEVCにおける復号画像の色差成分 (U成分、 V成分) に対するデ ブロックフィルタは、 b Sが 2であるブロック境界のみを対象として適用さ れる。 そのため、 図 1 に示すように、 条件 B 1、 条件 B 2が満たすか否かは 、 HEVCにおいて、 復号画像の色差成分に対するデブロックフィルタの適用要 否判定に影響を与えない。
[0034] また、 HEVCにおいて、 復号画像の色差成分に対して適用され得るデブロッ クフィルタはウイークフィルタのみである。 そのため、 復号画像の色差成分 について、 フィルタ強度の判定処理は不要であり、 b Sが 2である場合には 、 復号画像の色差成分に対してウイークフィルタが適用される。
[0035] ところで、 参照文献 REF3に記載されるように、 VVCにおける QTBT B lock S t ructureによるブロック分割では、 HEVCにおける Quad-Tree B lock St ructu reによるブロック分割よりも、 さらに大きなサイズのブロックが選択され得 る。 フラッ トな領域 (領域内の画素値の変化が小さい領域) におけるブロッ クのサイズが大きい場合、 ブロック歪みが発生し易い。 そのため、 より大き なサイズのブロックが選択され得る VVCにおいて、 HEVCと同様に復号画像の色 差成分に対して適用され得るデブロックフィルタをウイークフィルタのみと した場合、 色差成分において、 顕著なブロック歪みが残ってしまう恐れがあ った。 このような状況に鑑み、 復号画像の色差成分に対するデブロックフィ ルタを改善することが望まれている。
[0036] そこで、 HEVCとは異なるデブロックフィルタの他の適用方法が提案されて いる。 デブロックフィルタの他の適用方法では、 例えば、 色差成分に適用さ れ得るデブロックフィルタを、 輝度成分に適用され得るデブロックフィルタ と同様に 2種類に変更し、 色差成分に対しても、 ストロングフィルタを適用 し得ることが提案されている。 また、 b Sが 2である場合のみならず、 b S が 1の場合であっても、 復号画像の色差成分に対してデブロックフィルタが 適用され得ることが提案されている。
[0037] 図 2は、 デブロックフィルタの他の適用方法における b Sの設定方法を説
〇 2020/175145 10 卩(:170? 2020 /005472
明する図である。
[0038] デブロックフィルタの他の適用方法では、 図 2
と同様に 、 上述した条件 、 条件巳 1、 条件巳 2に基づいて匕 3が設定される。 ただ し、 上述したように、 匕 3が 2である場合のみならず、
っても復号画像の色差成分に対してデブロックフィルタが適用され得る。 図 2に示すように、 条件巳 1、 条件巳 2が満たされるか否かに応じて、 復号画 像の色差成分 (リ成分、 V成分) に対するデブロックフィルタの適用要否判 定の判定結果は異なり得る。
[0039] 図 3は、 垂直方向のブロック境界である垂直ブロック境界巳巳を挟んで隣 接する、 2つの隣接ブロックとしてのブロック巳 及びブロック巳 内の画 素 (の画素値) の例を示す図である。
[0040] なお、 ここでは、 垂直ブロック境界を例にとって説明するが、 垂直ブロッ ク境界について説明される事項は、 特に断らない限り、 水平方向のブロック 境界である水平ブロック境界にも同様に適用可能である。 また、 図 3には、 ブロック巳 及びブロック巳 が 4 X 4画素のブロックである例を示してい るが、 ここで説明される事項は、 他のサイズのブロックにも同様に適用可能 である。
[0041 ] 図 3の例において、 ブロック巳 内の画素値 (及び画素) は、
という記 号で示されている。 _1は列のインデクスで、 』は行のインデクスである。 列の インデクス丨は、 垂直ブロック境界巳巳に近い列から順に (図中の左から右へ ) 0 , 1 , 2 , 3と付番されている。 行のインデクス』は、 上から下へ 0 , 1 , 2 , 3と付番されている。 一方、 ブロック巳 9内の画素値 (及び画素) は 、 という記号で示されている。 は列のインデクス、 は行のインデクスで ある。 列のインデクス は、 垂直ブロック境界巳巳に近い列から順に (図中の 右から左へ) 0 , 1 , 2 , 3と付番されている。 画素値とは、 ここでは、 輝 度成分又は色差成分である。
[0042] なお、 図 3では、 ブロック境界巳巳が、 垂直ブロック境界であるとしてい るが、 ブロック境界巳巳を、 水平ブロック境界とみなすとともに、 ブロック
〇 2020/175145 1 1 卩(:170? 2020 /005472
巳 及びブロック巳 を、 水平ブロック境界巳巳を挟んで隣接する 2つの隣 接ブロックとみなすことができる。 この場合、
において、 丨は行のインデク スで、 』は列のインデクスとなる。 についても同様である。
[0043] デブロックフィルタの他の適用方法では、 図 2を参照して説明したように 匕 3が設定された後、 以下のように 3つの条件を用いて、 フィルタ判定が行 われる。
[0044] フィルタ判定は、 輝度成分については、 4ライン単位で行われ、 色差成分 については、 輝度成分の 4ラインに対応する色差成分のライン単位で行われ る。
[0045] 復号画像のカラーフォーマッ トが、 例えば、 丫11 4 2 0フォーマッ トで ある場合、 色差成分の画素の横方向及び縦方向の密度は、 それぞれ、 輝度成 分の画素の横方向及び縦方向の密度の 1 / 2である。
[0046] したがって、 復号画像のカラーフォーマッ トが、 丫11 4 2 0フォーマッ 卜である場合、 色差成分については、 輝度成分の 4ラインに対応する色差成 分の 2ライン単位で、 フィルタ判定が行われる。
[0047] すなわち、 復号画像のカラーフォーマッ トが丫 II 4 2 0フォーマッ トで ある場合、 色差成分については、 垂直ブロック境界巳巳 (と直交する水平方 向の画素) に対してデブロックフィルタを適用するかを判定する際の処理単 位である部分垂直ブロック境界は、 垂直方向に連続する色差成分の 2ライン 分の垂直ブロック境界 (垂直ブロック境界のうちの、 水平方向の色差成分の 連続する 2ラインと直交する部分) である。 色差成分のフィルタ判定は、 そ のような部分垂直ブロック境界ごとに行われる。
[0048] いま、 図 3に示したブロック巳 及びブロック巳 が輝度成分のブロック であるとする。 この場合、 輝度成分のフィルタ判定は、 ライン 1- 1 1及びラ イン !_ 1 2並びにライン !_ 2 1及びライン !_ 2 2の 4ライン分の部分垂直ブ ロック境界匕を対象に行われる。
[0049] また、 図 3に示したブロック巳 及びブロック巳 が色差成分のブロック であるとする。 この場合、 色差成分のフィルタ判定は、 ライン 1- 1 1及びラ
〇 2020/175145 12 卩(:170? 2020 /005472
イン !_ 1 2の 2ライン分の部分垂直ブロック境界匕 1 と、 ライン !_ 2 1及び ライン !_ 2 2の 2ライン分の部分垂直ブロック境界匕 2とをそれぞれ対象と して行われる。
[0050] 部分垂直ブロック境界匕 1 に対するフィルタ判定は、 その部分垂直ブロッ ク境界匕 1 と直交する水平方向の (色差成分の) ライン !_ 1 1及びライン !_ 1 2 (の画素) を用いて行われる。 同様に、 部分垂直ブロック境界匕 2に対 するフィルタ判定は、 その部分垂直ブロック境界匕 2と直交する水平方向の ライン !_ 2 1及びライン !_ 2 2を用いて行われる。
[0053] なお、 条件〇 9 1 において 1〇1〇〇1<_1/\/丨〇11;11、 及び、 1〇1〇〇1<_116丨9111;は、 図 3に示 したように、 フィルタ判定の対象となる部分垂直ブロック境界 13 1 にかかる ブロック (例えば〇 II) の水平方向のサイズ、 及び、 垂直方向のサイズであ る。 | |は、 論理和を表し、 &&は、 論理積を表す。
[0054] また、 条件〇 9 2における変数 6 3は、 エッジ判定閾値であり、 変数 6士3 は、 量子化パラメータに応じて与えられる。 また、 条件 0 9 2における変数 は、 以下の式 ( 1 ) ないし式 (7) により設定される。
4
〇 2020/175145 13 卩(:170? 2020 /005472
〇1 90=(^0+(^0
( 5 )
〇^ 1 =〇1卩1 +(^ 1
( 6 )
〇1=〇1卩90+〇1卩91
( 7 )
[0056] なお、 条件〇9 2は、 フィルタ判定に用いられるラインが異なることを除 いて、
において輝度成分に適用されるデブロックフィルタのフィルタ判 定において用いられる条件 (以下、 輝度成分における条件と呼ぶ) と同様で ある。 輝度成分における条件では、 1 ライン目の画素と 4ライン目の画素と を用いて、 4ライン (セグメント) 分の部分垂直ブロック境界 (垂直ブロッ ク境界のうちの、 垂直方向に連続する 4ラインと直交する部分) ごとに、 フ ィルタ判定が行われる。
[0057] また、 カラーフォーマッ トが丫11 4 2 0フォーマッ トである場合、 色差 成分 (II成分、 V成分) の水平方向及び垂直方向それぞれの画素の密度が輝 度成分の画素の密度の半分であり、 輝度成分の 4ラインは、 色差成分の 2ラ インに対応する。 そのため、 丫リ 4 2 0フォーマッ トでは、 上述のように 、 色差成分については、 輝度成分の 4ラインに対応する色差成分の 2ライン 分の部分垂直ブロック境界 (例えば、 部分垂直ブロック境界匕 1や匕 2) ご とに、 その部分垂直ブロック境界と直交する色差成分の 1 ライン目の画素と 2ライン目の画素とを用いて、 フィルタ判定が行われる。
[0058] すなわち、 例えば、 部分垂直ブロック境界匕 1 については、 式 (2) 及び 式 (4) の輝度成分の 4ライン目の画素 及び に代えて、 色差成分の 2ラ イン目の画素 ,及び を用いてフィルタ判定が行われる。
[0059] 条件〇 9 1及び条件〇 9 2のうち少なくともいずれか一方が偽である場合 には、 復号画像の色差成分にデブロックフィルタが適用されない。 一方、 条 件〇 9 1及び条件〇 9 2の両方が真である場合、 フィルタ判定では、 フィル 夕強度判定が行われる。
〇 2020/175145 14 卩(:170? 2020 /005472
[0060] フィルタ強度判定では、 ストロングフィルタとウイークフィルタとのうち 、 いずれのフィルタを適用するかの判定として、 例えば、 条件〇 93が真で あるか否かが判定される。
6丨9 は、 条件〇 9
1 における 1〇1〇〇 1/\/_1〇11;11、 及び 1〇1〇〇 116_19111;と同様に、 フィルタ判定の対象と なる部分垂直ブロック境界にかかるブロックの水平方向のサイズ、 及び、 垂 直方向のサイズである。
[0063] 条件 093が真である場合には、 部分垂直ブロック境界において復号画像 にストロングフィルタが適用され、 条件 093が偽である場合には、 部分垂 直ブロック境界において復号画像にウイークフィルタが適用される。
2’ =0レ19342-2*%, 92+2 (;,(卩 + + )» )
- ( 1 3)
[0066] なお、 式 (8) ないし式 ( 1 3) において、 卩及び はデブロックフィルタ
〇 2020/175145 15 卩(:170? 2020 /005472
適用前の画素値を表す。 また、 及び ' は、 デブロックフィルタ適用後の 画素値を表す。 ここで、 丨及び はそれぞれ上述したブロック巳 、 ブロック 巳 9内の列のインデクスであり、 式 (8) ないし式 (1 3) では行のインデ クスは同一であるため、 省略されている。 また、 %は量子化パラメータに応じ て与えられるパラメータである。 また、 _1 3(3, 1),(;)は、 値〇を
の範 囲でクリップするクリッビング処理を表す。
< >
[0068] 非特許文献 1では、 ブロック構造が、 直交変換の単位となる変換ブロック である!· 11(1>3 1:〇「111 _| 1;)、 予測の単位となる予測ブロックである
士_1(^ 丨〇、 及び、 符号化の単位となる符号化ブロックである 〇 叩 丨 士)が同一のブロックに統一された階層構造を有する。
[0070] 13?に設定されたブロックのサブブロックへの分割は、 画素数 (輝度成分の 数) が 64以上のブロックを対象に、 水平又は垂直の同一方向 (一次元方向) に、 2分割又は 4分割を選択して行うことができる。
[0071 ] すなわち、
に設定されたブロックのサブブロックへの分割としては、 図 4に示すように、 水平方向若しくは垂直方向に 2等分又は 4等分の分割を行 うことができる。 したがって、 ブロックの横 X縦を、 WX Hで表すこととする と、 ブロックは、 1X ^2の 2個のサブブロック、 W/2 X Hの 2個のサブブロッ ク、 1X ^4の 4個のサブブロック、 又は、 W/4X Hの 4個のサブブロックに分 割することができる。
[0072] に設定されたブロック、 ひいては、 そのブロックを分割したサブブロッ
クについては、 イントラ予測が行われる。 イントラ予測が行われるブロック のブロック境界には、 ブロック歪みが生じやすいが、 非特許文献 1では、 サ ブブロックのブロック境界 (サブブロック境界) は、 デブロックフィルタの 適用の対象になっていない。
[0073] そこで、 本技術では、 サブブロック境界 (と直交するラインの画素) を、 デブロックフィルタの適用の対象として、 デブロックフィルタが適用され得 る。 これにより、 サブブロック境界に生じるブロック歪みを抑制することが できる。
[0074] 例えば、 ブロック境界に隣接するブロックがイントラ予測されるブロック である場合にブロック境界に設定される b S (B S) と同一の b Sを、 サブ ブロック境界の b Sとして設定することで、 サブブロック境界にデブロック フィルタを適用することができる。 図 1及び図 2では、 ブロック境界に隣接 するブロックがイントラ予測されるブロックである場合にブロック境界に設 定される b Sは、 2であり、 したがって、 サブブロック境界の b Sとしては 、 2を設定することができる。 なお、 サブブロック境界の b Sとしては、 そ の他、 例えば、 1 を設定することができる。
[0075] なお、 ブロックがサブブロックに分割される場合としては、 ISPが設定され た場合の他、 SBT(Sub-B lock Transform)が設定された場合がある。 SBTが設定 された場合も、 ISPが設定された場合と同様に、 サブブロック境界に、 デブロ ックフィルタを適用することができる。
[0076] 図 5は、 デブロックフィルタのフィルタタイプの例を示す図である。
[0077] デブロックフィルタのフィルタタイプ (種類) としては、 例えば、 ロング フィルタ、 ストロングフィルタ、 及び、 ウイークフィルタの 3つを採用する ことができる。 ロングフィルタ、 ストロングフィルタ、 及び、 ウイークフィ ルタは、 その順で、 フィルタ強度が強い (平滑性が高い) フィルタになって いる。
[0078] デブロックフィルタは、 ブロック境界 B Bと直交するラインの画素のうち の、 ブロック境界 B Bに連続して隣接する所定数の画素に適用される。 ここ
〇 2020/175145 17 卩(:170? 2020 /005472
で、 デブロックフィルタが適用される画素を、 適用対象画素ともいう。 また 、 適用対象画素ではないが、 デブロックフィルタの適用にあたって参照され る画素、 すなわち、 デブロックフィルタの適用としてのフィルタ演算に用い られる画素を、 参照画素ともいう。 なお、 適用対象画素は、 デブロックフィ ルタの適用にあたって参照されることがある。
[0079] 例えば、 ブロック境界巳巳が垂直ブロック境界である場合、 ロングフィル 夕では、 ブロック境界巳巳と直交するラインの画素のうちの、 ブロック境界 巳巳の左に連続して隣接する 7個の画素と、 ブロック境界巳巳の右に連続し て隣接する 7個の画素とが、 適用対象画素となる。 また、 ブロック境界巳巳 と直交するラインの画素のうちの、 ブロック境界巳巳から 8個目の画素が、 参照画素となる。
[0080] なお、 ロングフィルタは、 1辺が 3 2画素以上のブロック (の画素) を対 象として適用され得る。
[0081 ] ストロングフィルタでは、 ブロック境界巳巳と直交するラインの画素のう ちの、 ブロック境界巳巳の左に連続して隣接する 3個の画素と、 ブロック境 界巳巳の右に連続して隣接する 3個の画素とが、 適用対象画素となる。 また 、 ブロック境界巳巳と直交するラインの画素のうちの、 ブロック境界巳巳か ら 4個目の画素が、 参照画素となる。
[0082] ウイークフィルタでは、 ブロック境界巳巳と直交するラインの画素のうち の、 ブロック境界巳巳の左に連続して隣接する 2個の画素と、 ブロック境界 巳巳の右に連続して隣接する 2個の画素とが、 適用対象画素となる。 また、 ブロック境界巳巳と直交するラインの画素のうちの、 ブロック境界巳巳から 3個目の画素が、 参照画素となる。
[0083] なお、 ウイークフィルタでは、 ブロック境界巳巳と直交するラインの画素 のうちの、 ブロック境界巳巳から 1個目の画素、 すなわち、 ブロック境界の 左に隣接する 1個の画素、 及び、 右に隣接する 1個の画素だけを適用対象画 素とすることができる。 この場合、 ブロック境界巳巳と直交するラインの画 素のうちの、 ブロック境界巳巳から 2個目及び 3個目の画素が、 参照画素と
〇 2020/175145 18 卩(:170? 2020 /005472
なる。
[0084] 以上、 ブロック境界巳巳が垂直ブロック境界である場合のデブロックフィ ルタの適用について説明したが、 ブロック境界巳巳が水平ブロック境界であ る場合のデブロックフィルタの適用も同様である。
[0085] ところで、 図 4で説明したように、 13?に設定された 6 4画素以上のブロッ クは、 水平又は垂直の同一方向への 2分割又は 4分割により、 サブブロック に分割することができる。 したがって、 ブロックは、 ブロックサイズが I X 、 1、 2 X 1X1、 2、 4 X 1X1、 X 4のサブブロックに分割され得る 。 例えば、 ブロックが、 4 X 1 6画素のブロックである場合、 ブロックは、 2 X 1 6画素や、 1 X 1 6画素のブロックサイズのサブブロックに分割され 得る。
[0086] 一方、 デブロックフィルタの適用は、 複数のブロック境界 (それぞれに隣 接する画素) に対して、 並列して行うことができる。 例えば、 ある水平ライ ンの、 各垂直ブロック境界巳巳に隣接する画素に対して、 デブロックフィル 夕を並列 (同時) に適用することができる。 ここで、 複数の垂直ブロック境 界に対して、 デブロックフィルタを並列に適用することを、 デブロックフィ ルタの並列適用ともいう。 デブロックフィルタの並列適用によれば、 処理の 高速化を図ることができる。
[0087] 図 4で説明したように、 サブブロック境界 (と直交するラインの画素) を 、 デブロックフィルタの適用の対象とする場合に、 デブロックフィルタの並 列適用を行うときには、 不都合が生じ得る。
[0088] 図 6は、 デブロックフィルタの並列適用を行うときに生じ得る不都合を説 明する図である。
[0089] 図 6は、 サブブロックサイズが 2 X 1\1のサブブロックが水平方向に並んで いる場合のある水平ライン!-の画素を表している。
[0090] ここでは、 図 5で説明した 3つの (フィルタタイプの) デブロックフィル 夕のうちの、 例えば、 ウイークフィルタを適用することとする。
[0091 ] ある垂直ブロック境界巳巳 1 に、 ウイークフィルタが適用される場合、 水
〇 2020/175145 19 卩(:170? 2020 /005472
平ライン!-の、 垂直ブロック境界巳巳 1 に連続して隣接する 2個の画素 1及 び卩2、 並びに、 1及び 2が適用対象画素となる。 さらに、 この場合、 水平ラ イン!-の、 垂直ブロック境界巳巳 1から 3個目の画素 3及び 93が、 参照画素 となる。
[0092] —方、 垂直ブロック境界巳巳 1の右に隣接する垂直ブロック境界巳巳 2に 、 ウイークフィルタがされる場合、 画素 1ないし 3は、 適用対象画素となる
[0093] したがって、 垂直ブロック境界巳巳 1 にウイークフィルタが適用される場 合に適用対象画素となる画素 及び 92、 並びに、 参照画素となる 3は、 垂直 ブロック境界巳巳 2にウイークフィルタがされる場合に適用対象画素にもな る。
[0094] このため、 垂直ブロック境界巳巳 1 にウイークフィルタが適用される前後 や、 垂直ブロック境界巳巳 2にウイークフィルタが適用される前後で、 画素 9 1ないし 93の画素値 (輝度成分) が変化する。 そして、 その変化に起因して、 垂直ブロック境界巳巳 1及び巳巳 2にウイークフィルタが適用されるタイミ ングによって適用対象画素 1及び 2の画素値が変化する。
[0095] また、 垂直ブロック境界巳巳 1 にウイークフィルタが適用される場合と、 垂直ブロック境界巳巳 1 2ウイークフィルタが適用される場合とのいずれの 場合にも適用対象画素となる画素 91及び 2については、 垂直ブロック境界巳 巳 1 にウイークフィルタが適用される場合と、 垂直ブロック境界巳巳 1 2に ウイークフィルタが適用される場合とで、 画素値の書き込みの競合が生じ得 る。
[0096] 以上の点、 ウイークフィルタよりも適用対象画素が多いストロングフィル 夕及びロングフィルタでも同様である。
[0097] 本技術では、 デブロックフィルタの並列適用を行うときに生じ得る、 上述 のような、 ウイークフィルタが適用されるタイミングによる適用対象画素の 画素値の変化や、 画素値の書き込みの競合といった不都合を抑制する。
[0098] そのため、 本技術では、 1のサブブロック境界でデブロックフィルタが適
〇 2020/175145 20 卩(:170? 2020 /005472
用される適用対象画素の中に、 他のサブブロック境界でのデブロックフィル 夕の適用で参照される画素が含まれないように、 デブロックフィルタを適用 する。
[0099] また、 本技術では、 1のサブブロック境界でデブロックフィルタが適用さ れる適用対象画素の中に、 他のサブブロック境界、 すなわち、 1のサブブロ ック境界に隣接するサブブロック境界 (以下、 隣接サブブロック境界ともい う) でのデブロックフィルタの適用で参照される画素が含まれないように、 デブロックフィルタを適用することができない場合には、 デブロックフィル 夕の適用を制限する (デブロックフィルタを適用しない) 。
[0100] 図 6では、 例えば、 サブブロック境界巳巳 2でデブロックフィルタが適用 される適用対象画素 1ないし 3の中に、 隣接サブブロック境界としてのサブ ブロック境界巳巳 1でのデブロックフィルタの適用で参照される画素 1ない し卩3及び 1ないし 3が含まれないように、 デブロックフィルタを適用するこ とができない。 そのため、 デブロックフィルタの適用は制限される。
[0101 ] 図 5で説明したデブロックフィルタについては、 サブブロック境界と直交 する方向のサブブロックのサイズが 1又は 2画素である場合、 すなわち、 サ ブブロック境界に隣接するサブブロックのブロックサイズが、 1 X 1\1、 X 1 、 2 X 1X1、 又は、 2である場合、 1のサブブロック境界でデブロックフ ィルタが適用される適用対象画素の中に、 隣接サブブロック境界でのデブロ ックフィルタの適用で参照される画素が含まれないように、 デブロックフィ ルタを適用することができることはない。
[0102] したがって、 本技術では、 ブロックサイズが I X 1\1、 1、 2 X 1X1、 又は 、 2のサブブロックのサブブロック境界では、 デブロックフィルタの適 用が制限される。 これにより、 デブロックフィルタの並列適用を行う場合に 、 不都合が生じることを抑制することができる。
[0103] また、 サブブロック境界と直交する方向のサブブロックのサイズが 4画素 である場合、 すなわち、 サブブロック境界に隣接するサブブロックのブロッ クサイズが、 4 X 1X1、 又は、 4である場合、 サブブロック境界から 1個
〇 2020/175145 21 卩(:170? 2020 /005472
目の画素だけを適用対象画素とすることで、 1のサブブロック境界でウイー クフィルタが適用される適用対象画素の中に、 隣接サブブロック境界でのウ イークフィルタの適用で参照される画素が含まれないように、 ウイークフィ ルタを適用することができる。
[0104] そこで、 本技術では、 ブロックサイズが 4 X 1X1、 又は、 4のサブブロ ックのサブブロック境界では、 サブブロック境界から 1個目の画素だけを適 用対象画素とするウイークフィルタのみを適用し得ることとする。 この場合 、 不都合が生じることなく、 デブロックフィルタの並列適用を行うことがで きる。
[0105] そして、 本技術では、 サブブロック境界と直交する方向のサブブロックの サイズが 8画素以上である場合、 すなわち、 サブブロック境界に隣接するサ ブブロックのブロックサイズが、 8 X 1\1、 又は、 X 8以上のブロックサイ ズである場合、 ウイークフィルタ、 ストロングフィルタ、 及び、 ロングフィ ルタの中から所定の方法で選択されたデブロックフィルタを適用し得ること とする。
[0106] <本技術を適用した画像処理システム >
[0107] 図 7は、 本技術を適用した画像処理システムの一実施の形態の構成例を示 すブロック図である。
[0108] 画像処理システム 1 0は、 エンコーダ 1 1 としての画像処理装置、 及び、 デコーダ 5 1 としての画像処理装置を有する。
[0109] エンコーダ 1 1は、 そこに供給される符号化対象の元画像を符号化し、 そ の符号化により得られる符号化ビッ トストリームを出力する。 符号化ビッ ト ストリームは、 図示せぬ記録媒体又は伝送媒体を介して、 デコーダ 5 1 に供 給される。
[01 10] デコーダ 5 1は、 そこに供給される符号化ビッ トストリームを復号し、 そ の復号により得られる復号画像を出力する。
[01 1 1 ] エンコーダ 1 1及びデコーダ 5 1では、 (変換ブロック) 、 卩リ (予測ブ ロック) 、 及び、 (符号化ブロック) が同一のブロックに統一された階層
構造を有するブロック構造に従って、 符号化及び復号が、 それぞれ行われる
[01 12] <エンコーダ 1 1の構成例 >
[01 13] 図 8は、 図 7のエンコーダ 1 1の詳細な構成例を示すブロック図である。
[01 14] なお、 以下説明するブロック図については、 図が煩雑になるのを避けるた め、 各ブロックの処理で必要となる情報 (データ) を供給する線の記載を、 適宜省略する。
[01 15] 図 8において、 エンコーダ 1 1は、 A/D変換部 2 1、 並べ替えバッファ 2 2 、 演算部 2 3、 直交変換部 2 4、 量子化部 2 5、 可逆符号化部 2 6、 及び、 蓄積バッファ 2 7を有する。 さらに、 エンコーダ 1 1は、 逆量子化部 2 8、 逆直交変換部 2 9、 演算部 3 0、 フレームメモリ 3 2、 選択部 3 3、 イント ラ予測部 3 4、 動き予測補償部 3 5、 予測画像選択部 3 6、 及び、 レート制 御部 3 7を有する。 また、 エンコーダ 1 1は、 デブロックフィルタ 3 1 a、 適応オフセッ トフィルタ 4 1、 及び、 ALF(adapt i ve loop f i Iter) 4 2を有す る。
[01 16] A/D変換部 2 1は、 アナログ信号の元画像 (符号化対象) を、 ディジタル信 号の元画像に A/D変換し、 並べ替えバッファ 2 2に供給して記憶させる。 なお 、 エンコーダ 1 1 にディジタル信号の元画像が供給される場合には、 エンコ —ダ 1 1は、 A/D変換部 2 1 を設けずに構成することができる。
[01 17] 並べ替えバッファ 2 2は、 元画像のフレームを、 GOP (Group Of P i cture) に応じて、 表示順から符号化 (復号) 順に並べ替え、 演算部 2 3、 イントラ 予測部 3 4、 及び、 動き予測補償部 3 5に供給する。
[01 18] 演算部 2 3は、 並べ替えバッファ 2 2からの元画像から、 予測画像選択部
3 6を介してイントラ予測部 3 4又は動き予測補償部 3 5から供給される予 測画像を減算し、 その減算により得られる残差 (予測残差) を、 直交変換部 2 4に供給する。
[01 19] 直交変換部 2 4は、 演算部 2 3から供給される残差に対して、 離散コサイ ン変換やカルーネン · レーベ変換等の直交変換を施し、 その直交変換により
得られる直交変換係数を量子化部 2 5に供給する。
[0120] 量子化部 2 5は、 直交変換部 2 4から供給される直交変換係数を量子化す る。 量子化部 2 5は、 レート制御部 3 7から供給される符号量の目標値 (符 号量目標値) に基づいて量子化パラメータを設定し、 直交変換係数の量子化 を行う。 量子化部 2 5は、 量子化された直交変換係数である符号化データを 、 可逆符号化部 2 6に供給する。
[0121 ] 可逆符号化部 2 6は、 量子化部 2 5からの符号化データとしての量子化さ れた直交変換係数を所定の可逆符号化方式で符号化する。
[0122] また、 可逆符号化部 2 6は、 エンコーダ 1 1での予測符号化に関する符号 化情報のうちの、 復号装置 1 7 0での復号に必要な符号化情報を、 各ブロッ クから取得する。
[0123] ここで、 符号化情報としては、 例えば、 イントラ予測やインター予測の予 測モード、 動きベクトル等の動き情報、 符号量目標値、 量子化パラメータ、 ピクチャタイプ(I, P, B)、 デブロックフィルタ 3 1 a及び適応オフセッ トフィ ルタ 4 1のフィルタパラメータ等がある。
[0124] 予測モードは、 イントラ予測部 3 4や動き予測補償部 3 5から取得するこ とができる。 動き情報は、 動き予測補償部 3 5から取得することができる。 デブロックフィルタ 3 1 a及び適応オフセッ トフィルタ 4 1のフィルタパラ メータは、 デブロックフィルタ 3 1 a及び適応オフセッ トフィルタ 4 1から それぞれ取得することができる。
[0125] 可逆符号化部 2 6は、 符号化情報を、 例えば、 CAVLC (Context-Adapt i ve V ar i ab le Length Cod i ng) や CABAC (Context-Adapt i ve B i nary Ar i thmet i c Co d i ng) 等の可変長符号化又は算術符号化その他の可逆符号化方式で符号化し 、 符号化後の符号化情報、 及び、 量子化部 2 5からの符号化データを含む ( 多重化した) 符号化ビッ トストリームを生成して、 蓄積バッファ 2 7に供給 する。
[0126] 蓄積バッファ 2 7は、 可逆符号化部 2 6から供給される符号化ビッ トスト リームを、 一時的に蓄積する。 蓄積バッファ 2 7に蓄積された符号化ビッ ト
〇 2020/175145 24 卩(:170? 2020 /005472
ストリームは、 所定のタイミングで読み出されて伝送される。
[0127] 量子化部 2 5において量子化された直交変換係数である符号化データは、 可逆符号化部 2 6に供給される他、 逆量子化部 2 8にも供給される。 逆量子 化部 2 8は、 量子化された直交変換係数を、 量子化部 2 5による量子化に対 応する方法で逆量子化し、 その逆量子化により得られる直交変換係数を、 逆 直交変換部 2 9に供給する。
[0128] 逆直交変換部 2 9は、 逆量子化部 2 8から供給される直交変換係数を、 直 交変換部 2 4による直交変換処理に対応する方法で逆直交変換し、 その逆直 交変換の結果得られる残差を、 演算部 3 0に供給する。
[0129] 演算部 3 0は、 逆直交変換部 2 9から供給される残差に、 予測画像選択部
3 6を介してイントラ予測部 3 4又は動き予測補償部 3 5から供給される予 測画像を加算し、 これにより、 元画像を復号した復号画像 (の一部) を得て 出力する。
[0130] 演算部 3 0が出力する復号画像は、 デブロックフィルタ 3 1 3又はフレー ムメモリ 3 2に供給される。
[0131 ] フレームメモリ 3 2は、 演算部 3 0から供給される復号画像、 及び、 八!_ド4
2から供給される、 デブロックフィルタ 3 1 3、 適応オフセッ トフィルタ 4 1、 及び、
4 2が適用された復号画像 (フィルタ画像) を一時記憶する。 フレームメモリ 3 2に記憶された復号画像は、 必要なタイミングで、 予測画 像の生成に用いられる参照画像として、 選択部 3 3に供給される。
[0132] 選択部 3 3は、 フレームメモリ 3 2から供給される参照画像の供給先を選 択する。 イントラ予測部 3 4においてイントラ予測が行われる場合、 選択部 3 3は、 フレームメモリ 3 2から供給される参照画像を、 イントラ予測部 3 4に供給する。 動き予測補償部 3 5においてインター予測が行われる場合、 選択部 3 3は、 フレームメモリ 3 2から供給される参照画像を、 動き予測補 償部 3 5に供給する。
[0133] イントラ予測部 3 4は、 並べ替えバッファ 2 2から供給される元画像と、 選択部 3 3を介してフレームメモリ 3 2から供給される参照画像とを用い、
〇 2020/175145 25 卩(:170? 2020 /005472
イントラ予測 (画面内予測) を行う。 イントラ予測部 3 4は、 所定のコスト 関数 (例えば、
コスト等) に基づいて、 最適なイントラ予測モードを選択 し、 その最適なイントラ予測モードで参照画像から生成された予測画像を、 予測画像選択部 3 6に供給する。 また、 上述したように、 イントラ予測部 3 4は、 コスト関数に基づいて選択されたイントラ予測モードを示す予測モー ドを、 可逆符号化部 2 6等に適宜供給する。
[0134] 動き予測補償部 3 5は、 並べ替えバッファ 2 2から供給される元画像と、 選択部 3 3を介してフレームメモリ 3 2から供給される参照画像とを用い、 動き予測 (インター予測) を行う。 さらに、 動き予測補償部 3 5は、 動き予 測により検出される動きべクトルに応じて動き補償を行い、 予測画像を生成 する。 動き予測補償部 3 5は、 あらかじめ用意された複数のインター予測モ —ドで、 インター予測を行い、 参照画像から予測画像を生成する。
[0135] 動き予測補償部 3 5は、 複数のインター予測モードそれぞれについて得ら れた予測画像の所定のコスト関数に基づいて、 最適なインター予測モードを 選択する。 さらに、 動き予測補償部 3 5は、 最適なインター予測モードで生 成された予測画像を、 予測画像選択部 3 6に供給する。
[0136] また、 動き予測補償部 3 5は、 コスト関数に基づいて選択されたインター 予測モードを示す予測モードや、 そのインター予測モードで符号化された符 号化データを復号する際に必要な動きべクトル等の動き情報等を、 可逆符号 化部 2 6に供給する。
[0137] 予測画像選択部 3 6は、 演算部 2 3及び演算部 3 0に供給する予測画像の 供給元を、 イントラ予測部 3 4及び動き予測補償部 3 5の中から選択し、 そ の選択した方の供給元から供給される予測画像を、 演算部 2 3及び演算部 3 0に供給する。
[0138] レート制御部 3 7は、 蓄積バッファ 2 7に蓄積された符号化ビッ トストリ —ムの符号量に基づいて、 才ーバーフローあるいはアンダーフローが発生し ないように、 量子化部 2 5の量子化動作のレートを制御する。 すなわち、 レ -卜制御部 3 7は、 蓄積バッファ 2 7の才ーバーフロー及びアンダーフロー
〇 2020/175145 26 卩(:170? 2020 /005472
が生じないように、 符号化ビッ トストリームの目標符号量を設定し、 量子化 部 2 5に供給する。
[0139] デブロックフィルタ 3 1 3は、 演算部 3 0からの復号画像に、 デブロック フィルタを必要に応じて適用し、 デブロックフィルタが適用された復号画像 (フィルタ画像) 、 又は、 デブロックフィルタが適用されていない復号画像 を、 適応オフセッ トフィルタ 4 1 に供給する。
[0140] 適応オフセッ トフィルタ 4 1は、 デブロックフィルタ 3 1 3からの復号画 像に、 適応オフセッ トフィルタを必要に応じて適用し、 適応オフセッ トフィ ルタが適用された復号画像 (フィルタ画像) 、 又は、 適応オフセッ トフィル 夕が適用されていない復号画像を、 八!_ド4 2に供給する。
[0141 ] 八!_ド4 2は、 適応オフセッ トフィルタ 4 1からの復号画像に、
を必要に 応じて適用し、
が適用された復号画像、 又は、
が適用されていない復 号画像を、 フレームメモリ 3 2に供給する。
[0142] <符号化処理 >
[0143] 図 9は、 図 8のエンコーダ 1 1の符号化処理の例を説明するフローチヤー 卜である。
[0144] なお、 図 9に示す符号化処理の各ステップの順番は、 説明の便宜上の順番 であり、 実際の符号化処理の各ステップは、 適宜、 並列的に、 必要な順番で 行われる。 後述する処理についても、 同様である。
[0145] エンコーダ 1 1では、 ステップ 3 1 1 において、 八/〇変換部 2 1は、 元画像 を八/ 変換し、 並べ替えバッファ 2 2に供給して、 処理は、 ステップ 3 1 2に 進む。
[0146] ステップ 3 1 2において、 並べ替えバッファ 2 2は、 八/ 変換部 2 1からの 元画像を記憶し、 符号化順に並べ替えて出力し、 処理は、 ステップ 3 1 3に 進む。
[0147] ステップ 3 1 3では、 イントラ予測部 3 4は、 イントラ予測モードのイン トラ予測処理を行い、 処理は、 ステップ 3 1 4に進む。 ステップ 3 1 4にお いて、 動き予測補償部 3 5は、 インター予測モードでの動き予測や動き補償
〇 2020/175145 27 卩(:170? 2020 /005472
を行うインター動き予測処理を行い、 処理は、 ステップ 3 1 5に進む。
[0148] イントラ予測部 3 4のイントラ予測処理、 及び、 動き予測補償部 3 5のイ ンター動き予測処理では、 各種の予測モードのコスト関数が演算されるとと もに、 予測画像が生成される。
[0149] ステップ 3 1 5では、 予測画像選択部 3 6は、 イントラ予測部 3 4及び動 き予測補償部 3 5で得られる各コスト関数に基づいて、 最適な予測モードを 決定する。 そして、 予測画像選択部 3 6は、 イントラ予測部 3 4により生成 された予測画像と、 動き予測補償部 3 5により生成された予測画像のうちの 最適な予測モードの予測画像を選択して出力し、 処理は、 ステップ 3 1 5か らステップ 3 1 6に進む。
[0150] ステップ 3 1 6では、 演算部 2 3は、 並べ替えバッファ 2 2が出力する元 画像である符号化対象の対象画像と、 予測画像選択部 3 6が出力する予測画 像との残差を演算し、 直交変換部 2 4に供給して、 処理は、 ステップ 3 1 7 に進む。
[0151 ] ステップ 3 1 7では、 直交変換部 2 4は、 演算部 2 3からの残差を直交変 換し、 その結果得られる直交変換係数を、 量子化部 2 5に供給して、 処理は 、 ステップ 3 1 8に進む。
[0152] ステップ 3 1 8では、 量子化部 2 5は、 直交変換部 2 4からの直交変換係 数を量子化し、 その量子化により得られる量子化係数を、 可逆符号化部 2 6 及び逆量子化部 2 8に供給して、 処理は、 ステップ 3 1 9に進む。
[0153] ステップ 3 1 9では、 逆量子化部 2 8は、 量子化部 2 5からの量子化係数 を逆量子化し、 その結果得られる直交変換係数を、 逆直交変換部 2 9に供給 して、 処理は、 ステップ 3 2 0に進む。 ステップ 3 2 0では、 逆直交変換部 2 9は、 逆量子化部 2 8からの直交変換係数を逆直交変換し、 その結果得ら れる残差を、 演算部 3 0に供給して、 処理は、 ステップ 3 2 1 に進む。
[0154] ステップ 3 2 1では、 演算部 3 0は、 逆直交変換部 2 9からの残差と、 予 測画像選択部 3 6が出力する予測画像とを加算し、 演算部 2 3での残差の演 算の対象となった元画像に対応する復号画像を生成する。 演算部 3 0は、 復
〇 2020/175145 28 卩(:170? 2020 /005472
号画像を、 デブロックフィルタ 3 1 3に供給し、 処理は、 ステップ 3 2 1か らステップ 3 2 2に進む。
[0155] ステップ 3 2 2では、 デブロックフィルタ 3 1 3は、 演算部 3 0からの復 号画像に、 デブロックフィルタを適用し、 その結果得られるフィルタ画像を 、 適応オフセッ トフィルタ 4 1 に供給して、 処理は、 ステップ 3 2 3に進む
[0156] ステップ 3 2 3では、 適応オフセッ トフィルタ 4 1は、 デブロックフィル 夕 3 1 3からのフィルタ画像に、 適応オフセッ トフィルタを適用し、 その結 果得られるフィルタ画像を、 八!_ド4 2に供給して、 処理は、 ステップ 3 2 4に 進む。
[0157] ステップ 3 2 4では、 八!_ド4 2は、 適応オフセッ トフィルタ 4 1からのフィ ルタ画像に、
を適用し、 その結果得られるフィルタ画像を、 フレームメモ リ 3 2に供給して、 処理は、 ステップ 3 2 5に進む。
[0158] ステップ 3 2 5では、 フレームメモリ 3 2は、 八!_ド4 2から供給されるフィ ルタ画像を記憶し、 処理は、 ステップ 3 2 6に進む。 フレームメモリ 3 2に 記憶されたフィルタ画像は、 ステップ 3 1 3や 3 1 4で、 予測画像を生成す る元となる参照画像として使用される。
[0159] ステップ 3 2 6では、 可逆符号化部 2 6は、 量子化部 2 5からの量子化係 数である符号化データを符号化し、 その符号化データを含む符号化ビッ トス トリームを生成する。 さらに、 可逆符号化部 2 6は、 量子化部 2 5での量子 化に用いられた量子化パラメータや、 イントラ予測部 3 4でのイントラ予測 処理で得られた予測モード、 動き予測補償部 3 5でのインター動き予測処理 で得られた予測モードや動き情報、 デブロックフィルタ 3 1 3及び適応オフ セッ トフィルタ 4 1のフィルタパラメータ等の符号化情報を必要に応じて符 号化し、 符号化ビッ トストリームに含める。
[0160] そして、 可逆符号化部 2 6は、 符号化ビッ トストリームを、 蓄積バッファ
2 7に供給し、 処理は、 ステップ 3 2 6からステップ 3 2 7に進む。
[0161 ] ステップ 3 2 7において、 蓄積バッファ 2 7は、 可逆符号化部 2 6からの
〇 2020/175145 29 卩(:170? 2020 /005472
符号化ビッ トストリームを蓄積し、 処理は、 ステップ 3 2 8に進む。 蓄積バ ッファ 2 7に蓄積された符号化ビッ トストリームは、 適宜読み出されて伝送 される。
[0162] ステップ 3 2 8では、 レート制御部 3 7は、 蓄積バッファ 2 7に蓄積され ている符号化ビッ トストリームの符号量 (発生符号量) に基づいて、 才ーバ —フローあるいはアンダーフローが発生しないように、 量子化部 2 5の量子 化動作のレートを制御し、 符号化処理は終了する。
[0163] <デコーダ 5 1の構成例 >
[0164] 図 1 0は、 図 7のデコーダ 5 1の詳細な構成例を示すブロック図である。
[0165] 図 1 0において、 デコーダ 5 1は、 蓄積バッファ 6 1、 可逆復号部 6 2、 逆量子化部 6 3、 逆直交変換部 6 4、 演算部 6 5、 並べ替えバッファ 6 7、 及び、 〇/八変換部 6 8を有する。 さらに、 デコーダ 5 1は、 フレームメモリ 6 9、 選択部 7 0、 イントラ予測部 7 1、 動き予測補償部 7 2、 及び、 選択部 7 3を有する。 また、 デコーダ 5 1は、 デブロックフィルタ 3 1 匕、 適応才 フセッ トフィルタ 8 1、 及び、 八!_ド8 2を有する。
[0166] 蓄積バッファ 6 1は、 エンコーダ 1 1から伝送されてくる符号化ビッ トス トリームを一時蓄積し、 所定のタイミングにおいて、 その符号化ビッ トスト リームを、 可逆復号部 6 2に供給する。
[0167] 可逆復号部 6 2は、 蓄積バッファ 6 1からの符号化ビッ トストリームを受 信し、 図 8の可逆符号化部 2 6の符号化方式に対応する方式で復号する。
[0168] そして、 可逆復号部 6 2は、 符号化ビッ トストリームの復号結果に含まれ る符号化データとしての量子化係数を、 逆量子化部 6 3に供給する。
[0169] また、 可逆復号部 6 2は、 パースを行う機能を有する。 可逆復号部 6 2は 、 符号化ビッ トストリームの復号結果に含まれる必要な符号化情報をパース し、 符号化情報を、 イントラ予測部 7 1や、 動き予測補償部 7 2、 デブロッ クフィルタ 3 1 13、 適応オフセッ トフィルタ 8 1その他の必要なブロックに 供給する。
[0170] 逆量子化部 6 3は、 可逆復号部 6 2からの符号化データとしての量子化係
〇 2020/175145 30 卩(:170? 2020 /005472
数を、 図 8の量子化部 2 5の量子化方式に対応する方式で逆量子化し、 その 逆量子化により得られる直交変換係数を、 逆直交変換部 6 4に供給する。
[0171 ] 逆直交変換部 6 4は、 逆量子化部 6 3から供給される直交変換係数を、 図
8の直交変換部 2 4の直交変換方式に対応する方式で逆直交変換し、 その結 果得られる残差を、 演算部 6 5に供給する。
[0172] 演算部 6 5には、 逆直交変換部 6 4から残差が供給される他、 選択部 7 3 を介して、 イントラ予測部 7 1又は動き予測補償部 7 2から予測画像が供給 される。
[0173] 演算部 6 5は、 逆直交変換部 6 4からの残差と、 選択部 7 3からの予測画 像とを加算し、 復号画像を生成して、 デブロックフィルタ 3 1 匕に供給する
[0174] 並べ替えバッファ 6 7は、 八!_ド8 2から供給される復号画像を一時記憶し、 復号画像のフレーム (ピクチャ) の並びを、 符号化 (復号) 順から表示順に 並べ替え、 〇/八変換部 6 8に供給する。
[0175] 〇/八変換部 6 8は、 並べ替えバッファ 6 7から供給される復号画像を〇/八変 換し、 図示せぬディスプレイに出力して表示させる。 なお、 デコーダ 5 1 に 接続される機器がディジタル信号の画像を受け付ける場合には、 デコーダ 5 1は、 〇/八変換部 6 8を設けずに構成することができる。
さらに、 フレームメモリ 6 9は、 所定のタイミングにおいて、 又は、 イント ラ予測部 7 1や動き予測補償部 7 2等の外部の要求に基づいて、 復号画像を 、 予測画像の生成に用いる参照画像として、 選択部 7 0に供給する。
[0177] 選択部 7 0は、 フレームメモリ 6 9から供給される参照画像の供給先を選 択する。 選択部 7 0は、 イントラ予測で符号化された画像を復号する場合、 フレームメモリ 6 9から供給される参照画像をイントラ予測部 7 1 に供給す る。 また、 選択部 7 0は、 インター予測で符号化された画像を復号する場合 、 フレームメモリ 6 9から供給される参照画像を動き予測補償部 7 2に供給 する。
〇 2020/175145 31 卩(:170? 2020 /005472
[0178] イントラ予測部 7 1は、 可逆復号部 6 2から供給される符号化情報に含ま れる予測モードに従い、 図 8のイントラ予測部 3 4において用いられたイン トラ予測モードで、 フレームメモリ 6 9から選択部 7 0を介して供給される 参照画像を用いてイントラ予測を行う。 そして、 イントラ予測部 7 1は、 イ ントラ予測により得られる予測画像を、 選択部 7 3に供給する。
[0179] 動き予測補償部 7 2は、 可逆復号部 6 2から供給される符号化情報に含ま れる予測モードに従い、 図 8の動き予測補償部 3 5において用いられたイン 夕一予測モードで、 フレームメモリ 6 9から選択部 7 0を介して供給される 参照画像を用いてインター予測を行う。 インター予測は、 可逆復号部 6 2か ら供給される符号化情報に含まれる動き情報等を必要に応じて用いて行われ る。
[0180] 動き予測補償部 7 2は、 インター予測により得られる予測画像を、 選択部
7 3に供給する。
[0181 ] 選択部 7 3は、 イントラ予測部 7 1から供給される予測画像、 又は、 動き 予測補償部 7 2から供給される予測画像を選択し、 演算部 6 5に供給する。
[0182] デブロックフィルタ 3 1 匕は、 可逆復号部 6 2から供給される符号化情報 に含まれるフィルタパラメータに従い、 演算部 6 5からの復号画像に、 デブ ロックフィルタを適用する。 デブロックフィルタ 3 1 13は、 デブロックフィ ルタが適用された復号画像 (フィルタ画像) 、 又は、 デブロックフィルタが 適用されていない復号画像を、 適応オフセッ トフィルタ 8 1 に供給する。
[0183] 適応オフセッ トフィルタ 8 1は、 可逆復号部 6 2から供給される符号化情 報に含まれるフィルタパラメータに従い、 デブロックフィルタ 3 1 匕からの 復号画像に、 適応オフセッ トフィルタを必要に応じて適用する。 適応凹セッ トフィルタ 8 1は、 適応オフセッ トフィルタが適用された復号画像 (フィル 夕画像) 、 又は、 適応オフセッ トフィルタが適用されていない復号画像を、 八 !_ド8 2に供給する。
[0184] 八!_ド8 2は、 適応オフセッ トフィルタ 8 1からの復号画像に、
を必要に 応じて適用し、
が適用された復号画像、 又は、
が適用されていない復
〇 2020/175145 32 卩(:170? 2020 /005472
号画像を、 並べ替えバッファ 6 7及びフレームメモリ 6 9に供給する。
[0185] <復号処理>
[0186] 図 1 1は、 図 1 0のデコーダ 5 1の復号処理の例を説明するフローチヤー 卜である。
[0187] 復号処理では、 ステップ 3 5 1 において、 蓄積バッファ 6 1は、 エンコー ダ 1 1から伝送されてくる符号化ビッ トストリームを一時蓄積し、 適宜、 可 逆復号部 6 2に供給して、 処理は、 ステップ 3 5 2に進む。
[0188] ステップ 3 5 2では、 可逆復号部 6 2は、 蓄積バッファ 6 1から供給され る符号化ビッ トストリームを受け取って復号し、 符号化ビッ トストリームの 復号結果に含まれる符号化データとしての量子化係数を、 逆量子化部 6 3に 供給する。
[0189] また、 可逆復号部 6 2は、 符号化ビッ トストリームの復号結果に含まれる 符号化情報をパースする。 そして、 可逆復号部 6 2は、 必要な符号化情報を 、 イントラ予測部 7 1や、 動き予測補償部 7 2、 デブロックフィルタ 3 1 匕 、 適応オフセッ トフィルタ 8 1その他の必要なブロックに供給する。
[0190] そして、 処理は、 ステップ 3 5 2からステップ 3 5 3に進み、 イントラ予 測部 7 1又は動き予測補償部 7 2が、 フレームメモリ 6 9から選択部 7 0を 介して供給される参照画像、 及び、 可逆復号部 6 2から供給される符号化情 報に従い、 予測画像を生成するイントラ予測処理又はインター動き予測処理 を行う。 そして、 イントラ予測部 7 1又は動き予測補償部 7 2は、 イントラ 予測処理又はインター動き予測処理により得られる予測画像を、 選択部 7 3 に供給し、 処理は、 ステップ 3 5 3からステップ 3 5 4に進む。
[0191 ] ステップ 3 5 4では、 選択部 7 3は、 イントラ予測部 7 1又は動き予測補 償部 7 2から供給される予測画像を選択し、 演算部 6 5に供給して、 処理は 、 ステップ 3 5 5に進む。
[0192] ステップ 3 5 5では、 逆量子化部 6 3は、 可逆復号部 6 2からの量子化係 数を逆量子化し、 その結果得られる直交変換係数を、 逆直交変換部 6 4に供 給して、 処理は、 ステップ 3 5 6に進む。
〇 2020/175145 33 卩(:170? 2020 /005472
[0193] ステップ 3 5 6では、 逆直交変換部 6 4は、 逆量子化部 6 3からの直交変 換係数を逆直交変換し、 その結果得られる残差を、 演算部 6 5に供給して、 処理は、 ステップ 3 5 7に進む。
[0194] ステップ 3 5 7では、 演算部 6 5は、 逆直交変換部 6 4からの残差と、 選 択部 7 3からの予測画像を加算することにより、 復号画像を生成する。 そし て、 演算部 6 5は、 復号画像を、 デブロックフィルタ 3 1 匕に供給して、 処 理は、 ステップ 3 5 7からステップ 3 5 8に進む。
[0195] ステップ 3 5 8では、 デブロックフィルタ 3 1 匕は、 可逆復号部 6 2から 供給される符号化情報に含まれるフィルタパラメータに従い、 演算部 6 5か らの復号画像に、 デブロックフィルタを適用する。 デブロックフィルタ 3 1 巳は、 デブロックフィルタの適用の結果得られるフィルタ画像を、 適応オフ セッ トフィルタ 8 1 に供給して、 処理は、 ステップ 3 5 8からステップ 3 5 9に進む。
[0196] ステップ 3 5 9では、 適応オフセッ トフィルタ 8 1は、 可逆復号部 6 2か ら供給される符号化情報に含まれるフィルタパラメータに従い、 デブロック フィルタ 3 1 13からのフィルタ画像に、 適応オフセッ トフィルタを適用する 。 適応オフセッ トフィルタ 8 1は、 適応オフセッ トフィルタの適用の結果得 られるフィルタ画像を、 八!_ド8 2に供給して、 処理は、 ステップ 3 5 9からス 亍、ジ' づ 6 0に進む。
用し、 その結果得られるフィルタ画像を、 並べ替えバッファ 6 7及びフレー ムメモリ 6 9に供給して、 処理は、 ステップ 3 6 1 に進む。
[0198] ステップ 3 6 1では、 フレームメモリ 6 9は、 八!_ド8 2から供給されるフィ ルタ画像を一時記憶し、 処理は、 ステップ 3 6 2に進む。 フレームメモリ 6 9に記憶されたフィルタ画像 (復号画像) は、 ステップ 3 5 3のイントラ予 測処理又はインター動き予測処理で、 予測画像を生成する元となる参照画像 として使用される。
ィルタ画像を、 表示順に並べ替えて、 〇/八変換部 6 8に供給し、 処理は、 ステ ップ 3 6 3に進む。
[0200] ステップ 3 6 3では、 /八変換部6 8は、 並べ替えバッファ 6 7からのフィ ルタ画像を〇/八変換し、 処理は、 復号処理は終了する。 〇/八変換後のフィルタ 画像 (復号画像) は、 図示せぬディスプレイに出力されて表示される。
[0201 ] <デブロックフィルタ 3 1 3の構成例 >
[0202] 図 1 2は、 デブロックフィルタ (〇 ) 3 1 8の構成例を示すブロック図 である。
[0203] なお、 デブロックフィルタ 3 1 13は、 デブロックフィルタ 3 1 3と同様に 構成される。
[0204] 図 1 2において、 デブロックフィルタ 3 1 3は、 境界強度設定部 2 6 1、 判定部 3 1 0、 フィルタリング部 3 2 0、 ラインバッファ 3 3 0、 及び、 芾 I」 御部 3 4 0を有する。
[0205] 境界強度設定部 2 6 1 は、 復号画像のブロック境界を対象とし、 ブロック 境界に隣接する隣接ブロックの特性に応じて、 匕 3 (境界強度) を設定する
[0206] 境界強度設定部 2 6 1 は、 復号画像の輝度成分については、 ブロック境界 と直交する 4ラインに対応するブロック境界を、 部分ブロック境界として、 部分ブロック境界に、 匕 3を設定する。 また、 境界強度設定部 2 6 1 は、 復 号画像の色差成分については、 例えば、 丫 11 4 2 0フォーマッ トの信号が 匕 3の設定対象である場合、 輝度成分の 4ラインに対応する色差成分の 2ラ インに対応するブロック境界を、 部分ブロック境界として、 部分ブロック境 界に、 匕 3を設定する。
[0207] 匕 3の設定は、 例えば、 隣接ブロック内の画素に関する画素関連パラメー 夕を、 部分ブロック境界に隣接する隣接ブロックの特性を表すパラメータと して用いて行われる。
[0208] 画素関連パラメータには、 輝度関連パラメータと色差関連パラメータとが ある。
[0209] 輝度関連パラメータ及び色差関連/《ラメータとは、 輝度及び色差に関連す るパラメータ全般をそれぞれ意味する。 例えば、 輝度関連パラメータ及び色 差関連パラメータは、 T U (Transform Unit) や、 P U (Prediction Unit ) 、 CU (Coding Unit) 、 その他の任意のブロックに含まれる輝度成分及 び色差成分の直交変換係数 (量子化係数) をそれぞれ含み得る。 さらに、 輝 度関連パラメータ及び色差関連/《ラメータは、 各ブロックにおける輝度成分 及び色差成分の有意係数 (非ゼロの直交変換係数) の有無を示すフラグ等、 輝度成分及び色差成分の直交変換係数に関する情報をそれぞれ含み得る。 輝 度関連パラメータ及び色差関連パラメータは、 かかる例に限定されず、 それ それ、 輝度及び色差に関連する多様なパラメータであり得る。
[0210] 境界強度設定部 26 1が b Sの設定に用いる画素関連パラメータは、 ブロ ック境界がグリッ ドに位置するブロックにおける輝度成分及び色差成分 (U 及び V) それぞれの有意係数の有無を示すフラグ等を含む。 境界強度設定部 26 1 には、 かかる画素関連パラメータが、 制御部 340から供給される。
[0211] その他、 制御部 340から境界強度設定部 26 1 には、 隣接ブロックが ISP に設定されているかどうかや、 ISPに設定された隣接ブロックを分割したサブ ブロックのブロックサイズ等の情報が、 隣接ブロックの特性を表すパラメー 夕として供給される。
[0212] 境界強度設定部 26 1は、 制御部 340からの、 隣接ブロックの特性を表 すパラメータ等に応じて、 b Sを設定する。 境界強度設定部 26 1は、 b S を、 判定部 3 1 0に供給する。
[0213] なお、 b Sの設定方法は、 例えば、 参照文献 REF4に記載されている方法、 その他の任意の方法を採用することができる。 また、 b Sとしては、 境界強 度を表す任意の値を採用することができる。 ここでは、 b Sとして、 境界強 度を 3段階に分ける値 0, 1 , 2を採用し、 境界強度が強くなるほど、 b S は、 大きな値をとることとする。
[0214] 判定部 3 1 0は、 適用要否判定部 3 1 1及びフィルタ強度判定部 3 1 2を 有し、 フィルタ判定を行う。
〇 2020/175145 36 卩(:170? 2020 /005472
[0215] 適用要否判定部 3 1 1 には、 境界強度設定部 2 6 1から匕 3が供給される 。 また、 適用要否判定部 3 1 1 には、 デブロックフィルタ 3 1 3の外部 (図 8の演算部 3 0や図 1 0の演算部 6 5) やラインバッファ 3 3 0から復号画 像が供給される。
[0216] 適用要否判定部 3 1 1は、 境界強度設定部 2 6 1からの匕 3、 さらには、 デブロックフィルタ 3 1 3の外部やラインバッファ 3 3 0からの復号画像等 を用いて、 適用要否判定を行う。
[0217] 適用要否判定部 3 1 1は、 適用要否判定の判定結果を、 フィルタ強度判定 部 3 1 2に供給する。
[0218] フィルタ強度判定部 3 1 2には、 適用要否判定部 3 1 1から適用要否判定 の判定結果が供給される他、 デブロックフィルタ 3 1 3の外部やラインバッ ファ 3 3 0から復号画像が供給される。
[0219] フィルタ強度判定部 3 1 2は、 適用要否判定部 3 1 1からの適用要否判定 の判定結果が、 デブロックフィルタを適用する旨を表している場合、 デブロ ックフィルタ 3 1 3の外部やラインバッファ 3 3 0からの復号画像を用いて 、 復号画像に適用されるデブロックフィルタのフィルタ強度を判定するフィ ルタ強度判定を行う。 そして、 フィルタ強度判定部 3 1 2は、 フィルタ強度 判定の判定結果を、 フィルタ判定の判定結果として、 フィルタリング部 3 2 0に供給する。
[0220] デブロックフィルタ 3 1 3において、 復号画像に適用されるデブロックフ ィルタのフィルタタイプに、 例えば、 ウイークフィルタ、 ストロングフィル 夕、 及び、 ロングフィルタの 3つのフィルタタイプがある場合、 フィルタ強 度の判定結果は、 ウイークフィルタ、 ストロングフィルタ、 及び、 ロングフ ィルタを表す。
[0221 ] ここで、 ストロングフィルタは、 ウイークフィルタよりもタップ数が多く 、 フィルタ強度が強いフィルタである。 ロングフィルタは、 ストロングフィ ルタよりもタップ数が多く、 フィルタ強度が強いフィルタである。
[0222] また、 フィルタ強度判定部 3 1 2は、 適用要否判定部 3 1 1からの適用要
〇 2020/175145 37 卩(:170? 2020 /005472
否判定の判定結果が、 デブロックフィルタを適用しない旨を表している場合 、 その適用要否判定の判定結果を、 フィルタ判定の判定結果として、 フィル タリング部 3 2 0に供給する。
[0223] フィルタリング部 3 2 0には、 フィルタ強度判定部 3 1 2からフィルタ判 定の判定結果が供給される他、 デブロックフィルタ 3 1 3の外部やラインバ ッファ 3 3 0から復号画像が供給される。
[0224] フィルタリング部 3 2 0は、 判定部 3 1 0 (のフィルタ強度判定部 3 1 2 ) からのフィルタ判定の判定結果が、 デブロックフィルタを適用しない旨を 表している場合、 復号画像にデブロックフィルタを適用せずに、 復号画像を そのまま出力する。
[0225] また、 フィルタリング部 3 2 0は、 フィルタ強度判定部 3 1 2からのフィ ルタ判定の判定結果がフィルタタイプ (ここでは、 ウイークフィルタ、 スト ロングフィルタ、 又は、 ロングフィルタ) を表す場合、 そのフィルタ判定の 判定結果が表すフィルタタイプのデブロックフィルタを、 復号画像に適用す るフィルタ処理を行う。
[0226] すなわち、 フィルタリング部 3 2 0は、 デブロックフィルタ 3 1 3の外部 やラインバッファ 3 3 0からの復号画像のうちの、 フィルタ処理の対象とな る画素である適用対象画素のフィルタ処理としてのフィルタ演算を、 適用対 象画素の近傍の画素を用いて行う。
[0227] フィルタリング部 3 2 0は、 適用対象画素のフィルタ処理により得られる 画素値を、 復号画像にデブロックフィルタを適用して得られるフィルタ画像 (フィルタ処理後の復号画像) を構成するフィルタ画素の画素値として出力 する。
[0228] ラインバッファ 3 3 0には、 デブロックフィルタ 3 1 3の外部から復号画 像が供給される。 ラインバッファ 3 3 0は、 デブロックフィルタ 3 1 3の外 部からの復号画像 (の画素値) を適宜記憶する。 なお、 ラインバッファ 3 3 0は、 所定のライン数 (行数) 分の画素値を記憶する記憶容量を有し、 その 記憶容量分の画素値を記憶すると、 新たな画素値を、 最も古い画素値に上書
〇 2020/175145 38 卩(:170? 2020 /005472
きする形で記憶する。
[0229] ここで、 デブロックフィルタ 3 1 3が、 例えば、 復号画像を、 ラスタスキ ャン順に処理することとする。
[0230] デブロックフィルタ 3 1 3では、 例えば、 丁 II、 11、 及び、 〇 IIを統一 したブロックを単位として処理が行われる。 デブロックフィルタ 3 1 3では 、 例えば、 1行分等の複数のブロックをラスタスキャン順に処理する他、 並 列で処理することができる。
[0231 ] 判定部 3 1 0、 及び、 フィルタリング部 3 2 0は、 デブロックフィルタ 3
1 3の処理の対象となっているブロックである対象ブロックに含まれる水平 方向のラインの画素値を記憶することができる容量の内部バッファを内蔵す る。 判定部 3 1 0、 及び、 フィルタリング部 3 2 0は、 内部バッファに、 対 象ブロックに含まれる水平方向のラインの画素値を記憶し、 その内部バッフ ァに記憶された画素値を、 必要に応じて用いて、 対象ブロックの処理を行う
[0232] 対象ブロックの上側の水平ブロック境界に、 デブロックフィルタ 3 1 3を 適用する場合、 対象ブロック内の画素の画素値と、 対象ブロックの上側に隣 接するブロック内の画素の画素値とが必要となることがある。
[0233] 対象ブロック内の画素の画素値は、 対象ブロックの処理時に、 内部バッフ ァに記憶されている。 一方、 対象ブロックの上側に隣接するブロック内の画 素の画素値は、 対象ブロック内の画素の画素値でないため、 対象ブロックの 処理時に、 内部バッファに記憶されていない。
[0234] そこで、 ラインバッファ 3 3 0は、 対象ブロックの上側に隣接するブロッ クに含まれる水平方向のラインのうちの、 対象ブロックの上側の水平ブロッ ク境界に、 デブロックフィルタ 3 1 3を適用するのに必要なラインの画素 ( ラインに属する画素) の画素値を記憶する。 デブロックフィルタ 3 1 3を適 用するのに必要なラインの画素とは、 フィルタ判定に用いられる画素や、 フ ィルタ処理に用いられる画素である。
[0235] 制御部 3 4 0は、 デブロックフィルタ 3 1 3を構成する各ブロックを制御
する。 また、 制御部 3 4 0は、 b Sの設定に必要なパラメータ等を生成等す ることにより取得し、 境界強度設定部 2 6 1 に供給する。
[0236] なお、 本実施の形態では、 デブロックフィルタ 3 1 aは、 例えば、 復号画 像を、 ラスタスキヤン順に処理することとする。 但し、 デブロックフィルタ 3 1 aは、 復号画像を、 ラスタスキヤン順以外の順で行うことができる。 例 えば、 デブロックフィルタ 3 1 aは、 復号画像を上から下方向に処理するこ とを、 左から右方向に繰り返すことができる。 この場合、 以下説明する水平 (横) (左右) と垂直 (縦) (上下) とは、 逆になる (入れ替わる) 。
[0237] <匕 3の設定方法>
[0238] 図 1 3は、 境界強度設定部 2 6 1の b Sの設定方法の例を示す図である。
[0239] 図 1 3において、 P(p)及び Q(q)は、 ブロック境界 (サブブロック境界を含 む) に隣接する 2つのブロック (サブブロックを含む) のうちの一方のブロ ック内の画素、 及び、 他方のブロック内の画素を、 それぞれ表す。
[0240] 図 1 3によれば、 ブロック境界 (サブブロック境界を含む) に隣接する 2 つのブロック (サブブロックを含む) の特性に応じて、 b Sが設定される。
[0241 ] 例えば、 図 1 3によれば、 ブロック境界に隣接する 2つのブロック (隣接 ブロック) のうちの一方のブロック内の画素 P、 又は、 他方のブロック内の画 素 Qが、 イントラ予測モードのブロック (イントラ予測されるブロック) 内の 画素である場合、 b Sは 2に設定される。
[0242] また、 例えば、 図 1 3によれば、 ISPに設定されたブロックを分割したサブ ブロックのサブブロック境界(Sub-Part i t i on boundary)に隣接する 2つのサ ブブロックのうちの一方のサブブロック内の画素 P、 又は、 他方のサブブロッ ク内の画素 Qが、 イントラ予測モードのブロック内の画素である場合、 b Sは 2に設定される。
[0243] したがって、 図 1 3によれば、 ISPに設定されたブロックを分割したサブブ ロックのサブブロック境界の b Sとして、 ブロック境界に隣接するブロック がイントラ予測モードのブロックである場合にブロック境界に設定される b Sと同一の 2が設定される。
[0244] なお、 ISPに設定されたブロックを分割したサブブロックのサブブロック境 界に隣接する 2つのサブブロック内の画素 P又は Qが、 イントラ予測モードの ブロック内の画素である場合、 b Sは 2ではなく、 1 に設定することができ る。
[0245] また、 ISPに設定されるブロックは、 輝度成分 (Y) のブロックだけであり 、 色差成分 (リ及び ) のブロックは、 ISPに設定されない。
[0246] 図 1 3によれば、 C U又は T Uのブロック境界に隣接する 2つのブロック 内の画素 P又は Qが、 CIPP(Comb i ned Int ra and Inter Pred i ct i on mode)の ブロック内の画素である場合、 b Sは 2に設定される。
[0247] さらに、 図 1 3によれば、 ブロック境界に隣接する 2つのブロックの動き ベクトル M Vが異なる場合、 及び、 参照画像が異なる場合、 匕 3は1 に設定 される。 なお、 動きベクトル M V又は参照画像が異なることにより、 b Sを 1 に設定することは、 輝度成分のブロックにだけ適用され、 色差成分のブロ ックには適用されない。
[0248] また、 図 1 3によれば、 C U又は T Uのブロック境界に隣接するブロック に、 1個以上の有意係数 (非ゼロの直交変換係数) が存在する場合、 b Sは 1 に設定される。
[0249] さらに、 例えば、 図 1 3によれば、 ブロック境界に隣接する 2つのブロッ ク内の画素 P又は Qが、 CIPPのブロック内の画素である場合、 b Sは 1 に設 定される。
[0250] 以上のいずれにも該当しない場合、 b Sは 0に設定される。
[0251 ] <デブロックフィルタ 3 1 aの処理 >
[0252] 図 1 4は、 デブロックフィルタが適用され得るブロック境界を判定するブ ロック境界判定処理の例を説明するフローチャートである。
[0253] ブロック境界判定処理は、 デブロックフィルタ 3 1 a (図 1 2) において 、 境界強度設定部 2 6 1が、 b Sを設定する前に行う。
[0254] ステップ S 1 1 1 において、 境界強度設定部 2 6 1は、 グリッ ドに位置す るブロック境界 (サブブロック境界を含む) におけるフィルタ判定を行う際
〇 2020/175145 41 卩(:170? 2020 /005472
の処理単位である部分ブロック境界が、 丁 IIのブロック境界であるかどうか を判定する。
[0255] ステップ 3 1 1 1 において、 部分ブロック境界が、 丁 IIのブロック境界で あると判定された場合、 処理は、 ステップ 3 1 1 2に進み、 境界強度設定部 2 6 1は、 部分ブロック境界が、 〇 IIのブロック境界であるかどうかを判定 する。
[0256] ステップ3 1 1 2において、 部分ブロック境界が、 〇 IIのブロック境界で ないと判定された場合、 処理は、 ステップ 3 1 1 3に進み、 境界強度設定部 2 6 1は、 部分ブロック境界が、 サブブロック境界であると判定し、 ブロッ ク境界判定処理は終了する。
[0257] また、 ステップ 3 1 1 2において、 部分ブロック境界が、 〇 IIのブロック 境界であると判定された場合、 処理は、 ステップ 3 1 1 4に進み、 境界強度 設定部 2 6 1は、 部分ブロック境界が、 ブロック境界であると判定し、 ブロ ック境界判定処理は終了する。
[0258] —方、 ステップ 3 1 1 1 において、 部分ブロック境界が、 丁 IIのブロック 境界でないと判定された場合、 処理は、 ステップ 3 1 1 5に進み、 境界強度 設定部 2 6 1は、 部分ブロック境界が、 IIのブロック境界であるかどうか を判定する。
[0259] ステップ3 1 1 5において、 部分ブロック境界が、 IIのブロック境界で ないと判定された場合、 ブロック境界判定処理は終了する。
[0260] また、 ステップ 3 1 1 5において、 部分ブロック境界が、 IIのブロック 境界であると判定された場合、 処理は、 ステップ 3 1 1 6に進み、 境界強度 設定部 2 6 1は、 部分ブロック境界が、 〇 IIのブロック境界であるかどうか を判定する。
[0261 ] ステップ 3 1 1 6において、 部分ブロック境界が、 〇 IIのブロック境界で あると判定された場合、 処理は、 ステップ 3 1 1 7に進み、 境界強度設定部 2 6 1は、 部分ブロック境界が、 ブロック境界であると判定し、 ブロック境 界判定処理は終了する。
[0262] また、 ステップ S 1 1 6において、 部分ブロック境界が、 C Uのブロック 境界でないと判定された場合、 処理は、 ステップ S 1 1 8 , S 1 1 9、 及び 、 S 1 2 0に進む。
[0263] ステップ S 1 1 8では、 境界強度設定部 2 6 1は、 部分ブロック境界に隣 接する隣接ブロックの予測モードがイントラ予測モードで、 そのインター予 測モードがアフィン又はマージ、 かつ、 ATMVP (advanced tempora l mot i on ve ctor pred i ct i on)であるかどうかを判定する。
[0264] ステップ S 1 1 9では、 境界強度設定部 2 6 1は、 部分ブロック境界に隣 接する隣接ブロックの予測モードがイントラ予測モードで、 そのインター予 測モードが CIIPであるかどうかを判定する。
[0265] ステップ S 1 2 0では、 境界強度設定部 2 6 1は、 部分ブロック境界に隣 接する隣接ブロックが ISPに設定されているかどうかを判定する。
[0266] ステップ S 1 1 8ないし S 1 2 0の判定結果が、 いずれも偽である場合、 ブロック境界判定処理は終了する。
[0267] ステップ S 1 1 8の判定結果が真である場合、 処理は、 ステップ S 1 2 1 に進み、 境界強度設定部 2 6 1は、 部分ブロック境界が、 サブブロック境界 であると判定し、 ブロック境界判定処理は終了する。
[0268] ステップ S 1 1 9の判定結果が真である場合、 処理は、 ステップ S 1 2 2 に進み、 境界強度設定部 2 6 1は、 部分ブロック境界が、 ブロック境界であ ると判定し、 ブロック境界判定処理は終了する。
[0269] ステップ S 1 2 0の判定結果が真である場合、 処理は、 ステップ S 1 2 3 に進み、 境界強度設定部 2 6 1は、 部分ブロック境界に隣接する隣接ブロッ クの、 部分ブロック境界と直交する方向のサイズが 4画素以上であるかどう かを判定する。
[0270] ステップ S 1 2 3において、 部分ブロック境界に隣接する隣接ブロックの 、 部分ブロック境界と直交する方向のサイズが 4画素以上でないと判定され た場合、 ブロック境界判定処理は終了する。
[0271] また、 ステップ S 1 2 3において、 部分ブロック境界に隣接する隣接ブロ
〇 2020/175145 43 卩(:170? 2020 /005472
ックの、 部分ブロック境界と直交する方向のサイズが 4画素以上であると判 定された場合、 処理は、 ステップ 3 1 2 4に進む。 ステップ 3 1 2 4では、 境界強度設定部 2 6 1は、 部分ブロック境界が、 サブブロック境界であると 判定し、 ブロック境界判定処理は終了する。
[0272] ブロック境界判定処理において、 ブロック境界又はサブブロック境界であ ると判定されなかった部分ブロック境界については、 デブロックフィルタは 適用されず、 デブロックフィルタ 3 1 3において以降の処理は行われない。
[0273] —方、 ブロック境界又はサブブロック境界であると判定された部分ブロッ ク境界については、 デブロックフィルタが適用され得るとして、 デブロック フィルタ 3 1
の設定、 フィルタ判定、 及び、 フィルタ処理が 行われる。
[0274] 図 1 5は、 ブロック境界判定処理においてサブブロック境界であると判定 された部分ブロック境界を対象として行われるデブロックフィルタ 3 1 3の 処理の例を説明するフローチヤートである。
[0275] ステップ 3 1 5 1では、 境界強度設定部 2 6 1は、 ブロック境界判定処理 においてサブブロック境界であると判定された部分ブロック境界の匕 3を、 図 1 3で説明した設定方法に従って設定 (算出) する。 境界強度設定部 2 6 1は、 部分ブロック境界の匕 3を、 判定部 3 1 0に供給し、 処理は、 ステッ プ3 1 5 1からステップ 3 1 5 2に進む。
[0276] ステップ 3 1 5 2では、 判定部 3 1 0は、 部分ブロック境界の匕 3が 0よ り大である (1又は 2である) かどうかを判定し、 0より大でないと判定し た場合、 すなわち、 0である場合、 処理は、 ステップ 3 1 6 3に進む。
[0277] また、 ステップ 3 1 5 2において、 部分ブロック境界の匕 3が 0より大で あると判定された場合、 すなわち、 1又は 2である場合、 処理は、 ステップ 3 1 5 3に進む。
[0278] ステップ 3 1 5 3では、 判定部 3 1 0は、 13?に設定されたブロックを分割 したサブブロックのうちの、 部分ブロック境界に隣接する隣接サブブロック のブロックサイズが判定される。
〇 2020/175145 44 卩(:170? 2020 /005472
[0279] ステップ 3 1 5 3において、 隣接サブブロックのブロックサイズが、 8 X
1\1以上又は X 8以上であると判定された場合、 すなわち、 部分ブロック境 界と直交する方向の隣接サブブロックのサイズが 8画素以上である場合、 処 理は、 ステップ 3 1 5 4に進む。
[0280] ステップ 3 1 5 4では、 判定部 3 1 0は、 ロングデブロッキングオンオフ 判定を行う。
[0281 ] ステップ 3 1 5 4のロングデブロッキングオンオフ判定の判定結果が真で ある場合、 処理は、 ステップ 3 1 5 5に進み、 判定部 3 1 0は、 ロングデブ ロッキング傾斜判定を行う。
[0282] ステップ 3 1 5 5のロングデブロッキング傾斜判定が真である場合、 処理 は、 ステップ 3 1 5 6に進み、 判定部 3 1 0は、 ロングフィルタを適用する と判定し、 ロングフィルタの適用を設定する。 そして、 フィルタリング部 3 2 0は、 部分ブロック境界にロングフィルタを適用するフィルタ処理を行い 、 処理は終了する。
[0283] —方、 ステップ 3 1 5 4のロングデブロッキングオンオフ判定の判定結果 が偽であるか、 又は、 ステップ 3 1 5 5のロングデブロッキング傾斜判定が 偽である場合、 処理は、 ステップ 3 1 5 7に進む。
[0285] ステップ 3 1 5 8では、 判定部 3 1 0は、 ストロングフィルタ判定を行う
[0286] ステップ 3 1 5 8のストロングフィルタ判定が真である場合、 処理は、 ス テップ3 1 5 9に進み、 判定部 3 1 0は、 ストロングフィルタを適用すると 判定し、 ストロングフィルタの適用を設定する。 そして、 フィルタリング部 3 2 0は、 部分ブロック境界にストロングフィルタを適用するフィルタ処理 を行い、 処理は終了する。
[0287] また、 ステップ 3 1 5 8のストロングフィルタ判定が偽である場合、 処理 は、 ステップ3 1 6 1 に進む。
〇 2020/175145 45 卩(:170? 2020 /005472
[0288] —方、 ステップ 3 1 5 3において、 部分ブロック境界と直交する方向の隣 接サブブロックのサイズが 8画素以上でないと判定された場合、 処理は、 ス テップ3 1 6 0に進む。
[0289] ステップ 3 1 6 0では、 判定部 3 1 0は、 13?に設定されたブロックを分割 したサブブロックのうちの、 部分ブロック境界に隣接する隣接サブブロック のブロックサイズが判定される。
[0290] ステップ 3 1 5 0において、 隣接サブブロックのブロックサイズが、 4 X
1\1又は X 4であると判定された場合、 すなわち、 部分ブロック境界と直交 する方向の隣接サブブロックのサイズが 4画素である場合、 処理は、 ステッ プ3 1 6 1 に進む。
[0291 ] ステップ 3 1 6 1では、 判定部 3 1 0は、 ウイークフィルタ判定を行う。
[0292] ステップ 3 1 6 1のウイークフィルタ判定が偽である場合、 処理は、 ステ ップ 3 1 6 3に進む。
[0293] ステップ 3 1 6 1のウイークフィルタ判定が真である場合、 処理は、 ステ ップ 3 1 6 2に進み、 判定部 3 1 0は、 ウイークフィルタを適用すると判定 し、 ウイークフィルタの適用を設定する。 そして、 フィルタリング部 3 2 0 は、 部分ブロック境界にウイークフィルタを適用するフィルタ処理を行い、 処理は終了する。
[0294] —方、 ステップ 3 1 6 0において、 部分ブロック境界と直交する方向の隣 接サブブロックのサイズが 4画素でないと判定された場合、 処理は、 ステッ プ3 1 6 3に進む。 ステップ 3 1 6 3では、 判定部 3 1 0は、 デブロックフ ィルタを適用しないと判定し、 フィルタリング部 3 2 0は、 部分ブロック境 界 (に直交するラインの画素) に、 デブロックフィルタを適用せずに、 処理 は終了する。
[0295] したがって、 部分ブロック境界と直交する方向の隣接サブブロックのサイ ズが 4画素未満である場合、 すなわち、 垂直方向の部分ブロック境界に隣接 する隣接サブブロックのブロックサイズが 1 X 1\1若しくは 2 X 1\1であるか、 又は、 水平方向の部分ブロック境界に隣接する隣接サブブロックのブロック
〇 2020/175145 46 卩(:170? 2020 /005472
サイズが 1若しくは 2である場合、 デブロックフィルタの適用は制 限される (デブロックフィルタは適用されない) 。
[0296] 図 1 5によれば、 デブロックフィルタ 3 1 3において、
に設定されたブ ロックを分割したサブブロックのサブブロック境界について、 サブブロック 境界に隣接する隣接サブブロックのブロックサイズが、 8 X 1X1又は 8以 上であるかどうか、 すなわち、 サブブロック境界と直交する方向のサブブロ ックのサイズが 8画素以上であるかどうかが判定される。 そして、 サブブロ ック境界と直交する方向のサブブロックのサイズが 8画素以上である場合、 ロングフィルタ、 ストロングフィルタ、 及び、 ウイークフィルタのうちのい ずれかが適用され得る。
[0297] また、 図 1 5によれば、 デブロックフィルタ 3 1 3において、
に設定さ れたブロックを分割したサブブロックのサブブロック境界について、 サブブ ロック境界に隣接する隣接サブブロックのブロックサイズが、 8 X 1\1以上で もなく、 8以上でもない場合、 4 X 1\1又は 4であるかどうか、 すな わち、 サブブロック境界と直交する方向のサブブロックのサイズが 4画素で あるかどうかが判定される。 そして、 サブブロック境界と直交する方向のサ ブブロックのサイズが 4画素である場合、 ウイークフィルタが適用され得る
[0298] さらに、 図 1 5によれば、 サブブロック境界に隣接する隣接サブブロック のブロックサイズが、 8 X 1X1以上でもなく、 X 8以上でもない場合であっ て、 かつ、 4 X 1X1でもなく、 4でもない場合、 すなわち、 サブブロック 境界と直交する方向のサブブロックのサイズが 4画素未満である場合、 デブ ロックフィルタの適用が制限される。
[0299] したがって、 デブロックフィルタ 3 1 3では、
に設定されたブロックを 分割したサブブロックのサブブロック境界について、 そのサブブロック境界 に隣接する隣接サブブロックのブロックサイズに応じて、 デブロックフィル 夕を適用するかが判定されている、 ということができる。
[0300] さらに、 隣接サブブロックのブロックサイズに応じて、 適用するデブロッ
クフィルタのフィルタタイプ (ロングフィルタ、 ストロングフィルタ、 及び 、 ウイークフィルタ) が設定 (判定) されている、 ということができる。
[0301] <その他 >
[0302] (本技術の適用対象)
本技術は、 任意の画像符号化 ·復号方式に適用することができる。 つまり 、 上述した本技術と矛盾しない限り、 変換 (逆変換) 、 量子化 (逆量子化)
、 符号化 (復号) 、 予測等、 画像符号化 ·復号に関する各種処理の仕様は任 意であり、 上述した例に限定されない。 また、 上述した本技術と矛盾しない 限り、 これらの処理の内の一部を省略してもよい。
[0303] (ブロック)
また、 本明細書において、 画像 (ピクチャ) の部分領域や処理単位として 説明に用いる 「ブロック」 (処理部を示すブロックではない) は、 特に言及 しない限り、 ピクチャ内の任意の部分領域を示し、 その大きさ、 形状、 及び 特性等は限定されない。 例えば、 「ブロック」 には、 参照文献 REF 1〜 REF3 等に記載の TB (Transform Block) 、 TU (Transform Unit) 、 PB (Predicti on Block) 、 PU (Prediction Unit) 、 SCU (Smallest Coding Unit) 、 C U (Coding Unit) 、 LCU (Largest Coding Unit) 、 CTB (Coding Tree B lock) % CTU (Coding Tree Unit) 、 変換ブロック、 サブブロック、 マクロ ブロック、 タイル、 又はスライス等、 任意の部分領域 (処理単位) が含まれ るものとする。
[0304] (処理単位)
以上において説明した各種情報が設定されるデータ単位や、 各種処理が対 象とするデータ単位は、 それぞれ任意であり上述した例に限定されない。 例 えば、 これらの情報や処理が、 それぞれ、 TU (Transform Unit) 、 TB(Trans form Block)、 PU (Prediction Unit) 、 PB(Pred i ct i on Block)、 CU (Cod i ng Unit) 、 LCU (Largest Coding Unit) 、 サブブロック、 ブロック、 夕 イル、 スライス、 ピクチヤ、 シーケンス、 又はコンポーネント毎に設定され るようにしてもよいし、 それらのデータ単位のデータを対象とするようにし
〇 2020/175145 48 卩(:170? 2020 /005472
てもよい。 もちろん、 このデータ単位は、 情報や処理毎に設定され得るもの であり、 全ての情報や処理のデータ単位が統一されている必要はない。 なお 、 これらの情報の格納場所は任意であり、 上述したデータ単位のヘッダやパ ラメータセッ ト等に格納されるようにしてもよい。 また、 複数個所に格納さ れるようにしてもよい。
[0305] (制御情報)
以上において説明した本技術に関する制御情報を符号化側から復号側に伝 送するようにしてもよい。 例えば、 上述した本技術を適用することを許可 ( 又は禁止) するか否かを制御する制御情報 (例えば 6 1^6〇1_^39) を伝送す るようにしてもよい。 また、 例えば、 上述した本技術を適用する対象 (又は 適用しない対象) を示す制御情報を伝送するようにしてもよい。 例えば、 本 技術を適用する (又は、 適用を許可若しくは禁止する) ブロックサイズ (上 限若しくは下限、 又はその両方) 、 フレーム、 コンポーネント、 又はレイヤ 等を指定する制御情報を伝送するようにしてもよい。
[0306] (ブロックサイズ情報)
本技術を適用するブロックのサイズを指定するに当たって、 直接的にブロ ックサイズを指定するだけでなく、 間接的にブロックサイズを指定するよう にしてもよい。 例えばサイズを識別する識別情報を用いてブロックサイズを 指定するようにしてもよい。 また、 例えば、 基準となるブロック (例えばし や 等) のサイズとの比又は差分によってブロックサイズを指定するように してもよい。 例えば、 シンタックス要素等としてブロックサイズを指定する 情報を伝送する場合に、 その情報として、 上述のような間接的にサイズを指 定する情報を用いるようにしてもよい。 このようにすることにより、 その情 報の情報量を低減させることができ、 符号化効率を向上させることができる 場合もある。 また、 このブロックサイズの指定には、 ブロックサイズの範囲 の指定 (例えば、 許容されるブロックサイズの範囲の指定等) も含む。
[0307] (その他)
なお、 本明細書において 「フラグ」 とは、 複数の状態を識別するための情
〇 2020/175145 49 卩(:170? 2020 /005472
報であり、 真⑴又は偽⑻の 2状態を識別する際に用いる情報だけでなく、
3以上の状態を識別することが可能な情報も含まれる。 したがって、 この 「 フラグ」 が取り得る値は、 例えば 1 /0の 2値であってもよいし、 3値以上であ ってもよい。 すなわち、 この 「フラグ」 を構成する 1)4数は任意であり、 1 1)4 でも複数 でもよい。 また、 識別情報 (フラグも含む) は、 その識別情報を ビッ トストリームに含める形だけでなく、 ある基準となる情報に対する識別 情報の差分情報をビッ トストリームに含める形も想定されるため、 本明細書 においては、 「フラグ」 や 「識別情報」 は、 その情報だけではなく、 基準と なる情報に対する差分情報も包含する。
[0308] また、 符号化データ (ビッ トストリーム) に関する各種情報 (メタデータ 等) は、 符号化データに関連付けられていれば、 どのような形態で伝送又は 記録されるようにしてもよい。 ここで、 「関連付ける」 という用語は、 例え ば、 一方のデータを処理する際に他方のデータを利用し得る (リンクさせ得 る) ようにすることを意味する。 つまり、 互いに関連付けられたデータは、
1つのデータとしてまとめられてもよいし、 それぞれ個別のデータとしても よい。 例えば、 符号化データ (画像) に関連付けられた情報は、 その符号化 データ (画像) とは別の伝送路上で伝送されるようにしてもよい。 また、 例 えば、 符号化データ (画像) に関連付けられた情報は、 その符号化データ ( 画像) とは別の記録媒体 (又は同一の記録媒体の別の記録エリア) に記録さ れるようにしてもよい。 なお、 この 「関連付け」 は、 データ全体でなく、 デ —夕の一部であってもよい。 例えば、 画像とその画像に対応する情報とが、 複数フレーム、 1 フレーム、 又はフレーム内の一部分などの任意の単位で互 いに関連付けられるようにしてもよい。
[0309] なお、 本明細書において、 「合成する」 、 「多重化する」 、 「付加する」
、 「 _体化する」 、 「含める」 、 「格納する」 、 「入れ込む」 、 「差し込む 」 、 「挿入する」 等の用語は、 例えば符号化データとメタデータとを 1つの データにまとめるといった、 複数の物を 1つにまとめることを意味し、 上述 の 「関連付ける」 の 1つの方法を意味する。
[0310] 本技術は、 装置又はシステムを構成するあらゆる構成、 例えば、 システム L
SI (Large Scale Integration) 等としてのプロセッサ、 複数のプロセッサ 等を用いるモジュール、 複数のモジュール等を用いるユニッ ト、 ユニッ トに さらにその他の機能を付加したセッ ト等 (すなわち、 装置の一部の構成) と して実施することもできる。
[0311] <本技術を適用したコンピュータの説明>
[0312] 次に、 上述した一連の処理は、 ハードウェアにより行うこともできるし、 ソフトウェアにより行うこともできる。 一連の処理をソフトウェアによって 行う場合には、 そのソフトウェアを構成するプログラムが、 汎用のコンピュ —夕等にインストールされる。
[0313] 図 1 6は、 上述した一連の処理を実行するプログラムがインストールされ るコンビュータの一実施の形態の構成例を示すブロック図である。
[0314] プログラムは、 コンビュータに内蔵されている記録媒体としてのハードデ ィスク 905や R0M903に予め記録しておくことができる。
[0315] あるいはまた、 プログラムは、 ドライブ 909によって駆動されるリムー バブル記録媒体 9 1 1 に格納 (記録) しておくことができる。 このようなリ ムーバブル記録媒体 9 1 1は、 いわゆるパッケージソフトウェアとして提供 することができる。 ここで、 リムーバブル記録媒体 9 1 1 としては、 例えば 、 フレキシブルディスク、 CD-ROM (Compact Disc Read Only Memory) , MO (Mag neto Optical)ディスク, DVD(Digital Versatile Disc)、 磁気ディスク、 半 導体メモリ等がある。
[0316] なお、 プログラムは、 上述したようなリムーバブル記録媒体 9 1 1からコ ンピュータにインストールする他、 通信網や放送網を介して、 コンピュータ にダウンロードし、 内蔵するハ _ドディスク 905にインストールすること ができる。 すなわち、 プログラムは、 例えば、 ダウンロードサイ トから、 デ ィジタル衛星放送用の人工衛星を介して、 コンピュータに無線で転送したり 、 LAN(Loca I Area Network)、 インターネッ トといったネッ トワークを介して 、 コンピュータに有線で転送することができる。
[0317] コンピュータは、 CPU (Cent ra l Process i ng Un i t) 9 0 2を内蔵しており、 C PU 9 0 2には、 バス 9 0 1 を介して、 入出カインタフェース 9 1 0が接続さ れている。
[0318] CPU 9 0 2は、 入出カインタフェース 9 1 0を介して、 ユーザによって、 入 力部 9 0 7が操作等されることにより指令が入力されると、 それに従って、 R 0M(Read On ly Memory) 9 0 3に格納されているプログラムを実行する。 ある いは、 CPU 9 0 2は、 ハードディスク 9 0 5に格納されたプログラムを、 RAM( Random Access Memory) 9 0 4に口ードして実行する。
[0319] これにより、 CPU 9 0 2は、 上述したフローチヤートにしたがった処理、 あ るいは上述したブロック図の構成により行われる処理を行う。 そして、 CPU 9 0 2は、 その処理結果を、 必要に応じて、 例えば、 入出カインタフェース 9 1 〇を介して、 出力部 9 0 6から出力、 あるいは、 通信部 9 0 8から送信、 さらには、 ハードディスク 9 0 5に記録等させる。
[0320] なお、 入力部 9 0 7は、 キーボードや、 マウス、 マイク等で構成される。
また、 出力部 9 0 6は、 LCD(L i qu i d Crysta l D i sp lay)やスピーカ等で構成さ れる。
[0321 ] ここで、 本明細書において、 コンピュータがプログラムに従って行う処理 は、 必ずしもフローチヤートとして記載された順序に沿って時系列に行われ る必要はない。 すなわち、 コンビュータがプログラムに従って行う処理は、 並列的あるいは個別に実行される処理 (例えば、 並列処理あるいはオブジェ クトによる処理) も含む。
[0322] また、 プログラムは、 1のコンビュータ (プロセッサ) により処理される ものであっても良いし、 複数のコンビュータによって分散処理されるもので あっても良い。 さらに、 プログラムは、 遠方のコンビュータに転送されて実 行されるものであっても良い。
[0323] さらに、 本明細書において、 システムとは、 複数の構成要素 (装置、 モジ ュール (部品) 等) の集合を意味し、 すべての構成要素が同一筐体中にある か否かは問わない。 したがって、 別個の筐体に収納され、 ネッ トワークを介
〇 2020/175145 52 卩(:170? 2020 /005472
して接続されている複数の装置、 及び、 1つの筐体の中に複数のモジュール が収納されている 1つの装置は、 いずれも、 システムである。
[0324] なお、 本技術の実施の形態は、 上述した実施の形態に限定されるものでは なく、 本技術の要旨を逸脱しない範囲において種々の変更が可能である。
[0325] 例えば、 本技術は、 1つの機能をネッ トワークを介して複数の装置で分担 、 共同して処理するクラウドコンピューティングの構成をとることができる
[0326] また、 上述のフローチヤートで説明した各ステップは、 1つの装置で実行 する他、 複数の装置で分担して実行することができる。
[0327] さらに、 1つのステップに複数の処理が含まれる場合には、 その 1つのス テップに含まれる複数の処理は、 1つの装置で実行する他、 複数の装置で分 担して実行することができる。
[0328] また、 本明細書に記載された効果はあくまで例示であって限定されるもの ではなく、 他の効果があってもよい。
符号の説明
[0329] 1 0 画像処理システム, 1 1 エンコーダ, 2 1 八 変換部, 2
2 並べ替えバッファ 22, 23 演算部, 24 直交変換部, 25 量子化部, 26 可逆符号化部, 27 蓄積バッファ, 28 逆量 子化部, 29 逆直交変換部, 30 演算部, 3 1 3, 3 1 6 デブ ロックフィルタ, 32 フレームメモリ, 33 選択部, 34 イン トラ予測部, 35 動き予測補償部, 36 予測画像選択部, 37 レート制御部, 4 1 適応オフセッ トフィルタ, 42 八!_ド, 5 1 デ コーダ, 6 1 蓄積バッファ, 62 可逆復号部, 63 逆量子化部
, 64 逆直交変換部, 65 演算部, 67 並べ替えバッファ,
68 /八変換部, 69 フレームメモリ, 70 選択部, 7 1 イン トラ予測部, 72 動き予測補償部, 73 選択部, 81 適応オフ セッ トフィルタ, 82 八!_ド, 26 1 境界強度設定部, 3 1 0 判定 部, 3 1 1 適用要否判定部, 3 1 2 フィルタ強度判定部, 320
〇 2020/175145 53 卩(:170? 2020 /005472 フィルタリング部, 330 ラインバッファ, 340 制御部, 9
—ドディスク, 906 出力部, 907 入力部, 908 通信部,
909 ドライブ, 9 1 0 入出カインタフェース, 9 1 1 リムー バブル記録媒体
Claims
[請求項 1 ] 変換ブロックと予測ブロックと符号化ブロックとが統一された階層 構造を有するブロック構造に従って、 ビッ トストリームを復号して復 号画像を生成する復号部と、
前記復号部により生成された復号画像の前記変換ブロックを分割し たサブブロックの境界であるサブブロック境界と直交するラインの画 素に、 デブロックフィルタを適用するフィルタ部と を備える画像処理装置。
[請求項 2] 前記フィルタ部は、 前記サブブロック境界を挟んで隣接する隣接サ ブブロックの特性に応じて設定された境界強度に応じて、 前記サブブ ロック境界と直交するラインの画素に、 前記デブロックフィルタを適 用する
請求項 1 に記載の画像処理装置。
[請求項 3] 前記フィルタ部は、 イントラ予測が行われる前記変換ブロックを分 割したサブブロックの前記サブブロック境界と直交するラインの画素 に、 前記デブロックフィルタを適用する
請求項 2に記載の画像処理装置。
[請求項 4] 前記フィルタ部は、 イントラ予測が行われる前記変換ブロックのブ ロック境界と同一の境界強度に設定された境界強度に応じて、 前記サ ブブロック境界と直交するラインの画素に、 前記デブロックフィルタ を適用する
請求項 3に記載の画像処理装置。
[請求項 5] 前記サブブロックのブロックサイズに応じて、 前記デブロックフィ ルタを適用するかを判定する判定部をさらに備え、 前記フイルタ部は、 前記判定部により前記デブロックフィルタを適 用すると判定された場合、 前記サブブロックの前記サブブロック境界 と直交するラインの画素に、 前記デブロックフィルタを適用する 請求項 3に記載の画像処理装置。
〇 2020/175145 55 卩(:170? 2020 /005472
[請求項 6] 前記フイルタ部は、 前記サブブロックのブロックサイズに応じて設 定されたフィルタタイプの前記デブロックフィルタを適用する 請求項 5に記載の画像処理装置。
[請求項 7] 前記フィルタ部は、 1のサブブロック境界で前記デブロックフィル 夕が適用される適用対象画素の中に、 他のサブブロック境界での前記 デブロックフィルタの適用で参照される画素が含まれないように、 前 記デブロックフィルタを適用する
請求項 5に記載の画像処理装置。
[請求項 8] 変換ブロックと予測ブロックと符号化ブロックとが統一された階層 構造を有するブロック構造に従って、 ビッ トストリームを復号して復 号画像を生成することと、
前記復号画像の前記変換ブロックを分割したサブブロックの境界で あるサブブロック境界と直交するラインの画素に、 デブロックフィル 夕を適用することと
を含む画像処理方法。
[請求項 9] 画像を変換ブロックと予測ブロックと符号化ブロックとが統一され た階層構造を有するブロック構造に従って符号化する際に口ーカル復 号された口ーカル復号画像の、 イントラ予測が行われる前記変換ブロ ックを分割したサブブロックの境界であるサブブロック境界と直交す るラインの画素に、 デブロックフィルタを適用してフィルタ画像を生 成するフィルタ部と、
前記フィルタ部により生成されたフィルタ画像を用いて、 前記画像 を符号化する符号化部と
を備える画像処理装置。
[請求項 10] 画像を変換ブロックと予測ブロックと符号化ブロックとが統一され た階層構造を有するブロック構造に従って符号化する際に口ーカル復 号された口ーカル復号画像の、 イントラ予測が行われる前記変換ブロ ックを分割したサブブロックの境界であるサブブロック境界と直交す
〇 2020/175145 56 卩(:170? 2020 /005472
るラインの画素に、 デブロックフイルタを適用してフィルタ画像を生 成することと、
前記フイルタ画像を用いて、 前記画像を符号化することと を含む画像処理方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202080015917.2A CN113491133A (zh) | 2019-02-27 | 2020-02-13 | 图像处理装置和图像处理方法 |
KR1020217025134A KR20210130716A (ko) | 2019-02-27 | 2020-02-13 | 화상 처리 장치 및 화상 처리 방법 |
JP2021501897A JP7444159B2 (ja) | 2019-02-27 | 2020-02-13 | 画像処理装置及び画像処理方法 |
US17/432,501 US20220174276A1 (en) | 2019-02-27 | 2020-02-13 | Image processing device and image processing method |
EP20763869.3A EP3934256A4 (en) | 2019-02-27 | 2020-02-13 | IMAGE PROCESSING DEVICE AND IMAGE PROCESSING METHOD |
JP2024025254A JP2024045713A (ja) | 2019-02-27 | 2024-02-22 | 画像処理装置及び画像処理方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962811126P | 2019-02-27 | 2019-02-27 | |
US62/811,126 | 2019-02-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020175145A1 true WO2020175145A1 (ja) | 2020-09-03 |
Family
ID=72238942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/005472 WO2020175145A1 (ja) | 2019-02-27 | 2020-02-13 | 画像処理装置及び画像処理方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20220174276A1 (ja) |
EP (1) | EP3934256A4 (ja) |
JP (2) | JP7444159B2 (ja) |
KR (1) | KR20210130716A (ja) |
CN (1) | CN113491133A (ja) |
TW (1) | TW202041013A (ja) |
WO (1) | WO2020175145A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022545276A (ja) * | 2019-08-23 | 2022-10-26 | 北京字節跳動網絡技術有限公司 | コーディングブロック又はサブブロック境界でのデブロッキングフィルタリング |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2020166480A1 (ja) * | 2019-02-15 | 2021-10-28 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 符号化装置、復号装置、符号化方法、および復号方法 |
EP3985486B1 (en) * | 2020-10-13 | 2024-04-17 | Hiroyuki Ikeda | Glasses-type terminal |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7430336B2 (en) * | 2004-05-06 | 2008-09-30 | Qualcomm Incorporated | Method and apparatus for image enhancement for low bit rate video compression |
JP2011049740A (ja) * | 2009-08-26 | 2011-03-10 | Sony Corp | 画像処理装置および方法 |
CN106162178B (zh) * | 2010-04-13 | 2019-08-13 | 三星电子株式会社 | 执行去块滤波的对视频进行解码的设备 |
TWI600318B (zh) * | 2010-05-18 | 2017-09-21 | Sony Corp | Image processing apparatus and image processing method |
JP2013012815A (ja) * | 2011-06-28 | 2013-01-17 | Sony Corp | 画像処理装置及び画像処理方法 |
EP2941871A2 (en) * | 2013-01-07 | 2015-11-11 | VID SCALE, Inc. | Enhanced deblocking filters for video coding |
US11310495B2 (en) * | 2016-10-03 | 2022-04-19 | Sharp Kabushiki Kaisha | Systems and methods for applying deblocking filters to reconstructed video data |
US10455254B2 (en) * | 2016-11-10 | 2019-10-22 | Mediatek Inc. | Method and apparatus of video coding |
WO2019137749A1 (en) * | 2018-01-10 | 2019-07-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Determining filter length for deblocking during encoding and/or decoding of video |
US10904555B2 (en) * | 2018-07-11 | 2021-01-26 | Tencent America LLC | Method and apparatus for video coding |
-
2020
- 2020-02-13 WO PCT/JP2020/005472 patent/WO2020175145A1/ja unknown
- 2020-02-13 JP JP2021501897A patent/JP7444159B2/ja active Active
- 2020-02-13 CN CN202080015917.2A patent/CN113491133A/zh active Pending
- 2020-02-13 EP EP20763869.3A patent/EP3934256A4/en active Pending
- 2020-02-13 KR KR1020217025134A patent/KR20210130716A/ko unknown
- 2020-02-13 US US17/432,501 patent/US20220174276A1/en active Pending
- 2020-02-19 TW TW109105269A patent/TW202041013A/zh unknown
-
2024
- 2024-02-22 JP JP2024025254A patent/JP2024045713A/ja active Pending
Non-Patent Citations (15)
Title |
---|
"Advanced video coding for generic audiovisual services", RECOMMENDATION ITU-T H.264, April 2017 (2017-04-01) |
"High efficiency video coding", RECOMMENDATION ITU-T H.265, December 2016 (2016-12-01) |
B. BROSSJ. CHENS. LIU: "Versatile Video Coding (Draft 3", JVET-L1001, JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 12TH MEETING, vol. 312, October 2018 (2018-10-01) |
C.-M. TSAI, C.-W. HSU, Y.-W. HUANG, S.-M. LEI (MEDIATEK): "CE11-related: Long deblocking filters with reduced line buffer requirement and enhanced parallel processing accessibility", 13. JVET MEETING; 20190109 - 20190118; MARRAKECH; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET-L0076-v2, 2 January 2019 (2019-01-02), Marrakech, MA, pages 1 - 10, XP030200222 * |
J. BOYCE (INTELY. YE (INTERDIGITALY.-W. HUANG (MEDIATEKM. KARCZEWICZ (QUALCOMME. FRANCOIS (TECHNICOLORW. HUSAK (DOLBYJ. RIDGE (NOK: "Two tier test model", JVET- J0093, JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 10TH MEETING, vol. 1020, April 2018 (2018-04-01) |
J. CHENE. ALSHINAG. J. SULLIVANJ.-R. OHMJ. BOYCE: "Algorithm Description of Joint Exploration Test Model (JEM7", JVET-G1001, JOINT VIDEO EXPLORATION TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 7TH MEETING, 13 July 2017 (2017-07-13) |
J. J. CHENY. YES. KIM: "Algorithm description for Versatile Video Coding and Test Model 3 (VTM 3", JVET-L1002, JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 12TH MEETING, vol. 312, October 2018 (2018-10-01) |
JVET-M0102-V5: CE3: INTRA SUB-PARTITIONS CODING MODE, 17 January 2019 (2019-01-17) |
K. MISRA (SHARPLABS), A. SEGALL (SHARP LABS OF AMERICA), M. IKEDA (SONY), T. SUZUKI (SONY), K. ANDERSSON (ERICSSON), J. ENHORN (ER: "Non-CE11: On ISP transform boundary deblocking", 14. JVET MEETING; 20190319 - 20190327; GENEVA; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET-N0473_r2, 26 March 2019 (2019-03-26), Geneva, CH, pages 1 - 4, XP030205013 * |
M. IKEDA (SONY), T. SUZUKI (SONY), D. RUSANOVSKYY (QUALCOMM), M. KARCZEWICZ (QUALCOMM), W. ZHU (SHARPLABS), K. MISRA (SHARPLABS), : "CE11.1.6, CE11.1.7 and CE11.1.8: Joint proposals for long deblocking from Sony, Qualcomm, Sharp, Ericsson", 13. JVET MEETING; 20190109 - 20190118; MARRAKECH; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET-M0471, 3 January 2019 (2019-01-03), Marrakesh, MA, pages 1 - 11, XP030200516 * |
M. IKEDAT. SUZUKI (SONYD. RUSANOVSKYYM. KARCZEWICZ (QUALCOMMW. ZHUK. MISRAP. COWANA. SEGALL (SHARP LABS OF AMERICAK. ANDERSSONJ. E: "JVET- M0471, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting", vol. 918, January 2019, QUALCOMM, SHARP, ERICSSON, article "CE11.1.6, CE11.1.7 and CE11.1.8: Joint proposals for long deblocking from Sony" |
S. DE LUXÁN HERNÁNDEZ (FRAUNHOFER), H. SCHWARZ (FRAUNHOFER), D. MARPE (FRAUNHOFER), T. WIEGAND (HHI): "CE3: Line-based intra coding mode (Tests 2.1.1 and 2.1.2)", 12. JVET MEETING; 20181003 - 20181012; MACAO; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET-L0076-v2, September 2018 (2018-09-01), Macao, CN, pages 1 - 8, XP030193621 * |
S. DE-LUXAN-HERNANDEZV. GEORGEJ. MAT. NGUYENH. SCHWARZD. MARPET. WIEGAND (HHI: "CE3: Intra Sub-Partitions Coding Mode (Tests 1.1.1 and 1.1.2", JVET- M0102, JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 13TH MEETING, vol. 918, January 2019 (2019-01-01) |
See also references of EP3934256A4 |
Y. ZHAO (HUAWEI), H. YANG (HUAWEI), J. CHEN (HUAWEI): "CE6: Sub-block transform for inter blocks (CE6.1.2)", 12. JVET MEETING; 20181003 - 20181012; MACAO; (THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ), no. JVET-L0358-v2, 30 September 2018 (2018-09-30), Macao, CN, pages 1 - 9, XP030194091 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022545276A (ja) * | 2019-08-23 | 2022-10-26 | 北京字節跳動網絡技術有限公司 | コーディングブロック又はサブブロック境界でのデブロッキングフィルタリング |
JP7305878B2 (ja) | 2019-08-23 | 2023-07-10 | 北京字節跳動網絡技術有限公司 | コーディングブロック又はサブブロック境界でのデブロッキングフィルタリング |
US12003714B2 (en) | 2019-08-23 | 2024-06-04 | Beijing Bytedance Network Technology Co., Ltd. | Deblocking filtering at coding block or subblock boundary |
Also Published As
Publication number | Publication date |
---|---|
EP3934256A4 (en) | 2022-03-09 |
JP7444159B2 (ja) | 2024-03-06 |
JPWO2020175145A1 (ja) | 2021-12-23 |
CN113491133A (zh) | 2021-10-08 |
TW202041013A (zh) | 2020-11-01 |
EP3934256A1 (en) | 2022-01-05 |
US20220174276A1 (en) | 2022-06-02 |
KR20210130716A (ko) | 2021-11-01 |
JP2024045713A (ja) | 2024-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101382101B1 (ko) | 감소된 해상도의 파티셔닝을 위한 방법 및 장치 | |
WO2016049839A1 (en) | Rules for intra-picture prediction modes when wavefront parallel processing is enabled | |
KR102043579B1 (ko) | 화상 코딩 장치, 화상을 코딩하는 방법, 화상 디코딩 장치, 화상을 디코딩하는 방법 및 컴퓨터 판독가능 매체 | |
US10075725B2 (en) | Device and method for image encoding and decoding | |
US20220046232A1 (en) | Video encoding and decoding method for predicting chroma component, and video encoding and decoding device for predicting chroma component | |
KR20160110961A (ko) | 비대칭 구획을 갖는 인트라 블록 카피 예측 및 인코더측 검색 패턴, 검색 범위 및 구획화 접근법 | |
KR20160072181A (ko) | 비디오 및 이미지 코딩 및 디코딩을 위한 인트라 블록 카피 예측 모드의 피쳐 | |
WO2020175145A1 (ja) | 画像処理装置及び画像処理方法 | |
US20180376150A1 (en) | Encoding device, decoding device, and program | |
JP2022517081A (ja) | イントラ・サブパーティション・コーディング・ツールによって引き起こされるサブパーティション境界のためのデブロッキングフィルタ | |
USRE48074E1 (en) | Image encoding device and image decoding device | |
EP3499892A1 (en) | Multi-level significance maps for encoding and decoding | |
KR102632984B1 (ko) | 화상 처리 장치 및 화상 처리 방법 | |
KR20220021471A (ko) | 화상 처리 장치 및 화상 처리 방법 | |
KR20220113708A (ko) | 화상 처리 장치 및 화상 처리 방법 | |
WO2020260878A1 (en) | High throughput cabac | |
US20220078416A1 (en) | Image processing device and image processing method | |
TW202312733A (zh) | 圖像編碼裝置、圖像解碼裝置、其等之控制方法及程式 | |
WO2020262370A1 (ja) | 画像処理装置および画像処理方法 | |
JP6793778B2 (ja) | 波面並列処理が可能にされた場合のピクチャ内予測モードに関する規則 | |
WO2022217417A1 (zh) | 编解码方法、编码器、解码器以及存储介质 | |
JP2024103663A (ja) | 画像処理装置および画像処理方法 | |
KR20220113693A (ko) | 화상 처리 장치 및 화상 처리 방법 | |
GB2587359A (en) | Image data encoding and decoding |
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: 20763869 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021501897 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2020763869 Country of ref document: EP Effective date: 20210927 |