WO2019131400A1 - Dispositif de filtrage d'image, dispositif de décodage d'image et dispositif de codage d'image - Google Patents

Dispositif de filtrage d'image, dispositif de décodage d'image et dispositif de codage d'image Download PDF

Info

Publication number
WO2019131400A1
WO2019131400A1 PCT/JP2018/046859 JP2018046859W WO2019131400A1 WO 2019131400 A1 WO2019131400 A1 WO 2019131400A1 JP 2018046859 W JP2018046859 W JP 2018046859W WO 2019131400 A1 WO2019131400 A1 WO 2019131400A1
Authority
WO
WIPO (PCT)
Prior art keywords
filter
image
pixel
unit
boundary
Prior art date
Application number
PCT/JP2018/046859
Other languages
English (en)
Japanese (ja)
Inventor
知宏 猪飼
天洋 周
Original Assignee
シャープ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by シャープ株式会社 filed Critical シャープ株式会社
Publication of WO2019131400A1 publication Critical patent/WO2019131400A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Definitions

  • Embodiments of the present invention relate to an image filter device, an image decoding device, and an image coding device.
  • a moving picture coding apparatus that generates coded data by coding a moving picture to efficiently transmit or record a moving picture, and a moving picture that generates a decoded picture by decoding the coded data.
  • An image decoding device is used.
  • HEVC High-Efficiency Video Coding
  • an image (picture) constituting a moving picture is a slice obtained by dividing the image, a coding unit obtained by dividing the slice (coding unit (coding unit (Coding Unit)).
  • coding unit Coding unit
  • CU coding unit
  • PU prediction unit
  • TU transform unit
  • a predicted picture is usually generated based on a locally decoded picture obtained by coding / decoding an input picture, and the predicted picture is generated from the input picture (original picture).
  • the prediction residual obtained by subtraction (sometimes referred to as "difference image” or "residual image") is encoded.
  • inter prediction inter prediction
  • intra-screen prediction intra prediction
  • Non-Patent Document 1 can be cited as a technology for moving picture encoding and decoding in recent years.
  • the present invention has been made in view of the above problems, and an object thereof is to realize application of a filter according to an image characteristic to input image data as compared with a conventional configuration.
  • an image filter device is an image filter device that generates an output image by acting on an input image composed of a plurality of basic unit regions, and the basic unit region And an adaptive filter unit, wherein the boundary filter unit is capable of turning on and off the boundary filter of the slice boundary or the tile boundary, and the adaptive filter unit includes the boundary filter unit.
  • Different virtual boundaries are set depending on whether the filtering process by the boundary filter unit is on or off at slice boundaries or tile boundaries, and filtering is performed with reference to pixel values located within the virtual boundaries. I do.
  • the image filter device concerning the present invention is provided with the filter part which generates an output picture by acting on an input image, and the object pixel in the above-mentioned input picture is processed by the filter processing by the above-mentioned filter part. And a process of multiplying each of the pixels around the target pixel and the activity calculated by referring to at least a part of the surrounding pixels by a weighting factor.
  • a filter according to image characteristics can be applied to input image data.
  • FIG. 1 It is a figure which shows the hierarchical structure of the data of the encoding stream which concerns on 1st Embodiment. It is a figure which shows the pattern of PU split mode. (A) to (h) show the partition shapes when the PU division mode is 2Nx2N, 2NxN, 2NxnU, 2NxnD, Nx2N, nLx2N, nRx2N, and NxN, respectively. It is a conceptual diagram which shows an example of a reference picture and a reference picture list. It is a block diagram which shows the structure of the image coding apparatus which concerns on 1st Embodiment. It is the schematic which shows the structure of the image decoding apparatus which concerns on 1st Embodiment.
  • the filter coefficients derived by the adaptive filter 305_2 are visualized in class units.
  • (A) is a figure which showed the residual reduction amount gain which is the difference of the quantity of the remainder before and behind applying the filter factor derived
  • (b) is adaptive filter 305_2 Indicates the frequency of appearance of classified classes. It is the figure shown about the composition of the transmitting device carrying the picture coding device concerning this embodiment, and the receiving device carrying a picture decoding device.
  • (A) shows a transmitting apparatus equipped with an image coding apparatus, and (b) shows a receiving apparatus equipped with an image decoding apparatus. It is the figure shown about the recording device carrying the picture coding device concerning this embodiment, and the composition of the reproduction device carrying a picture decoding device.
  • (A) shows a recording apparatus equipped with an image coding apparatus, and (b) shows a reproduction apparatus equipped with an image decoding apparatus. It is a schematic diagram showing composition of an image transmission system concerning this embodiment.
  • FIG. 29 is a schematic view showing the configuration of the image transmission system 1 according to the present embodiment.
  • the image transmission system 1 is a system that transmits a code obtained by coding an image to be coded, decodes the transmitted code, and displays the image.
  • the image transmission system 1 is configured to include an image encoding device (moving image encoding device) 11, a network 21, an image decoding device (moving image decoding device) 31, and an image display device 41.
  • An image T representing an image of a single layer or a plurality of layers is input to the image coding device 11.
  • a layer is a concept used to distinguish a plurality of pictures when there is one or more pictures that constitute a certain time. For example, if the same picture is encoded by a plurality of layers having different image quality and resolution, it becomes scalable coding, and if a picture of different viewpoints is encoded by a plurality of layers, it becomes view scalable coding.
  • prediction inter-layer prediction, inter-view prediction
  • encoded data can be summarized.
  • the network 21 transmits the encoded stream Te generated by the image encoding device 11 to the image decoding device 31.
  • the network 21 is the Internet, a wide area network (WAN), a small area network (LAN), or a combination of these.
  • the network 21 is not necessarily limited to a two-way communication network, and may be a one-way communication network for transmitting broadcast waves such as terrestrial digital broadcasting and satellite broadcasting.
  • the network 21 may be replaced by a storage medium recording a coded stream Te such as a DVD (Digital Versatile Disc) or a BD (Blue-ray Disc).
  • the image decoding apparatus 31 decodes each of the encoded streams Te transmitted by the network 21 and generates one or more decoded images Td which are respectively decoded.
  • the image display device 41 displays all or a part of one or more decoded images Td generated by the image decoding device 31.
  • the image display device 41 includes, for example, a display device such as a liquid crystal display or an organic EL (Electro-luminescence) display.
  • a display device such as a liquid crystal display or an organic EL (Electro-luminescence) display.
  • a display device such as a liquid crystal display or an organic EL (Electro-luminescence) display.
  • SNR scalable coding when the image decoding device 31 and the image display device 41 have high processing capabilities, they display enhancement layer images with high image quality and have only lower processing capabilities.
  • the base layer image which does not require the processing capability and the display capability as high as the enhancement layer.
  • X? Y: z is a ternary operator that takes y if x is true (other than 0) and z if x is false (0).
  • FIG. 1 is a diagram showing a hierarchical structure of data in a coded stream Te.
  • the coded stream Te illustratively includes a sequence and a plurality of pictures forming the sequence.
  • (A) to (f) in FIG. 1 respectively represent a coded video sequence defining the sequence SEQ, a coded picture defining the picture PICT, a coding slice defining the slice S, and a coding slice defining slice data.
  • It is a figure which shows a coding tree unit contained in data, coding slice data, and a coding unit (Coding Unit; CU) contained in a coding tree unit.
  • CU coding unit
  • the encoded video sequence In the encoded video sequence, a set of data to which the image decoding device 31 refers in order to decode the sequence SEQ to be processed is defined.
  • the sequence SEQ includes a video parameter set (Video Parameter Set), a sequence parameter set SPS (Sequence Parameter Set), a picture parameter set PPS (Picture Parameter Set), a picture PICT, and an addition. It includes supplemental information SEI (Supplemental Enhancement Information).
  • SEI Supplemental Enhancement Information
  • the value shown after # indicates a layer ID.
  • FIG. 1 shows an example in which coded data of # 0 and # 1, that is, layer 0 and layer 1 exist, the type of layer and the number of layers do not depend on this.
  • a video parameter set VPS is a set of coding parameters common to a plurality of moving pictures and a set of coding parameters related to the plurality of layers included in the moving picture and each layer in a moving picture composed of a plurality of layers.
  • a set is defined.
  • sequence parameter set SPS a set of coding parameters to be referred to by the image decoding device 31 for decoding the target sequence is defined.
  • the width and height of the picture are defined.
  • multiple SPS may exist. In that case, one of a plurality of SPSs is selected from PPS.
  • a set of coding parameters to which the image decoding device 31 refers to to decode each picture in the target sequence is defined. For example, a reference value of quantization width (pic_init_qp_minus 26) used for decoding a picture and a flag (weighted_pred_flag) indicating application of weighted prediction are included.
  • multiple PPS may exist. In that case, one of a plurality of PPSs is selected from each picture in the target sequence.
  • the picture PICT includes slices S0 to SNS-1 (NS is the total number of slices included in the picture PICT), as shown in (b) of FIG.
  • the slice S includes a slice header SH and slice data SDATA as shown in (c) of FIG.
  • the slice header SH includes a coding parameter group to which the image decoding device 31 refers in order to determine the decoding method of the target slice.
  • the slice type specification information (slice_type) for specifying a slice type is an example of a coding parameter included in the slice header SH.
  • slice types that can be designated by slice type designation information, (1) I slice using only intra prediction at the time of encoding, (2) P slice using unidirectional prediction at the time of encoding or intra prediction, (3) B-slice using uni-directional prediction, bi-directional prediction, or intra prediction at the time of encoding.
  • the slice header SH may include a reference (pic_parameter_set_id) to the picture parameter set PPS included in the encoded video sequence.
  • the slice data SDATA includes a coding tree unit (CTU: Coding Tree Unit, basic unit area) as shown in (d) of FIG.
  • the CTU is a block of a fixed size (for example, 32x32, 64x64, 128x128) that configures a slice, and may also be referred to as a largest coding unit (LCU: Largest Coding Unit).
  • Encoding tree unit As shown in (e) of FIG. 1, a set of data to which the image decoding device 31 refers in order to decode a coding tree unit to be processed is defined.
  • the coding tree unit is divided by recursive quadtree division.
  • a tree-structured node obtained by recursive quadtree division is called a coding node (CN).
  • the intermediate nodes of the quadtree are coding nodes, and the coding tree unit itself is also defined as the top coding node.
  • the CTU includes a split flag (cu_split_flag), and when cu_split_flag is 1, the CTU is split into four coding nodes CN.
  • the coding node CN is not split, and has one coding unit (CU: Coding Unit) as a node.
  • the coding unit CU is an end node of the coding node and is not further divided.
  • the coding unit CU is a basic unit of coding processing.
  • the size of the coding unit can be 64x64 pixels, 32x32 pixels, 16x16 pixels, or 8x8 pixels.
  • a set of data to which the image decoding device 31 refers in order to decode a coding unit to be processed is defined.
  • the coding unit is composed of a prediction tree, a transformation tree, and a CU header CUH.
  • a prediction mode, a division method (PU division mode), and the like are defined.
  • prediction information (reference picture index, motion vector, etc.) of each prediction unit (PU) obtained by dividing the coding unit into one or more is defined.
  • a prediction unit is one or more non-overlapping regions that make up a coding unit.
  • the prediction tree includes one or more prediction units obtained by the above-mentioned division.
  • segmented the prediction unit further is called a "subblock.”
  • the sub block is composed of a plurality of pixels. If the size of the prediction unit and the subblock is equal, there is one subblock in the prediction unit. If the prediction unit is larger than the size of the subblock, the prediction unit is divided into subblocks. For example, when the prediction unit is 8x8 and the subblock is 4x4, the prediction unit is divided into four subblocks, which are horizontally divided into two and vertically divided into two.
  • the prediction process may be performed for each prediction unit (sub block).
  • Intra prediction is prediction in the same picture
  • inter prediction refers to prediction processing performed between mutually different pictures (for example, between display times, between layer images).
  • the division method is encoded according to PU division mode (part_mode) of encoded data, 2Nx2N (the same size as the encoding unit), 2NxN, 2NxnU, 2NxnD, Nx2N, nLx2N, nRx2N, and There are NxN etc.
  • 2NxN and Nx2N indicate 1: 1 symmetric division
  • 2NxnU, 2NxnD and nLx2N and nRx2N indicate 1: 3 and 3: 1 asymmetric division.
  • the PUs included in the CU are expressed as PU0, PU1, PU2, PU3 in order.
  • FIG. 2 specifically illustrate the shapes of partitions (positions of boundaries of PU division) in respective PU division modes.
  • A) of FIG. 2 shows a 2Nx2N partition
  • (b) and (c) and (d) show 2NxN, 2NxnU, and 2NxnD partitions (horizontally long partitions), respectively.
  • (E), (f) and (g) show partitions (vertical partitions) in the case of Nx2N, nLx2N and nRx2N, respectively
  • (h) shows a partition of NxN. Note that the horizontally long partition and the vertically long partition are collectively referred to as a rectangular partition, and 2Nx2N and NxN are collectively referred to as a square partition.
  • the coding unit is divided into one or more transform units, and the position and size of each transform unit are defined.
  • a transform unit is one or more non-overlapping regions that make up a coding unit.
  • the transformation tree includes one or more transformation units obtained by the above-mentioned division.
  • Partitions in the transform tree may be allocated as a transform unit a region of the same size as the encoding unit, or may be based on recursive quadtree partitioning as in the case of CU partitioning described above.
  • a conversion process is performed for each conversion unit.
  • the prediction image of a prediction unit is derived by prediction parameters associated with PU.
  • the prediction parameters include intra prediction prediction parameters or inter prediction prediction parameters.
  • prediction parameters for inter prediction inter prediction (inter prediction parameters) will be described.
  • the inter prediction parameter includes prediction list use flags predFlagL0 and predFlagL1, reference picture indexes refIdxL0 and refIdxL1, and motion vectors mvL0 and mvL1.
  • the prediction list use flags predFlagL0 and predFlagL1 are flags indicating whether a reference picture list called an L0 list or an L1 list is used, respectively, and a reference picture list corresponding to a value of 1 is used.
  • a flag indicating whether or not it is XX if the flag is other than 0 (for example, 1) is XX, it is assumed that 0 is not XX; Treat 1 as true, 0 as false, and so on. However, in an actual apparatus or method, other values may be used as true values or false values.
  • Syntax elements for deriving inter prediction parameters included in encoded data include, for example, PU split mode part_mode, merge flag merge_flag, merge index merge_idx, inter prediction identifier inter_pred_idc, reference picture index refIdxLX, predicted vector index mvp_LX_idx, There is a difference vector mvdLX.
  • the reference picture list is a list of reference pictures stored in the reference picture memory 306.
  • FIG. 3 is a conceptual diagram showing an example of a reference picture and a reference picture list.
  • the rectangle is a picture
  • the arrow is a reference of the picture
  • the horizontal axis is time
  • I, P and B in the rectangle are intra pictures, uni-predicted pictures, bi-predicted pictures, and numbers in the rectangle are decoded. Show the order.
  • the decoding order of pictures is I0, P1, B2, B3, B4, and the display order is I0, B3, B2, B4, B1, P1.
  • FIG. 3B shows an example of the reference picture list.
  • the reference picture list is a list representing reference picture candidates, and one picture (slice) may have one or more reference picture lists.
  • the target picture B3 has two reference picture lists, an L0 list RefPicList0 and an L1 list RefPicList1.
  • Reference pictures when the target picture is B3 are I0, P1, and B2, and the reference pictures have these pictures as elements.
  • the reference picture index refIdxLX which picture in the reference picture list RefPicListX is actually referred to is designated by the reference picture index refIdxLX.
  • the figure shows an example in which reference pictures P1 and B2 are referenced by refIdxL0 and refIdxL1.
  • the prediction parameter decoding (encoding) method includes a merge prediction (merge) mode and an AMVP (Adaptive Motion Vector Prediction) mode.
  • the merge flag merge_flag is a flag for identifying these.
  • the merge prediction mode is a mode used to be derived from the prediction parameter of the already processed neighboring PU without including the prediction list use flag predFlagLX (or inter prediction identifier inter_pred_idc), the reference picture index refIdxLX, and the motion vector mvLX in the encoded data.
  • the AMVP mode is a mode in which the inter prediction identifier inter_pred_idc, the reference picture index refIdxLX, and the motion vector mvLX are included in the encoded data.
  • the motion vector mvLX is encoded as a prediction vector index mvp_LX_idx that identifies the prediction vector mvpLX and a difference vector mvdLX.
  • the inter prediction identifier inter_pred_idc is a value indicating the type and the number of reference pictures, and takes any one of PRED_L0, PRED_L1, and PRED_BI.
  • PRED_L0 and PRED_L1 indicate that reference pictures managed by reference pictures in the L0 list and the L1 list are used, respectively, and indicate that one reference picture is used (uniprediction).
  • PRED_BI indicates using two reference pictures (bi-prediction BiPred), and uses reference pictures managed by the L0 list and the L1 list.
  • the predicted vector index mvp_LX_idx is an index indicating a predicted vector
  • the reference picture index refIdxLX is an index indicating a reference picture managed in the reference picture list.
  • LX is a description method used when L0 prediction and L1 prediction are not distinguished, and parameters for L0 list and parameters for L1 list are distinguished by replacing LX with L0 and L1.
  • Merge index merge_idx is an index which shows whether any prediction parameter is used as a prediction parameter of decoding object PU among the prediction parameter candidates (merge candidate) derived
  • the motion vector mvLX indicates the amount of deviation between blocks on two different pictures.
  • the prediction vector and the difference vector relating to the motion vector mvLX are referred to as a prediction vector mvpLX and a difference vector mvdLX, respectively.
  • Inter prediction identifier inter_pred_idc and prediction list usage flag predFlagLX The relationship between the inter prediction identifier inter_pred_idc, and the prediction list use flag predFlagL0, predFlagL1 is as follows, and can be mutually converted.
  • the inter prediction parameter may use a prediction list use flag or may use an inter prediction identifier. Further, the determination using the prediction list use flag may be replaced with the determination using the inter prediction identifier. Conversely, the determination using the inter prediction identifier may be replaced with the determination using the prediction list utilization flag.
  • the flag biPred of bi-prediction BiPred can be derived depending on whether both of the two prediction list use flags are 1. For example, it can be derived by the following equation.
  • the flag biPred can also be derived based on whether or not the inter prediction identifier is a value indicating that two prediction lists (reference pictures) are used. For example, it can be derived by the following equation.
  • PRED_BI a value of 3
  • FIG. 5 is a schematic view showing the configuration of the image decoding device 31 according to the present embodiment.
  • the image decoding device 31 includes an entropy decoding unit 301, a prediction parameter decoding unit (prediction image decoding device) 302, a loop filter 305, a reference picture memory 306, a prediction parameter memory 307, a prediction image generation unit (prediction image generation device) 308, and an inverse A quantization / inverse DCT unit 311 and an addition unit 312 are included.
  • the prediction parameter decoding unit 302 is configured to include an inter prediction parameter decoding unit 303 and an intra prediction parameter decoding unit 304.
  • the predicted image generation unit 308 includes an inter predicted image generation unit 309 and an intra predicted image generation unit 310.
  • the entropy decoding unit 301 performs entropy decoding on the encoded stream Te input from the outside to separate and decode individual codes (syntax elements).
  • the separated codes include prediction information for generating a prediction image and residual information for generating a difference image.
  • the entropy decoding unit 301 outputs a part of the separated code to the prediction parameter decoding unit 302.
  • the part of the separated code is, for example, prediction mode predMode, PU division mode part_mode, merge flag merge_flag, merge index merge_idx, inter prediction identifier inter_pred_idc, reference picture index refIdxLX, prediction vector index mvp_LX_idx, difference vector mvdLX. Control of which code to decode is performed based on an instruction of the prediction parameter decoding unit 302.
  • the entropy decoding unit 301 outputs the quantization coefficient to the inverse quantization / inverse DCT unit 311.
  • the quantization coefficient is a coefficient obtained by performing DCT (Discrete Cosine Transform, discrete cosine transformation) on the residual signal in the encoding process and quantizing the coefficient.
  • the inter prediction parameter decoding unit 303 decodes the inter prediction parameter with reference to the prediction parameter stored in the prediction parameter memory 307 based on the code input from the entropy decoding unit 301.
  • the inter prediction parameter decoding unit 303 outputs the decoded inter prediction parameter to the prediction image generation unit 308, and stores the inter prediction parameter in the prediction parameter memory 307. Details of the inter prediction parameter decoding unit 303 will be described later.
  • the intra prediction parameter decoding unit 304 decodes the intra prediction parameter with reference to the prediction parameter stored in the prediction parameter memory 307 based on the code input from the entropy decoding unit 301.
  • the intra prediction parameter is a parameter used in a process of predicting a CU in one picture, for example, an intra prediction mode IntraPredMode.
  • the intra prediction parameter decoding unit 304 outputs the decoded intra prediction parameter to the prediction image generation unit 308, and stores it in the prediction parameter memory 307.
  • the intra prediction parameter decoding unit 304 may derive different intra prediction modes for luminance and chrominance.
  • the intra prediction parameter decoding unit 304 decodes a luminance prediction mode IntraPredModeY as a luminance prediction parameter and a chrominance prediction mode IntraPredModeC as a chrominance prediction parameter.
  • the luminance prediction mode IntraPredModeY is a 35 mode, which corresponds to planar prediction (0), DC prediction (1), and directional prediction (2 to 34).
  • the color difference prediction mode IntraPredModeC uses one of planar prediction (0), DC prediction (1), direction prediction (2 to 34), and LM mode (35).
  • the intra prediction parameter decoding unit 304 decodes a flag indicating whether IntraPredModeC is the same mode as the luminance mode, and if it indicates that the flag is the same mode as the luminance mode, IntraPredModeY is assigned to IntraPredModeC, and the flag indicates the luminance If intra mode is different from the mode, planar prediction (0), DC prediction (1), direction prediction (2 to 34), or LM mode (35) may be decoded as IntraPredModeC.
  • the loop filter 305 applies a filter such as a deblocking filter, a sample adaptive offset (SAO), or an adaptive filter (ALF) to the decoded image of the CU generated by the adding unit 312.
  • a filter such as a deblocking filter, a sample adaptive offset (SAO), or an adaptive filter (ALF) to the decoded image of the CU generated by the adding unit 312.
  • SAO sample adaptive offset
  • ALF adaptive filter
  • the reference picture memory 306 stores the decoded image of the CU generated by the adding unit 312 in a predetermined position for each picture and CU to be decoded.
  • the prediction parameter memory 307 stores prediction parameters in a predetermined position for each picture to be decoded and each prediction unit (or sub block, fixed size block, pixel). Specifically, the prediction parameter memory 307 stores the inter prediction parameter decoded by the inter prediction parameter decoding unit 303, the intra prediction parameter decoded by the intra prediction parameter decoding unit 304, and the prediction mode predMode separated by the entropy decoding unit 301. .
  • the inter prediction parameters to be stored include, for example, a prediction list use flag predFlagLX (inter prediction identifier inter_pred_idc), a reference picture index refIdxLX, and a motion vector mvLX.
  • the prediction image generation unit 308 receives the prediction mode predMode input from the entropy decoding unit 301, and also receives a prediction parameter from the prediction parameter decoding unit 302. Further, the predicted image generation unit 308 reads the reference picture from the reference picture memory 306. The prediction image generation unit 308 generates a PU prediction image using the input prediction parameters and the read reference picture in the prediction mode indicated by the prediction mode predMode.
  • the inter prediction image generation unit 309 uses the inter prediction parameter input from the inter prediction parameter decoding unit 303 and the read reference picture to interpolate the predicted image of the PU by inter prediction. Generate
  • the inter-predicted image generation unit 309 uses the reference picture index refIdxLX for the reference picture list (L0 list or L1 list) in which the prediction list use flag predFlagLX is 1, and the motion vector based on the PU to be decoded
  • the reference picture block at the position indicated by mvLX is read out from the reference picture memory 306.
  • the inter-prediction image generation unit 309 performs prediction based on the read reference picture block to generate a PU prediction image.
  • the inter prediction image generation unit 309 outputs the generated prediction image of PU to the addition unit 312.
  • the intra prediction image generation unit 310 When the prediction mode predMode indicates the intra prediction mode, the intra prediction image generation unit 310 performs intra prediction using the intra prediction parameter input from the intra prediction parameter decoding unit 304 and the read reference picture. Specifically, the intra predicted image generation unit 310 reads, from the reference picture memory 306, neighboring PUs which are pictures to be decoded and which are in a predetermined range from the PU to be decoded among PUs already decoded.
  • the predetermined range is, for example, one of the left, upper left, upper, and upper right adjacent PUs when the decoding target PU sequentially moves in the so-called raster scan order, and varies depending on the intra prediction mode.
  • the order of raster scan is an order of sequentially moving from the left end to the right end for each row from the top to the bottom in each picture.
  • the intra predicted image generation unit 310 performs prediction on the read adjacent PU in the prediction mode indicated by the intra prediction mode IntraPredMode to generate a predicted image of PU.
  • the intra predicted image generation unit 310 outputs the generated predicted image of PU to the addition unit 312.
  • the intra prediction image generation unit 310 determines planar prediction (0), DC prediction (1), direction according to the luminance prediction mode IntraPredMode Y.
  • a prediction image of PU of luminance is generated by any of prediction (2 to 34), and planar prediction (0), DC prediction (1), direction prediction (2 to 34), LM mode according to color difference prediction mode IntraPredModeC.
  • the prediction image of color difference PU is generated by any of (35).
  • the inverse quantization / inverse DCT unit 311 inversely quantizes the quantization coefficient input from the entropy decoding unit 301 to obtain a DCT coefficient.
  • the inverse quantization / inverse DCT unit 311 performs inverse DCT (Inverse Discrete Cosine Transform) on the obtained DCT coefficient to calculate a residual signal.
  • the inverse quantization / inverse DCT unit 311 outputs the calculated residual signal to the addition unit 312.
  • the addition unit 312 adds, for each pixel, the predicted image of the PU input from the inter predicted image generation unit 309 or the intra predicted image generation unit 310 and the residual signal input from the inverse quantization / inverse DCT unit 311, Generate a PU decoded image.
  • the addition unit 312 stores the generated PU decoded image in the reference picture memory 306, and externally outputs a decoded image Td in which the generated PU decoded image is integrated for each picture.
  • the loop filter 305 is an image filter device, and generates an output image by acting on an input image composed of a plurality of encoding tree units CTU (basic unit area which is a processing unit of a filter).
  • CTU basic unit area which is a processing unit of a filter
  • the loop filter 305 has (1) a function as a deblocking filter (DF: Deblocking Filter) that performs smoothing (deblocking processing) of an image around a block boundary in the input image P, and (2) a deblocking filter acts It has a function as an adaptive filter (ALF: Adaptive Loop Filter) that performs adaptive filter processing using the filter parameter FP on the captured image.
  • DF Deblocking Filter
  • ALF Adaptive Loop Filter
  • FIG. 7 is a block diagram showing the configuration of the loop filter 305.
  • the loop filter 305 includes a deblocking filter 305_1 operating as a boundary filter unit, an adaptive filter 305_2 operating as an adaptive filter unit, and an internal memory 305_3.
  • the deblocking filter 305_1 operates on the boundaries of blocks (coding tree unit CTU, coding unit CU, or partition).
  • the deblocking filter 305_1 generates the deblocked decoded image P_DB by performing smoothing of the image in the area around the block boundary in the input image P.
  • the loop filter 305 may perform filtering by the deblocking filter 305_1 (if it is on) or not (if it is off).
  • the deblocking filter 305_1 switches on and off according to a flag in the encoded data.
  • the flag to switch on / off is a flag (deblocking_filter_disabled_flag) for turning on / off the entire deblocking filter, and at least a flag (loop_filter_across_tiles_enabled_flag) indicating whether to apply a deblocking filter to tile boundaries or a deblocking filter to slice boundaries It has a flag (loop_filter_across_slices_enabled_flag) indicating whether or not it is.
  • the deblocking filter 305_1 derives a flag filterLeftCbEdgeFlag indicating whether or not to apply filtering to the left side of the block boundary.
  • filterLeftCbEdgeFlag is 0 when any of the following conditions are satisfied, and 1 otherwise.
  • -The left boundary of the target block (target CTU) is the left boundary of the picture.
  • -The left boundary of the target block (target CTU) is the left boundary of the tile
  • loop_filter_across_tiles_enabled_flag is 0.
  • the left boundary of the target block (target CTU) is the left boundary of the slice
  • loop_filter_across_slices_enabled_flag is 0.
  • the deblocking filter 305_1 performs filtering on the block left boundary in the vertical direction (the boundary divided by a line along the vertical direction, the boundary divided into left and right blocks) with reference to the flag filterLeftCbEdgeFlag.
  • the flag filterLeftCbEdgeFlag, the in-CTU coordinates of the target block, and the division flag are referred to, and a flag edgeFlags indicating whether to filter the boundary pixel is derived. If edgeFlags is 1, apply filtering to the block left boundary. For example, filter processing is performed using the following equation.
  • edgeFlags when the edgeFlags is 0, no filtering process is applied to the left boundary of the block. If the x coordinate of the in-CTU coordinate is 0, that is, if the target block left boundary is the left boundary of the CTU, set filterLeftCbEdgeFlag in edgeFlags. Accordingly, when the filterLeftCbEdgeFlag is 0, the deblocking filter 305_1 does not apply the filtering process to the left boundary of the CTU.
  • the deblocking filter 305_1 derives a flag filterTopCbEdgeFlag indicating whether or not the filtering process is performed above the block boundary of the target block.
  • filterTopCbEdgeFlag is 0 when any of the following conditions are satisfied, and 1 otherwise.
  • -The upper boundary of the target block (target CTU) is the upper boundary of the picture.
  • -The upper boundary of the target block (target CTU) is the upper boundary of the tile, and loop_filter_across_tiles_enabled_flag is 0.
  • -The upper boundary of the target block (target CTU) is the upper boundary of the slice, and loop_filter_across_slices_enabled_flag is 0.
  • the deblocking filter 305_1 performs filtering on the block upper boundary in the horizontal direction (the boundary divided by a line along the horizontal direction, the boundary divided into upper and lower blocks) with reference to the flag filterTopCbEdgeFlag.
  • the flag filterLeftCbEdgeFlag, the in-CTU coordinates of the target block, and the division flag are referred to, and a flag edgeFlags indicating whether to filter the boundary pixel is derived.
  • edgeFlags When edgeFlags is 1, filter processing is applied to the block upper boundary.
  • the application method is the same as the above block left boundary in the vertical direction.
  • edgeFlags no filtering is applied to the block upper boundary.
  • the deblocking filter 305_1 can turn on / off the boundary filter of slice boundaries or tile boundaries.
  • Adaptive filter 305_2 acts on the deblocked decoded image P_DB after the filtering by the deblocking filter 305_1 when the filtering by the deblocking filter 305_1 is on.
  • the adaptive filter 305_2 acts on the input image P when the filtering process by the deblocking filter 305_1 is off.
  • the adaptive filter 305_2 may operate on filtered decoded images other than the deblocking filter 305_1. For example, it may operate on the adaptive sample offset filter P_SAO.
  • the adaptive filter 305_2 includes a target pixel setting unit 305_2a, a reference area setting unit 305_2b, and a filter processing unit 305_2c.
  • the target pixel setting unit 305_2a sets each pixel included in the coding tree unit CTU as a target pixel for adaptive filter processing in raster scan order.
  • the target pixel position information indicating the position of the target pixel set by the target pixel setting unit 305_2a is supplied to the reference area setting unit 305_2b.
  • the reference area setting unit 305_2b sets the reference area of the target pixel, and the filter processing unit 305_2c calculates the pixel value of the target pixel.
  • the reference area setting unit 305_2b sets a reference area around the target pixel based on the position of the target pixel in the coding tree unit CTU.
  • the reference area is defined by virtually set reference restriction lines (virtual boundaries). That is, "outside reference area” indicates the outside of the target pixel beyond the reference restriction line, and "in reference area” indicates the inside of the reference restriction line from the target pixel.
  • the reference area setting unit 305_2b sets reference restriction lines with different positions depending on whether the filtering process by the deblocking filter 305_1 is on or off. Details of the process performed by the reference area setting unit 350_2b will be described later, with reference to the drawings being referred to.
  • the filter processing unit 305_ 2 c is a pixel of (1) a deblocked decoded image (also referred to as “pre-filter image”) of the pixel value of the adaptive-filtered decoded image P_ALF (also referred to as “filtered image”) of the target pixel.
  • the value or (2) the pixel value of the input image P which is calculated by reference to the pixel value of the pixel included in the reference region set for the target pixel by the reference region setting unit 305_2b.
  • the process of determining the pixel to be referred to by the filter processing unit 305_2c will be described later, with reference to the drawings being referred to.
  • the generated adaptive filtered decoded image P_ALF is temporarily stored in the internal memory 305_3, and then transferred to the reference picture memory 306.
  • FIG. 8 is a flowchart showing processing by the reference region setting unit 305_2b and the filter processing unit 305_2c of the loop filter 305 according to the present embodiment. The details of each process will be described later, with reference to the drawings.
  • Step S10 The reference area setting unit 305_2b sets a reference restriction boundary variable which is a variable for setting a reference restriction line.
  • the reference restriction boundary variable will be described with reference to FIG.
  • FIG. 9 is a diagram for describing a reference restriction line in the present embodiment.
  • the reference area setting unit 305_2b sets a reference restriction line extending in the horizontal direction.
  • the reference area setting unit 305_2b is a reference restriction boundary variable indicating how many lines the reference restriction line is to be set from the upper side (hereinafter also referred to as "upper CTU boundary") of the encoding tree unit CTU.
  • K1 and a reference restriction boundary variable K2 indicating how many reference restriction lines are to be set on the upper and lower sides of the lines from the lower side of the coding tree unit CTU (hereinafter also referred to as "lower CTU boundary").
  • the reference area setting unit 305_2b sets the reference restriction line according to the position of the target pixel set by the target pixel setting unit 305_2a.
  • the reference area setting unit 305_2b sets the reference restriction line vbLine2 from the lower side of the encoding tree unit CTU to the upper side of the reference restriction boundary variable K2 with reference to the set reference restriction boundary variable K2. Then, when the position of the target pixel set in the coding tree unit CTU is above the reference restriction line vbLine2, the reference area setting unit 305_2b refers to the reference restriction boundary variable K1 and sets the encoding tree unit CTU.
  • the reference restriction line vbLine1 is set from the upper side to the reference restriction boundary variable K1 line upper side.
  • the reference region setting unit 305_2b refers to the reference restriction boundary variable K2 and the coding tree unit CTU.
  • a reference restriction line vbLine3 may be set from the lower side to the lower side of the reference restriction boundary variable K2 line.
  • the area of the coding tree unit CTU between the upper CTU boundary and the reference restriction line vbLine2 is top part, and the coding tree between the reference restriction line vbLine2 and the lower CTU boundary
  • the area of the unit CTU is called bottom part.
  • an area between the reference restriction line vbLine1 and the reference restriction line vbLine2 is a reference area.
  • the area between the reference restriction line vbLine2 and the reference restriction line vbLine3 is a reference area.
  • the reference area setting unit 305_2b performs the filtering process with reference to the pixel values located in the virtual boundary.
  • the reference area setting unit 305_2b sets the position of a reference pixel which is a pixel to be referred to in order to calculate the pixel value of the target pixel.
  • the area where the reference pixel is located is called a "filter reference area".
  • the filter reference area is an area different from the reference area.
  • the processing of the reference area setting unit 305_2b differs depending on whether the pixel in the filter reference area is within the reference area or outside the reference area.
  • the reference region setting unit 305_2b does not refer to a pixel outside the reference region, and sets another pixel as the reference pixel.
  • Detailed processing of the reference area setting unit 305_2b in the case where the position of the reference pixel is outside the reference area will be described later, with reference to the drawings being referred to.
  • the filter processing unit 305_2c refers to the position of the reference pixel set in step S20, and calculates the pixel value of the target pixel.
  • FIG. 10 is a flowchart showing an outline of processing performed by the reference area setting unit 305_2b of the loop filter 305 according to the present embodiment.
  • Step S12 The reference area setting unit 305_2b sets different virtual boundaries depending on whether filtering by the deblocking filter 305_1 operating as a boundary filter unit is on or off at slice boundaries or tile boundaries.
  • the reference area setting unit 305_2b determines whether the filtering process by the deblocking filter 305_1 is off. When the filtering process by the deblocking filter 305_1 is off, the process proceeds to step S14. On the other hand, when the filtering process by the deblocking filter 305_1 is on, the process proceeds to step S16.
  • Step S14 The reference area setting unit 305_2b is “K1” when the reference restriction line on the upper side of the reference restriction boundary variable K (the encoding tree unit CTU is set, “K1”, and the reference restriction line on the lower side of the encoding tree unit CTU Is set “0” to “K2”.
  • the reference area setting unit 305_2b sets “NDF” to the reference restriction boundary variable K.
  • the NDF is, for example, four.
  • FIG. 11 is a flowchart showing details of processing executed by the reference region setting unit 305_2b of the loop filter 305 according to the present embodiment.
  • a specific example of the determination as to whether or not the filtering process by the deblocking filter 305_1 is off will be described with reference to FIG.
  • a case will be described with reference to FIG. 11 in which reference restriction boundary variables on the upper side of the encoding tree unit CTU and reference restriction boundary variables on the lower side of the encoding tree unit CTU are individually set.
  • step S14a If the reference area setting unit 305_2b determines that the filtering process by the deblocking filter 305_1 is off, the process proceeds to step S14a, while the reference area setting unit 305_2b determines that the filtering process by the deblocking filter 305_1 is off. If not, the process proceeds to step S16a.
  • Step S14a The reference area setting unit 305_2b sets “0” to the reference restriction boundary variable K1.
  • Step S16a The reference area setting unit 305_2b sets “NDB” to the reference restriction boundary variable K1.
  • NDB is four, for example.
  • step S14b If the reference area setting unit 305_2b determines that the filtering process by the deblocking filter 305_1 is off, the process proceeds to step S14b, while the reference area setting unit 305_2b determines that the filtering process by the deblocking filter 305_1 is off. If not determined, the process proceeds to step S16b.
  • Step S14b The reference area setting unit 305_2b sets “0” to the reference restriction boundary variable K2.
  • Step S16b The reference area setting unit 305_2b sets “NDB” to the reference restriction boundary variable K2.
  • NDB is four, for example.
  • FIG. 12 is a diagram for describing the details of the reference area in the present embodiment.
  • the reference area setting unit 305_2b derives the reference area according to the position of the target pixel and the reference restriction line.
  • FIG. 12A shows a reference area when the target pixel is located at the top part.
  • the reference area setting unit 305_2b sets the area between the first reference restriction line vbLine1 and the second reference restriction line vbLine2 as a reference area.
  • the reference area setting unit 305_2b sets the pixel position yMin at the lower limit in the vertical direction in the reference area to a position separated from the upper CTU boundary by the reference restriction boundary variable K1 pixel.
  • the reference area setting unit 305_2b sets the pixel position yMax at the upper limit in the vertical direction in the reference area to a position away from the lower CTU boundary by (reference restriction boundary variable K2-1) pixels.
  • (B) of FIG. 12 shows a reference area when the target pixel is located in the bottom part.
  • the reference area setting unit 305_2b sets the area between the second reference restriction line vbLine2 and the third reference restriction line vbLine3 as a reference area.
  • the reference area setting unit 305_2b sets the pixel position yMin at the lower limit in the vertical direction in the reference area to a position away from the lower CTU boundary by the reference restriction boundary variable K2 pixels.
  • the reference area setting unit 305_2b sets the pixel position yMax at the upper limit in the vertical direction in the reference area to a position away from the lower CTU boundary by (reference restriction boundary variable K2-1) pixels.
  • FIG. 13 is a flowchart showing details of processing executed by the reference region setting unit 305_2b of the loop filter 305 according to the present embodiment.
  • Step S22 The reference area setting unit 305_2b determines whether the target pixel is positioned at the top part or the bottom part. If it is determined that the target pixel is located at the top part, the process proceeds to step S24. On the other hand, if it is determined that the target pixel is located at the bottom part, the process proceeds to step S26.
  • Step S24 The reference area setting unit 305_2b sets the pixel position yMin at the lower limit in the vertical direction in the reference area to the first reference restriction line vbLine1 and sets the pixel position yMax at the upper limit in the vertical direction in the reference area to the second reference restriction line vbLine2. Set to the value obtained by subtracting 1 from.
  • Step S26 The reference area setting unit 305_2b sets the pixel position yMin at the lower limit in the vertical direction in the reference area to the second reference restriction line vbLine2, and the pixel position yMax at the upper limit in the vertical direction in the reference area to the third reference restriction line vbLine3. Set to the value obtained by subtracting 1 from.
  • Step S28 The reference area setting unit 305_2b corrects the position of the reference pixel when the position of the reference pixel is out of the reference area.
  • FIG. 16 is a diagram showing an example of reference pixel position setting processing by the reference region setting unit 305_2b of the loop filter 305 according to the present embodiment.
  • the target pixel tp is located at the top part. Also, in the CTU shown in FIG. 16, the filter reference area is a diamond. Since the target pixel tp is located at top part, the upper limit in the vertical direction in the reference area is set to yMax.
  • FIG. 16 shows the case where the pixel on the second reference restriction line vbLine2 is used.
  • the reference area setting unit 305_2b replaces the pixel value of the reference pixel outside the reference area with the pixel value of the reference pixel on yMax at the same horizontal position.
  • FIG. 16 shows the case where the central pixel of the reference pixel group is used.
  • the reference area setting unit 305_2b replaces the pixel value of the reference pixel outside the reference area with the pixel value of the central pixel of the reference pixel group.
  • the central pixel of the reference pixel group is a target pixel.
  • the reference area setting unit 305_2b adds the value of the weighting factor of the reference pixel outside the reference area to the weighting factor of the central pixel within the filter reference area.
  • the weighting factor of the reference pixel is set to 0.
  • the reference region setting unit 305_2b is After setting the weight coefficient of the central pixel to WC + WA + WB, the weight coefficients WA and WB are set to 0.
  • FIG. 16C shows the case where a pixel group (also referred to as “center line pixel”) having the same position in the vertical direction as the central pixel of the reference pixel group is used.
  • the reference area setting unit 305_2b replaces the pixel values of the reference pixels outside the reference area with the pixel values of the center line pixels at the same horizontal position.
  • FIG. 16 shows the case where the pixel of the position which becomes line symmetry (mirror symmetry) is made centering on the 2nd reference restriction line vbLine2.
  • the reference area setting unit 305_2b sets the pixel values of the reference pixels outside the reference area to the pixel values of the pixels at positions that are line symmetrical with respect to the second reference limit line vbLine2. replace.
  • the upper left of the picture is not limited to the picture but may be the upper left of the slice or the upper left of the tile.
  • NALF_FLT_TAP is a parameter indicating the number of taps of the adaptive filter ALF, in other words, the number of pixels on one side of the filter reference area to which the adaptive filter ALF refers.
  • the target pixel setting unit 305_2a calculates the x coordinate xx based on the upper left of the picture by adding x to the x coordinate xCB on the upper left of the CU. Further, y is added to the y coordinate yCB at the upper left of CU to calculate the y coordinate yy based on the upper left of the picture.
  • Step S1-2 the target pixel setting unit 305_2a derives coordinates (xInCTU, yInCTU) based on the CTU upper left as coordinates (xx, yy) based on the upper left of the picture. Specifically, the remainder obtained by dividing xx by the CTU size at step S1-1 is substituted into a variable xInCTU, and the remainder calculated by dividing y calculated at step S1-1 by the CTU size is substituted into a variable yInCTU.
  • the reference area setting unit 305_2b sets the horizontal and vertical positions horPos [i] and verPos [i] from the target pixel corresponding to the index i of the filter coefficient as reference pixels. Are substituted as the X coordinate xPos [i] of Y and the Y coordinate yPos [i] of the reference pixel.
  • the reference area setting unit 305_2b substitutes 0 for the reference restriction boundary variable K1 when the process of the deblock filter is off with respect to the upper CTU boundary for the CTU to which the target pixel belongs. When the process is on, NDF is substituted for the reference restriction boundary variable K1.
  • the reference limit boundary variable K2 is Substitute NDF.
  • the reference area setting unit 305_2b substitutes a value obtained by adding a minus sign to the reference restriction boundary variable K1 to the reference restriction line vbLine1.
  • the reference area setting unit 305_2b substitutes a value obtained by subtracting the reference restriction boundary variable K2 from the CTU size into the reference restriction line vbLine2.
  • the reference area setting unit 305_2b substitutes a value obtained by adding the reference restriction boundary variable K2 to the CTU size, to the reference restriction line vbLine3. (Step S1-6) Subsequently, when the Y coordinate yInCTU of the target pixel is less than the reference restriction line vbLine2, the reference area setting unit 305_2b substitutes the reference restriction line vbLine1 for the lower limit yMin of the reference area, and the upper limit of the reference area. Substitute the value obtained by subtracting 1 from the reference restriction line vbLine2 into yMax.
  • the reference area setting unit 305_2b substitutes the reference restriction line vbLine2 for the lower limit yMin of the reference area and starts the reference restriction line vbLine3 for the upper limit yMax of the reference area. Substitute 1 minus the value. (Step S1-7) Subsequently, the reference area setting unit 305_2b corrects the reference position by any of the following methods.
  • the reference area setting unit 305_2b uses a value obtained by clipping the sum of the Y coordinate yInCTU of the target pixel and the Y coordinate yPos [i] of the reference pixel between the lower limit yMin of the reference area and the upper limit yMax of the reference area.
  • the value obtained by subtracting the Y coordinate yInCTU of the target pixel is substituted into the Y coordinate yPos [i] of the reference pixel (see (a) in FIG. 16).
  • the reference region setting unit 305_2b calculates the target pixel from twice the lower limit yMin of the reference region. The value obtained by subtracting twice the Y coordinate yInCTU of and the Y coordinate yPos [i] of the reference pixel is substituted for the Y coordinate yPos [i] of the reference pixel.
  • the reference region setting unit 305_2b calculates twice the upper limit yMax of the reference region to the target pixel A value obtained by subtracting twice the Y coordinate yInCTU and the Y coordinate yPos [i] of the reference pixel is substituted for the Y coordinate yPos [i] of the reference pixel (see (d) in FIG. 16).
  • NDF K2 lower deblocking filter off?
  • NDF vbLine1 -K1
  • vbLine2 CtuSize-K2
  • yPos [i] Clip3 (yMin, yMax, yIn
  • the adaptive filter 305 _ 2 sets reference restriction lines at different positions depending on whether the filtering process by the deblocking filter 305 _ 1 is on or off, and the pixel values located in the reference area Can be filtered efficiently.
  • Second Embodiment A specific flow of correction of the position of the reference pixel by the adaptive filter 305_2 of the loop filter 305 according to the second embodiment will be described.
  • the second embodiment differs from the first embodiment in that the same reference restriction boundary variable is set in the upper CTU boundary and the lower CTU boundary.
  • Step S2-1 A process similar to the above (step S1-1) is performed.
  • Step S2-2 The same processing as the above (Step S1-2) is performed.
  • Step S2-3) The same processing as the above (Step S1-3) is performed.
  • Step S2-4 Subsequently, the reference area setting unit 305_2b substitutes 0 for the reference restriction boundary variable K when the process of the deblocking filter is off, and the reference restriction boundary variable K when the process is on.
  • the reference area setting unit 305_2b substitutes a value obtained by adding a minus sign to the reference restriction boundary variable K to the reference restriction line vbLine1.
  • the reference area setting unit 305_2b substitutes a value obtained by subtracting the reference restriction boundary variable K from the CTU size into the reference restriction line vbLine2.
  • the reference area setting unit 305_2b substitutes a value obtained by adding the reference restriction boundary variable K to the CTU size for the reference restriction line vbLine3.
  • Step S2-6) Subsequently, when the Y coordinate yInCTU of the target pixel is less than the reference restriction line vbLine2, the reference area setting unit 305_2b substitutes the reference restriction line vbLine1 for the lower limit yMin of the reference area, and the upper limit of the reference area. Substitute the value obtained by subtracting 1 from the reference restriction line vbLine2 into yMax.
  • Step S2b substitutes the reference restriction line vbLine2 for the lower limit yMin of the reference area and starts the reference restriction line vbLine3 for the upper limit yMax of the reference area. Substitute 1 minus the value.
  • Step S2-7) The same processing as the above (step S1-7) is performed.
  • Step S2-8) The same processing as the above (step S1-8) is performed.
  • Step S3-1 The same processing as the above (step S1-1) is performed.
  • Step S3-2 Subsequently, the target pixel setting unit 035_2a multiplies the CTU size by the value obtained by dividing the coordinates (xx, yy) based on the upper left of the picture by the CTU size, thereby setting the upper left coordinate of the CTU of the target picture. Calculate (xCTU, yCTU).
  • Step S3-3 The same processing as the above (step S1-2) is performed.
  • the reference region setting unit 305_2b sets values obtained by adding horPos [i] and verPos [i] as xxPos [i] and yPos [i], and xx and yy. .
  • Step S3-5 Subsequently, the reference area setting unit 305_2b substitutes a value obtained by subtracting the reference restriction boundary variable K1 from the x coordinate yCTU in the picture into the reference restriction line vbLine1.
  • the reference area setting unit 305_2b adds the CTU size to the CTU coordinates yCTU, and substitutes a value obtained by subtracting the reference restriction boundary variable K2 into the reference restriction line vbLine2.
  • the reference area setting unit 305_2b adds the CTU size to the CTU coordinates yCTU, and substitutes a value obtained by adding the reference restriction boundary variable K2 to the reference restriction line vbLine3. (Step S3-6) Subsequently, when the y coordinate yy of the target pixel is less than the reference limit line vbLine2, the reference area setting unit 305_2b substitutes the reference limit line vbLine1 for the lower limit yMin of the reference area, and the upper limit of the reference area. Substitute the value obtained by subtracting 1 from the reference restriction line vbLine2 into yMax.
  • the reference area setting unit 305_2b substitutes the reference restriction line vbLine2 for the lower limit yMin of the reference area, and the reference restriction line vbLine3 for the upper limit yMax of the reference area. Substitute 1 minus the value. (Step S3-7) Subsequently, the reference area setting unit 305_2b corrects the reference position by any of the following methods.
  • the reference area setting unit 305_2b clips a value obtained by clipping the Y coordinate yPos [i] of the reference pixel between the lower limit yMin of the reference area and the upper limit yMax of the reference area, and the Y coordinate yPos [i] of the reference pixel. (Refer to (a) of FIG. 16).
  • the reference area setting unit 305_2b refers to the case where the Y coordinate yPos [i] of the reference pixel is less than the lower limit yMin of the reference area or the Y coordinate yPos [i] of the reference pixel exceeds the upper limit yMax of the reference area.
  • the position xx of the target pixel is substituted into the X coordinate xPos [i] of the pixel, and the position yy of the target pixel is substituted into the position yPos [i] of the reference pixel in the y direction (see (b) in FIG. 16).
  • the reference area setting unit 305_2b refers to the case where the Y coordinate yPos [i] of the reference pixel is less than the lower limit yMin of the reference area or the Y coordinate yPos [i] of the reference pixel exceeds the upper limit yMax of the reference area.
  • Yy is substituted for the Y coordinate yPos [i] of the pixel (see (c) in FIG. 16).
  • the reference area setting unit 305_2b subtracts the Y coordinate yPos [i] of the reference pixel from twice the lower limit yMin of the reference area if the Y coordinate yPos [i] of the reference pixel is less than the lower limit yMin of the reference area. A value is substituted into the Y coordinate yPos [i] of the reference pixel. Further, when the Y coordinate yPos [i] of the reference pixel exceeds the upper limit yMax of the reference region, the reference region setting unit 305_2b subtracts the Y coordinate yPos [i] of the reference pixel from twice the upper limit yMax of the reference region. Is substituted into the Y coordinate yPos [i] of the reference pixel (see (d) in FIG. 16). (Step S3-8) The same processing as the above (step S1-8) is performed.
  • NDF K2 lower deblocking filter off?
  • yPos [i] Clip3 (yMin, yMax, yPos [i]) // (a) In the case of using boundary pixels if (yPos [i] ⁇ yMin
  • Step S4-1 A process similar to the above (step S1-1) is performed.
  • Step S4-2) The same processing as the above (Step S1-2) is performed.
  • Step S4-3) The reference area setting unit 305_2b sets values obtained by adding xInCTU and yInCTU to horPos [i] and verPos [i] as xPos [i] and yPos [i]. .
  • Step S4-4 The same processing as the above (step S1-4) is performed.
  • Step S4-5 The same processing as the above (step S1-5) is performed.
  • Step S4-6 Subsequently, the reference area setting unit 305_2b substitutes a value obtained by subtracting the reference restriction line vbLine2 from the remainder obtained by dividing y calculated in step S4-1 by the CTU size into the boundary distance dist2VB.
  • Step S4-7 Subsequently, when the boundary distance dist2VB is less than 0, the reference area setting unit 305_2b substitutes the reference restriction line vbLine1 into the lower limit yMin of the reference area, and the reference restriction line vbLine2 into the upper limit yMax of the reference area. Substitute 1 minus the value.
  • the reference area setting unit 305_2b substitutes the reference restriction line vbLine2 for the lower limit yMin of the reference area, and substitutes the value obtained by subtracting 1 from the reference restriction line vbLine3 for the upper limit yMax of the reference area. .
  • the reference region setting unit 305_2b substitutes the reference restriction line vbLine1 into the lower limit yMin of the reference region, and adds 1 to the value obtained by adding 1 to the upper limit yMax of the reference region. Assign the multiplied value.
  • the reference region setting unit 305_2b substitutes the boundary distance dist2VB for the lower limit yMin of the reference region, and substitutes a value obtained by subtracting 1 from the reference limit line vbLine3 for the upper limit yMax of the reference region.
  • the reference area setting unit 305_2b corrects the reference position by any one of the following methods.
  • the reference area setting unit 305_2b uses a value obtained by clipping the sum of the Y coordinate yInCTU of the target pixel and the Y coordinate yPos [i] of the reference pixel between the lower limit yMin of the reference area and the upper limit yMax of the reference area. The value obtained by subtracting the Y coordinate yInCTU of the target pixel is substituted into the Y coordinate yPos [i] of the reference pixel (see (a) in FIG. 16).
  • the reference region setting unit 305_2b determines that the reference pixel is twice as large as the lower limit yMin of the reference region.
  • the value obtained by subtracting the Y coordinate yPos [i] of is assigned to the Y coordinate yPos [i] of the reference pixel.
  • Step S4-9) The same processing as the above (step S1-8) is performed.
  • FIG. 14 is an example of a table referred to by the reference region setting unit 305_2b of the loop filter 305 according to the present embodiment.
  • the table shown in FIG. 14 is determined according to the boundary distance dist2VB.
  • Step S5-1 The same processing as the above (step S1-1) is performed.
  • Step S5-2 The same processing as the above (step S1-2) is performed.
  • Step S5-3) The same processing as the above (Step S1-4) is performed.
  • Step S5-4) The same processing as the above (step S1-5) is performed.
  • Step S5-5) The same processing as the above (step S4-6) is performed.
  • the sixth embodiment differs from the above embodiments in that the reference area is limited in the horizontal direction.
  • FIG. 15 is a diagram illustrating another example of the reference restriction line set by the reference region setting unit 305_2b of the loop filter 305 according to the sixth embodiment.
  • FIG. 15 shows the reference area in the case where the target pixel is located at the left part.
  • the target pixel lp is in the left part, it is between the reference restriction line vbCol1 located apart from the CTU boundary on the left by L1 pixels and the reference restriction line vbCol2 located apart from the CTU boundary on the right by L2 pixels on the left Is the reference area.
  • FIG. 15 shows a reference area when the target pixel is located in the right part.
  • the reference restriction line vbCol2 located on the left side from the CTU boundary on the right side by L2 pixels and the reference restriction line vbCol3 located on the right side from the CTU boundary on the right side by L2 pixels Is the reference area.
  • Step S6-1 A process similar to the above (step S1-1) is performed.
  • Step S6-2 The same processing as the above (Step S1-2) is performed.
  • Step S6-3 The same processing as the above (step S4-3) is performed.
  • Step S6-4 The same processing as the above (Step S1-4) is performed.
  • Step S6-5) The same processing as the above (Step S1-5) is performed.
  • Step S6-6) Subsequently, the reference area setting unit 305_2b substitutes 0 for the reference restriction boundary variable L1 when the process of the deblock filter is off with respect to the left CTU boundary, and the process is ON.
  • the NDF is substituted for the reference restriction boundary variable L1.
  • 0 is substituted into the reference restriction boundary variable L2
  • NDF is substituted into the reference restriction boundary variable L2.
  • Step S6-7 Subsequently, the reference area setting unit 305_2b substitutes a value obtained by adding a minus sign to the reference restriction boundary variable L1 to the reference restriction line vbCol1.
  • the reference area setting unit 305_2b substitutes a value obtained by subtracting the reference restriction boundary variable L2 from the CTU size into the reference restriction line vbCol2.
  • the reference area setting unit 305_2b substitutes a value obtained by adding the reference restriction boundary variable L2 to the CTU size, to the reference restriction line vbCol3.
  • Step S6-9) Subsequently, when the X coordinate xInCTU of the target pixel is less than the reference restriction line vbCol2, the reference area setting unit 305_2b substitutes the reference restriction line vbCol1 for the left end xMin of the reference area, and the reference area The value obtained by subtracting 1 from the reference restriction line vbCol2 is assigned to the right end xMax of.
  • the reference area setting unit 305_2b substitutes the reference restriction line vbCol2 for the left end xMin of the reference area and refers to the end xMax for the right side of the reference area.
  • the reference area setting unit 305_2b corrects the reference position by any of the following methods.
  • the reference area setting unit 305_2b adds the sum of the X coordinate xInCTU of the target pixel and the X coordinate xPos [i] of the reference pixel to the left end xMin of the reference area and the right end xMax of the reference area.
  • a value obtained by subtracting the X coordinate xInCTU of the target pixel from the clipped value is substituted for the X coordinate xPos [i] of the reference pixel.
  • the reference area setting unit 305_2b is a target based on a value obtained by clipping the sum of the Y coordinate yInCTU of the target pixel and the Y coordinate yPos [i] of the reference pixel between the lower limit yMin of the reference area and the upper limit yMax of the reference area.
  • the value obtained by subtracting the Y coordinate yInCTU of the pixel is substituted for the Y coordinate yPos [i] of the reference pixel (see (a) in FIG. 16).
  • the reference region setting unit 305_2b determines the X coordinate xInCTU of the target pixel and the reference pixel If the sum of the x coordinate xPos [i] of the x exceeds the upper limit xMax on the right side of the reference area, the sum of the Y coordinate yInCTU of the target pixel and the y coordinate yPos [i] of the reference pixel is less than the lower limit yMin of the reference area Or when the sum of the Y coordinate yInCTU of the target pixel and the Y coordinate yPos [i] of the reference pixel exceeds the upper limit yMax of the reference area, 0 in the X coordinate xPos [i] and the Y coordinate yPos [i] of the reference pixel Is substitute
  • the reference region setting unit 305_2b determines the X coordinate xInCTU of the target pixel and the reference pixel The sum of the Y coordinate yInCTU of the target pixel and the Y coordinate yPos [i] of the reference pixel is less than the lower limit yMin of the reference area, when the sum of the X coordinate xPos [i] of x exceeds the right end xMax of the reference area Or, if the sum of the Y coordinate yInCTU of the target pixel and the Y coordinate yPos [i] of the reference pixel exceeds the upper limit yMax of the reference area, 0 is substituted for the Y coordinate yPos [i] of the reference pixel (see FIG.
  • the reference area setting unit 305_2b doubles the right end xMax of the reference area.
  • a value obtained by subtracting twice the X coordinate xInCTU of the target pixel and the X coordinate xPos [i] of the reference pixel from is substituted into the X coordinate xPos [i] of the reference pixel.
  • the reference region setting unit 305_2b determines that the target pixel is twice the lower limit yMin of the reference region. A value obtained by subtracting twice the Y coordinate yInCTU and the Y coordinate yPos [i] of the reference pixel is substituted for the Y coordinate yPos [i] of the reference pixel.
  • the reference region setting unit 305_2b calculates twice the upper limit yMax of the reference region to the target pixel A value obtained by subtracting twice the Y coordinate yInCTU and the Y coordinate yPos [i] of the reference pixel is substituted for the Y coordinate yPos [i] of the reference pixel (see (d) in FIG. 16). (Step S6-11) The same processing as the above (step S1-8) is performed.
  • NDF K2 lower deblocking filter off?
  • NDF L2 Right deblocking filter off?
  • xPos [i] Clip3 (xMin, xMax, xInCTU + xPos [i])-xInCTU //
  • Step S7-1 The same processing as the above (step S6-1) is performed.
  • Step S7-2) The same processing as the above (step S6-2) is performed.
  • Step S7-3) The same processing as the above (step S6-3) is performed.
  • Step S7-4) The same processing as the above (step S6-4) is performed.
  • Step S7-5) The same processing as the above (Step S6-5) is performed.
  • Step S7-6) The same processing as the above (Step S6-6) is performed.
  • Step S7-7) The same processing as the above (Step S6-7) is performed.
  • Step S7-8 The same processing as the above (Step S6-8) is performed.
  • Step S7-9 Subsequently, the reference area setting unit 305_2b substitutes the reference restriction line vbCol1 into the left end xMin of the reference area, and subtracts 1 from the reference restriction line vbCol3 into the right end xMax of the reference area. substitute.
  • Step S7-10) The same processing as the above (Step S6-10) is performed.
  • Step S7-11 A process similar to the above (step S6-11) is performed.
  • NDF K2 lower deblocking filter off?
  • NDF L2 Right deblocking filter off?
  • a virtual boundary technique will be described in which referring to pixels outside the boundary as reference pixels with a virtual boundary line (VB line) several pixels away from the boundary of the target CTU as the boundary is used.
  • VB line virtual boundary line
  • the adaptive filter ALF is applied to pixels that have been filtered (also referred to as DF-completed) by the deblocking filter DF. For this reason, it is necessary to know the range of the DF completed area.
  • the entire target CTU is not necessarily DF-completed.
  • the top of the CTU may be DFed and the bottom may not yet be DFed. Therefore, the “lower VB line” is set at the boundary of the range of the DF-completed area in the target CTU.
  • access to the area below the lower VB line is also possible.
  • the area between the upper VB line and the lower VB line is a DF-finished area.
  • processing delay, memory band and line memory can be reduced by providing the VB line.
  • FIG. 18 is a diagram illustrating a reference region in the second comparative example.
  • FIG. 18 is a diagram showing a reference region according to on or off of the deblocking filter in the second comparative example.
  • FIG. 18 shows the reference area when the deblocking filter is on.
  • the upper VB line is set to a line K above the CTU line, and the area below the upper VB line is set as the reference area of the adaptive filter.
  • FIG. 18 shows the reference area when the deblocking filter is off.
  • the upper VB line is set to the CTU line
  • the area below the upper VB line is set as the reference area of the adaptive filter.
  • FIG. 19 is a block diagram showing the configuration of the loop filter 305a. As shown in FIG. 19, the loop filter 305a includes a deblocking filter 305_1, an adaptive filter 305a_2, and an internal memory 305_3.
  • the adaptive filter 305a_2 includes a target pixel setting unit 305_2a, a reference area setting unit 305_2b, and a filter processing unit 305a_2c.
  • the filter processing unit 305a_2c multiplies each of the target pixel in the input image P, the pixels around the target pixel, and the activity calculated by referring to at least a part of the peripheral pixels, by a weighting factor. The point is different from the above embodiment.
  • the pixel value of the target pixel is s (N / 2), and the pixel values of its peripheral pixels are (s (0) to s (N / 2-1), s (N / 2 + 1) to s (N)
  • the filtering process can be expressed by the following equation.
  • sflt ( ⁇ a (i) * (s (i) + s (Ni)) + a (N / 2) * s (N / 2) + o)
  • a (i) is a filter coefficient
  • o is an offset
  • shift is a coefficient for normalization.
  • prodFlt a0 * (s0 + s24) + a1 * (s1 + s23) +... + a11 * (s11 + s13) + a12 * s12
  • sflt can be expressed by the following equation.
  • sflt (prodFlt + o) >> shift
  • SAD Sud of Absolute Difference, difference absolute value sum
  • the pixel value of the target pixel (s12) and pixels around the target pixel Can be calculated by the sum of the absolute values of the difference between each of the pixel values of at least a part of (s7, s11, s13, s17, and also referred to as a set S of pixels).
  • act (s7, s11, s13, s17)
  • act () can be represented by the following formula.
  • intermediate value d is introduced.
  • the intermediate value d is derived from the sum of the pixel values of the pixels around the target pixel, the pixel value of the target pixel, the activity act (x) of the pixel set S, and the predetermined constant KACT, as shown by the following equation can do.
  • the division can be implemented by combining multiplication processing of the table value table [i] for the divisor i and the dividend, and shift processing. For example, when dividing the dividend xxx by the divisor yyy, it can be processed as the following equation.
  • sflt (prodFlt + b0 * d + o) >> shift That is, in the filter processing units 305a_2c, processing for right bit shifting the result obtained by multiplying the weighting factor to the intermediate value derived from the activity is added.
  • the adaptive filter 305a_2 can adopt a set S of various pixels.
  • An example of the pixel set S will be described with reference to FIGS.
  • the adaptive filter 305a_2 can adopt, as a set S of pixels, pixels adjacent to the upper, lower, left, and right of the target pixel s12, as shown in FIG.
  • the intermediate value dN1 can be expressed by the following equation.
  • the adaptive filter 305a_2 can use the intermediate value dN1 as one of the terms of the adaptive filter ALF, as shown by the following equation.
  • the adaptive filter 305a_2 can adopt, as the set S of pixels, pixels adjacent to the upper, lower, left, and right of the target pixel s12 and diagonally as shown in FIG.
  • the intermediate value dN2 can be expressed by the following equation.
  • dN2 ⁇ (s6 + s7 + s8 + s11 + s13 + s16 + s17 + s18)-8 * s12 ⁇ / (KACT + act (s6, s7, s8, s11, s11, s12, s13, s16, s17, s18))
  • the adaptive filter 305a_2 can use the intermediate value dN2 as one of the terms of the adaptive filter ALF, as shown by the following equation.
  • the adaptive filter 305a_2 can adopt, as the set S of pixels, pixels adjacent to each other with a gap of one pixel above, below, to the left, and to the right of the target pixel s12.
  • the intermediate value dN3 can be expressed by the following equation.
  • dN3 ⁇ (s0 + s1 + s2 + s3 + s4 + s5 + s9 + s10 + s14 + s15 + s19 + s20 + s21 + s22 + s23 + s24)-16 * s12 ⁇ / (KACT + act (s0, s1) , s2, s3, ..., s24))
  • the adaptive filter 305a_2 can use the intermediate value dN3 as one of the terms of the adaptive filter ALF, as shown by the following equation.
  • the adaptive filter 305a_2 can use a plurality of different intermediate values d as a term of the adaptive filter ALF as indicated by the following equation.
  • an intermediate value dN1 in the case of adopting the pixel set S shown in FIG. 20 and an intermediate value dN2 in the case of adopting the pixel group S shown in FIG. 21 are used.
  • the filter processing units 305a_2c process the sum of the terms obtained by multiplying the weighting factor to the intermediate value derived from the activity. Furthermore, the filter processing units 305a_2c performs a process of right bit shifting the result obtained by taking the sum.
  • the adaptive filter 305a_2 may include pixels aligned in the horizontal direction, the vertical direction, and the diagonal direction in the set S of pixels (that is, the pixels referred to for calculating the activity).
  • the adaptive filter 305a_2 can adopt, as the set S of pixels, pixels aligned in the horizontal direction with the target pixel s12 in the CTU, as shown in FIG.
  • the intermediate value dH can be expressed by the following equation.
  • the adaptive filter 305a_2 adopts, as the pixel set S, pixels aligned in the vertical direction with the target pixel s12 in the CTU, the intermediate value dV can be expressed by the following equation.
  • the adaptive filter 305a_2 can use the intermediate values dH and dV as the terms of the adaptive filter ALF, as shown by the following equation.
  • the adaptive filter 305a_2 can adopt, as a set S of pixels, pixels that are diagonally aligned with the target pixel s12 in the CTU.
  • the intermediate value dD1 can be expressed by the following equation.
  • the adaptive filter 305a_2 adopts, in the CTU, pixels aligned in the vertical direction symmetrical to the target pixel s12 in the direction shown in FIG. 24 as the pixel set S, the intermediate value dD2 can be expressed by the following equation.
  • the adaptive filter 305a_2 can use the intermediate values dD1 and dD2 as the terms of the adaptive filter ALF, as shown by the following equation.
  • dD23 ⁇ (s1 + s23)-2 * s12 ⁇ / (KACT + act (s1, s12, s23))
  • dD21 ⁇ (s3 + s21)-2 * s12 ⁇ / (KACT + act (s3, s12, s21))
  • dD19 ⁇ (s5 + s19)-2 * s12 ⁇ / (KACT + act (s5, s12, s19))
  • dD15 ⁇ (s9 + s15)-2 * s12 ⁇ / (KACT + act (s9, s15, s21))
  • the adaptive filter 305a_2 can use the intermediate values dD23, dD21, dD19, and dD15 as the terms of the adaptive filter ALF, as indicated by the following equation.
  • the adaptive filter 305a_2 has an intermediate value dH derived from the set S of pixels horizontally aligned with the target pixel s12, an intermediate value dV derived from the set S of pixels vertically aligned with the target pixel s12, and Intermediate values dD1 and dD2 derived from a set S of pixels of pixels aligned in a diagonal direction with the target pixel s12 can be used as a term of the adaptive filter ALF as shown by the following equation.
  • the adaptive filter ALF has a term obtained by multiplying each of the activities calculated by referring to at least a part of surrounding pixels by a weighting factor.
  • the filter strength of the adaptive filter ALF can be adjusted in pixel units. Also, the filter strength of the adaptive filter ALF can be changed according to the sequence or block.
  • FIG. 4 is a block diagram showing the configuration of the image coding apparatus 11 according to the present embodiment.
  • the image coding device 11 includes a predicted image generation unit 101, a subtraction unit 102, a DCT / quantization unit 103, an entropy coding unit 104, an inverse quantization / inverse DCT unit 105, an addition unit 106, a loop filter 107, a prediction parameter memory (Prediction parameter storage unit, frame memory) 108, reference picture memory (reference image storage unit, frame memory) 109, coding parameter determination unit 110, and prediction parameter coding unit 111 are configured.
  • the prediction parameter coding unit 111 includes an inter prediction parameter coding unit 112 and an intra prediction parameter coding unit 113.
  • the prediction image generation unit 101 generates, for each picture of the image T, the prediction image P of the prediction unit PU for each coding unit CU, which is an area obtained by dividing the picture.
  • the predicted image generation unit 101 reads a decoded block from the reference picture memory 109 based on the prediction parameter input from the prediction parameter coding unit 111.
  • the prediction parameter input from the prediction parameter coding unit 111 is, for example, a motion vector in the case of inter prediction.
  • the predicted image generation unit 101 reads a block at a position on the reference image indicated by the motion vector starting from the target PU.
  • the prediction parameter is, for example, an intra prediction mode.
  • the pixel value of the adjacent PU used in the intra prediction mode is read from the reference picture memory 109, and a PU predicted image P is generated.
  • the prediction image generation unit 101 generates a PU prediction image P using one of a plurality of prediction methods for the read reference picture block.
  • the prediction image generation unit 101 outputs the generated prediction image P of PU to the subtraction unit 102.
  • FIG. 6 is a schematic diagram showing a configuration of the inter predicted image generation unit 1011 included in the predicted image generation unit 101.
  • the inter prediction image generation unit 1011 includes a motion compensation unit 10111 and a weight prediction unit 10112.
  • the motion compensation unit 10111 and the weight prediction unit 10112 have the same configuration as that of the above-described motion compensation unit 3091 and weight prediction unit 3094, and therefore the description thereof is omitted here.
  • the prediction image generation unit 101 generates a PU prediction image P based on the pixel value of the reference block read from the reference picture memory, using the parameter input from the prediction parameter coding unit.
  • the predicted image generated by the predicted image generation unit 101 is output to the subtraction unit 102 and the addition unit 106.
  • the subtraction unit 102 subtracts the signal value of the predicted image P of the PU input from the predicted image generation unit 101 from the pixel value of the corresponding PU of the image T to generate a residual signal.
  • the subtraction unit 102 outputs the generated residual signal to the DCT / quantization unit 103.
  • the DCT / quantization unit 103 performs DCT on the residual signal input from the subtraction unit 102 to calculate DCT coefficients.
  • the DCT / quantization unit 103 quantizes the calculated DCT coefficient to obtain a quantization coefficient.
  • the DCT / quantization unit 103 outputs the obtained quantization coefficient to the entropy coding unit 104 and the inverse quantization / inverse DCT unit 105.
  • the entropy coding unit 104 receives the quantization coefficient from the DCT / quantization unit 103, and receives the coding parameter from the prediction parameter coding unit 111.
  • the coding parameters to be input include, for example, codes such as a reference picture index refIdxLX, a prediction vector index mvp_LX_idx, a difference vector mvdLX, a prediction mode predMode, and a merge index merge_idx.
  • the entropy coding unit 104 entropy-codes the input quantization coefficient and coding parameters to generate a coded stream Te, and outputs the generated coded stream Te to the outside.
  • the inverse quantization / inverse DCT unit 105 inversely quantizes the quantization coefficient input from the DCT / quantization unit 103 to obtain a DCT coefficient.
  • the inverse quantization / inverse DCT unit 105 performs inverse DCT on the obtained DCT coefficients to calculate a residual signal.
  • the inverse quantization / inverse DCT unit 105 outputs the calculated residual signal to the addition unit 106.
  • the addition unit 106 adds, for each pixel, the signal value of the predicted image P of the PU input from the prediction image generation unit 101 and the signal value of the residual signal input from the inverse quantization / inverse DCT unit 105 for decoding. Generate an image.
  • the addition unit 106 stores the generated decoded image in the reference picture memory 109.
  • the loop filter 107 applies a deblocking filter, a sample adaptive offset (SAO), and an adaptive filter (ALF) to the decoded image generated by the adding unit 106.
  • a deblocking filter a sample adaptive offset (SAO)
  • ALF adaptive filter
  • the prediction parameter memory 108 stores the prediction parameter generated by the coding parameter determination unit 110 in a predetermined position for each picture and CU to be coded.
  • the reference picture memory 109 stores the decoded image generated by the loop filter 107 in a predetermined position for each picture and CU to be encoded.
  • the coding parameter determination unit 110 selects one of a plurality of sets of coding parameters.
  • the coding parameter is a prediction parameter described above or a parameter to be coded that is generated in association with the prediction parameter.
  • the prediction image generation unit 101 generates a PU prediction image P using each of these sets of coding parameters.
  • the coding parameter determination unit 110 calculates, for each of the plurality of sets, a cost value indicating the size of the information amount and the coding error.
  • the cost value is, for example, the sum of the code amount and a value obtained by multiplying the square error by the coefficient ⁇ .
  • the code amount is the information amount of the coded stream Te obtained by entropy coding the quantization error and the coding parameter.
  • the squared error is a sum between pixels with respect to the square value of the residual value of the residual signal calculated by the subtraction unit 102.
  • the factor ⁇ is a real number greater than a preset zero.
  • the coding parameter determination unit 110 selects a set of coding parameters that minimize the calculated cost value.
  • the entropy coding unit 104 externally outputs the set of selected coding parameters as the coded stream Te, and does not output the set of non-selected coding parameters.
  • the coding parameter determination unit 110 stores the determined coding parameters in the prediction parameter memory 108.
  • the prediction parameter coding unit 111 derives a format for coding from the parameters input from the coding parameter determination unit 110, and outputs the format to the entropy coding unit 104. Derivation of a form for encoding is, for example, derivation of a difference vector from a motion vector and a prediction vector. Further, the prediction parameter coding unit 111 derives parameters necessary to generate a prediction image from the parameters input from the coding parameter determination unit 110, and outputs the parameters to the prediction image generation unit 101.
  • the parameters required to generate a predicted image are, for example, motion vectors in units of subblocks.
  • the inter prediction parameter coding unit 112 derives inter prediction parameters such as a difference vector based on the prediction parameters input from the coding parameter determination unit 110.
  • the inter prediction parameter coding unit 112 derives the inter prediction parameter by the inter prediction parameter decoding unit 303 (refer to FIG. 5 and the like) as a configuration for deriving the parameters necessary for generating the prediction image to be output to the prediction image generation unit 101. Partially include the same configuration as the configuration. The configuration of the inter prediction parameter coding unit 112 will be described later.
  • the intra prediction parameter coding unit 113 derives a format (for example, MPM_idx, rem_intra_luma_pred_mode, etc.) for coding from the intra prediction mode IntraPredMode input from the coding parameter determination unit 110.
  • a format for example, MPM_idx, rem_intra_luma_pred_mode, etc.
  • loop filter 107 has the same function as the loop filter 305 included in the image decoding device 31 described above. More specifically, an adaptive filter using a reference restriction line may be used. Also, the term of the adaptive loop filter may be changed on a pixel basis based on the activity.
  • the adaptive filter 305 _ 2 may classify small classes (eg, 2 ⁇ 2 or 4 ⁇ 4) into classes having the same property, and apply different filter coefficients to the classified classes.
  • small classes eg, 2 ⁇ 2 or 4 ⁇ 4
  • an identifier classid indicating a class may be derived from the directionality DIR of the small block and the activity ACT according to the following equation.
  • FIG. 25 is a diagram visualizing the values of the filter coefficients derived by the adaptive filter 305_2 in units of classes. Although FIG. 25 is plotted as a binary image, gradation is not represented, but it is actually a smooth figure. Two-dimensional values of filter coefficients (hereinafter, filter coefficient shapes) can be expressed for 25 classes corresponding to each DIR and ACT. In addition, it is possible to evaluate how much the filter coefficient shape differs depending on the class. As a result of the inventor's evaluation, it has been confirmed that the shape of the filter coefficient is greatly different for each sequence, each class, each frame, and each quantization step.
  • filter coefficient shapes Two-dimensional values of filter coefficients
  • FIG. 26 is a diagram showing the residual amount (residual reduction amount gain) which has changed before and after application of the filter coefficient derived by the adaptive filter 305_2 in units of classes.
  • fltin, fltout, and org are the pixel value before the filter, the pixel value after the filter, and the pixel value of the original image, respectively
  • (x, y) are the positions of the pixels belonging to the class classid.
  • the difference gain is large, the residual largely decreases before and after the adaptive filter.
  • (B) of FIG. 26 shows the appearance frequency of the class classified by the adaptive filter 305_2. It is a value obtained by dividing the number classified into each class by the total number of blocks when classifying into small blocks. It can be obtained by counting the classid at each position (x, y) as follows.
  • the adaptive filter 305 _ 2 is a filter coefficient based on the evaluation of the filter coefficient on a class basis, the residual reduction amount on a class basis, and the occurrence frequency on a class basis shown in FIG. 25 and FIGS. You may design.
  • the adaptive filter 305 _ 2 may turn off the adaptive filtering of the class “classid” when the residual reduction amount in units of classes is less than a predetermined threshold.
  • Whether to turn off the adaptive filter processing may encode syntax alf_class_flag [classidx] indicating whether the adaptive filter is turned on or off in the class classid.
  • the syntax alf_class_flag [classid] indicating whether the adaptive filter is turned on or off may be further encoded in an image area or in units of blocks (for example, in units of CUs). For example, alf_cu_flag [x] [y] indicates on / off.
  • alf_class_flag [classid] If alf_class_flag [classid] is 1, the loop filter 305 performs adaptive filter processing on the pixel of the class indicated by the classid of the target pixel using the filter coefficient indicated by the classid. Otherwise, adaptive filter processing is not performed.
  • the image decoding device 31 further decodes alf_cu_flag [x] [y] from the slice header, and the loop filter 305 determines that alf_cu_flag [x] [y] of the position (x, y) of the target pixel is 1. And if alf_class_flag [classid] is 1 for the classid of the position (x, y) of the target pixel, adaptive filter processing is performed on the target pixel using the filter coefficient indicated by the classid. Otherwise, adaptive filter processing is not performed.
  • the image encoding device 11 and a part of the image decoding device 31 in the embodiment described above for example, the entropy decoding unit 301, the prediction parameter decoding unit 302, the loop filter 305, the prediction image generation unit 308, the inverse quantization / inverse DCT Unit 311, addition unit 312, predicted image generation unit 101, subtraction unit 102, DCT / quantization unit 103, entropy coding unit 104, inverse quantization / inverse DCT unit 105, loop filter 107, coding parameter determination unit 110,
  • the prediction parameter coding unit 111 may be realized by a computer.
  • a program for realizing the control function may be recorded in a computer readable recording medium, and the computer system may read and execute the program recorded in the recording medium.
  • the “computer system” is a computer system built in any of the image encoding device 11 and the image decoding device 31, and includes an OS and hardware such as peripheral devices.
  • the “computer-readable recording medium” means a portable medium such as a flexible disk, a magneto-optical disk, a ROM, a CD-ROM, or a storage device such as a hard disk built in a computer system.
  • the “computer-readable recording medium” is one that holds a program dynamically for a short time, like a communication line in the case of transmitting a program via a network such as the Internet or a communication line such as a telephone line.
  • a volatile memory in a computer system serving as a server or a client may be included, which holds a program for a predetermined time.
  • the program may be for realizing a part of the functions described above, or may be realized in combination with the program already recorded in the computer system.
  • part or all of the image encoding device 11 and the image decoding device 31 in the above-described embodiment may be realized as an integrated circuit such as a large scale integration (LSI).
  • LSI large scale integration
  • Each functional block of the image encoding device 11 and the image decoding device 31 may be individually processorized, or part or all may be integrated and processorized.
  • the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry or general purpose processors is also possible. In the case where an integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology, integrated circuits based on such technology may also be used.
  • the image encoding device 11 and the image decoding device 31 described above can be mounted and used in various devices that transmit, receive, record, and reproduce moving images.
  • the moving image may be a natural moving image captured by a camera or the like, or an artificial moving image (including CG and GUI) generated by a computer or the like.
  • FIG. 27 is a block diagram showing a configuration of a transmission device PROD_A on which the image coding device 11 is mounted.
  • the transmission device PROD_A modulates a carrier wave with the coding unit PROD_A1 for obtaining coded data by coding a moving image, and the coding data obtained by the coding unit PROD_A1.
  • the image coding apparatus 11 described above is used as the coding unit PROD_A1.
  • the transmission device PROD_A is a camera PROD_A4 for capturing a moving image, a recording medium PROD_A5 for recording the moving image, an input terminal PROD_A6 for externally inputting the moving image, and a transmission source of the moving image input to the encoding unit PROD_A1. , And may further include an image processing unit A7 that generates or processes an image. In (a) of FIG. 27, although the configuration in which the transmission device PROD_A includes all of these is illustrated, a part of the configuration may be omitted.
  • the recording medium PROD_A5 may be a recording of a non-coded moving image, or a moving image encoded by a recording encoding method different from the transmission encoding method. It may be one. In the latter case, it is preferable to interpose, between the recording medium PROD_A5 and the encoding unit PROD_A1, a decoding unit (not shown) that decodes the encoded data read from the recording medium PROD_A5 according to the encoding scheme for recording.
  • FIG. 27 is a block diagram showing a configuration of a reception device PROD_B on which the image decoding device 31 is mounted.
  • the receiver PROD_B demodulates the modulated signal received by the receiver PROD_B1, which receives the modulated signal, and the demodulator PROD_B2, which obtains encoded data by demodulating the modulated signal received by the receiver PROD_B1, and And a decoding unit PROD_B3 for obtaining a moving image by decoding encoded data obtained by the unit PROD_B2.
  • the image decoding device 31 described above is used as the decoding unit PROD_B3.
  • the receiving device PROD_B is a display PROD_B4 for displaying a moving image, a recording medium PROD_B5 for recording the moving image, and an output terminal for outputting the moving image to the outside as a supply destination of the moving image output by the decoding unit PROD_B3. It may further comprise PROD_B6. Although (b) of FIG. 27 illustrates the configuration in which the reception device PROD_B includes all of these, a part may be omitted.
  • the recording medium PROD_B5 may be for recording a moving image which has not been encoded, or is encoded by a recording encoding method different from the transmission encoding method. May be In the latter case, an encoding unit (not shown) may be interposed between the decoding unit PROD_B3 and the recording medium PROD_B5 to encode the moving image acquired from the decoding unit PROD_B3 according to the encoding method for recording.
  • the transmission medium for transmitting the modulation signal may be wireless or wired.
  • the transmission mode for transmitting the modulation signal may be broadcast (here, a transmission mode in which the transmission destination is not specified in advance), or communication (in this case, transmission in which the transmission destination is specified in advance) (Refer to an aspect). That is, transmission of the modulation signal may be realized by any of wireless broadcast, wired broadcast, wireless communication, and wired communication.
  • a broadcasting station (broadcasting facility etc.) / Receiving station (television receiver etc.) of terrestrial digital broadcasting is an example of a transmitting device PROD_A / receiving device PROD_B which transmits and receives a modulated signal by wireless broadcasting.
  • a cable television broadcast station (broadcasting facility or the like) / receiving station (television receiver or the like) is an example of a transmitting device PROD_A / receiving device PROD_B which transmits and receives a modulated signal by cable broadcasting.
  • a server such as a workstation
  • client such as a VOD (Video On Demand) service or a video sharing service using the Internet
  • PROD_A / receiving device PROD_B
  • the personal computer includes a desktop PC, a laptop PC, and a tablet PC.
  • the smartphone also includes a multifunctional mobile phone terminal.
  • the client of the moving image sharing service has a function of encoding a moving image captured by a camera and uploading it to the server. That is, the client of the moving image sharing service functions as both the transmitting device PROD_A and the receiving device PROD_B.
  • FIG. 28 is a block diagram showing a configuration of a recording device PROD_C on which the image coding device 11 described above is mounted.
  • the recording device PROD_C uses the encoding unit PROD_C1, which obtains encoded data by encoding a moving image, and the encoded data obtained by the encoding unit PROD_C1, to the recording medium PROD_M.
  • a writing unit PROD_C2 for writing.
  • the image coding device 11 described above is used as the coding unit PROD_C1.
  • the recording medium PROD_M may be (1) a type incorporated in the recording device PROD_C, such as a hard disk drive (HDD) or a solid state drive (SSD), or (2) an SD memory. It may be of a type connected to the recording device PROD_C, such as a card or a Universal Serial Bus (USB) flash memory, or (3) a DVD (Digital Versatile Disc) or a BD (Blu-ray Disc: Registration It may be loaded into a drive device (not shown) built in the recording device PROD_C, such as a trademark).
  • a type incorporated in the recording device PROD_C such as a hard disk drive (HDD) or a solid state drive (SSD), or (2) an SD memory. It may be of a type connected to the recording device PROD_C, such as a card or a Universal Serial Bus (USB) flash memory, or (3) a DVD (Digital Versatile Disc) or a BD (Blu-ray Disc: Registration It may be loaded into
  • the recording device PROD_C is a camera PROD_C3 for capturing a moving image as a supply source of the moving image input to the encoding unit PROD_C1, an input terminal PROD_C4 for inputting the moving image from the outside, and a reception for receiving the moving image
  • the image processing unit PROD_C5 may further include an image processing unit PROD_C6 that generates or processes an image.
  • FIG. 28 exemplifies a configuration in which the recording apparatus PROD_C includes all of these, a part may be omitted.
  • the receiving unit PROD_C5 may receive an uncoded moving image, and receives encoded data encoded by a transmission encoding scheme different from the recording encoding scheme. It may be In the latter case, it is preferable to interpose a transmission decoding unit (not shown) that decodes encoded data encoded by the transmission encoding scheme between the reception unit PROD_C5 and the encoding unit PROD_C1.
  • Examples of such a recording device PROD_C include a DVD recorder, a BD recorder, an HDD (Hard Disk Drive) recorder, etc.
  • the input terminal PROD_C4 or the receiving unit PROD_C5 is a main supply source of moving images).
  • a camcorder in this case, the camera PROD_C3 is the main supply source of moving images
  • a personal computer in this case, the receiving unit PROD_C5 or the image processing unit C6 is the main supply source of moving images
  • a smartphone this In this case, the camera PROD_C3 or the receiving unit PROD_C5 is a main supply source of moving images
  • the like are also examples of such a recording device PROD_C.
  • FIG. 28 is a block showing the configuration of the playback device PROD_D on which the image decoding device 31 described above is mounted.
  • the playback device PROD_D decodes the moving image by decoding the encoded data read by the reading unit PROD_D1 that reads the encoded data written to the recording medium PROD_M and the reading unit PROD_D1. And a decryption unit PROD_D2 to be obtained.
  • the image decoding device 31 described above is used as the decoding unit PROD_D2.
  • the recording medium PROD_M may be (1) a type incorporated in the playback device PROD_D such as an HDD or an SSD, or (2) such as an SD memory card or a USB flash memory. It may be of a type connected to the playback device PROD_D, or (3) it may be loaded into a drive device (not shown) built in the playback device PROD_D, such as DVD or BD. Good.
  • the playback device PROD_D is a display PROD_D3 that displays a moving image as a supply destination of the moving image output by the decoding unit PROD_D2, an output terminal PROD_D4 that outputs the moving image to the outside, and a transmission unit that transmits the moving image. It may further comprise PROD_D5. Although (b) of FIG. 28 exemplifies a configuration in which the playback device PROD_D includes all of these, a part may be omitted.
  • the transmission unit PROD_D5 may transmit a non-encoded moving image, or transmit encoded data encoded by a transmission encoding method different from the recording encoding method. It may be In the latter case, an encoding unit (not shown) may be interposed between the decoding unit PROD_D2 and the transmission unit PROD_D5 for encoding moving pictures according to a transmission encoding scheme.
  • a playback device PROD_D for example, a DVD player, a BD player, an HDD player, etc. may be mentioned (in this case, the output terminal PROD_D4 to which a television receiver etc. is connected is the main supply destination of moving images) .
  • the display PROD_D3 is the main supply destination of moving images
  • digital signage also referred to as an electronic signboard or electronic bulletin board, etc.
  • the display PROD_D3 or the transmission unit PROD_D5 is the main supply of moving images.
  • desktop type PC in this case, output terminal PROD_D4 or transmission unit PROD_D5 is the main supply destination of moving images
  • laptop type or tablet type PC in this case, display PROD_D3 or transmission unit PROD_D5 is moving image
  • the main supply destination of the image the smartphone (in this case, the display PROD_D3 or the transmission unit PROD_D5 is the main supply destination of the moving image), and the like are also examples of such a reproduction device PROD_D.
  • each block of the image decoding device 31 and the image encoding device 11 described above may be realized as hardware by a logic circuit formed on an integrated circuit (IC chip), or a CPU (Central Processing Unit) It may be realized as software using
  • each of the devices described above includes a CPU that executes instructions of a program that implements each function, a ROM (Read Only Memory) that stores the program, a RAM (Random Access Memory) that expands the program, the program, and various other methods.
  • a storage device such as a memory for storing data is provided.
  • the object of the embodiment of the present invention is to record computer program readable program codes (execution format program, intermediate code program, source program) of control programs of the above-mentioned respective devices which are software for realizing the functions described above.
  • the present invention can also be achieved by supplying a medium to each of the above-described devices, and a computer (or a CPU or an MPU) reading and executing a program code recorded on a recording medium.
  • Examples of the recording medium include tapes such as magnetic tapes and cassette tapes, magnetic disks such as floppy (registered trademark) disks / hard disks, CDs (Compact Disc Read-Only Memory) / MO disks (Magneto-Optical disc).
  • tapes such as magnetic tapes and cassette tapes
  • magnetic disks such as floppy (registered trademark) disks / hard disks
  • CDs Compact Disc Read-Only Memory
  • MO disks Magnetic-Optical disc
  • Disks including optical disks such as MD (Mini Disc) / DVD (Digital Versatile Disc) / CD-R (CD Recordable) / Blu-ray Disc (registered trademark), IC cards (including memory cards) Cards such as optical cards, mask ROMs / erasable programmable read-only memories (EPROMs) / electrically erasable and programmable read-only memories (EEPROMs) / semiconductor memories such as flash ROMs, or programmable logic devices (PLDs) And logic circuits such as FPGA (Field Programmable Gate Array) can be used.
  • MD Mini Disc
  • DVD Digital Versatile Disc
  • CD-R Compact Disc
  • Blu-ray Disc registered trademark
  • IC cards including memory cards
  • Cards such as optical cards
  • EPROMs erasable programmable read-only memories
  • EEPROMs electrically erasable and programmable read-only memories
  • semiconductor memories such as flash ROMs, or programmable logic devices (PLD
  • each device may be configured to be connectable to a communication network, and the program code may be supplied via the communication network.
  • This communication network is not particularly limited as long as the program code can be transmitted.
  • the Internet intranet, extranet, LAN (Local Area Network), ISDN (Integrated Services Digital Network), VAN (Value-Added Network), CATV (Community Antenna television / Cable Television) communication network, virtual private network (Virtual Private) Network), telephone network, mobile communication network, satellite communication network, etc.
  • the transmission medium that constitutes this communication network may be any medium that can transmit the program code, and is not limited to a specific configuration or type.
  • the embodiment of the present invention may also be realized in the form of a computer data signal embedded in a carrier wave, in which the program code is embodied by electronic transmission.
  • Embodiments of the present invention are not limited to the above-described embodiments, and various modifications are possible within the scope of the claims. That is, an embodiment obtained by combining technical means appropriately modified within the scope of the claims is also included in the technical scope of the present invention.
  • An image filter device (loop filter 107, 305) according to aspect 1 of the present invention is an image filter device that generates an output image by acting on an input image composed of a plurality of basic unit areas, and the basic unit
  • a boundary filter unit (deblocking filter 305_1) acting on a block boundary including a boundary of a region and an adaptive filter unit (adaptive filter 305_2) are provided, and the boundary filter unit turns on / off the boundary filter of slice boundaries or tile boundaries.
  • the adaptive filter unit sets virtual boundaries different in position depending on whether the filtering process by the boundary filter unit is on or off at a slice boundary or a tile boundary, and the virtual boundary
  • the filter processing is performed with reference to the pixel value located inside.
  • the adaptive filter unit sets virtual boundaries different in position depending on whether the filtering process by the boundary filter unit is on or off at the slice boundary or tile boundary, so that the virtual boundary
  • the pixel values located inside can be referred to, and filtering can be performed efficiently.
  • the boundary filter unit refers to the pixel value of the pixel outside the virtual boundary
  • the pixel value is The pixel value of the pixel within the virtual boundary and adjacent to the virtual boundary may be replaced.
  • the boundary filter unit refers to the pixel value of the pixel outside the virtual boundary
  • the pixel value is It may be replaced with the pixel value of the central pixel of the filter reference area that is the pixel within the virtual boundary.
  • the average pixel value in the filter reference area can be replaced.
  • An image filter device (loop filter 305a) according to aspect 4 of the present invention includes a filter unit (filter processing units 305a_2c) that generates an output image by acting on an input image, and the filter processing by the filter unit A process of multiplying each of the target pixel in the input image, the pixels around the target pixel, and the activity calculated by referring to at least a part of the peripheral pixels may be included by multiplying the weighting factor .
  • a filter according to the image characteristic can be applied to the input image data.
  • pixels to which reference is made to calculate the activity include pixels lined in the horizontal direction, vertical direction, and diagonal direction. May be included.
  • An embodiment of the present invention is suitably applied to an image decoding apparatus that decodes encoded data obtained by encoding image data, and an image encoding apparatus that generates encoded data obtained by encoding image data. it can. Further, the present invention can be suitably applied to the data structure of encoded data generated by the image encoding device and referenced by the image decoding device.
  • Image Coding Device 31 Image Decoding Device 107, 305, 305a Loop Filter (Image Filter Device) 305_1 Deblocking filter (boundary filter part) 305_2 Adaptive filter (Adaptive filter section) 305a_2c Filter processing unit (filter unit)

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

L'invention concerne un filtre appliqué à des données d'image d'entrée, le filtre correspondant à des caractéristiques d'image. Un filtre à boucle (305) qui génère une image de sortie en agissant sur une image d'entrée configurée à partir d'une pluralité de régions d'unité de base, comprend : un filtre de dégroupage (305 _1) qui agit sur des limites de blocs comprenant les limites de régions d'unité de base; et un filtre adaptatif (305_2). Un filtre de limite de limites de tranches ou de limites de tuile peut être activé et désactivé dans le filtre de dégroupage (305_1). Le filtre adaptatif (305_2) définit une limite virtuelle à différentes positions selon qu'un filtrage par le filtre de dégroupage (305 _1) est activé ou désactivé dans les limites de tranche ou les limites de tuile, et exécute un traitement de filtrage en référence aux valeurs de pixel situées à l'intérieur de ladite limite virtuelle.
PCT/JP2018/046859 2017-12-26 2018-12-19 Dispositif de filtrage d'image, dispositif de décodage d'image et dispositif de codage d'image WO2019131400A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-250223 2017-12-26
JP2017250223 2017-12-26

Publications (1)

Publication Number Publication Date
WO2019131400A1 true WO2019131400A1 (fr) 2019-07-04

Family

ID=67063074

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/046859 WO2019131400A1 (fr) 2017-12-26 2018-12-19 Dispositif de filtrage d'image, dispositif de décodage d'image et dispositif de codage d'image

Country Status (1)

Country Link
WO (1) WO2019131400A1 (fr)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021008539A1 (fr) * 2019-07-15 2021-01-21 Beijing Bytedance Network Technology Co., Ltd. Classification dans un filtrage de boucle adaptatif
WO2021133236A1 (fr) * 2019-12-24 2021-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Traitement de limite virtuelle destiné à un filtrage adaptatif en boucle
WO2021157536A1 (fr) * 2020-02-06 2021-08-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Dispositif de codage, dispositif de décodage, procédé de codage et procédé de décodage
CN114946191A (zh) * 2019-11-18 2022-08-26 Lg电子株式会社 基于用于滤波的信息的信令的图像编码设备和方法
US11490082B2 (en) 2019-06-14 2022-11-01 Beijing Bytedance Network Technology Co., Ltd. Handling video unit boundaries and virtual boundaries based on color format
US11553179B2 (en) 2019-07-09 2023-01-10 Beijing Bytedance Network Technology Co., Ltd. Sample determination for adaptive loop filtering
US11589042B2 (en) 2019-07-11 2023-02-21 Beijing Bytedance Network Technology Co., Ltd. Sample padding in adaptive loop filtering
US11652998B2 (en) 2019-09-22 2023-05-16 Beijing Bytedance Network Technology Co., Ltd. Padding process in adaptive loop filtering
US11683488B2 (en) 2019-09-27 2023-06-20 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering between different video units
US11706462B2 (en) 2019-10-10 2023-07-18 Beijing Bytedance Network Technology Co., Ltd Padding process at unavailable sample locations in adaptive loop filtering
US12003712B2 (en) 2019-06-14 2024-06-04 Beijing Bytedance Network Technology Co., Ltd Handling video unit boundaries and virtual boundaries

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013118605A (ja) * 2011-06-28 2013-06-13 Sony Corp 画像処理装置と画像処理方法
JP2014517555A (ja) * 2011-05-10 2014-07-17 メディアテック インコーポレイテッド インループフィルターバッファーの削減方法及び装置
JP2014533008A (ja) * 2011-10-21 2014-12-08 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオコーディングにおけるスライス境界またはタイル境界の周辺のループフィルタ処理
US20150156490A1 (en) * 2012-04-11 2015-06-04 Texas Instruments Incorporated Virtual boundary processing simplification for adaptive loop filtering (alf) in video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014517555A (ja) * 2011-05-10 2014-07-17 メディアテック インコーポレイテッド インループフィルターバッファーの削減方法及び装置
JP2013118605A (ja) * 2011-06-28 2013-06-13 Sony Corp 画像処理装置と画像処理方法
JP2014533008A (ja) * 2011-10-21 2014-12-08 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオコーディングにおけるスライス境界またはタイル境界の周辺のループフィルタ処理
US20150156490A1 (en) * 2012-04-11 2015-06-04 Texas Instruments Incorporated Virtual boundary processing simplification for adaptive loop filtering (alf) in video coding

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHING-YEH CHEN ET AL.: "Adaptive Loop Filter with Zero Pixel Line Buffers for LCU-based Decoding,", JOINT COLLABORATIVE TEAM ON VIDEO CODING(JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11 6TH MEETING:TORINO, IT , 14- 22 JULY, 2011, no. JCTVC-F054, 1 July 2011 (2011-07-01) - 22 July 2011 (2011-07-22), Meeting:Torino, IT, pages 1 - 11, XP030009077 *
CHING-YEH CHEN ET AL.: "Non-CE8:c. 7:Single-source SAO and ALF virtual boundary processing with cross9X9", JOINT COLLABORATIVE TEAM ON VIDEO CODING(JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11 7TH MEETING : GENEVA , CH ,21- 30 NOVEMBER,2011, 13 November 2011 (2011-11-13) - 30 November 2011 (2011-11-30), pages 1 - 25, XP030110196 *
OHJI NAKAGAMI ET AL.: "Non-CE8:Report on visual artifacts by ALF virtual boundary processing and proposal on the filtering process modification, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP3 and ISO/IEC JTC1/SC29/WG11 8th", 99. MPEG MEETING; 6-2-2012 - 10-2-2012; SAN JOSÉ; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), 1 February 2012 (2012-02-01) - 4 February 2012 (2012-02-04), San Jose, CA , USA, pages 1 - 13, XP030051533 *
SEMIH ESENLIK ET AL.: "Non-CE8:Line memory reduction fix at independent slice and tile boundaries", ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11 8TH MEETING:SAN JOSE , CA , USA , 1- 10 FEBRUARY, 2012, no. JCTVC-H0372, 1 February 2012 (2012-02-01) - 10 February 2012 (2012-02-10), CA , USA, XP030111399 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11490082B2 (en) 2019-06-14 2022-11-01 Beijing Bytedance Network Technology Co., Ltd. Handling video unit boundaries and virtual boundaries based on color format
US12003712B2 (en) 2019-06-14 2024-06-04 Beijing Bytedance Network Technology Co., Ltd Handling video unit boundaries and virtual boundaries
US11831869B2 (en) 2019-07-09 2023-11-28 Beijing Bytedance Network Technology Co., Ltd. Sample determination for adaptive loop filtering
US11553179B2 (en) 2019-07-09 2023-01-10 Beijing Bytedance Network Technology Co., Ltd. Sample determination for adaptive loop filtering
US11589042B2 (en) 2019-07-11 2023-02-21 Beijing Bytedance Network Technology Co., Ltd. Sample padding in adaptive loop filtering
CN114175637A (zh) * 2019-07-15 2022-03-11 北京字节跳动网络技术有限公司 自适应环路滤波中的分类
WO2021008539A1 (fr) * 2019-07-15 2021-01-21 Beijing Bytedance Network Technology Co., Ltd. Classification dans un filtrage de boucle adaptatif
CN114175637B (zh) * 2019-07-15 2024-04-12 北京字节跳动网络技术有限公司 自适应环路滤波中的分类
US11700368B2 (en) 2019-07-15 2023-07-11 Beijing Bytedance Network Technology Co., Ltd. Classification in adaptive loop filtering
US11652998B2 (en) 2019-09-22 2023-05-16 Beijing Bytedance Network Technology Co., Ltd. Padding process in adaptive loop filtering
US11671594B2 (en) 2019-09-22 2023-06-06 Beijing Bytedance Network Technology Co., Ltd. Selective application of sample padding in adaptive loop filtering
US11683488B2 (en) 2019-09-27 2023-06-20 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering between different video units
US11706462B2 (en) 2019-10-10 2023-07-18 Beijing Bytedance Network Technology Co., Ltd Padding process at unavailable sample locations in adaptive loop filtering
CN114946191A (zh) * 2019-11-18 2022-08-26 Lg电子株式会社 基于用于滤波的信息的信令的图像编码设备和方法
US11317095B2 (en) 2019-12-24 2022-04-26 Telefonaktiebolaget Lm Ericsson (Publ) Virtual boundary processing for adaptive loop filtering
US11689725B2 (en) 2019-12-24 2023-06-27 Telefonaktieblaget Lm Ericsson (Publ) Virtual boundary processing for adaptive loop filtering
WO2021133236A1 (fr) * 2019-12-24 2021-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Traitement de limite virtuelle destiné à un filtrage adaptatif en boucle
WO2021157536A1 (fr) * 2020-02-06 2021-08-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Dispositif de codage, dispositif de décodage, procédé de codage et procédé de décodage

Similar Documents

Publication Publication Date Title
US11503319B2 (en) Image coding apparatus and image decoding apparatus
JP7223886B2 (ja) 画像復号方法
WO2019131400A1 (fr) Dispositif de filtrage d'image, dispositif de décodage d'image et dispositif de codage d'image
JP7260472B2 (ja) 画像フィルタ装置
US11234011B2 (en) Image decoding apparatus and image coding apparatus
JP7199221B2 (ja) 符号化装置、復号装置、符号化方法及び復号方法
JP2024054401A (ja) 画像符号化装置、画像復号装置、およびビットストリーム生成装置
WO2019054300A1 (fr) Dispositif de codage d'image et dispositif de décodage d'image
WO2020184487A1 (fr) Dispositif de décodage d'image dynamique
KR20190031250A (ko) 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
JP7139144B2 (ja) 画像フィルタ装置
KR20190137806A (ko) 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
WO2020137920A1 (fr) Dispositif de génération d'images de prédiction, dispositif de décodage d'images animées, dispositif de codage d'images animées et procédé de génération d'images de prédiction
WO2018105582A1 (fr) Dispositif de codage, dispositif de décodage, procédé de codage et procédé de décodage
TWI812376B (zh) 編碼裝置及解碼裝置
JP7161636B2 (ja) 符号化装置及び符号化方法
KR20200020721A (ko) 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
JP7149995B2 (ja) 復号装置及び復号方法
JP2020120141A (ja) 動画像符号化装置及び動画像復号装置、フィルタ装置
JP2022140583A (ja) 復号方法及び符号化方法
KR20220106771A (ko) 부호화 장치, 복호 장치, 부호화 방법, 및 복호 방법
JP2023029589A (ja) 符号化装置及び復号装置
WO2018105580A1 (fr) Dispositf de codage, dispositif de décodage, procédé de codage et procédé de décodage
KR20200015518A (ko) 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법
TW202041026A (zh) 編碼裝置、解碼裝置、編碼方法及解碼方法

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18894672

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP