WO2017068856A1 - 予測画像生成装置、画像復号装置および画像符号化装置 - Google Patents

予測画像生成装置、画像復号装置および画像符号化装置 Download PDF

Info

Publication number
WO2017068856A1
WO2017068856A1 PCT/JP2016/074695 JP2016074695W WO2017068856A1 WO 2017068856 A1 WO2017068856 A1 WO 2017068856A1 JP 2016074695 W JP2016074695 W JP 2016074695W WO 2017068856 A1 WO2017068856 A1 WO 2017068856A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction
distance
pixel value
predicted
image
Prior art date
Application number
PCT/JP2016/074695
Other languages
English (en)
French (fr)
Inventor
知宏 猪飼
健史 筑波
山本 智幸
Original Assignee
シャープ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by シャープ株式会社 filed Critical シャープ株式会社
Priority to US15/763,129 priority Critical patent/US20180288408A1/en
Priority to JP2017546442A priority patent/JPWO2017068856A1/ja
Priority to EP16857174.3A priority patent/EP3367688A4/en
Priority to CN201680061041.9A priority patent/CN108141609A/zh
Publication of WO2017068856A1 publication Critical patent/WO2017068856A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Definitions

  • the present invention relates to a prediction image generation apparatus that generates a predicted image of a partial region of an image using an image of a peripheral region mainly for image encoding and image restoration, and an image for decoding encoded data using the predicted image
  • the present invention relates to a decoding device and an image encoding device that generates encoded data by encoding an image using a predicted image.
  • a moving image encoding device that generates encoded data by encoding the moving image, and a moving image that generates a decoded image by decoding the encoded data
  • An image decoding device is used.
  • Non-patent Document 1 High-Efficiency Video Coding
  • a prediction image is generated based on a locally decoded image obtained by encoding and decoding an input image, and a prediction residual (“difference image”) obtained by subtracting the prediction image from the input image (original image).
  • the input image can be expressed by encoded data with a smaller code amount than when the input image is directly encoded.
  • inter prediction inter-screen prediction
  • intra prediction intra-screen prediction
  • an area close to the target area is set as a reference area, and a predicted image is generated based on the value of a decoded pixel (reference pixel) on the reference area.
  • the reference pixel may be directly used as an unfiltered reference pixel, or may be used as a filtered reference pixel using a value obtained by applying a low-pass filter between adjacent reference pixels.
  • Non-Patent Document 2 a method of correcting a predicted pixel value obtained by intra prediction using filtered reference pixels based on an unfiltered reference pixel value on a reference region.
  • the predicted pixel value is corrected based on the distance weight obtained by shifting the predetermined reference pixel intensity coefficient to the right based on the position of the correction target pixel in the prediction target region (prediction block). This correction can improve the accuracy of the predicted image in the vicinity of the prediction block boundary, so that the code amount of the encoded data can be reduced.
  • FIG. 14 is a diagram illustrating a positional relationship between a prediction pixel on a prediction block in intra prediction and a reference pixel on a reference area set for the prediction block.
  • FIG. 14A shows a prediction pixel value p [x, y] at a position (x, y) in the prediction block, a pixel above the position (x, y), and a reference region adjacent to the upper side of the prediction block.
  • FIG. 14B shows a predicted pixel value q [x, y] (filtered predicted pixel value q [x, y]) and a position (x, y) based on the filtered reference pixel value at the position (x, y).
  • the reference pixel value s [-1, -1] is shown.
  • FIG. 15A shows a derivation formula for the predicted pixel value p [x, y].
  • the predicted pixel value p [x, y] includes the filtered predicted pixel value q [x, y] and the unfiltered reference pixel values r [x, -1], r [-1, y], r [-1, -1] and weighted addition.
  • the weighting coefficient a value obtained by shifting a predetermined reference intensity coefficient (c1v, c2v, c1h, c2h) to the right based on the position (x, y) is used.
  • the weighting coefficient for the unfiltered reference pixel value r [x, -1] is c1v >> floor (y / d).
  • floor () is a floor function
  • d is a predetermined parameter according to the predicted block size
  • y / d represents y division by d (rounded down after the decimal point).
  • the weighting coefficient for the unfiltered reference pixel value can be expressed as a value obtained by adjusting the corresponding reference intensity coefficient with a weight (distance weight) corresponding to the reference distance.
  • b [x, y] is a weighting coefficient for the filtered predicted pixel value q [x, y], and is derived from the equation shown in FIG.
  • b [x, y] is set so that the sum of the weighting coefficients matches the denominator at the time of the weighted addition (in the equation of FIG.
  • Non-Patent Document 2 the calculation of the weighting coefficient requires a right shift process in accordance with the reference distance (distance between the prediction target pixel and the reference region) for the reference intensity coefficient, and therefore a hardware or software parallel processing function
  • parallel processing for example, a vector operation instruction.
  • a prediction image for a plurality of pixels in a prediction block is generated by parallel processing, there is a problem that a reference distance is different at each pixel position, and thus there is no parallel processing function that can be used. It was.
  • a predicted image generation device includes a filtered reference pixel setting unit that derives a filtered reference pixel value on a reference region set for a prediction block, and a prediction mode. Based on an intra prediction unit that derives a filtered prediction pixel value of the prediction block with reference to the filtered reference pixel value by a prediction method according to the above, an unfiltered reference pixel value on the reference region, and the prediction mode A predicted image correction unit that generates a predicted image from the filtered predicted pixel value by the predicted image correction process, and the predicted image correcting unit includes at least one of the filtered predicted pixel value in the target pixel in the predicted block, and By applying weighted addition using a weighting factor to at least one unfiltered reference pixel value, predicted pixel values constituting the predicted image are
  • the weight coefficient for the unfiltered reference pixel value is a product of a reference intensity coefficient determined according to the prediction direction indicated by the prediction mode and a distance weight that monotonously decreases as the reference distance for
  • an image decoding apparatus restores an image from encoded data by generating a prediction image in units of prediction blocks using an intra prediction scheme associated with a prediction mode.
  • a filtered reference pixel setting unit that derives a filtered reference pixel value on a reference region set for a prediction block, and the filtered reference pixel value is referred to by a prediction method according to a prediction mode.
  • a predictive image correction unit that generates the prediction image correction unit.
  • a predicted pixel value that constitutes the predicted image is derived by applying weighted addition using a weighting factor to the completed predicted pixel value and at least one or more unfiltered reference pixel values, and the unfiltered reference pixel
  • the weight coefficient for the value is a product of a reference intensity coefficient determined according to a prediction direction indicated by the prediction mode and a distance weight that monotonously decreases as the reference distance to the target pixel increases.
  • an image encoding device generates encoded images from a moving image by generating a predicted image in units of prediction blocks by an intra prediction method associated with a prediction mode.
  • a filtered reference pixel setting unit for deriving a filtered reference pixel value on a reference region set for a prediction block
  • An intra prediction unit that derives a filtered prediction pixel value of the prediction block by referring to the filtered reference pixel value by a prediction method according to a prediction mode; an unfiltered reference pixel value on the reference region; and the prediction mode
  • a prediction image correction unit that generates a prediction image from the filtered prediction pixel value by a prediction image correction process based on the prediction image correction unit, the prediction image correction unit, the filtered prediction pixel value in the target pixel in the prediction block,
  • a prediction pixel value constituting the prediction image is derived by applying weighted addition using a weighting factor to at least one unfiltered reference pixel
  • a predicted image generation apparatus derives a filtered predicted pixel value by referring to a filtered reference pixel setting unit that derives a filtered reference pixel value on a reference region, and the filtered reference pixel value.
  • the correction unit derives a predicted pixel value by applying weighted addition using a weighting factor to the filtered predicted pixel value in the target pixel and at least one or more unfiltered reference pixel values.
  • the weighting factor for the filter reference pixel value is derived as the product of the reference strength factor determined according to the prediction direction and the distance weight that monotonously decreases as the reference distance increases. That. Therefore, when a predicted image is generated by weighted addition of a filtered predicted pixel value and an unfiltered reference pixel value with reference to a weighting factor, parallel implementation is easier without using a right shift by a reference distance dependent parameter It is possible to derive a weighting coefficient by a product of various reference distance dependent parameters (distance weights).
  • An image decoding device (moving image decoding device) and an image encoding device (moving image encoding device) include a predicted image generation unit corresponding to the predicted image generation device, When encoding or decoding is performed using a prediction image generated by weighted addition of a filtered predicted pixel value and an unfiltered reference pixel value with reference to a weighting factor, a right shift based on a reference distance dependent parameter is used.
  • the weight coefficient can be derived from the product of the reference distance dependent parameters (distance weights) that can be more easily mounted in parallel.
  • FIG. 3 is a diagram illustrating a data configuration of encoded data generated by a video encoding device according to an embodiment of the present invention and decoded by the video decoding device, wherein (a) to (d) are pictures, respectively. It is a figure which shows a layer, a slice layer, a CTU layer, and a CU layer. It is a figure which shows the prediction direction corresponding to the identifier of a prediction mode about 33 types of prediction modes which belong to direction prediction.
  • FIG. (a) shows an example of a derivation formula for the predicted pixel value p [x, y]
  • (b) shows an example of a derivation formula for the weight coefficient b [x, y]
  • (c) shows the distance weight k [
  • An example of a derivation formula of [] is shown. It is a flowchart which shows the outline of the prediction image generation process of the CU unit in the said prediction image generation part.
  • EQ2 An example of a derivation formula for the distance weight k [•] that is 0 when the reference distance is equal to or greater than a predetermined value.
  • TBL_EQ2 is a diagram illustrating a relationship between a reference distance and a weight coefficient k [•] when the first normalization adjustment term smax is different.
  • (a), (b), and (c) show the relationship between the reference distance and the weight coefficient k [•] when the value of the variable d indicating the block size is 1, 2, or 3, respectively.
  • EQx is a diagram for explaining another example of derivation of a predicted pixel value p [x, y] at a position (x, y) in a predicted block.
  • EQ3b A diagram showing an example of a modification of the calculation formula for deriving the distance weight k [x] by the left shift calculation.
  • TBL_EQ3 an example of a distance weight reference table for deriving a heel distance weight k [•].
  • (a) to (d) hold the results of the distance weight calculation formulas of FIGS. 12 (a) to 12 (d). It is the figure which showed the positional relationship of the prediction pixel on the prediction block in the prediction in the prior art, and the reference pixel on the reference area set with respect to the prediction block.
  • (a) shows the case of an unfiltered reference pixel value
  • (b) shows the case of a filtered reference pixel value.
  • (A) shows the derivation formula of the prediction pixel value p [x, y] according to the prior art
  • (b) shows the derivation formula of the weight coefficient b [x, y] according to the prior art.
  • (A) shows a transmitting apparatus equipped with a moving picture coding apparatus
  • (b) shows a receiving apparatus equipped with a moving picture decoding apparatus.
  • FIG. 2 is a functional block diagram showing a schematic configuration of the moving picture decoding apparatus 1.
  • the video decoding device 1 and the video encoding device 2 shown in FIG. The technology adopted in the H.264 / MPEG-4 AVC standard, the technology adopted in the HEVC (High-Efficiency Video Coding) standard, and its improved technology are implemented.
  • the moving image encoding device 2 generates encoded data # 1 by entropy encoding a syntax value defined to be transmitted from the encoder to the decoder in a specific moving image encoding method. .
  • the moving image decoding apparatus 1 receives encoded data # 1 obtained by encoding a moving image by the moving image encoding apparatus 2.
  • the video decoding device 1 decodes the input encoded data # 1 and outputs the video # 2 to the outside.
  • the configuration of the encoded data # 1 Prior to detailed description of the moving picture decoding apparatus 1, the configuration of the encoded data # 1 will be described below.
  • [Configuration of encoded data] A configuration example of encoded data # 1 that is generated by the video encoding device 2 and decoded by the video decoding device 1 will be described with reference to FIG.
  • the encoded data # 1 illustratively includes a sequence and partial encoded data corresponding to a plurality of pictures constituting the sequence.
  • FIG. 3 shows the hierarchical structure below the picture layer in the encoded data # 1.
  • 3A to 3D are included in the picture layer that defines the picture PICT, the slice layer that defines the slice S, the tree block layer that defines the tree block TBLK, and the tree block TBLK, respectively.
  • Picture layer In the picture layer, a set of data referred to by the video decoding device 1 for decoding a picture PICT to be processed (hereinafter also referred to as a target picture) is defined. As shown in FIG. 3A, the picture PICT includes a picture header PH and slices S1 to SNS (NS is the total number of slices included in the picture PICT).
  • the picture header PH includes a coding parameter group referred to by the video decoding device 1 in order to determine a decoding method of the target picture.
  • the reference value (pic_init_qp_minus26) in the picture in the quantization step of the prediction residual is an example of a coding parameter included in the picture header PH.
  • picture header PH is also referred to as a picture parameter set (PPS).
  • PPS picture parameter set
  • slice layer In the slice layer, a set of data referred to by the video decoding device 1 for decoding the slice S (also referred to as a target slice) to be processed is defined. As shown in FIG. 3B, the slice S includes a slice header SH and tree blocks TBLK1 to TBLKNC (NC is the total number of tree blocks included in the slice S).
  • the slice header SH includes a coding parameter group that the moving image decoding apparatus 1 refers to in order to determine a decoding method of the target slice.
  • Slice type designation information (slice_type) for designating a slice type is an example of an encoding parameter included in the slice header SH.
  • I slice that uses only intra prediction at the time of encoding (2) P slice that uses unidirectional prediction or intra prediction at the time of encoding, (3) B-slice using unidirectional prediction, bidirectional prediction, or intra prediction at the time of encoding may be used.
  • Tree block layer In the tree block layer, a set of data referred to by the video decoding device 1 for decoding a processing target tree block TBLK (hereinafter also referred to as a target tree block) is defined.
  • the tree block TBLK includes a tree block header TBLKH and coding unit information CU1 to CUNL (NL is the total number of coding unit information included in the tree block TBLK).
  • NL is the total number of coding unit information included in the tree block TBLK.
  • the tree block TBLK is divided into units for specifying a block size for each process of intra prediction or inter prediction and conversion.
  • the division into units is expressed by recursive quadtree division of the tree block TBLK.
  • the tree structure obtained by this recursive quadtree partitioning is hereinafter referred to as a coding tree.
  • a unit corresponding to a leaf that is a node at the end of the coding tree is referred to as a coding node.
  • the encoding node is a basic unit of the encoding process, hereinafter, the encoding node is also referred to as an encoding unit (CU).
  • CU encoding unit
  • coding unit information (hereinafter referred to as CU information)
  • CU1 to CUNL is information corresponding to each coding node (coding unit) obtained by recursively dividing the tree block TBLK into quadtrees.
  • the root of the coding tree is associated with the tree block TBLK.
  • the tree block TBLK is associated with the highest node of the tree structure of the quadtree partition that recursively includes a plurality of encoding nodes.
  • each coding node is half the size of the coding node to which the coding node directly belongs (that is, the unit of the node one layer higher than the coding node).
  • the size that each encoding node can take depends on the size specification information of the encoding node included in the size of the tree block and the sequence parameter set SPS of the encoded data # 1. Since the tree block is the root of the encoding node, the maximum size of the encoding node is the size of the tree block. Since the maximum size of the tree block matches the maximum size of the coding node (CU), LCU (LargestarCU) or CTU (Coding Tree Unit) may be used as the name of the tree block. In a general setting, size specification information of a coding node having a maximum coding node size of 64 ⁇ 64 pixels and a minimum coding node size of 8 ⁇ 8 pixels is used. In this case, the size of the encoding node and the encoding unit CU is 64 ⁇ 64 pixels, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, or 8 ⁇ 8 pixels.
  • the tree block header TBLKH includes an encoding parameter referred to by the video decoding device 1 in order to determine a decoding method of the target tree block. Specifically, as shown in FIG. 3C, tree block division information SP_TBLK that designates a division pattern of the target tree block into each CU, and a quantization parameter difference that designates the size of the quantization step ⁇ qp (qp_delta) is included.
  • the tree block division information SP_TBLK is information representing a coding tree for dividing a tree block. Specifically, the shape, size, and position of each CU included in the target tree block Is information to specify.
  • the tree block division information SP_TBLK may not explicitly include the shape or size of the CU.
  • the tree block division information SP_TBLK may be a set of flags indicating whether to divide the entire target tree block or a partial area of the tree block into four. In that case, the shape and size of each CU can be specified by using the shape and size of the tree block together.
  • CU layer In the CU layer, a set of data referred to by the video decoding device 1 for decoding a CU to be processed (hereinafter also referred to as a target CU) is defined.
  • the encoding node is a node at the root of a prediction tree (PT) and a transformation tree (TT).
  • PT prediction tree
  • TT transformation tree
  • the encoding node is divided into one or a plurality of prediction blocks, and the position and size of each prediction block are defined.
  • the prediction block is one or a plurality of non-overlapping areas constituting the encoding node.
  • the prediction tree includes one or a plurality of prediction blocks obtained by the above division.
  • Prediction processing is performed for each prediction block.
  • a prediction block that is a unit of prediction is also referred to as a prediction unit (PU).
  • intra prediction intra-screen prediction
  • inter prediction inter-screen prediction
  • inter prediction there are 2N ⁇ 2N (the same size as the encoding node), 2N ⁇ N, N ⁇ 2N, N ⁇ N, and the like.
  • the encoding node is divided into one or a plurality of transform blocks, and the position and size of each transform block are defined.
  • the transform block is one or a plurality of non-overlapping areas constituting the encoding node.
  • the conversion tree includes one or a plurality of conversion blocks obtained by the above division.
  • transform processing is performed for each conversion block.
  • the transform block which is a unit of transform is also referred to as a transform unit (TU).
  • the CU information CU specifically includes a skip flag SKIP, PT information PTI, and TT information TTI.
  • the skip flag SKIP is a flag indicating whether or not the skip mode is applied to the CU.
  • the PT information PTI and the TT information TTI in the CU information CU are omitted.
  • the skip flag SKIP is omitted for the I slice.
  • the PT information PTI is information related to the PT included in the CU.
  • the PT information PTI is a set of information regarding each prediction block included in the PT, and is referred to when the moving image decoding apparatus 1 generates a prediction image.
  • the PT information PTI includes prediction type information PType and prediction information PInfo.
  • Prediction type information PType is information that specifies whether intra prediction or inter prediction is used as a prediction image generation method for the target PU.
  • the prediction information PInfo is composed of intra prediction information or inter prediction information depending on which prediction method the prediction type information PType specifies.
  • a prediction block to which intra prediction is applied is also referred to as an intra prediction block
  • a prediction block to which inter prediction is applied is also referred to as an inter prediction block.
  • the prediction information PInfo includes information specifying the shape, size, and position of the prediction block. As described above, the generation of the prediction image is performed in units of prediction blocks. Details of the prediction information PInfo will be described later.
  • TT information TTI is information about TT included in the CU.
  • the TT information TTI is a set of information regarding each of one or a plurality of TUs included in the TT, and is referred to when the moving image decoding apparatus 1 decodes residual data.
  • a TU may be referred to as a conversion block.
  • the TT information TTI includes TT division information SP_TU that designates a division pattern for each transform block of the target CU, and TU information TUI 1 to TUINT (NT is included in the target CU. Total number of conversion blocks).
  • TT division information SP_TU is information for determining the shape and size of each TU included in the target CU and the position in the target CU.
  • the TT division information SP_TU can be realized from information (split_transform_unit_flag) indicating whether or not the target node is divided and information (trafoDepth) indicating the division depth.
  • each TU obtained by the division can take a size from 32 ⁇ 32 pixels to 4 ⁇ 4 pixels.
  • TU information TUI1 to TUINT is individual information regarding one or more TUs included in the TT.
  • the TU information TUI includes a quantized prediction residual.
  • Each quantized prediction residual is encoded data generated by the video encoding device 2 performing the following processes 1 to 3 on a target block that is a processing target block.
  • Process 1 DCT transform (Discrete Cosine Transform) of the prediction residual obtained by subtracting the prediction image from the encoding target image;
  • Process 2 Quantize the transform coefficient obtained in Process 1;
  • Process 3 Variable length coding is performed on the transform coefficient quantized in Process 2;
  • Prediction information PInfo prediction information
  • the inter prediction information includes an encoding parameter that is referred to when the video decoding device 1 generates an inter predicted image by inter prediction. More specifically, the inter prediction information includes inter prediction block division information that specifies a division pattern of the target CU into each inter prediction block, and inter prediction parameters for each inter prediction block.
  • the inter prediction parameters include a reference image index, an estimated motion vector index, and a motion vector residual.
  • the intra prediction information includes an encoding parameter that is referred to when the video decoding device 1 generates an intra predicted image by intra prediction. More specifically, the intra prediction information includes intra prediction block division information that specifies a division pattern of the target CU into each intra prediction block, and intra prediction parameters for each intra prediction block.
  • the intra prediction parameter is a parameter for controlling generation of a prediction image by intra prediction in each intra prediction block, and includes a parameter for restoring the intra prediction mode.
  • mpm_flag which is a flag related to MPM (Most Probable Mode, the same applies hereinafter)
  • mpm_idx which is an index for selecting MPM
  • a prediction mode other than MPM are designated.
  • MPM is an estimated prediction mode that is highly likely to be selected in the target partition.
  • prediction mode when simply described as “prediction mode”, it indicates an intra prediction mode applied to luminance.
  • the intra prediction mode applied to the color difference is described as “color difference prediction mode” and is distinguished from the luminance prediction mode.
  • the video decoding device 1 generates a predicted image for each prediction block, generates a decoded image # 2 by adding the generated predicted image and the prediction residual decoded from the encoded data # 1, The generated decoded image # 2 is output to the outside.
  • a prediction parameter is a parameter referred to in order to generate a prediction image.
  • a picture (frame), a slice, a tree block, a CU, a block, and a prediction block that are to be subjected to decoding processing are respectively represented as a target picture, a target slice, a target tree block, a target CU, a target block, and This is called a target prediction block.
  • the size of the tree block is, for example, 64 ⁇ 64 pixels
  • the size of the CU is, for example, 64 ⁇ 64 pixels, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, and 8 ⁇ 8 pixels
  • the size of the prediction block is For example, 64 ⁇ 64 pixels, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, 8 ⁇ 8 pixels, 4 ⁇ 4 pixels, and the like.
  • these sizes are merely examples, and the sizes of the tree block, CU, and prediction block may be other than the sizes shown above.
  • the video decoding device 1 includes a variable length decoding unit 11, an inverse quantization / inverse conversion unit 13, a predicted image generation unit 14, an adder 15, and a frame memory 16.
  • variable length decoding unit 11 decodes various parameters included in the encoded data # 1 input from the video decoding device 1. In the following description, it is assumed that the variable length decoding unit 11 appropriately decodes a parameter encoded by an entropy encoding method such as CABAC and CAVLC.
  • variable length decoding unit 11 separates the encoded data # 1 for one frame into various information included in the hierarchical structure shown in FIG. 3 by demultiplexing.
  • the variable length decoding unit 11 refers to information included in various headers and sequentially separates the encoded data # 1 into slices and tree blocks.
  • variable length decoding unit 11 refers to the tree block division information SP_TBLK included in the tree block header TBLKH, and divides the target tree block into CUs. Further, the variable length decoding unit 11 decodes the TT information TTI related to the conversion tree obtained for the target CU and the PT information PTI related to the prediction tree obtained for the target CU.
  • the TT information TTI includes the TU information TUI corresponding to the TU included in the conversion tree.
  • the PU information PUI corresponding to the prediction block included in the target prediction tree is included in the PT information PTI.
  • variable length decoding unit 11 supplies the TT information TTI obtained for the target CU to the inverse quantization / inverse transform unit 13. Further, the variable length decoding unit 11 supplies the PT information PTI obtained for the target CU to the predicted image generation unit 14.
  • the inverse quantization / inverse transform unit 13 performs an inverse quantization / inverse transform process on each block included in the target CU based on the TT information TTI. Specifically, for each target TU, the inverse quantization / inverse transform unit 13 performs inverse quantization and inverse orthogonal transform on the quantized prediction residual included in the TU information TUI corresponding to the target TU, thereby performing pixel-by-pixel. Is restored.
  • the orthogonal transform refers to an orthogonal transform from the pixel region to the frequency region. Therefore, the inverse orthogonal transform is a transform from the frequency domain to the pixel domain.
  • inverse orthogonal transform examples include inverse DCT transform (Inverse Discrete Cosine Transform), inverse DST transform (Inverse Discrete Sine Transform), and the like.
  • the inverse quantization / inverse transform unit 13 supplies the restored prediction residual D to the adder 15.
  • the predicted image generation unit 14 generates a predicted image based on the PT information PTI for each predicted block included in the target CU. Specifically, the predicted image generation unit 14 generates a predicted image Pred for each target prediction block by performing intra prediction or inter prediction according to the prediction parameter included in the PU information PUI corresponding to the target prediction block. At this time, the local decoded image P ′, which is a decoded image stored in the frame memory 16, is referred to based on the content of the prediction parameter. The predicted image generation unit 14 supplies the generated predicted image Pred to the adder 15. The configuration of the predicted image generation unit 14 will be described in more detail later.
  • the adder 15 adds the predicted image Pred supplied from the predicted image generation unit 14 and the prediction residual D supplied from the inverse quantization / inverse transform unit 13 to thereby add the decoded image P for the target CU. Generate.
  • the decoded image P that has been decoded is sequentially recorded in the frame memory 16.
  • decoded images corresponding to all tree blocks decoded before the target tree block are stored. It is recorded.
  • Decoded image # 2 corresponding to # 1 is output to the outside.
  • the predicted image generation unit 14 generates and outputs a predicted image based on the PT information PTI.
  • the PU information PTI input to the predicted image generation unit 14 includes a prediction mode (IntraPredMode).
  • IntraPredMode the definition of the prediction mode will be described with reference to FIG.
  • Intra prediction modes used in the video decoding device 1 are classified into Planar prediction (Intra_Planar), vertical prediction (Intra_Vertical), horizontal prediction (Intra_Horizontal), DC prediction (Intra_DC), and Angular prediction (Intra_Angular). Horizontal prediction, vertical prediction, and angular prediction are collectively referred to as direction prediction.
  • Direction prediction is a prediction method in which a peripheral region adjacent to a target prediction block is set as a reference region, and roughly, a prediction image is generated by extrapolating pixels on the reference region in a specific direction.
  • FIG. 4 shows prediction directions corresponding to the prediction mode identifiers for 33 types of prediction modes belonging to direction prediction.
  • the direction of the arrow in FIG. 4 represents the prediction direction, but more accurately indicates the direction of the vector from the prediction target pixel to the pixel on the reference region to which the prediction target pixel refers. In that sense, the prediction direction is also referred to as a reference direction.
  • the identifier of each prediction mode is associated with a code indicating whether the main direction is the horizontal direction (HOR) or the vertical direction (VER) and an identifier composed of a combination of displacements with respect to the main direction.
  • HOR is used for horizontal prediction
  • VER is used for vertical prediction
  • VER + 8 is used for a prediction mode that refers to surrounding pixels in the upper right 45-degree direction
  • VER-8 is used for a prediction mode that refers to surrounding pixels in the 45-degree upper left direction
  • 45 is used for lower left 45
  • a prediction mode that refers to peripheral pixels in the direction of the degree is assigned a code of HOR + 8.
  • 17 prediction directions of VER-8 to VER + 8 are defined as a vertical prediction mode
  • 16 prediction directions of HOR-7 to HOR + 8 are defined as a prediction mode of horizontal prediction.
  • FIG. 5 is a functional block diagram illustrating a configuration example of the predicted image generation unit 14.
  • this structural example has illustrated the functional block which concerns on the prediction image production
  • FIG. 5 is a functional block diagram illustrating a configuration example of the predicted image generation unit 14.
  • this structural example has illustrated the functional block which concerns on the prediction image production
  • the predicted image generation unit 14 includes a predicted block setting unit 141, an unfiltered reference pixel setting unit 142, a filtered reference pixel setting unit 143, an intra prediction unit 144, and a predicted image correction unit 145. .
  • the prediction block setting unit 141 sets a prediction block included in the target CU as a target prediction block in a prescribed setting order, and outputs information on the target prediction block (target prediction block information).
  • the target prediction block information includes at least an index indicating the target prediction block size, the target prediction block position, the luminance of the target prediction block, or the color difference plane.
  • the unfiltered reference pixel setting unit 142 sets a peripheral region adjacent to the target prediction block as a reference region based on the target prediction block size and the target prediction block position indicated by the input target prediction block information. Subsequently, the pixel value (decoded pixel value) of the decoded image recorded at the corresponding position in the screen on the frame memory is set as the unfiltered reference pixel value for each pixel in the reference area.
  • the unfiltered reference pixel value r (x, y) at the position (x, y) in the prediction block is calculated using the decoded pixel value u (px, py) of the target picture expressed based on the upper left pixel of the picture. Set by an expression.
  • (xB, yB) represents the position of the upper left pixel of the target prediction block in the picture
  • nS represents the size of the target prediction block, and indicates the larger value of the width or height of the target prediction block.
  • the decoded pixel values included in the decoded pixel line adjacent to the upper side of the target prediction block and the decoded pixel column adjacent to the left side of the target prediction block correspond.
  • Copying as unfiltered reference pixel value when there is no decoded pixel value corresponding to a specific reference pixel position or reference is not possible, a predetermined value (for example, 1 ⁇ (bitDepth-1) when the pixel bit depth is bitDepth) is used.
  • a predetermined value for example, 1 ⁇ (bitDepth-1) when the pixel bit depth is bitDepth
  • referenceable decoded pixel values existing in the vicinity of the corresponding decoded pixel value may be used.
  • the filtered reference pixel setting unit 143 applies a filter to the input unfiltered reference pixel value according to the input prediction mode, and filters the reference pixel value at each position (x, y) on the reference region. Derives and outputs s [x, y]. Specifically, a low-pass filter is applied to the unfiltered reference pixel values at the position (x, y) and the surrounding area to derive filtered reference pixels. Note that it is not always necessary to apply the low-pass filter in all cases, and it is only necessary to derive the filtered reference pixels by applying the low-pass filter to at least some of the direction prediction modes.
  • the unfiltered reference pixel value may be directly used as the filtered reference pixel value.
  • the presence / absence of application of the low-pass filter may be switched by a flag decoded from the encoded data.
  • the intra prediction unit 144 generates a prediction image of the target prediction block based on the input prediction mode and the filtered reference pixel value, and outputs the prediction image as a filtered prediction image.
  • the intra prediction unit 144 includes a DC prediction unit 144D, a Planar prediction unit 144P, a horizontal prediction unit 144H, a vertical prediction unit 144V, and an angular prediction unit 144A.
  • the intra prediction unit 144 selects a specific prediction unit according to the input prediction mode, and inputs the filtered reference pixel value.
  • the relationship between the prediction mode and the corresponding prediction part is as follows.
  • DC prediction unit 144D Planar prediction: Planar prediction unit 144P Horizontal prediction: Horizontal prediction unit 144H ⁇ Vertical prediction ⁇ ⁇ ⁇ Vertical prediction unit 144V Angular prediction: Angular prediction unit 144A
  • the DC prediction unit 144D derives a DC predicted value corresponding to the average value of the input filtered reference pixel values, and outputs a predicted image using the derived DC predicted value as a pixel value.
  • the Planar prediction unit 144P generates and outputs a prediction image based on a value derived by linearly adding a plurality of filtered reference pixel values according to the distance to the prediction target pixel.
  • the pixel value q [x, y] of the predicted image can be derived by the following equation using the filtered reference pixel value s [x, y] and the target prediction block size nS.
  • the horizontal prediction unit 144H generates and outputs a prediction image by extrapolating the filtered reference pixel values on the reference region adjacent to the left side of the target prediction block in the horizontal direction.
  • the vertical prediction unit 144V generates and outputs a prediction image by extrapolating the filtered reference pixel values on the reference region adjacent to the upper side of the target prediction block in the vertical direction (vertical direction).
  • the angular prediction unit 144A generates and outputs a prediction image using the filtered reference pixels in the prediction direction (reference direction) indicated by the prediction mode.
  • the reference area adjacent to the top or left of the prediction block is set as the main reference area according to the value of the main direction flag bRefVer, and the filtered reference pixel value on the main reference area is set as the main reference pixel value.
  • the generation of the prediction image is executed with reference to the main reference pixel value in units of lines or columns in the prediction block.
  • the main direction flag bRefVer is 1 (the main direction is the vertical direction)
  • the prediction image generation unit is set to a line, and the reference area above the target prediction block is set to the main reference area.
  • the main reference pixel value refMain [x] is set by the following equation using the filtered reference pixel value s [x, y].
  • invAngle corresponds to a value obtained by scaling the reciprocal of the displacement intraPredAngle in the prediction direction. From the above equation, in the range where x is 0 or more, the value of refMain [x] is set to the filtered reference pixel value value on the reference area adjacent to the upper side of the target prediction block.
  • the value of refMain [x] is set to a position where the filtered reference pixel value on the reference area adjacent to the left side of the target prediction block is derived based on the prediction direction.
  • the predicted image q [x, y] is calculated by the following equation.
  • q [x, y] ((32-iFact) * refMain [x + iIdx + 1] + iFact * refMain [x + iIdx + 2] + 16) >> 5 where iIdx and iFact are the prediction lines And the vertical reference distance (y + 1) of the main reference region and the position of the main reference pixel used for generating the prediction target pixel calculated based on the gradient intraPredAngle determined according to the prediction direction.
  • iIdx corresponds to the position of integer precision in pixel units
  • iFact corresponds to the position of decimal precision in pixel units, and is derived by the following equation.
  • & is an operator representing a logical bit operation
  • the result of “A & 31” means a remainder obtained by dividing the integer A by 32.
  • the prediction image generation unit is set to the column, and the reference area on the left side of the target PU is set to the main reference area.
  • the main reference pixel value refMain [x] is set by the following equation using the filtered reference pixel value s [x, y] on the main reference area.
  • q [x, y] ((32-iFact) * refMain [y + iIdx + 1] + iFact * refMain [y + iIdx + 2] + 16) >> 5 where iIdx and iFact are the prediction columns And the position of the main reference pixel used for generating the predicted pixel calculated based on the horizontal distance (x + 1) of the main reference region and the gradient intraPredAngle.
  • iIdx corresponds to an integer-precision position in pixel units
  • iFact corresponds to a decimal-precision position in pixel units.
  • the configuration of the intra prediction unit 144 is not limited to the above.
  • the prediction image generated by the horizontal prediction unit 144H and the prediction image generated by the vertical prediction unit 144V can also be derived by the Angular prediction unit 144A, so that the horizontal prediction unit 144H and the vertical prediction unit 144V are not provided.
  • a configuration including the Angular prediction unit 144A is also possible.
  • the predicted image correction unit 145 targets each pixel constituting the filtered predicted image according to the input prediction mode, and sets the unfiltered reference pixel value and the filtered predicted pixel according to the distance between the reference region and the target pixel.
  • the filtered predicted image is corrected by weighted addition of values and output as a predicted image (corrected predicted image).
  • FIG. 6A shows a derivation formula for the predicted pixel value p [x, y].
  • the predicted pixel value p [x, y] includes the filtered predicted pixel value q [x, y] and the unfiltered reference pixel values r [x, -1], r [-1, y], r [-1, -1] and weighted addition.
  • smax is a predetermined positive integer value corresponding to an adjustment term for expressing the distance weight k as an integer, and is referred to as a first normalization adjustment term.
  • rshift is a predetermined positive integer value for normalizing the reference intensity coefficient, and is called a second normalization adjustment term.
  • the combination of the rshift and smax values is not limited to the above values, and the formula shown in FIG. 6A represents weighted addition, and another value that satisfies the situation where the distance weight k is expressed as an integer is set as a default value. It may be used.
  • the weight coefficient for the unfiltered reference pixel value is a distance weight k (k) that depends on a reference intensity coefficient (c1v, c2v, c1h, c2h) predetermined for each prediction direction and a distance (x or y) from the reference region. [x] or k [y]). More specifically, as the weighting factor (first weighting factor w1v) of the unfiltered reference pixel value r [x, -1] (upper unfiltered reference pixel value), the reference strength coefficient c1v and the distance weight k [y] ( Vertical distance weight) is used.
  • weighting factor (second weighting factor w1h) of the unfiltered reference pixel value r [-1, y] (left unfiltered reference pixel value) the reference intensity factor c1h and the distance weight k [x] (horizontal distance) Weight) product.
  • weighting factor (third weighting factor w2v) of the unfiltered reference pixel value r [-1, -1] upper left unfiltered reference pixel value
  • reference strength factor c2v and the distance weight k [y] vertical direction
  • weighting coefficient (fourth weighting coefficient w2h) of the upper left unfiltered reference pixel value the product of the reference intensity coefficient c2h and the distance weighting k [x] (horizontal distance weighting) is used.
  • FIG. 6B shows a derivation formula of the weighting factor b [x, y] for the filtered predicted pixel value q [x, y].
  • the value of the weighting factor b [x, y] is derived so that the sum of the products of the weighting factor and the reference strength factor matches “1 ⁇ (smax + rshift)”. This value is set with the intention of normalizing the product of the weight coefficient and the reference intensity coefficient based on the right shift operation of (smax + rshift) in FIG.
  • FIG. 6C shows the distance weight k [x] representing the derivation formula of the distance weight k [x], a value “floor (x / d) that monotonically increases according to the horizontal distance x between the target pixel and the reference region. "Is a difference value obtained by subtracting 1 from smax, and a value obtained by shifting 1 to the left is set.
  • floor () is a floor function
  • d is a predetermined parameter corresponding to the predicted block size
  • “x / d” indicates division of x by d (rounded down to the nearest decimal place).
  • the definition in which the horizontal distance x is replaced with the vertical distance y in the above-described definition of the distance weight k [x] can be used.
  • the values of the distance weights k [x] and k [y] are smaller as the value of x or y is larger.
  • the distance weight (k [x], k [y] increases as the reference distance (x or y), which is the distance between the target pixel and the reference region, increases. ]) Is a small value. Therefore, the value of the weight coefficient of the unfiltered reference pixel obtained by multiplying the predetermined reference intensity coefficient by the distance weight is also a small value. Therefore, the closer the position in the prediction block is to the reference area, the more the weight of the unfiltered reference pixel value is increased and the filtered predicted pixel value is corrected, whereby the predicted pixel value can be derived.
  • the predicted pixel value derived by the equation in FIG. 6 is a predicted pixel value with higher prediction accuracy than when the filtered predicted pixel value is directly used as the predicted pixel value.
  • the weighting coefficient for the unfiltered reference pixel value can be derived by multiplying the reference intensity coefficient and the distance weight. Therefore, by calculating the distance weight value for each distance in advance and holding it in the table, the weight coefficient can be derived without using a right shift operation or division.
  • the reference distance is defined as the distance between the target pixel and the reference region, and the predicted pixel position x and the predicted block position y of the target pixel are given as examples of the reference distance.
  • Other variables representing the distance of the reference area may be used.
  • the reference distance may be defined as the distance between the predicted pixel and the pixel on the closest reference region.
  • the reference distance may be defined as the distance between the prediction pixel and the pixel on the reference area adjacent to the upper left of the prediction block.
  • the distance may be a broad distance.
  • the reference distance is expressed as a reference distance x.
  • x is not limited to a distance in the horizontal direction, and can be applied to any reference distance.
  • the calculation formula of the distance weight k [x] is illustrated, it can also be applied to the distance weight k [y] calculated using the vertical reference distance y as a parameter.
  • FIG. 1 is a flowchart showing the operation of the predicted image correction unit 145.
  • the predicted image correction unit 145 sets reference intensity coefficients (c1v, c2v, c1h, c2h) determined in advance for each prediction direction.
  • the predicted image correction unit 145 determines the distance weight k [x] in the x direction and the distance weight k [x in the y direction according to the distance (x or y) between the target pixel (x, y) and the reference region. Each y] is derived.
  • the predicted image correction unit 145 multiplies each reference intensity coefficient derived in step S21 by each distance weight derived in S22 to derive the following weight coefficients.
  • the predicted image correction unit 145 outputs the unfiltered reference pixel values (r [x, -1], r [-1, y] corresponding to the weighting coefficients (w1v, w1h, w2v, w2h) derived in step S23. ], r [-1, -1], r [-1, -1]).
  • the predicted image correction unit 145 performs the first weighting factor w1v, the second weighting factor w1h, the third weighting factor w2v, the fourth weighting factor w2h, and the weighting factor b [
  • the weight coefficient b [x, y] is derived by the following equation so that the sum of x,
  • the predicted image correction unit 145 calculates a product m5 of the filtered predicted pixel value q [x, y] corresponding to the target pixel (x, y) and the weight coefficient b (x, y).
  • the predicted image correction unit 145 determines the product m1, m2, m3, m4 derived in step S24, the product m5 derived in step S26, and the rounding adjustment term (1 ⁇ (smax + rshift-1)). The sum sum is derived from the following equation.
  • the predicted image correction unit 145 right shifts the sum sum derived in step S27 by the sum (smax + rshift) of the first normalized adjustment term and the second normalized adjustment term as shown below.
  • a predicted pixel value p [x, y] of the target pixel (x, y) is derived.
  • the rounding adjustment term is expressed by the first normalization adjustment term smax and the second normalization adjustment term rshift, and (1 ⁇ (smax + rshift-1)) is preferable. It is not limited.
  • the rounding adjustment term may be 0 or any other predetermined constant.
  • the predicted image correction unit 145 generates the predicted image p [x, y] in the prediction block by repeating the processing shown in steps S21 to S28 for all the pixels in the prediction block. Note that the operation of the predicted image correction unit 145 is not limited to the above steps, and can be changed within a feasible range.
  • the prediction unit setting unit 141 sets one of the prediction blocks included in the CU as a target prediction block according to a predetermined order, and refers to the target prediction block information as an unfiltered reference. It outputs to the pixel setting part 142 (S11).
  • the unfiltered reference pixel setting unit 142 sets the reference pixel of the target prediction block using the decoded pixel value read from the external frame memory, and sets the unfiltered reference pixel value to the filtered reference pixel setting unit 143 and the predicted image.
  • the filtered reference pixel setting unit 143 derives a filtered reference pixel value from the unfiltered reference pixel value input in S12, and outputs the filtered reference pixel value to the intra prediction unit 144 (S13).
  • the intra prediction unit 144 generates a prediction image of the target prediction block from the input prediction mode and the filtered reference pixels input in S13, and outputs the prediction image as a filtered prediction image (S14).
  • the predicted image correcting unit 145 corrects the filtered predicted image input in S14 based on the prediction mode and the unfiltered reference pixel value input in S12, and generates and outputs a predicted image.
  • the moving image decoding apparatus includes the predicted image generation unit 14 including the predicted image correction unit 145 as a component, and the predicted image generation unit 14 targets each pixel of the filtered predicted image. Then, a predicted image (corrected predicted image) is generated from the unfiltered reference pixel value and the filtered predicted pixel value by weight addition based on the weight coefficient.
  • the weight coefficient is a product of a reference intensity coefficient determined according to the prediction direction indicated by the prediction mode and a distance weight that monotonously decreases as the distance between the target pixel and the reference region increases. Therefore, the larger the reference distance (for example, x, y), the smaller the value of the distance weight (for example, k [x], k [y]).
  • the smaller the reference distance the more the weight of the unfiltered reference pixel value.
  • a predicted pixel value with high prediction accuracy can be generated by increasing the size and generating a predicted image.
  • the weighting factor is the product of the reference strength factor and the distance weight, by calculating the distance weight value in advance for each distance and storing it in the table, the weighting factor can be obtained without using a right shift operation or division. Coefficients can be derived.
  • the predicted image correction unit 145 in the above embodiment has been described with reference to FIG. 6A to derive the weighting coefficient as the product of the reference intensity coefficient and the distance weight.
  • the distance weight k [x] that decreases as the distance x (reference distance x) between the target pixel and the reference area increases is used.
  • the predicted image correction unit 145 may be configured to set the distance weight k [x] to 0 when the reference distance x is equal to or greater than a predetermined value.
  • An example of a calculation formula for the distance weight k [x] in such a configuration is shown in FIG.
  • the distance weight k [x] when the reference distance x is smaller than the predetermined threshold TH, the distance weight k [x according to the reference distance x is calculated by the same calculation formula as in FIG. ] Is set.
  • the value of the distance weight k [x] when the reference distance x is equal to or greater than the predetermined threshold TH, the value of the distance weight k [x] is set to 0 regardless of the reference distance x.
  • a predetermined value can be used as the value of the threshold TH. For example, when the value of the first normalization adjustment term smax is 6, and the value of the second normalization adjustment term rshift is 7, the value of the threshold TH Predictive image correction processing can be executed by setting to 7.
  • the threshold TH may be changed depending on the first normalization adjustment term smax. More specifically, the threshold TH may be set so as to increase as the first normalization adjustment term smax increases.
  • FIG. 9 is a table showing the relationship between the reference distance x and the weight coefficient k [x] when the first normalization adjustment term smax is different.
  • the value of the second normalization adjustment term rshift is 7.
  • 9 (a), 9 (b), and 9 (c) show the relationship between the reference distance x and the weighting coefficient k [x] when the value of the variable d indicating the block size is 1, 2, and 3, respectively. Show.
  • different threshold values TH are set according to the magnitude of the first normalization adjustment term smax. The relationship between the first normalization adjustment term smax and the threshold value TH shown in FIG. 9A is as follows.
  • the first normalization adjustment term smax is a number representing the representation accuracy of the weighting factor k [x], and the above relationship sets a larger threshold TH when the representation accuracy of the weighting factor k [x] is high. Can also be expressed. Therefore, when the expression accuracy of the weighting factor k [x] is small, the value of the weighting factor k [x] is relatively small. The multiplication of can be omitted.
  • the weighting coefficient k [x] is set to 0 when it is larger than the threshold TH as in the present embodiment. , Negative left shift operation can be avoided.
  • the predicted image correction unit 145 can be configured to set the distance weight k [x] to 0 when the reference distance x is equal to or greater than a predetermined value. In that case, the multiplication in the prediction image correction process can be omitted for a partial region in the prediction block (a region where the reference distance x is equal to or greater than the threshold value TH).
  • the threshold value TH is set to the variable d, and the threshold TH different according to the magnitude of the first normalization adjustment term smax is set, so that the weighting coefficient k [x] derivation and the predicted image correction processing are maximized.
  • a fixed value TH can be used as the threshold value TH.
  • the weighting factor k [x] is suitable for parallel operations with a simple configuration. Can be derived.
  • a predetermined value determined according to the predicted block size can be set as the threshold value TH.
  • a value that is half the width of the predicted block size may be set as the threshold value TH.
  • the threshold value TH for the predicted block size of 16 ⁇ 16 is 8.
  • the threshold value TH may be set to 4 when the predicted block size is 8 ⁇ 8 or less, and the threshold value TH may be set to 8 when the predicted block size is other than that.
  • the threshold value TH is set so that the weight coefficient is 0 in the pixel located in the lower right region of the prediction block.
  • the threshold value is set so that the weight coefficient of the entire lower right region is set to 0.
  • the predicted image correction unit 145 sets the first normalization adjustment term smax, the predicted block size identification information d, and the reference distance x.
  • the distance weight k [x] can be determined by referring to a specific entry ktable [x] of the distance weight derivation table ktable [] (the table is also simply indicated as k [] in FIG. 9).
  • the distance weight k [x] can be determined by referring to the distance weight derivation table on the recording area using the reference distance x, the first normalization adjustment term smax, and the predicted block size identification information d as indexes.
  • the process of deriving the distance weight k [x] when using the distance weight derivation table shown in FIG. 9 is realized by sequentially executing the following steps S301 to S303.
  • the procedure of S301 is performed as shown in FIG.
  • the distance weight k [x] is determined by referring to the distance weight derivation table on the recording area using the reference distance x as an index.
  • the distance weight derivation table needs to satisfy at least the following property 1.
  • the predicted image correction process can be executed by setting a smaller distance weight for the pixel at the position where the reference distance is larger.
  • the distance weight derivation table preferably satisfies the following property 2.
  • the value of the distance weight k [x] derived by referring to the distance weight derivation table having the property 2 is a power of 2.
  • the predicted image correction process includes a process of deriving a weight coefficient by multiplying a reference intensity coefficient (for example, c1v) by a distance weight k [x]. Therefore, since the multiplication by the distance weight k [x] is the multiplication by the power of 2, when the property 2 is possessed, the multiplication can be executed by the left shift operation, and the weighting coefficient can be derived with a processing cost lower than the multiplication.
  • the predicted image correction process can be executed by the shift operation of the weight shift value s [x] indicating the relationship ⁇ s [x].
  • the predicted image correction process is executed by determining the distance weight k [x] based on the relationship between the reference distance x stored in the recording area and the distance weight k [x]. Can be realized.
  • the distance weight can be derived with a smaller number of computations compared to the case where the distance weight k [x] is derived by the calculation formula as shown in FIG.
  • the weighting factor is derived using the product of the reference strength coefficient and the distance weight (for example, c1v * k [y]) as shown in FIG.
  • the prediction image correction unit that derives the weighting coefficient by applying a left shift in which the reference intensity coefficient is a distance shift value and a shift width. 145 can also be configured.
  • this example will be described with reference to FIG.
  • FIG. 10 (a) shows a derivation formula for the predicted pixel value p [x, y] at the position (x, y) in the predicted block.
  • the weighting coefficient for the unfiltered reference pixel value r [x, -1] is set to c1v ⁇ s [y]. That is, the weighting coefficient is derived by shifting the reference strength coefficient c1v to the left by the distance shift value s [y] determined according to the reference distance y.
  • FIG. 10 (b) shows another derivation formula for the weighting factor b [x, y] for the filtered predicted pixel value q [x, y].
  • FIG. 10 (c) shows a derivation formula for the distance shift value s [x].
  • the difference value obtained by subtracting “floor (x / d)” from smax is set.
  • floor () is a floor function
  • d is a predetermined parameter corresponding to the predicted block size
  • “x / d” represents the division of y by d (rounded down after the decimal point).
  • the definition in which the horizontal distance x is replaced with the vertical distance y in the above-described definition of the distance weight s [x] can be used.
  • the distance shift values s [x] and s [y] are smaller as the reference distance (x or y) is larger.
  • the distance shift value (s [x], s [y]) increases as the distance (x or y) between the target pixel and the reference region increases.
  • the value becomes a small value.
  • the derived weighting factor is also larger.
  • the closer the position in the prediction block is to the reference region the larger the weight of the unfiltered reference pixel value is, and the filtered predicted pixel.
  • the predicted pixel value can be derived by correcting the value.
  • the weight coefficient is derived by the processing in which (S23) is replaced with the next (S23 ′).
  • the other processes are the same as those already described, and a description thereof will be omitted.
  • the predicted image correction unit 145 (Modification 3) derives the following weighting factors by left-shifting each reference intensity coefficient derived in Step S21 with each distance shift value derived in S22.
  • the third modification of the predicted image correction unit 145 derives the distance weight k [x] by the left shift using the distance shift value s [x]. Not only is the left shift value itself high-speed, but the left shift operation is excellent in the sense that it can be replaced by an equivalent calculation as multiplication.
  • the shifted term P is “1” and the left shift width Q is “smaxQ- floor (x / d)”.
  • the possible value of the distance weight k [x] is limited to a power of 2.
  • the distance weight k [x] can also be obtained by a method in which the distance weight k [x] is not limited to a power of 2.
  • a derivation formula for such distance weight k [x] will be described with reference to FIG.
  • FIGS. 11A to 11D show examples of calculation formulas for deriving the distance weight k [x] by the left shift calculation.
  • This is a derivation formula.
  • the remainder term MOD2 (x) is used as the derivation formula for the distance weight k [x]
  • the remainder 3 as the derivation formula for the distance weight k [x].
  • MOD3 (x) Use the term MOD3 (x).
  • FIG. 11A the shifted term P is “4-MOD2 (x)”, and the left shift width Q is “smax ⁇ floor (x / 2) +2”.
  • MOD2 (x) is a remainder obtained by dividing x by a divisor 2
  • floor (x / 2) is a quotient obtained by dividing x by a divisor 2.
  • FIG. 11B the shifted term P is “16-5 * MOD2 (x)”, and the left shift width Q is “smax-floor (x / 2) +4”.
  • the default divisor a (a 2 in FIG. 11 (b))
  • the default constant b (b 4 in FIG. 11 (b))
  • the shifted term P is “a value obtained by subtracting the product of the remainder (MOD2 (x)) by the divisor a of the reference distance x and the constant c from the power of 2 b”
  • the left shift width Q I is a value obtained by subtracting the quotient (floor (x / 2)) by the divisor a of the reference distance x from the first normalization adjustment term (smax) and adding the constant b.
  • FIG. 11C the shifted term P is “8-MOD3 (x)” and the left shift width Q is “smax-MOD3 (x) +3”.
  • MOD3 (x) is a remainder obtained by dividing x by a divisor 3
  • floor (x / 3) is a quotient obtained by dividing x by a divisor 3.
  • the shifted term P is “a value obtained by subtracting the remainder (MOD3 (x)) by the divisor a of the reference distance x from the power of 2 b”, and the left shift width Q is “first value”.
  • FIG. 11 (d) the shifted term P is “16-3 * MOD3 (x)” and the left shift width Q is “smax-MOD3 (x) +4”.
  • FIG. 11 (d) can be expressed as follows. That is, FIG.
  • the shifted term P is “a value obtained by subtracting the product of the remainder (MOD3 (x)) by the divisor a of the reference distance x and the constant c from the power of 2 b”
  • the left shift width Q I is a value obtained by subtracting the quotient (floor (x / 3)) by the divisor a of the reference distance x from the first normalization adjustment term (smax) and adding the constant b.
  • FIG. 11 (a) and FIG. 11 (c) can be collectively expressed as follows.
  • the specified divisor a the default constant b
  • the shifted term P is "the value obtained by subtracting the remainder from the divisor a of the reference distance x from the 2nd power of b”
  • the left shift width Q is "first normalization adjustment A value obtained by subtracting the quotient from the term by the divisor a of the reference distance x and adding a constant b ”is applied to the shifted term P by applying a left shift operation of the left shift width Q to derive the distance weight.
  • FIG. 11 (b) and FIG. 11 (d) can be collectively expressed as follows.
  • Set the specified divisor a, default constant b, default constant c, and the shifted term P is "the value obtained by subtracting the product of the remainder by the divisor a of the reference distance x and the constant c from the 2nd power of b", left
  • Set the shift width Q to "the value obtained by subtracting the quotient of the reference distance x from the divisor a and adding the constant b from the first normalization adjustment term".
  • the distance weight is derived by applying. As described above, according to the method of calculating the distance weight k [x] shown in FIG.
  • the value of the shifted term P can be set based on the remainder obtained by dividing the reference distance x by a predetermined divisor. Therefore, the shifted term P can be set to a value other than 1. Therefore, since a value other than the power of 2 can be derived as the value of the distance weight k [x], the degree of freedom of setting the distance weight is improved, and thus a predicted image with a smaller prediction residual is obtained by the predicted image correction process.
  • a distance weight that can be derived can be set.
  • the distance weight does not change even if the distance x changes.
  • the distance weight k [x] changes only once every two times as x increases to 8,8,4,4,2,2,1,1 and
  • the distance weight k [x] changes only once every three times as 8,8,8,4,4,4,2,2,2,1,1,1 do not do. This occurs because floor (x / d) in deriving the distance weight k [x] does not continuously change when d> 0 (changes by 1 when x increases by length d).
  • FIG. 11 may be combined with the calculation formula of the distance weight k [x] described with reference to FIG. 11 and the calculation formula of the distance weight k [x] described with reference to FIG.
  • FIG. 12 shows a formula for calculating the distance weight k [x] by such a combination.
  • Each calculation formula of the distance weight k [x] shown in FIG. 12 calculates the corresponding distance weight k [x] described with reference to FIG. 11 so that it becomes 0 when the reference distance x is a predetermined value or more.
  • the formula is modified. 12 (a) is shown in FIG. 11 (a), FIG. 12 (b) is shown in FIG. 11 (b), FIG. 12 (c) is shown in FIG. 11 (c), and FIG. 11 (d) respectively.
  • the distance weight k [x] may be derived by referring to the distance weight reference table in the storage area instead of calculating each time based on the calculation formula of FIG.
  • An example of the distance weight reference table is shown in FIG.
  • the tables shown in (a) to (d) of FIG. 13 are tables that hold the results of the distance weight calculation formulas of (a) to (d) of FIG.
  • FIGS. 11A and 11C are particularly suitable for hardware processing.
  • 4-MOD2 (x) can be processed without using a product that increases the mounting scale in hardware, and the same applies to 8-MOD3 (x).
  • the predicted image correction unit 145 may be configured to execute the predicted image correction process when the predicted block size satisfies a specific condition, and output the filtered predicted image input otherwise as a predicted image. .
  • the predicted image correction process is omitted when the predicted block size is a predetermined size or smaller, and the predicted image correction process is executed in other cases. For example, when the prediction block size is 4 ⁇ 4, 8 ⁇ 8, 16 ⁇ 16, and 32 ⁇ 32, the prediction image correction process is omitted for the prediction blocks of 4 ⁇ 4 and 8 ⁇ 8, and the prediction block size is 16 ⁇ 16 and 32 ⁇ 32.
  • Predictive image correction processing is executed in the prediction block.
  • the processing amount per unit area is large and becomes a bottleneck of processing. Therefore, by omitting the prediction image correction process with a relatively small prediction block, it is possible to reduce the code amount of the encoded data due to the improvement effect of the prediction image accuracy by the prediction image correction process without increasing the bottleneck process. .
  • the video encoding device 2 is a moving image encoding device including a predicted image generation unit 24 having the same function as that of the predicted image generation unit 14 described above, and encodes an input image # 10 to generate the moving image decoding device. 1 generates and outputs encoded data # 1 that can be decoded.
  • a configuration example of the moving image encoding device 2 will be described with reference to FIG.
  • FIG. 16 is a functional block diagram illustrating a configuration of the moving image encoding device 2. As illustrated in FIG.
  • the moving image encoding apparatus 2 includes an encoding setting unit 21, an inverse quantization / inverse conversion unit 22, an adder 23, a predicted image generation unit 24, a frame memory 25, a subtractor 26, A quantization unit 27 and an encoded data generation unit 29 are provided.
  • the encoding setting unit 21 generates image data related to encoding and various setting information based on the input image # 10. Specifically, the encoding setting unit 21 generates the next image data and setting information. First, the encoding setting unit 21 generates the CU image # 100 for the target CU by sequentially dividing the input image # 10 into slice units, tree block units, and CU units.
  • the encoding setting unit 21 generates header information H ′ based on the result of the division process.
  • the header information H ′ includes (1) information on the size and shape of the tree block belonging to the target slice and the position in the target slice, and (2) the size, shape and shape of the CU belonging to each tree block.
  • the encoding setting unit 21 refers to the CU image # 100 and the CU information CU 'to generate PT setting information PTI'.
  • the PT setting information PTI ′ includes information on all combinations of (1) a possible division pattern of the target CU to each PU (prediction block) and (2) a prediction mode that can be assigned to each prediction block. It is.
  • the encoding setting unit 21 supplies the CU image # 100 to the subtractor 26. In addition, the encoding setting unit 21 supplies the header information H ′ to the encoded data generation unit 29. In addition, the encoding setting unit 21 supplies the PT setting information PTI ′ to the predicted image generation unit 24.
  • the inverse quantization / inverse transform unit 22 performs inverse quantization and inverse orthogonal transform on the quantized prediction residual for each block supplied from the transform / quantization unit 27, thereby predicting the prediction residual for each block. To restore.
  • the inverse orthogonal transform is as already described with respect to the inverse quantization / inverse transform unit 13 shown in FIG.
  • the inverse quantization / inverse transform unit 22 integrates the prediction residual for each block according to the division pattern specified by the TT division information (described later), and generates the prediction residual D for the target CU.
  • the inverse quantization / inverse transform unit 22 supplies the prediction residual D for the generated target CU to the adder 24.
  • the predicted image generation unit 24 refers to the local decoded image P ′ and the PT setting information PTI ′ recorded in the frame memory 25 to generate a predicted image Pred for the target CU.
  • the predicted image generation unit 24 sets the prediction parameter obtained by the predicted image generation process in the PT setting information PTI ′, and transfers the set PT setting information PTI ′ to the encoded data generation unit 29.
  • the predicted image generation process performed by the predicted image generation unit 24 is the same as the predicted image generation unit 14 included in the video decoding device 1, and a description thereof will be omitted.
  • the predicted image generation unit 24 includes each component of the predicted image generation unit 14 illustrated in FIG. 5 and can generate and output a predicted image with the PT information PTI ′ and the local decoded image P ′ as inputs.
  • the adder 23 adds the predicted image Pred supplied from the predicted image generation unit 24 and the prediction residual D supplied from the inverse quantization / inverse transform unit 22 to thereby obtain a decoded image P for the target CU. Generate.
  • Decoded decoded image P is sequentially recorded in the frame memory 25.
  • decoded images corresponding to all tree blocks decoded prior to the target tree block for example, all tree blocks preceding in the raster scan order
  • the time of decoding the target tree block It is recorded.
  • the subtractor 26 generates a prediction residual D for the target CU by subtracting the prediction image Pred from the CU image # 100.
  • the subtractor 26 supplies the generated prediction residual D to the transform / quantization unit 27.
  • the transform / quantization unit 27 generates a quantized prediction residual by performing orthogonal transform and quantization on the prediction residual D.
  • the orthogonal transformation refers to transformation from the pixel region to the frequency region.
  • Examples of inverse orthogonal transformation include DCT transformation (DiscretecreCosine Transform), DST transformation (Discrete Sine Transform), and the like.
  • the transform / quantization unit 27 refers to the CU image # 100 and the CU information CU 'and determines a division pattern of the target CU into one or a plurality of blocks. Further, according to the determined division pattern, the prediction residual D is divided into prediction residuals for each block.
  • the transform / quantization unit 27 generates a prediction residual in the frequency domain by orthogonally transforming the prediction residual for each block, and then quantizes the prediction residual in the frequency domain to Generate quantized prediction residuals.
  • the transform / quantization unit 27 generates the quantization prediction residual for each block, TT division information that specifies the division pattern of the target CU, information about all possible division patterns for each block of the target CU, and TT setting information TTI ′ including is generated.
  • the transform / quantization unit 27 supplies the generated TT setting information TTI ′ to the inverse quantization / inverse transform unit 22 and the encoded data generation unit 29.
  • the encoded data generation unit 29 encodes header information H ′, TT setting information TTI ′, and PT setting information PTI ′, and multiplexes the encoded header information H, TT setting information TTI, and PT setting information PTI. Coded data # 1 is generated and output.
  • the moving image encoding apparatus includes the predicted image generation unit 24 including the predicted image correction unit 145 as a component, and the predicted image generation unit 24 targets each pixel of the filtered predicted image.
  • a predicted image (corrected predicted image) is generated from the unfiltered reference pixel value and the filtered predicted pixel value by weight addition based on the weight coefficient.
  • the weight coefficient is a product of a reference intensity coefficient determined according to the prediction direction indicated by the prediction mode and a distance weight that monotonously decreases as the distance between the target pixel and the reference region increases.
  • a predicted pixel value with high prediction accuracy can be generated by increasing the size and generating a predicted image.
  • the weighting factor is the product of the reference strength factor and the distance weight, by calculating the distance weight value in advance for each distance and storing it in the table, the weighting factor can be obtained without using a right shift operation or division. Coefficients can be derived.
  • the moving image decoding apparatus 1 and the moving image encoding apparatus 2 include the predicted image generation unit 14 illustrated in FIG. 5, thereby deriving a predicted image with high prediction accuracy with a smaller calculation amount, and moving image. Can be realized.
  • the predicted image generation unit 14 can be used for another purpose.
  • the predicted image generation unit 14 can be used by being incorporated in an image defect repairing device that repairs a defect in a moving image or a still image.
  • the prediction block corresponds to a target region for defect repair
  • the input to the predicted image generation unit 14 is a prediction mode corresponding to a repair pattern of an image defect, and an input image around the prediction block or a repaired image. .
  • the output is a repaired image in the prediction block.
  • the prediction image generation device can be realized with the same configuration as the prediction image generation unit 14, and the prediction image generation device can be used as a component of a moving image decoding device, a moving image encoding device, and an image loss repair device.
  • the above-described moving image encoding device 2 and moving image decoding device 1 can be used by being mounted on various devices that perform transmission, reception, recording, and reproduction of moving images.
  • the moving image may be a natural moving image captured by a camera or the like, or may be an artificial moving image (including CG and GUI) generated by a computer or the like.
  • moving image encoding device 2 and moving image decoding device 1 can be used for transmission and reception of moving images.
  • FIG. 17 is a block diagram showing a configuration of a transmission apparatus PROD_A in which the moving picture encoding apparatus 2 is mounted.
  • the transmission device PROD_A modulates a carrier wave with an encoding unit PROD_A1 that obtains encoded data by encoding a moving image, and the encoded data obtained by the encoding unit PROD_A1.
  • a modulation unit PROD_A2 that obtains a modulation signal and a transmission unit PROD_A3 that transmits the modulation signal obtained by the modulation unit PROD_A2 are provided.
  • the moving image encoding apparatus 2 described above is used as the encoding unit PROD_A1.
  • the transmission device PROD_A is a camera PROD_A4 that captures a moving image, a recording medium PROD_A5 that records the moving image, and an input terminal PROD_A6 for inputting the moving image from the outside as a supply source of the moving image input to the encoding unit PROD_A1. And an image processing unit A7 for generating or processing an image.
  • FIG. 17A illustrates a configuration in which the transmission apparatus PROD_A includes all of these, but a part of the configuration may be omitted.
  • the recording medium PROD_A5 may be a recording of a non-encoded moving image, or a recording of a moving image encoded by a recording encoding scheme different from the transmission encoding scheme. It may be a thing. In the latter case, a decoding unit (not shown) for decoding the encoded data read from the recording medium PROD_A5 according to the recording encoding method may be interposed between the recording medium PROD_A5 and the encoding unit PROD_A1.
  • FIG. 17 is a block diagram illustrating a configuration of a receiving device PROD_B in which the moving image decoding device 1 is mounted.
  • the receiving device PROD_B includes a receiving unit PROD_B1 that receives a modulated signal, a demodulating unit PROD_B2 that obtains encoded data by demodulating the modulated signal received by the receiving unit PROD_B1, and a demodulator.
  • a decoding unit PROD_B3 that obtains a moving image by decoding the encoded data obtained by the unit PROD_B2.
  • the moving picture decoding apparatus 1 described above is used as the decoding unit PROD_B3.
  • the receiving device PROD_B has 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.
  • PROD_B6 may be further provided.
  • FIG. 17B illustrates a configuration in which the reception apparatus PROD_B includes all of these, but a part may be omitted.
  • the recording medium PROD_B5 may be used for recording a non-encoded moving image, or may be encoded using a recording encoding method different from the transmission encoding method. May be. In the latter case, an encoding unit (not shown) for encoding the moving image acquired from the decoding unit PROD_B3 according to the recording encoding method may be interposed between the decoding unit PROD_B3 and the recording medium PROD_B5.
  • the transmission medium for transmitting the modulation signal may be wireless or wired.
  • the transmission mode for transmitting the modulated signal may be broadcasting (here, a transmission mode in which the transmission destination is not specified in advance) or communication (here, transmission in which the transmission destination is specified in advance). Refers to the embodiment). That is, the transmission of the modulation signal may be realized by any of wireless broadcasting, wired broadcasting, wireless communication, and wired communication.
  • a terrestrial digital broadcast broadcasting station (broadcasting equipment or the like) / receiving station (such as a television receiver) is an example of a transmitting device PROD_A / receiving device PROD_B that transmits and receives a modulated signal by wireless broadcasting.
  • a broadcasting station (such as broadcasting equipment) / receiving station (such as a television receiver) of cable television broadcasting is an example of a transmitting device PROD_A / receiving device PROD_B that transmits and receives a modulated signal by cable broadcasting.
  • a server workstation etc.
  • Client television receiver, personal computer, smart phone etc.
  • VOD Video On Demand
  • video sharing service using the Internet is a transmitting device for transmitting and receiving modulated signals by communication.
  • PROD_A / reception device PROD_B usually, either a wireless or wired transmission medium is used in a LAN, and a wired transmission medium is used in a WAN.
  • the personal computer includes a desktop PC, a laptop PC, and a tablet PC.
  • the smartphone also includes a multi-function mobile phone terminal.
  • the video sharing service client has a function of encoding a moving image captured by the camera and uploading it to the server. That is, the client of the video sharing service functions as both the transmission device PROD_A and the reception device PROD_B.
  • FIG. 18 is a block diagram showing a configuration of a recording apparatus PROD_C in which the above-described moving picture encoding apparatus 2 is mounted.
  • the recording device PROD_C includes an encoding unit PROD_C1 that obtains encoded data by encoding a moving image, and the encoded data obtained by the encoding unit PROD_C1 on the recording medium PROD_M.
  • a writing unit PROD_C2 for writing.
  • the moving image encoding apparatus 2 described above is used as the encoding unit PROD_C1.
  • the recording medium PROD_M may be of a type built in the recording device PROD_C, such as (1) HDD (Hard Disk Drive) or SSD (Solid State Drive), or (2) SD memory. It may be of the type connected to the recording device PROD_C, such as a card or USB (Universal Serial Bus) flash memory, or (3) DVD (Digital Versatile Disc) or BD (Blu-ray Disc: registration) Or a drive device (not shown) built in the recording device PROD_C.
  • HDD Hard Disk Drive
  • SSD Solid State Drive
  • SD memory such as a card or USB (Universal Serial Bus) flash memory, or (3) DVD (Digital Versatile Disc) or BD (Blu-ray Disc: registration) Or a drive device (not shown) built in the recording device PROD_C.
  • the recording device PROD_C receives a moving image as a supply source of a moving image to be input to the encoding unit PROD_C1, a camera PROD_C3 that captures a moving image, an input terminal PROD_C4 for inputting a moving image from the outside, and a moving image. May include a receiving unit PROD_C5 and an image processing unit C6 that generates or processes an image.
  • FIG. 18A illustrates a configuration in which the recording apparatus PROD_C includes all of these, but a part of the configuration may be omitted.
  • the receiving unit PROD_C5 may receive a non-encoded moving image, or may receive encoded data encoded by a transmission encoding scheme different from the recording encoding scheme. You may do. In the latter case, a transmission decoding unit (not shown) that decodes encoded data encoded by the transmission encoding method may be interposed 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, and an HD (Hard Disk) recorder (in this case, the input terminal PROD_C4 or the receiving unit PROD_C5 is a main source of moving images).
  • a camcorder in this case, the camera PROD_C3 is a main source of moving images
  • a personal computer in this case, the receiving unit PROD_C5 is a main source of moving images
  • a smartphone in this case, the camera PROD_C3 or The receiving unit PROD_C5 or the image processing unit C6 is a main supply source of moving images
  • a recording apparatus PROD_C is also an example of such a recording apparatus PROD_C.
  • FIG. 18 is a block showing a configuration of a playback device PROD_D equipped with the above-described video decoding device 1.
  • the playback device PROD_D reads a moving image by decoding a read unit PROD_D1 that reads encoded data written on the recording medium PROD_M and a coded data read by the read unit PROD_D1. And a decoding unit PROD_D2 to be obtained.
  • the moving picture decoding apparatus 1 described above is used as the decoding unit PROD_D2.
  • the recording medium PROD_M may be of the type built into the playback device PROD_D, such as (1) HDD or SSD, or (2) such as an SD memory card or USB flash memory, It may be of a type connected to the playback device PROD_D, or (3) 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 has a display PROD_D3 that displays a moving image, an output terminal PROD_D4 that outputs the moving image to the outside, and a transmission unit that transmits the moving image as a supply destination of the moving image output by the decoding unit PROD_D2.
  • PROD_D5 may be further provided.
  • FIG. 18B illustrates a configuration in which the playback apparatus PROD_D includes all of these, but a part of the configuration may be omitted.
  • the transmission unit PROD_D5 may transmit an unencoded moving image, or transmits encoded data encoded by a transmission encoding method different from the recording encoding method. You may do. In the latter case, it is preferable to interpose an encoding unit (not shown) that encodes a moving image with an encoding method for transmission between the decoding unit PROD_D2 and the transmission unit PROD_D5.
  • Examples of such a playback device PROD_D include a DVD player, a BD player, and an HDD player (in this case, an output terminal PROD_D4 to which a television receiver or the like is connected is a main supply destination of moving images).
  • a television receiver in this case, the display PROD_D3 is a main supply destination of moving images
  • a digital signage also referred to as an electronic signboard or an electronic bulletin board
  • the display PROD_D3 or the transmission unit PROD_D5 is the main supply of moving images.
  • Desktop PC (in this case, the output terminal PROD_D4 or the transmission unit PROD_D5 is the main video image supply destination), laptop or tablet PC (in this case, the display PROD_D3 or the transmission unit PROD_D5 is a moving image)
  • a smartphone which is a main image supply destination
  • a smartphone in this case, the display PROD_D3 or the transmission unit PROD_D5 is a main moving image supply destination
  • the like are also examples of such a playback device PROD_D.
  • Each block of the moving picture decoding apparatus 1 and the moving picture encoding apparatus 2 described above may be realized in hardware by a logic circuit formed on an integrated circuit (IC chip), or may be a CPU (Central Processing). Unit) may be implemented in software.
  • IC chip integrated circuit
  • CPU Central Processing
  • each device includes a CPU that executes instructions of a program that realizes each function, a ROM (Read (Memory) that stores the program, a RAM (Random Memory) that expands the program, the program, and various types
  • a storage device such as a memory for storing data is provided.
  • An object of the present invention is to provide a recording medium in which a program code (execution format program, intermediate code program, source program) of a control program for each of the above devices, which is software that realizes the above-described functions, is recorded in a computer-readable manner This can also be achieved by supplying each of the above devices and reading and executing the program code recorded on the recording medium by the computer (or CPU or MPU).
  • Examples of the recording medium include tapes such as magnetic tapes and cassette tapes, magnetic disks such as floppy (registered trademark) disks / hard disks, CD-ROMs (Compact Disc-Read-Only Memory) / MO discs (Magneto-Optical discs).
  • tapes such as magnetic tapes and cassette tapes
  • magnetic disks such as floppy (registered trademark) disks / hard disks
  • CD-ROMs Compact Disc-Read-Only Memory
  • MO discs Magnetic-Optical discs
  • IC cards including memory cards
  • Cards such as optical cards
  • each of the above devices may be configured to be connectable to a communication network, and the program code may be supplied via the communication network.
  • the communication network is not particularly limited as long as it can transmit the program code.
  • the Internet intranet, extranet, LAN (Local Area Network), ISDN (Integrated Services Digital Network), VAN (Value-Added Network), CATV (Community Area Antenna / Cable Television) communication network, Virtual Private Network (Virtual Private Network) Network), telephone line network, mobile communication network, satellite communication network, and the like.
  • the transmission medium constituting the communication network may be any medium that can transmit the program code, and is not limited to a specific configuration or type.
  • IEEE Institute of Electrical and Electronic Engineers 1394, USB, power line carrier, cable TV line, telephone line, ADSL (Asymmetric Digital Subscriber Line) and other wired lines such as IrDA (Infrared Data Association) or remote control, Bluetooth (registered trademark), IEEE 802.11 wireless, HDR (High Data Rate), NFC (Near Field Communication), DLNA (registered trademark) (Digital Living Network Alliance), mobile phone network, satellite line, terrestrial digital network, etc. It can also be used wirelessly.
  • the present invention can 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.
  • the present invention can be 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. Further, the present invention can be suitably applied to the data structure of encoded data generated by an image encoding device and referenced by the image decoding device.
  • a predicted image generation device includes a filtered reference pixel setting unit that derives a filtered reference pixel value on a reference region set for a prediction block, and a prediction mode. Based on an intra prediction unit that derives a filtered prediction pixel value of the prediction block with reference to the filtered reference pixel value by a prediction method according to the above, an unfiltered reference pixel value on the reference region, and the prediction mode A predicted image correction unit that generates a predicted image from the filtered predicted pixel value by the predicted image correction process, and the predicted image correcting unit includes at least one of the filtered predicted pixel value in the target pixel in the predicted block, and By applying weighted addition using a weighting factor to at least one unfiltered reference pixel value, predicted pixel values constituting the predicted image are
  • the weight coefficient for the unfiltered reference pixel value is a product of a reference intensity coefficient determined according to the prediction direction indicated by the prediction mode and a distance weight that monotonously decreases as the reference distance for
  • the predicted image correction unit may be a sum of a product of the unfiltered reference pixel value and a weighting factor, a product of the filtered predicted pixel value and the weighting factor, and a rounding adjustment term.
  • a right shift operation is applied to derive a predicted pixel value, and the width of the right shift operation is the sum of the first normalization adjustment term and the second normalization adjustment term, and the distance weight is 2 Is a value obtained by subtracting an integer that monotonously increases with an increase in the distance between the target pixel and the reference region from the first normalization adjustment term. It is characterized by being set.
  • the predictive image generation apparatus may further include the one or more unfiltered reference pixel values including a left unfiltered reference pixel value and an upper unfiltered reference pixel value, and the left unfiltered reference pixel value.
  • the distance weight is a value that monotonously decreases as the reference distance increases with the horizontal distance between the target pixel and the reference region as the reference distance, and the distance weight for the upper unfiltered reference pixel value is the target
  • the vertical distance between the pixel and the reference region is a reference distance, and the value is monotonously decreasing as the reference distance increases.
  • the one or more unfiltered reference pixel values include at least two upper left unfiltered reference pixel values, and the distance weight for one upper left unfiltered reference pixel value is a target pixel.
  • the distance in the horizontal direction between the reference pixel and the reference area is a value that monotonously decreases as the reference distance increases, and the distance weight for the other upper left unfiltered reference pixel value is between the target pixel and the reference area.
  • the distance in the vertical direction is a value that monotonously decreases as the reference distance increases.
  • the predicted image generation device is characterized in that a value of 0 is derived as the distance weight when the reference distance is equal to or greater than a predetermined threshold.
  • the predicted image generation apparatus is characterized in that the predetermined threshold is half of the width or height of the prediction block.
  • the predicted image generation apparatus is characterized in that the distance weight is derived by referring to a distance weight deriving table on the storage area with at least one reference distance as an index.
  • the predicted image generation apparatus is characterized in that the distance weight applies a left shift operation by a left shift width to the shifted term.
  • the predicted image generation apparatus sets the shifted term to a value obtained by subtracting the remainder of the reference distance divisor a from the power of 2 using a predetermined divisor a and a predetermined constant b.
  • the left shift width is set to a value obtained by subtracting the quotient of the reference distance from the divisor a from the first normalization adjustment term and adding a constant b.
  • the distance weight is derived by applying a left shift operation by a left shift width to the shifted term, and a predetermined divisor a, a predetermined constant b, and a predetermined constant c.
  • the value obtained by subtracting the quotient of the reference distance by the divisor a is set to a value obtained by adding a constant b.
  • the predicted image correction unit In the predicted image generation device, the predicted image correction unit generates the predicted image by executing the predicted image correction process when the predicted block size satisfies a specific condition, and is input in other cases. It is characterized in that the filtered predicted image is directly used as a predicted image.
  • an image decoding apparatus restores an image from encoded data by generating a prediction image in units of prediction blocks using an intra prediction scheme associated with a prediction mode.
  • a filtered reference pixel setting unit that derives a filtered reference pixel value on a reference region set for a prediction block, and the filtered reference pixel value is referred to by a prediction method according to a prediction mode.
  • a predictive image correction unit that generates the prediction image correction unit.
  • a predicted pixel value that constitutes the predicted image is derived by applying weighted addition using a weighting factor to the completed predicted pixel value and at least one or more unfiltered reference pixel values, and the unfiltered reference pixel
  • the weight coefficient for the value is a product of a reference intensity coefficient determined according to a prediction direction indicated by the prediction mode and a distance weight that monotonously decreases as the reference distance to the target pixel increases.
  • an image encoding device generates encoded images from a moving image by generating a predicted image in units of prediction blocks by an intra prediction method associated with a prediction mode.
  • a filtered reference pixel setting unit for deriving a filtered reference pixel value on a reference region set for a prediction block
  • An intra prediction unit that derives a filtered prediction pixel value of the prediction block by referring to the filtered reference pixel value by a prediction method according to a prediction mode; an unfiltered reference pixel value on the reference region; and the prediction mode
  • a prediction image correction unit that generates a prediction image from the filtered prediction pixel value by a prediction image correction process based on the prediction image correction unit, the prediction image correction unit, the filtered prediction pixel value in the target pixel in the prediction block,
  • a prediction pixel value constituting the prediction image is derived by applying weighted addition using a weighting factor to at least one unfiltered reference pixel
  • Video decoding device (image decoding device) 14, 24 Prediction image generation unit 141 Prediction block setting unit 142 Unfiltered reference pixel setting unit 143 Filtered reference pixel setting unit 144 Intra prediction unit 144D DC prediction unit 144P Planar prediction unit 144H Horizontal prediction unit 144V Vertical prediction unit 144A Angular prediction unit 145 Predictive image correction unit 16, 25 Frame memory 2 Video encoding device (image encoding device)

Landscapes

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

Abstract

未フィルタ参照画素値を参照して予測画像の各画素を参照領域からの距離に応じて導出する場合に、複数画素にわたる並列処理の実行が容易な方法で予測画像を生成する。予測ブロック内の対象画素におけるフィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することによって予測画像を構成する予測画素値を導出し、未フィルタ参照画素値に対する重み係数を、予測モードの示す予測方向に応じて定まる参照強度係数と、対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積として導出する。

Description

予測画像生成装置、画像復号装置および画像符号化装置
 本発明は、画像符号化や画像修復を主な目的として画像の部分領域の予測画像を周辺領域の画像を用いて生成する予測画像生成装置、予測画像を利用して符号化データを復号する画像復号装置、および、予測画像を利用して画像を符号化することで符号化データを生成する画像符号化装置に関する。
 動画像を効率的に伝送または記録するために、動画像を符号化することによって符号化データを生成する動画像符号化装置、および、当該符号化データを復号することによって復号画像を生成する動画像復号装置が用いられている。
 具体的な動画像符号化方式としては、例えば、HEVC(High-Efficiency Video Coding)に採用されている方式(非特許文献1)がある。
 HEVCでは、入力画像を符号化および復号して得られる局所復号画像に基づいて予測画像が生成され、当該予測画像を入力画像(原画像)から減算して得られる予測残差(「差分画像」または「残差画像」と呼ぶこともある)を符号化することで、入力画像を直接符号化する場合に較べて、より少ない符号量の符号化データによって入力画像を表現できる。予測画像の生成方法としては、画面間予測(インター予測)、および、画面内予測(イントラ予測)がある。HEVCの画面内予測では、対象領域に近接する領域を参照領域として設定し、参照領域上の復号済画素(参照画素)の値に基づいて予測画像を生成する。参照画素は、直接、未フィルタ参照画素として利用される場合と、近接参照画素間でローパスフィルタを適用して得られる値をフィルタ済参照画素として利用する場合がある。
 また、別の画面内予測の方式として、フィルタ済参照画素を用いた画面内予測で得られる予測画素値を参照領域上の未フィルタ参照画素値に基づいて補正する方式(非特許文献2)が開示されている。前記の重み付けでは、補正対象画素の予測対象領域(予測ブロック)内位置に基づいて、既定の参照画素強度係数を右シフトして得られる距離重みに基づいて予測画素値を補正する。この補正により予測ブロック境界付近の予測画像の精度を向上させることができるため、符号化データの符号量を削減できる。
 非特許文献2の方式の詳細について、図14と図15を参照して説明する。図14は、画面内予測における予測ブロック上の予測画素と、予測ブロックに対して設定された参照領域上の参照画素の位置関係を示した図である。図14(a)は、予測ブロック内の位置(x,y)における予測画素値p[x,y]、位置(x,y)の上方の画素であって、予測ブロック上辺に隣接する参照領域上の位置(x,-1)における未フィルタ参照画素値r[x,-1]、位置(x,y)の左方の画素であって、予測ブロック左辺に隣接する参照領域上の位置(-1,y)における未フィルタ参照画素の画素値r[-1,y](未フィルタ参照画素値r[-1,y])、予測ブロックの左上に隣接する参照領域上の位置(-1,-1)における未フィルタ参照画素r[-1,-1]の位置をそれぞれ示している。同様に、図14(b)は、位置(x,y)におけるフィルタ済参照画素値による予測画素値q[x,y](フィルタ済予測画素値q[x,y])、位置(x,-1)におけるフィルタ済参照画素値s[x,-1]、位置(-1,y)におけるフィルタ済参照画素値s[-1,y]、および、位置(-1,-1)におけるフィルタ済参照画素値s[-1,-1]を示している。
 図15(a)は、予測画素値p[x,y]の導出式を示す。予測画素値p[x,y]は、フィルタ済予測画素値q[x,y]と、未フィルタ参照画素値r[x,-1]、r[-1,y]、r[-1,-1]とを重み付き加算することで導出される。重み係数は、既定の参照強度係数(c1v、c2v、c1h、c2h)を位置 (x,y)に基づいて右シフトした値を用いる。例えば、未フィルタ参照画素値r[x,-1]に対する重み係数は、c1v >> floor(y/d)、である。ここで、floor()は床関数、dは予測ブロックサイズに応じた既定のパラメータ、「y/d」はdによるyの除算(小数点以下切捨)を表す。未フィルタ参照画素値に対する重み係数は、対応する参照強度係数を参照距離に応じた重み(距離重み)により調整した値と表現できる。また、b[x,y]はフィルタ済予測画素値q[x,y]に対する重み係数であって、図15(b)に示す式により導出される。b[x,y]は、重み係数の総和が、重み付け加算時の分母(図15(a)の式では「>>7」、つまり128に相当)と一致するように設定される。図15(a)の式によれば、xやyの値が大きいほど未フィルタ参照画素の重み係数の値が小さくなる。言い換えると、予測ブロック内の位置が参照領域に近いほど、未フィルタ参照画素の重み係数が大きくなるという性質を有している。
ITU-T Rec. H.265 (V2), 2014年10月29日公開) "Position dependent prediction combination", ITU-T STUDY GROUP 16 COM16-C1046-E, (2015年9月公開)
 しかしながら、非特許文献2では、重み係数の計算において、参照強度係数を参照距離(予測対象画素と参照領域の距離)に応じた右シフト処理が必要であるため、ハードウェアまたはソフトウェアの並列処理機能(例えばベクトル演算命令)により複数画素の予測画素値を並列処理により導出することが困難であるという課題があった。より具体的には、予測ブロック内の複数画素に対する予測画像を並列処理により生成する場合に、各画素位置で参照距離が異なり、そのため利用可能な並列処理機能が存在しない場合があるという課題があった。
 上記課題を解決するため、本発明の一態様に係る予測画像生成装置は、予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、上記参照領域上の未フィルタ参照画素値と上記予測モードとに基づいた予測画像補正処理により上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴としている。
 上記課題を解決するため、本発明の一態様に係る画像復号装置は、予測モードに対応付けられたイントラ予測方式によって予測ブロックを単位として予測画像を生成することで符号化データから画像を復元する画像復号装置において、予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、上記参照領域上の未フィルタ参照画素値と上記予測モードとに基づいた予測画像補正処理により上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴としている。
 上記課題を解決するため、本発明の一態様に係る画像符号化装置は、予測モードに対応付けられたイントラ予測方式によって予測ブロックを単位として予測画像を生成することで動画像から符号化データを生成する画像符号化装置において、予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、
 予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、上記参照領域上の未フィルタ参照画素値と上記予測モードとに基づいた予測画像補正処理により上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴としている。
 本発明の一態様による予測画像生成装置は、参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、上記フィルタ済参照画素値を参照してフィルタ済予測画素値を導出するイントラ予測部と、上記参照領域上の未フィルタ参照画素値を参照した予測画像補正処理により上記フィルタ済予測画素値を補正して予測画像を生成する予測画像補正部を備えており、上記予測画像補正部は、対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで予測画素値を導出し、上記未フィルタ参照画素値に対する上記重み係数は、予測方向に応じて定まる参照強度係数と、参照距離の増加に伴い単調減少する距離重みとの積として導出される。そのため、重み係数を参照してフィルタ済予測画素値と未フィルタ参照画素値を重み付き加算して予測画像を生成する場合に、参照距離依存パラメータによる右シフトを用いることなく、より並列実装が容易な参照距離依存パラメータ(距離重み)の積により重み係数を導出できるという効果を奏する。
 また、本発明の一態様による画像復号装置(動画像復号装置)、および、画像符号化装置(動画像符号化装置)は、上記予測画像生成装置に相当する予測画像生成部を備えており、重み係数を参照してフィルタ済予測画素値と未フィルタ参照画素値を重み付き加算するこで生成された予測画像を用いて符号化または復号を行う場合に、参照距離依存パラメータによる右シフトを用いることなく、より並列実装が容易な参照距離依存パラメータ(距離重み)の積により重み係数を導出できるという効果を奏する。
本発明の一実施形態に係る予測画像補正部145の動作を示すフロー図である。 上記動画像復号装置の概略的構成について示した機能ブロック図である。 本発明の一実施形態に係る動画像符号化装置によって生成され、上記動画像復号装置によって復号される符号化データのデータ構成を示す図であり、(a)~(d)は、それぞれ、ピクチャレイヤ、スライスレイヤ、CTUレイヤ、およびCUレイヤを示す図である。 方向予測に属する33種類の予測モードについて、予測モードの識別子に対応する予測方向を示す図である。 本発明の一実施形態に係る予測画像生成部の概略的構成について示した機能ブロック図である。 EQ1: 予測画像補正部145における、予測ブロック内位置(x,y)における予測画素値p[x,y]の導出を説明するための図である。(a)は予測画素値p[x,y]の導出式の一例を示し、(b)は、重み係数b[x,y]の導出式の一例を示し、(c)は距離重みk[・]の導出式の一例を示す。 上記予測画像生成部におけるCU単位の予測画像生成処理の概略を示すフローチャートである。 EQ2:参照距離が所定の値以上の場合に0とする距離重みk[・]の導出式の一例である。 TBL_EQ2:第一の正規化調整項smaxが異なる場合の参照距離と重み係数k[・]の関係を表す図である。(a)、(b)、(c)はそれぞれブロックサイズを示す変数dの値が、1,2,3の場合の参照距離と重み係数k[・]の関係を示す。 EQx:予測ブロック内位置(x,y)における予測画素値p[x,y]の導出の別例を説明するための図である。(a)は予測画素値p[x,y]の導出式の一例を示し、(b)は、重み係数b[x,y]の導出式の一例を示し、(c)は距離シフト値s[・]の導出式の一例を示す。 EQ3a:左シフト演算により距離重みk[x]を導出する計算式の一例を示す図である。(a)(b)は、d=2の場合に用いる距離重みk[x]の導出式を示し、 (c)(d)はd=1の場合に用いる距離重みk[x]の導出式を示す。 EQ3b: 左シフト演算により距離重みk[x]を導出する計算式の変形例の一例を示す図である。 TBL_EQ3: 距離重みk[・]を導出するための距離重み参照テーブルの一例を示す図である。(a)から(d)は、図12(a)から(d)の距離重みの計算式の結果を保持している。 従来技術に画面内予測における予測ブロック上の予測画素と、予測ブロックに対して設定された参照領域上の参照画素の位置関係を示した図である。(a)は未フィルタ参照画素値の場合を示し、(b)はフィルタ済参照画素値の場合を示す。 (a)は、従来技術に係る予測画素値p[x, y]の導出式を示し、(b)は、従来技術に係る重み係数b[x, y]の導出式を示すである。 本発明の一実施形態に係る動画像符号化装置の構成について示す機能ブロック図である。 上記動画像符号化装置を搭載した送信装置、および、上記動画像復号装置を搭載した受信装置の構成について示した図である。(a)は、動画像符号化装置を搭載した送信装置を示しており、(b)は、動画像復号装置を搭載した受信装置を示している。 上記動画像符号化装置を搭載した記録装置、および、上記動画像復号装置を搭載した再生装置の構成について示した図である。(a)は、動画像符号化装置を搭載した記録装置を示しており、(b)は、動画像復号装置を搭載した再生装置を示している。
 本発明の一実施形態について図1~図18を参照して説明する。まず、図2を参照して、動画像復号装置(画像復号装置)1および動画像符号化装置(画像符号化装置)2の概要について説明する。図2は、動画像復号装置1の概略的構成を示す機能ブロック図である。
 図2に示す動画像復号装置1および動画像符号化装置2は、H.264/MPEG-4 AVC規格に採用されている技術や、HEVC(High-Efficiency Video Coding)規格に採用されている技術、およびその改良技術を実装している。
 動画像符号化装置2は、特定の動画像符号化方式において、エンコーダからデコーダに伝送されることが規定されているシンタックス(syntax)の値をエントロピー符号化して符号化データ#1を生成する。
 動画像復号装置1には、動画像符号化装置2が動画像を符号化した符号化データ#1が入力される。動画像復号装置1は、入力された符号化データ#1を復号して動画像#2を外部に出力する。動画像復号装置1の詳細な説明に先立ち、符号化データ#1の構成を以下に説明する。
〔符号化データの構成〕
 図3を用いて、動画像符号化装置2によって生成され、動画像復号装置1によって復号される符号化データ#1の構成例を説明する。符号化データ#1は、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャに相当する部分符号化データを含む。
 符号化データ#1におけるピクチャレイヤ以下の階層構造を図3に示す。図3の(a)~(d)は、それぞれ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、ツリーブロック(Tree block)TBLKを規定するツリーブロックレイヤ、ツリーブロックTBLKに含まれる符号化単位(Coding Unit;CU)を規定するCUレイヤを示す図である。
 (ピクチャレイヤ)
 ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。ピクチャPICTは、図3(a)に示すように、ピクチャヘッダPH、及び、スライスS1~SNSを含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
 なお、以下、スライスS1~SNSのそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化データ#1に含まれるデータであって、添え字を付している他のデータについても同様である。
 ピクチャヘッダPHには、対象ピクチャの復号方法を決定するために動画像復号装置1が参照する符号化パラメータ群が含まれている。例えば、予測残差の量子化ステップのピクチャ内における基準値(pic_init_qp_minus26)は、ピクチャヘッダPHに含まれる符号化パラメータの一例である。
 なお、ピクチャヘッダPHは、ピクチャー・パラメーター・セット(PPS:Picture Parameter Set)とも称される。
 (スライスレイヤ)
 スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。スライスSは、図3(b)に示すように、スライスヘッダSH、及び、ツリーブロックTBLK1~TBLKNC(NCはスライスSに含まれるツリーブロックの総数)を含んでいる。
 スライスヘッダSHには、対象スライスの復号方法を決定するために動画像復号装置1が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。
 スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単方向予測、又は、イントラ予測を用いるPスライス、(3)符号化の際に単方向予測、双方向予測、又は、イントラ予測を用いるBスライスなどが挙げられる。
 (ツリーブロックレイヤ)
 ツリーブロックレイヤでは、処理対象のツリーブロックTBLK(以下、対象ツリーブロックとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
 ツリーブロックTBLKは、ツリーブロックヘッダTBLKHと、符号化単位情報CU1~CUNL(NLはツリーブロックTBLKに含まれる符号化単位情報の総数)とを含む。ここで、まず、ツリーブロックTBLKと、符号化単位情報CUとの関係について説明すると次のとおりである。
 ツリーブロックTBLKは、イントラ予測またはインター予測、および、変換の各処理ためのブロックサイズを特定するためのユニットに分割される。各ユニットへの分割は、ツリーブロックTBLKの再帰的な4分木分割により表現される。この再帰的な4分木分割により得られる木構造のことを以下、符号化ツリー(coding tree)と称する。
 以下、符号化ツリーの末端のノードであるリーフ(leaf)に対応するユニットを、符号化ノード(coding node)として参照する。また、符号化ノードは、符号化処理の基本的な単位となるため、以下、符号化ノードのことを、符号化単位(CU)とも称する。
 つまり、符号化単位情報(以下、CU情報と称する)CU1~CUNLは、ツリーブロックTBLKを再帰的に4分木分割して得られる各符号化ノード(符号化単位)に対応する情報である。
 また、符号化ツリーのルート(root)は、ツリーブロックTBLKに対応付けられる。換言すれば、ツリーブロックTBLKは、複数の符号化ノードを再帰的に含む4分木分割の木構造の最上位ノードに対応付けられる。
 なお、各符号化ノードのサイズは、当該符号化ノードが直接に属する符号化ノード(すなわち、当該符号化ノードの1階層上位のノードのユニット)のサイズの縦横とも半分である。
 また、各符号化ノードの取り得るサイズは、ツリーブロックのサイズと、符号化データ#1のシーケンスパラメータセットSPSに含まれる、符号化ノードのサイズ指定情報に依存する。ツリーブロックが符号化ノードのルートとなることから、符号化ノードの最大サイズはツリーブロックのサイズとなる。ツリーブロックの最大サイズが符号化ノード(CU)の最大サイズに一致することから、ツリーブロックの呼称としてLCU(Largest CU)やCTU(Coding Tree Unit)が用いられることもある。一般的な設定では、最大符号化ノードサイズが64×64画素、最小符号化ノードサイズが8×8画素となる符号化ノードのサイズ指定情報が用いられる。その場合、符号化ノードと符号化単位CUのサイズは、64×64画素、32×32画素、16×16画素、または、8×8画素のいずれかとなる。
 (ツリーブロックヘッダ)
 ツリーブロックヘッダTBLKHには、対象ツリーブロックの復号方法を決定するために動画像復号装置1が参照する符号化パラメータが含まれる。具体的には、図3の(c)に示すように、対象ツリーブロックの各CUへの分割パターンを指定するツリーブロック分割情報SP_TBLK、および、量子化ステップの大きさを指定する量子化パラメータ差分Δqp(qp_delta)が含まれる。
 ツリーブロック分割情報SP_TBLKは、ツリーブロックを分割するための符号化ツリーを表す情報であり、具体的には、対象ツリーブロックに含まれる各CUの形状、サイズ、および、対象ツリーブロック内での位置を指定する情報である。
 なお、ツリーブロック分割情報SP_TBLKは、CUの形状やサイズを明示的に含んでいなくてもよい。例えばツリーブロック分割情報SP_TBLKは、対象ツリーブロック全体またはツリーブロックの部分領域を四分割するか否かを示すフラグの集合であってもよい。その場合、ツリーブロックの形状やサイズを併用することで各CUの形状やサイズを特定できる。
 (CUレイヤ)
 CUレイヤでは、処理対象のCU(以下、対象CUとも称する)を復号するために動画像復号装置1が参照するデータの集合が規定されている。
 ここで、CU情報CUに含まれるデータの具体的な内容の説明をする前に、CUに含まれるデータの木構造について説明する。符号化ノードは、予測ツリー(prediction tree;PT)および変換ツリー(transform tree;TT)のルートのノードとなる。予測ツリーおよび変換ツリーについて説明すると次のとおりである。
 予測ツリーにおいては、符号化ノードが1または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ノードを構成する1または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた1または複数の予測ブロックを含む。
 予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位(prediction unit;PU)とも称する。
 予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測(画面内予測)の場合と、インター予測(画面間予測)の場合との2つがある。
 イントラ予測の場合、分割方法は、2N×2N(符号化ノードと同一サイズ)と、N×Nとがある。
 また、インター予測の場合、分割方法は、2N×2N(符号化ノードと同一サイズ)、2N×N、N×2N、および、N×Nなどがある。
 また、変換ツリーにおいては、符号化ノードが1または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ノードを構成する1または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた1または複数の変換ブロックを含む。
 変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位(transform unit;TU)とも称する。
 (CU情報のデータ構造)
 続いて、図3(d)を参照しながらCU情報CUに含まれるデータの具体的な内容について説明する。図3(d)に示すように、CU情報CUは、具体的には、スキップフラグSKIP、PT情報PTI、および、TT情報TTIを含む。
 スキップフラグSKIPは、CUにスキップモードが適用されているか否かを示すフラグである。スキップフラグSKIPの値が対象CUにスキップモードが適用されることを示す場合、そのCU情報CUにおけるPT情報PTI、および、TT情報TTIは省略される。なお、スキップフラグSKIPは、Iスライスでは省略される。
 PT情報PTIは、CUに含まれるPTに関する情報である。言い換えれば、PT情報PTIは、PTに含まれる予測ブロックそれぞれに関する情報の集合であり、動画像復号装置1により予測画像を生成する際に参照される。PT情報PTIは、図3(d)に示すように、予測タイプ情報PType、および、予測情報PInfoを含んでいる。
 予測タイプ情報PTypeは、対象PUについての予測画像生成方法として、イントラ予測を用いるのか、または、インター予測を用いるのかを指定する情報である。
 予測情報PInfoは、予測タイプ情報PTypeが何れの予測方法を指定するのかに応じて、イントラ予測情報、または、インター予測情報より構成される。以下では、イントラ予測が適用される予測ブロックをイントラ予測ブロックとも呼称し、インター予測が適用される予測ブロックをインター予測ブロックとも呼称する。
 また、予測情報PInfoは、予測ブロックの形状、サイズ、および、位置を指定する情報を含む。上述のとおり予測画像の生成は、予測ブロックを単位として行われる。予測情報PInfoの詳細は後述する。
 TT情報TTIは、CUに含まれるTTに関する情報である。言い換えれば、TT情報TTIは、TTに含まれる1または複数のTUそれぞれに関する情報の集合であり、動画像復号装置1により残差データを復号する際に参照される。なお、以下、TUのことを変換ブロックと称することもある。
 TT情報TTIは、図3の(d)に示すように、対象CUの各変換ブロックへの分割パターンを指定するTT分割情報SP_TU、および、TU情報TUI 1~TUINT(NTは、対象CUに含まれる変換ブロックの総数)を含んでいる。
 TT分割情報SP_TUは、具体的には、対象CUに含まれる各TUの形状、サイズ、および、対象CU内での位置を決定するための情報である。例えば、TT分割情報SP_TUは、対象となるノードの分割を行うのか否かを示す情報(split_transform_unit_flag)と、その分割の深度を示す情報(trafoDepth)とから実現することができる。
 また、例えば、CUのサイズが、64×64の場合、分割により得られる各TUは、32×32画素から4×4画素までのサイズを取り得る。
 TU情報TUI1~TUINTは、TTに含まれる1または複数のTUそれぞれに関する個別の情報である。例えば、TU情報TUIは、量子化予測残差を含んでいる。
 各量子化予測残差は、動画像符号化装置2が以下の処理1~3を、処理対象のブロックである対象ブロックに施すことによって生成した符号化データである。
 処理1:符号化対象画像から予測画像を減算した予測残差をDCT変換(Discrete Cosine Transform)する;
 処理2:処理1にて得られた変換係数を量子化する;
 処理3:処理2にて量子化された変換係数を可変長符号化する;
 (予測情報PInfo)
 上述のとおり、予測情報PInfoには、インター予測情報およびイントラ予測情報の2種類がある。
 インター予測情報には、動画像復号装置1が、インター予測によってインター予測画像を生成する際に参照される符号化パラメータが含まれる。より具体的には、インター予測情報には、対象CUの各インター予測ブロックへの分割パターンを指定するインター予測ブロック分割情報、および、各インター予測ブロックについてのインター予測パラメータが含まれる。
 インター予測パラメータには、参照画像インデックスと、推定動きベクトルインデックスと、動きベクトル残差とが含まれる。
 一方、イントラ予測情報には、動画像復号装置1が、イントラ予測によってイントラ予測画像を生成する際に参照される符号化パラメータが含まれる。より具体的には、イントラ予測情報には、対象CUの各イントラ予測ブロックへの分割パターンを指定するイントラ予測ブロック分割情報、および、各イントラ予測ブロックについてのイントラ予測パラメータが含まれる。イントラ予測パラメータは、各イントラ予測ブロックにおけるイントラ予測による予測画像生成を制御するパラメータであって、イントラ予測モードを復元するためのパラメータを含む。
 イントラ予測モードを復元するためのパラメータには、MPM(Most Probable Mode、以下同様)に関するフラグであるmpm_flag、MPMを選択するためのインデックスであるmpm_idx、および、MPM以外の予測モードを指定するためのインデックスであるrem_idxが含まれる。ここで、MPMとは、対象パーティションで選択される可能性が高い推定予測モードである。
 また、以下において、単に“予測モード”と表記する場合、輝度に対して適用されるイントラ予測モードのことを指す。色差に適用するイントラ予測モードについては、“色差予測モード”と表記し、輝度予測モードと区別する。
〔動画像復号装置〕
 以下では、本実施形態に係る動画像復号装置1の構成について、図1~図13を参照して説明する。
 (動画像復号装置の概要)
 動画像復号装置1は、予測ブロック毎に予測画像を生成し、生成された予測画像と、符号化データ#1から復号された予測残差とを加算することで復号画像#2を生成し、生成された復号画像#2を外部に出力する。
 ここで、予測画像の生成は、符号化データ#1を復号することによって得られる予測パラメータを参照して行われる。予測パラメータは、予測画像を生成するために参照されるパラメータのことである。
 また、以下では、復号処理の対象となるピクチャ(フレーム)、スライス、ツリーブロック、CU、ブロック、および、予測ブロックをそれぞれ、対象ピクチャ、対象スライス、対象ツリーブロック、対象CU、対象ブロック、および、対象予測ブロックと呼ぶことにする。
 なお、ツリーブロックのサイズは、例えば64×64画素であり、CUのサイズは、例えば、64×64画素、32×32画素、16×16画素、8×8画素であり、予測ブロックのサイズは、例えば、64×64画素、32×32画素、16×16画素、8×8画素や4×4画素などである。しかしながら、これらのサイズは、単なる例示であり、ツリーブロック、CU、および、予測ブロックのサイズは以上に示したサイズ以外のサイズであってもよい。
 (動画像復号装置の構成)
 再び、図2を参照して、動画像復号装置1の概略的構成について説明する。図2に示すように動画像復号装置1は、可変長復号部11、逆量子化・逆変換部13、予測画像生成部14、加算器15およびフレームメモリ16を備えている。
  [可変長復号部]
 可変長復号部11は、動画像復号装置1から入力された符号化データ#1に含まれる各種のパラメータを復号する。以下の説明では、可変長復号部11が、CABACおよびCAVLC等のエントロピー符号化方式により符号化されているパラメータの復号を適宜行うものとする。
 まず、可変長復号部11は、1フレーム分の符号化データ#1を、逆多重化することで、図3に示した階層構造に含まれる各種情報に分離する。例えば、可変長復号部11は、各種ヘッダに含まれる情報を参照して、符号化データ#1を、スライス、ツリーブロックに順次分離する。
 そして、可変長復号部11は、ツリーブロックヘッダTBLKHに含まれるツリーブロック分割情報SP_TBLKを参照して、対象ツリーブロックを、CUに分割する。また、可変長復号部11は、対象CUについて得られる変換ツリーに関するTT情報TTI、および、対象CUについて得られる予測ツリーに関するPT情報PTIを復号する。
 なお、TT情報TTIには、上述のとおり、変換ツリーに含まれるTUに対応するTU情報TUIが含まれる。また、PT情報PTIには、上述のとおり、対象予測ツリーに含まれる予測ブロックに対応するPU情報PUIが含まれる。
 可変長復号部11は、対象CUについて得られたTT情報TTIを逆量子化・逆変換部13に供給する。また、可変長復号部11は、対象CUについて得られたPT情報PTIを予測画像生成部14に供給する。
  [逆量子化・逆変換部]
 逆量子化・逆変換部13は、対象CUに含まれる各ブロックについて、TT情報TTIに基づいて逆量子化・逆変換処理を実行する。具体的には、逆量子化・逆変換部13は、各対象TUについて、対象TUに対応するTU情報TUIに含まれる量子化予測残差を逆量子化および逆直交変換することによって、画素毎の予測残差Dを復元する。なお、ここで直交変換とは、画素領域から周波数領域への直交変換のことを指す。したがって、逆直交変換は、周波数領域から画素領域への変換である。また、逆直交変換の例としては、逆DCT変換(Inverse Discrete Cosine Transform)、および逆DST変換(Inverse Discrete Sine Transform)等が挙げられる。逆量子化・逆変換部13は、復元した予測残差Dを加算器15に供給する。
  [予測画像生成部]
 予測画像生成部14は、対象CUに含まれる各予測ブロックについて、PT情報PTIに基づいて予測画像を生成する。具体的には、予測画像生成部14は、各対象予測ブロックについて、対象予測ブロックに対応するPU情報PUIに含まれる予測パラメータに従ってイントラ予測またはインター予測を行うことにより予測画像Predを生成する。この際、フレームメモリ16に蓄積された復号済み画像である局所復号画像P’を予測パラメータの内容に基づいて参照する。予測画像生成部14は、生成した予測画像Predを加算器15に供給する。なお、予測画像生成部14の構成については、後ほど、より詳しく説明する。
  [加算器]
 加算器15は、予測画像生成部14より供給される予測画像Predと、逆量子化・逆変換部13より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。
  [フレームメモリ]
 フレームメモリ16には、復号された復号画像Pが順次記録される。フレームメモリ16には、対象ツリーブロックを復号する時点において、当該対象ツリーブロックよりも先に復号された全てのツリーブロック(例えば、ラスタスキャン順で先行する全てのツリーブロック)に対応する復号画像が記録されている。
 また、対象CUを復号する時点において、当該対象CUよりも先に復号された全てのCUに対応する復号画像が記録されている。
 なお、動画像復号装置1において、画像内の全てのツリーブロックに対して、ツリーブロック単位の復号画像生成処理が終わった時点で、動画像復号装置1に入力された1フレーム分の符号化データ#1に対応する復号画像#2が外部に出力される。
 (予測モードの定義)
 前述の通り、予測画像生成部14は、PT情報PTIに基づいて予測画像を生成して出力する。対象CUがイントラCUの場合、予測画像生成部14に入力されるPU情報PTIは、予測モード(IntraPredMode)を含む。以下、予測モードの定義について、図4を参照して説明する。
 (概要)
 動画像復号装置1で利用されるイントラ予測モードは、Planar予測(Intra_Planar)、垂直予測(Intra_Vertical)、水平予測(Intra_Horizontal)、DC予測(Intra_DC)、Angular予測(Intra_Angular)に分類される。水平予測、垂直予測、Angular予測を総称して方向予測と呼ぶ。方向予測は、対象予測ブロックに隣接する周辺領域を参照領域として設定し、概略的には、参照領域上の画素を特定の方向に外挿することで予測画像を生成する予測方式である。
 次に、図4を用いて、方向予測に含まれる各予測モードの識別子を説明する。図4には方向予測に属する33種類の予測モードについて、予測モードの識別子と対応する予測方向が図示されている。図4中の矢印の方向は予測方向を表すが、より正確には、予測対象画素から予測対象画素が参照する参照領域上の画素へのベクトルの向きを示している。その意味で、予測方向のことを参照方向とも呼ぶ。各予測モードの識別子は、主方向が水平方向(HOR)か垂直方向(VER)かを表す符号と、主方向に対する変位の組み合わせからなる識別子が対応付けられている。例えば、水平予測にはHOR、垂直予測にはVER、右上45度方向の周辺画素を参照する予測モードにはVER+8、左上45度方向の周辺画素を参照する予測モードにはVER-8、左下45度方向の周辺画素を参照する予測モードにはHOR+8の符号がそれぞれ割り当てられる。方向予測には、VER-8~VER+8の17個の主方向が垂直方向の予測モードと、HOR-7~HOR+8の16個の主方向が水平予測の予測モードが定義されている。
  (予測画像生成部の詳細)
 次に、図5を用いて予測画像生成部14の構成の詳細を説明する。図5は予測画像生成部14の構成例について示す機能ブロック図である。なお、本構成例は、予測画像生成部14の機能のうち、イントラCUの予測画像生成に係る機能ブロックを図示している。
 図5に示すように、予測画像生成部14は、予測ブロック設定部141、未フィルタ参照画素設定部142、フィルタ済参照画素設定部143、イントラ予測部144、および、予測画像補正部145を備える。
 予測ブロック設定部141は、対象CUに含まれる予測ブロックを規定の設定順序で対象予測ブロックに設定し、対象予測ブロックに関する情報(対象予測ブロック情報)を出力する。対象予測ブロック情報には、対象予測ブロックサイズ、対象予測ブロック位置、対象予測ブロックの輝度または色差プレーンを示すインデックスが少なくとも含まれる。
 未フィルタ参照画素設定部142は、入力される対象予測ブロック情報の示す対象予測ブロックサイズと対象予測ブロック位置に基づいて、対象予測ブロックに隣接する周辺領域を参照領域に設定する。続いて、参照領域内の各画素に対してフレームメモリ上で画面内の対応する位置に記録されている復号画像の画素値(複号画素値)を未フィルタ参照画素値として設定する。予測ブロック内位置(x,y)の未フィルタ参照画素値r(x,y)は、ピクチャの左上画素を基準に表現される対象ピクチャの復号画素値u(px,py)を利用して次式により設定される。
 r(x,y)=u(xB+x,yB+y) x=-1, y=-1 .. (nS*2-1)、および、x=0..(nS*2-1),y=-1
ここで、(xB,yB)は対象予測ブロック左上画素のピクチャ内での位置、nSは対象予測ブロックのサイズを表し、対象予測ブロックの幅または高さのうち大きい方の値を示す。上式では、図14(a)を参照して説明したように、対象予測ブロック上辺に隣接する復号画素のラインおよび対象予測ブロック左辺に隣接する復号画素のコラムに含まれる復号画素値を対応する未フィルタ参照画素値としてコピーしている。なお、特定の参照画素位置に対応する復号画素値が存在しない、または、参照できない場合には、既定の値(たとえば画素ビットデプスがbitDepthの場合に1<<(bitDepth-1))を利用してもよいし、対応する復号画素値の近傍に存在する参照可能な復号画素値を利用してもよい。
 フィルタ済参照画素設定部143は、入力される予測モードに応じて、入力される未フィルタ参照画素値にフィルタを適用して、参照領域上の各位置(x,y)におけるフィルタ済参照画素値s[x,y]を導出して出力する。具体的には、位置(x,y)とその周辺の未フィルタ参照画素値にローパスフィルタを適用して、フィルタ済参照画素を導出する。なお、必ずしも全ての場合にローパスフィルタを適用する必要はなく、少なくとも、一部の方向予測モードに対してローパスフィルタ適用によりフィルタ済参照画素を導出していればよい。例えば、HEVCのイントラ予測のように、予測モードがDC予測の場合や、予測ブロックサイズが4×4画素の場合に未フィルタ参照画素値をそのままフィルタ済参照画素値としてもよい。また該ローパスフィルタ適用の有無を符号化データから復号されるフラグにより切り替えてもよい。
 イントラ予測部144は、入力される予測モードとフィルタ済参照画素値に基づいて対象予測ブロックの予測画像を生成してフィルタ済予測画像として出力する。イントラ予測部144は、内部にDC予測部144D、Planar予測部144P、水平予測部144H、垂直予測部144V、および、Angular予測部144Aを備えている。イントラ予測部144は、入力される予測モードに応じて特定の予測部を選択して、フィルタ済参照画素値を入力する。予測モードと対応する予想部の関係は次の通りである。
・DC予測・・・DC予測部144D
・Planar予測・・・Planar予測部144P
・水平予測・・・水平予測部144H
・垂直予測・・・垂直予測部144V
・Angular予測・・・Angular予測部144A
 DC予測部144Dは、入力されるフィルタ済参照画素値の平均値に相当するDC予測値を導出し、導出されたDC予測値を画素値とする予測画像を出力する。
 Planar予測部144Pは、予測対象画素との距離に応じて複数のフィルタ済参照画素値を線形加算することで導出した値により予測画像を生成して出力する。例えば、予測画像の画素値q[x,y]は、フィルタ済参照画素値s[x,y]と対象予測ブロックのサイズnSを用いて以下の式により導出できる。
 q[ x, y ] = (
  ( nS - 1 - x ) * s[ -1, y ] + ( x + 1 ) * s[ nS, -1 ] + 
  ( nS - 1 - y ) * s[ x ,-1 ] + ( y + 1 ) * s[ -1, nS ] + nS ) >> ( k + 1 )
ここで、x, y = 0..nS-1であり、 k = log2( nS )と定義される。
 水平予測部144Hは、対象予測ブロックの左辺に隣接する参照領域上のフィルタ済参照画素値を水平方向に外挿することで予測画像を生成して出力する。
 垂直予測部144Vは、対象予測ブロックの上辺に隣接する参照領域上のフィルタ済参照画素値を鉛直方向(垂直方向)に外挿することで予測画像を生成して出力する。
 Angular予測部144Aは、予測モードの示す予測方向(参照方向)のフィルタ済参照画素を用いて予測画像を生成して出力する。Angular予測では、主方向フラグbRefVerの値に応じて予測ブロックの上または左に隣接する参照領域を主参照領域に設定し、主参照領域上のフィルタ済参照画素値を主参照画素値に設定する。予測画像の生成は、予測ブロック内のラインまたはコラムの単位で主参照画素値を参照して実行される。主方向フラグbRefVerの値が1(主方向が垂直方向)の場合、予測画像の生成単位をラインに設定するとともに対象予測ブロックの上方の参照領域を主参照領域に設定する。主参照画素値refMain[x]は、フィルタ済参照画素値s[x,y]を用いて次式により設定される。
  refMain[x] = s[ -1+x, -1 ], with x=0..2*nS
  refMain[x] = s[ -1, -1+( ( x*invAngle+128 )>>8 ) ], with x=-nS..-1
なお、ここでinvAngleは予測方向の変位intraPredAngleの逆数をスケールした値に相当する。上式により、xが0以上の範囲では、refMain[x]の値は対象予測ブロック上辺に隣接する参照領域上のフィルタ済参照画素値値が設定される。また、xが0未満の範囲では、refMain[x]の値として、対象予測ブロック左辺に隣接する参照領域上のフィルタ済参照画素値が予測方向に基づき導出される位置に設定される。予測画像q[x,y]は次式により計算される。
  q[x,y] = ((32-iFact)*refMain[x+iIdx+1] + iFact*refMain[x+iIdx+2] + 16) >> 5ここで、iIdxとiFactは、予測対象ラインと主参照領域の鉛直方向の距離(y+1)と予測方向に応じて決まる勾配intraPredAngleに基づいて計算される予測対象画素の生成に用いる主参照画素の位置を表す。iIdxは画素単位における整数精度の位置、iFactは画素単位における小数精度の位置に相当し、以下の式で導出される。
  iIdx = ( ( y + 1 )*intraPredAngle ) >> 5
  iFact = ( ( y + 1 )*intraPredAngle ) & 31
ここで、‘&’は論理積のビット演算を表す演算子であり、“A&31”の結果は、整数Aを32で除算した余りを意味する。
 主方向フラグbRefVerの値が0(主方向が水平方向)の場合、予測画像の生成単位をコラムに設定するとともに対象PUの左側の参照領域を主参照領域に設定する。主参照画素値refMain[x]は、主参照領域上のフィルタ済参照画素値s[x,y]を用いて次式により設定される。
  refMain[ x ] = s[ -1, -1+x ], with x=0..nS
  refMain[ x ] = s[ -1+( ( x*invAngle+128 )>>8 ), -1 ], with x=-nS..-1
予測画像q[x,y]は次式により計算される。
  q [x,y] = ((32-iFact)*refMain[y+iIdx+1] + iFact*refMain[y+iIdx+2] + 16) >> 5ここで、iIdxとiFactは、予測対象コラムと主参照領域の水平方向の距離(x+1)と勾配intraPredAngleに基づいて計算される予測画素の生成に用いる主参照画素の位置を表す。iIdxは画素単位における整数精度の位置、iFactは画素単位における少数精度の位置に相当し、以下の式で導出される。
  iIdx = ( ( x + 1 )*intraPredAngle ) >> 5
  iFact = ( ( x + 1 )*intraPredAngle ) & 31
なお、イントラ予測部144の構成は上記に限らない。たとえば、水平予測部144Hで生成される予測画像と垂直予測部144Vで生成される予測画像は、Angular予測部144Aでも導出可能であるので、水平予測部144H、垂直予測部144Vを備えずに、Angular予測部144Aを備える構成も可能である。
  (予測画像補正部の詳細)
 予測画像補正部145は、入力される予測モードに応じて、フィルタ済予測画像を構成する各画素を対象として、参照領域と対象画素との距離に応じて未フィルタ参照画素値とフィルタ済予測画素値を重み付け加算することでフィルタ済予測画像を修正して予測画像(補正予測画像)として出力する。
 予測画像補正部145において、予測ブロック内位置(x,y)における予測画素値p[x,y]を導出する処理を、図6を参照して説明する。図6(a)は予測画素値p[x,y]の導出式を示している。予測画素値p[x,y]は、フィルタ済予測画素値q[x,y]と、未フィルタ参照画素値r[x,-1]、r[-1,y]、r[-1,-1]とを重み付き加算することで導出される。ここで、smaxは距離重みkを整数で表現するための調整項に相当する既定の正の整数値であり、第一の正規化調整項と呼ぶ。例えばsmax=6が用いられる。rshiftは参照強度係数を正規化するための既定の正の整数値であり、第二の正規化調整項と呼ぶ。例えばrshift=7が用いられる。rshiftとsmaxの値の組み合わせは前記の値に限定されず、図6(a)に示す式が重み付き加算を表し、距離重みkが整数で表現される状況を満たす別の値を既定値として用いてもよい。
 未フィルタ参照画素値に対する重み係数は、予測方向毎に予め定められた参照強度係数(c1v、c2v、c1h、c2h)に、参照領域との距離(xまたはy)に依存する距離重みk(k[x]またはk[y])を乗じることで導出される。より具体的には、未フィルタ参照画素値r[x,-1](上方未フィルタ参照画素値)の重み係数(第一重み係数w1v)として、参照強度係数c1vと距離重みk[y](鉛直方向距離重み)の積を用いている。また、未フィルタ参照画素値r[-1,y](左方未フィルタ参照画素値)の重み係数(第二重み係数w1h)として、参照強度係数c1hと距離重みk[x](水平方向距離重み)の積を用いている。また、未フィルタ参照画素値r[-1,-1](左上未フィルタ参照画素値)の重み係数(第三重み係数w2v)として、参照強度係数c2vと距離重みk[y](鉛直方向距離重み)の積を用いている。また、左上未フィルタ参照画素値の重み係数(第四重み係数w2h)として、参照強度係数c2hと距離重みk[x](水平方向距離重み)の積を用いている。
 図6(b)は、フィルタ済予測画素値q[x,y]に対する重み係数b[x,y]の導出式を示している。重み係数b[x,y]の値は、重み係数と参照強度係数の積の総和が、「1 << (smax + rshift)」と一致するように導出される。この値は、図6(a)における(smax + rshift)の右シフト演算をふまえて、重み係数と参照強度係数の積を正規化する意図で設定される。
 図6(c)は、距離重みk[x]の導出式を表す距離重みk[x]には、対象画素と参照領域の水平距離xに応じて単調増加する値「floor(x/d)」をsmaxから引いた差分値で、1を左シフトして得られる値が設定される。ここで、floor()は床関数、dは予測ブロックサイズに応じた既定のパラメータ、「x/d」はdによるxの除算(小数点以下切り捨て)を表す。距離重みk[y]についても、前述の距離重みk[x]の定義において、水平距離xを鉛直距離yで置き換えた定義を利用できる。距離重みk[x]およびk[y]の値は、xまたはyの値が大きいほど小さい値となる。
 上記の図6を参照して説明した予測画素値の導出方法によれば、対象画素と参照領域の距離である参照距離(xやy)が大きいほど距離重み(k[x]、k[y])の値が小さい値となる。したがって、既定の参照強度係数と距離重みとの乗算により得られる未フィルタ参照画素の重み係数の値も小さい値となる。そのため、予測ブロック内の位置が参照領域に近いほど、より未フィルタ参照画素値の重みを大きくしてフィルタ済予測画素値を補正することで予測画素値を導出できる。一般に、参照領域に近いほど未フィルタ参照画素値がフィルタ済予測画素値に較べて対象画素の画素値の推定値として適している可能性が高い。ゆえに、図6の式により導出される予測画素値は、フィルタ済予測画素値を直接予測画素値とする場合に較べて予測精度の高い予測画素値となる。加えて、図6の式によれば、未フィルタ参照画素値に対する重み係数を参照強度係数と距離重みの乗算により導出できる。そのため、距離重みの値を距離毎に事前に計算してテーブルに保持しておくことで、右シフト演算や除算を用いることなく重み係数を導出できる。
 なお、参照距離は対象画素と参照領域の距離と定義し、参照距離の例として対象画素の予測ブロック内位置xと対象画素の予測ブロック内位置yをあげたが、参照距離として、対象画像と参照領域の距離を表す他の変数を利用してもよい。例えば、参照距離を予測画素と最も近い参照領域上の画素との間の距離と定義してもよい。また、参照距離を予測画素と予測ブロックの左上に隣接する参照領域上の画素との距離と定義してもよい。また、参照距離が2つの画素間の距離により規定される場合、その距離は広義の距離であってもよい。広義の距離d(a,b)は、任意の3点a,b,c ∈ X に対して、非負性(正定値性) : d(a, b) ≧ 0、a = b ⇒ d(a, b) = 0、対称性 : d(a, b) = d(b, a)、三角不等式 : d(a, b) + d(b, c) ≧ d(a, c)、の各性質を満たす。なお、以降の記載では、参照距離を参照距離xと表記するが、xは水平方向の距離に限定されず、任意の参照距離に対しても適用可能である。例えば、距離重みk[x]の計算式を例示した場合、それは鉛直方向の参照距離yをパラメータとして用いて計算される距離重みk[y]にも適用可能である。
 <予測画像補正部145のフロー>
 以下、図1を参照して、予測画像補正部145の動作について説明する。図1は、予測画像補正部145の動作を示すフロー図である。
 (S21)予測画像補正部145は、予測方向毎に予め定められた参照強度係数(c1v、c2v、c1h、c2h)を設定する。
 (S22)予測画像補正部145は、対象画素(x,y)と参照領域との距離(xまたはy)に応じて、x方向の距離重みk[x]、及びy方向の距離重みk[y]を各々導出する。
 (S23)予測画像補正部145は、ステップS21で導出した各参照強度係数にS22で導出した各距離重みを乗じて、以下の重み係数を導出する。
第一重み係数w1v = c1v * k[y]
第二重み係数w1h = c1h * k[x]
第三重み係数w2v = c2v * k[y]
第四重み係数w2h = c2h * k[x]
 (S24)予測画像補正部145は、ステップS23で導出した各重み係数(w1v, w1h, w2v, w2h)と対応する未フィルタ参照画素値(r[x,-1],r[-1,y], r[-1,-1], r[-1,-1])の積を計算する。
未フィルタ参照画素値r[x, -1]と第一重み係数w1vの積m1 = w1v * r[x, -1]
未フィルタ参照画素値r[-1, y]と第二重み係数w1hの積m2 = w1h * r[-1,y]
未フィルタ参照画素値r[-1, -1]と第三重み係数w2vの積m3 = w2v * r[-1,-1]
未フィルタ参照画素値r[-1, -1]と第四重み係数w2hの積m4 = w2h * r[-1,-1]
 (S25)予測画像補正部145は、対象画素(x, y)に対して、第一重み係数w1v、第二重み係数w1h、第三重み係数w2v、第四重み係数w2hと重み係数b[x,y]の総和が「1 << (smax + rshift)」となるように、下記式により重み係数b[x,y]を導出する。
b[x,y] = (1<<(smax + rshift)) - w1v - w1h + w2v + w2h
 (S26)予測画像補正部145は、対象画素(x, y)に対応するフィルタ済予測画素値q[x,y]と重み係数b(x, y)の積m5を計算する。
m5 = b[x, y] * q[x, y]
 (S27)予測画像補正部145は、ステップS24で導出した積m1, m2, m3, m4及びステップS26で導出した積m5、及びラウンディング調整項(1<<(smax + rshift-1))の総和sumを下記式により導出する。
sum = m1 + m2 - m3 - m4 + m5 + (1<<(smax + rshift-1))
 (S28)予測画像補正部145は、以下に示すようにステップS27で導出した加算値sumを、第一の正規化調整項と第二の正規化調整項の和(smax + rshift)で右シフト演算することで、対象画素(x, y)の予測画素値p[x, y]を導出する。
p[x, y] = sum >> (smax + rshift)
 なお、ラウンディング調整項は、第一の正規化調整項smaxと第二の正規化調整項rshiftに表現され、(1<<(smax + rshift - 1))、が好適であるが、これに限定されない。例えば、ラウンディング調整項を0としてもよいし、その他の所定の定数としても良い。
 以上、予測画像補正部145は、ステップS21~S28に示す処理を予測ブロック内の全画素について繰り返すことで、予測ブロック内の予測画像p[x, y]を生成する。なお、予測画像補正部145の動作は、上記ステップに限定されず、実施可能な範囲で変更可能である。
  (予測画像生成処理の流れ)
 次に、予測画像生成部14におけるCU単位の予測画像生成処理の概略を図7のフローチャートを用いて説明する。CU単位の予測画像生成処理が始まると、まず、予測単位設定部141がCU内に含まれる予測ブロックの一つを既定の順序に従って対象予測ブロックに設定して、対象予測ブロック情報を未フィルタ参照画素設定部142に出力する(S11)。次に、未フィルタ参照画素設定部142は対象予測ブロックの参照画素を、外部のフレームメモリから読み出した復号画素値を用いて設定し未フィルタ参照画素値をフィルタ済参照画素設定部143と予測画像補正部145に出力する(S12)。続いて、フィルタ済参照画素設定部143は、S12で入力された未フィルタ参照画素値からフィルタ済参照画素値を導出してイントラ予測部144に出力する(S13)。次に、イントラ予測部144は、入力の予測モードとS13で入力されたフィルタ済参照画素から対象予測ブロックの予測画像を生成してフィルタ済予測画像として出力する(S14)。次に、予測画像補正部145は、予測モードとS12で入力された未フィルタ参照画素値に基づいてS14で入力されたフィルタ済予測画像を補正して予測画像を生成して出力する。次に、CU内の全ての予測ブロック(PU)の処理が終了したかを判定し、終了していない場合はS11に戻って次の予測ブロックを設定し、終了している場合には処理を終了する(S16)。
 (動画像復号装置の効果)
 上記説明した本実施形態における動画像復号装置は、予測画像補正部145を構成要素として含む予測画像生成部14を備えており、予測画像生成部14は、フィルタ済予測画像の各画素を対象として、重み係数に基づく重み加算により未フィルタ参照画素値とフィルタ済予測画素値から予測画像(補正予測画像)を生成する。上記重み係数は予測モードの示す予測方向に応じて定まる参照強度係数と、対象画素と参照領域の距離の増加に伴い単調減少する距離重みとの積である。したがって、参照距離(例えばx、y)が大きいほど距離重み(例えばk[x]、k[y])の値が小さい値となり、したがって、参照距離が小さいほどより未フィルタ参照画素値の重みを大きくして予測画像を生成することで予測精度の高い予測画素値を生成できる。加えて、重み係数は参照強度係数と距離重みの積であるため、距離重みの値を距離毎に事前に計算してテーブルに保持しておくことで、右シフト演算や除算を用いることなく重み係数を導出できる。
 〔変形例1:距離が大きくなると距離重みを0とする構成〕
 上記実施形態における予測画像補正部145では、図6(a)を参照して、参照強度係数と距離重みの積として重み係数を導出することを説明した。距離重みの値として、図6(c)に示すように、対象画素と参照領域の距離x(参照距離x)の増加に応じて減少する距離重みk[x]を利用するものとしたが、距離重みk[x]を、参照距離xが所定の値以上の場合に0とするよう予測画像補正部145を構成してもよい。そのような構成における、距離重みk[x]の計算式の例を図8に示す。図8の距離重みk[x]の計算式によれば、参照距離xが所定の閾値THより小さい場合に、図6(c)と同じ計算式により参照距離xに応じて距離重みk[x]を設定する。加えて、参照距離xが所定の閾値TH以上の場合には距離重みk[x]の値を参照距離xによらずに0に設定する。閾値THの値としては、既定の値を用いることができ、例えば第一の正規化調整項smaxの値が6、第二の正規化調整項rshiftの値が7の場合に、閾値THの値を7に設定して予測画像補正処理を実行できる。
 なお、閾値THは第一の正規化調整項smaxに依存して変更してもよい。より具体的には、第一の正規化調整項smaxの増加に伴い閾値THも増加するように設定してもよい。そのような閾値THの設定例について図9を参照して説明する。図9は第一の正規化調整項smaxが異なる場合の参照距離xと重み係数k[x]の関係を示す表である。ここで、第二の正規化調整項rshiftの値は7であることを想定している。図9(a)、図9(b)、図9(c)は、それぞれブロックサイズを示す変数dの値が1、2、3の場合の参照距離xと重み係数k[x]の関係を示している。変数dは予測ブロックサイズの増加に伴い増加する変数であって、例えば、予測ブロックサイズ4x4に対してd=1、予測ブロックサイズ8x8および16x16に対してd=2、32x32より大きい予測ブロックサイズに対してd=3を割り当てる。この意味で、変数dを予測ブロックサイズ識別情報dとも呼ぶ。図9(a)では、第一の正規化調整項smaxの大小に応じて異なる閾値THを設定している。図9(a)で示される、第一の正規化調整項smaxと閾値THの関係は次の通りである。
・smax=6の場合、TH=7
・smax=5の場合、TH=6
・smax=4の場合、TH=5
・smax=3の場合、TH=4
上記の関係は、TH=1+smax、という関係式により表現できる。同様に、図9(b)に示す表においてsmaxとTHの関係は、TH=2*(1+smax)、という関係式により表現できる。同様に、図9(c)に示す表においてsmaxとTHの関係は、TH=3*(1+smax)、という関係式により表現できる。すなわち、閾値THは、予測ブロックサイズ識別情報d、および、第一の正規化調整項smaxに基づいて、TH=d*(1+smax)、の関係式により表現できる。第一の正規化調整項smaxは重み係数k[x]の表現精度を表す数であり、前記の関係は、重み係数k[x]の表現精度が高い場合により大きい閾値THを設定しているとも表現できる。したがって、重み係数k[x]の表現精度が小さい場合には、重み係数k[x]の値が相対的に小さくなるため、より小さい閾値THを設定することで、予測画像補正処理においてより多くの乗算を省略できる。
 また、図6(c)で説明したように、距離重みk[x]を、smaxからxに応じた数を引く演算(たとえばsmax-floor(x/d))により導出した場合、xが大きくなると、smax- floor(x/d)が負になる。ある処理系では負の左シフト演算(結果は、右シフト演算と等価)処理の実行が可能であるが、他の処理系では負の左シフト演算の実行ができず、0以上の数の左シフトの実行のみしかできない。本実施形態のように閾値THよりも大きい場合に重み係数k[x]を0とし、それ以外の場合に、距離xに応じて単調減少するようなk[x]の導出方法を用いることで、負の左シフト演算を避けることができる。
 以上説明した通り、距離重みk[x]を、参照距離xが所定の値以上の場合に0とするよう予測画像補正部145を構成できる。その場合、予測ブロック中の部分領域(参照距離xが閾値TH以上となる領域)に対して、予測画像補正処理における乗算を省略できる。
 例えば、予測画像補正処理の計算の一部にsum値の計算があり、sum = m1 + m2 - m3 - m4 + m5 + (1<<(smax + rshift-1))の形で表現できる。閾値THを超えるxでは、k[x] = 0となるから、w1h、w2hが0となり、したがってm2, m4も0となる。そのため、sum = m1 - m3 + m5 + (1<<(smax + rshift-1))の計算に簡略化できる。同様に、b[x,y] = (1<<(smax + rshift)) - w1v - w1h + w2v + w2hの処理は、b[x,y] = (1<<(smax + rshift)) - w1v + w2vと簡略化される。
 同様に域値THを超えるyでは、k[y] = 0となるから、w1v、w2vが0となり、したがってm1, m3も0となる。そのため、前記sum値の計算はsum = m2 - m4 + m5 + (1<<(smax + rshift-1))と簡略化できる。同様に、b[x,y] = (1<<(smax + rshift)) - w1v - w1h + w2v + w2hの処理は、b[x,y] = (1<<(smax + rshift)) - w1h + w2hと簡略化される。
 単純に乗算数を削減できる効果に加え、上記部分領域全体において乗算を削減した並列処理により一括で処理する実装も可能であるという効果がある。
 なお、上記のように、域値THを変数d、第一の正規化調整項smaxの大小に応じて異なる閾値THを設定することにより、重み係数k[x]導出および予測画像補正処理を最大限削減することができるが、より簡略化された構成として、域値THとして、固定的な値THを用いることもできる。特に、多くのソフトウェアでは4もしくは8の倍数で並列処理されるため、TH=8, 12, 16などの固定値を用いることで、簡単な構成で、並列演算に適した重み係数k[x]を導出することができる。
 また、閾値THとして、予測ブロックサイズに応じて決まる所定の値を設定することもできる。例えば、予測ブロックサイズの幅の半分の値を閾値THの値に設定してもよい。この場合、予測ブロックサイズが16×16に対する閾値THの値は8となる。また予測ブロックサイズが8×8以下の場合は閾値THを4、それ以外の予測ブロックサイズの場合は閾値THを8としてもよい。言い換えると、予測ブロックの右下領域に位置する画素において重み係数が0となるよう閾値THを設定する。予測ブロックにおける予測画像生成処理を並列実行する場合、予測ブロックを2の倍数で分割して得られる領域単位での実行されることが多いため、右下領域全体の重み係数を0とするよう閾値THを設定することで、同領域内の全ての画素に対して同じ処理で予測画像補正処理が実行できる。
 〔変形例2:テーブルを利用して距離重みを導出する構成〕
 上記実施形態における予測画像補正部145では、図6(c)に示した計算式に従って距離重みk[x]の値を導出すると説明したが、メモリやハードディスク等の記録領域上に保存された参照距離x、第一の正規化調整項smax、および、予測ブロックサイズ識別情報dと、距離重みk[x]との関係に基づいて距離重みk[x]を決定して予測画像補正処理を実行することもできる。例えば、図9に示したテーブル(距離重み導出テーブル)を記録領域に保持し、予測画像補正部145は、第一の正規化調整項smaxと、予測ブロックサイズ識別情報dと、参照距離xに基づいて距離重み導出テーブルktable[](図9ではテーブルも単にk[]と示している)の特定のエントリーktable[x]を参照することで距離重みk[x]を決定できる。言い換えると、参照距離x、第一の正規化調整項smax、および、予測ブロックサイズ識別情報dをインデックスとして記録領域上の距離重み導出テーブルを参照することで距離重みk[x]を決定できる。図9に示した距離重み導出テーブルを用いる場合の距離重みk[x]の導出処理は次のS301~S303を順に実行することで実現される。
 (S301)予測ブロックサイズ識別情報dの値に応じて対応するテーブルを選択する。具体的には、d=1の場合に図9(a)のテーブル、d=2の場合に図9(b)のテーブル、d=3の場合に図9(c)のテーブルを選択する。なお、予測ブロックサイズに係らず参照距離xと距離重みk[x]との関係が同じである場合には、この手順は省略可能である。
 (S302)第一の正規化調整項smaxの値に応じてテーブル内の対応する行を選択する。例えば、smax=6の場合には、S301で選択されたテーブルで「k[x](smax=6)」と示される行が選択される。なお、smaxの値が既定値である場合には、この手順は省略可能である。
 (S303)参照距離xに対応するk[x]をS302で選択された行から選択し、距離重みk[x]の値として設定する。
 例えば予測ブロックサイズが4×4(予測ブロックサイズ識別情報dの値が1)で、第一の正規化調整項の値が6、参照距離xが2の場合には、S301の手順で図9(a)のテーブルが選択され、S302の手順で「k[x](smax=6)」の行が選択され、S303の手順で「x=2」の列に記載の値「16」が重み係数k[x]に設定される。
 なお、S301とS302を省略する場合には、参照距離xをインデックスとして記録領域上の距離重み導出テーブルを参照することで距離重みk[x]を決定する処理となる。
 距離重み導出テーブルの例として図9のテーブルを例に挙げて説明したが、他のテーブルを距離重み導出テーブルとして用いることもできる。その場合、距離重み導出テーブルは少なくとも次の性質1を満たす必要がある。
 (性質1)k[x]は参照距離xの広義単調増加関数である。言い換えると、参照距離x1と参照距離x2がx1<x2の関係を満たす時、k[x2]>=k[x1]の関係が成り立つ。
 距離重み導出テーブルが性質1を満たす場合、より参照距離が大きい位置の画素に対してより小さい距離重みを設定して予測画像補正処理が実行できる。
 また、距離重み導出テーブルは、上記性質1に加えて、次の性質2を満たすことが好ましい。
 (性質2)k[x]は2のべき乗で表現される値である。
 上記の性質2を有する距離重み導出テーブルを参照して導出される距離重みk[x]の値は2のべき乗となる。一方、図6(a)に示したように、予測画像補正処理では、参照強度係数(例えばc1v)に距離重みk[x]を乗算することで重み係数を導出する処理が含まれる。したがって、性質2を有する場合、距離重みk[x]による乗算は2のべき乗による乗算であるため、乗算を左シフト演算により実行でき、乗算よりも少ない処理コストで重み係数を導出できる。またk[x]は2のべき乗である場合には、乗算が比較的容易なソフトウェアではk[x]の積で実現し、シフト演算が比較的容易なハードウェアではk[x]=1<<s[x]の関係を示す重みシフト値s[x]のシフト演算により、予測画像補正処理を実行することができる。
 以上、変形例2として記載したように、記録領域上に保存された参照距離xと距離重みk[x]との関係に基づいて距離重みk[x]を決定して予測画像補正処理を実行する構成を実現できる。その場合、図6(c)に示したような計算式により距離重みk[x]を導出する場合に較べて、より少ない演算回数で距離重みを導出できる。
 〔変形例3:距離左シフト値による構成〕
 上記実施形態における予測画像補正部145では、図6(a)に示すように参照強度係数と距離重みの積(例えば、c1v*k[y])を用いて重み係数を導出している。しかしながら、重み係数の導出に積と同等な他の方法を用いてもよく、例えば、参照強度係数を距離シフト値をシフト幅とする左シフトを適用することで重み係数を導出する予測画像補正部145を構成することもできる。以下、この例について、図10を参照して説明する。
 図10(a)は、予測ブロック内位置(x,y)の予測画素値p[x,y]の導出式を示す。導出式では、例えば、未フィルタ参照画素値r[x,-1]に対する重み係数がc1v<<s[y]に設定されている。つまり、重み係数を、参照強度係数c1vを参照距離yに応じて定まる距離シフト値s[y]により左シフトすることで導出している。
 図10(b)は、フィルタ済予測画素値q[x,y]に対する重み係数b[x,y]の別の導出式を示している。
 図10(c)は、距離シフト値s[x]の導出式を表す。距離シフト値s[x] s[x](k[x]=1<<s[x])には、参照距離x(対象画素と参照領域の水平距離x)に応じて単調増加する値「floor(x/d)」をsmaxから引いた差分値が設定される。ここで、floor()は床関数、dは予測ブロックサイズに応じた既定のパラメータ、「x/d」はdによるyの除算(小数点以下切り捨て)を表す。距離シフト値s[y]についても、前述の距離重みs[x]の定義において、水平距離xを鉛直距離yで置き換えた定義を利用できる。距離シフト値s[x]およびs[y]の値は、参照距離(xまたはy)が大きいほど小さい値となる。
 上記の図10を参照して説明した予測画素値の導出方法によれば、対象画素と参照領域の距離(xやy)が大きいほど距離シフト値(s[x]、s[y])の値が小さい値となる。距離シフト値が大きいほど導出される重み係数も大きくなるため、すでに説明したように、予測ブロック内の位置が参照領域に近いほど、より未フィルタ参照画素値の重みを大きくしてフィルタ済予測画素値を補正することで予測画素値を導出できる。
 以下、図1を再度、参照して、予測画像補正部145の変形例3の動作について説明する。予測画像補正部145の変形例3は、(S23)を次の(S23´)に置き換えた処理により重み係数を導出する。その他の処理はすでに説明したとおりであるので説明を省略する。
 (S23´)予測画像補正部145(変形例3)は、ステップS21で導出した各参照強度係数にS22で導出した各距離シフト値による左シフトにより、以下の重み係数を導出する。
第一重み係数w1v = c1v << s[y]
第二重み係数w1h = c1h << s[x]
第三重み係数w2v = c2v << s[y]
第四重み係数w2h = c2h << s[x]
 以上、予測画像補正部145の変形例3は、距離重みk[x]を距離シフト値s[x]により左シフトにより導出する。左シフト値自体が高速だけでなく、左シフト演算は、乗算として等価な計算に置き換え可能であるという意味で優れている。
 〔変形例4:距離重みの精度を向上する構成〕
 上記実施形態における予測画像補正部145では、図6(c)を参照して、距離重みk[x]の左シフト演算による計算方法を説明した。ここで、図6(c)の式のように、距離重みk[x]が「k=P<<Q」の形式で表現される左シフト演算により導出される場合、距離重みk[x]は被シフト項Pに対して左シフト幅Qによる左シフトを適用して導出されると表現できる。
 上記までの構成では、図6(c)では、被シフト項Pは「1」、左シフト幅Qは「smax - floor(x/d)」である。この場合、距離重みk[x]のとり得る値が2のべき乗に制限される。
 しかしながら、距離重みk[x]が2のべき乗に制限されないような方法により距離重みk[x]を求めることもできる。そのような距離重みk[x]の導出式について図11を参照して説明する。
 図11(a)から(d)は、それぞれ左シフト演算により距離重みk[x]を導出する計算式の一例を示す。図11(a)(b)はd=2の場合に用いる距離重みk[x]の導出式であり、図11(c)(d)はd=3の場合に用いる距離重みk[x]の導出式である。d=2の場合には、距離重みk[x]の導出式として2の剰余項MOD2(x)を用い、d=3の場合には、距離重みk[x]の導出式として3の剰余項MOD3(x)を用いる。図11(a)は、被シフト項Pを「4-MOD2(x)」、左シフト幅Qを「smax-floor(x/2)+2」としている。ここで、「MOD2(x)」はxを除数2で除算した剰余であり、「floor(x/2)」はxを除数2で除算した商である。既定の除数a(図11(a)ではa=2)、既定の定数b(図11(a)ではb=2)を用いて図11(a)を次のように表現できる。すなわち、図11(a)は、被シフト項Pを「2のb乗から参照距離xの除数aによる剰余(MOD2(x))を減算した値」、左シフト幅Qを「第一の正規化調整項(smax)から参照距離xの除数aによる商(floor(x/2))を減算して定数bを加算した値」としている。
 図11(b)は、被シフト項Pを「16-5*MOD2(x)」、左シフト幅Qを「smax-floor(x/2)+4」としている。既定の除数a(図11(b)ではa=2)、既定の定数b(図11(b)ではb=4)、既定の定数c(図11(b)ではc=5)を用いて図11(b)を次のように表現できる。すなわち、図11(b)は、被シフト項Pを「2のb乗から、参照距離xの除数aによる剰余(MOD2(x))と定数cの積を減算した値」、左シフト幅Qを「第一の正規化調整項(smax)から参照距離xの除数aによる商(floor(x/2))を減算して定数bを加算した値」としている。
 図11(c)は、被シフト項Pを「8-MOD3(x)」、左シフト幅Qを「smax-MOD3(x)+3」としている。ここで、「MOD3(x)」はxを除数3で除算した剰余であり、「floor(x/3)」はxを除数3で除算した商である。既定の除数a(図11(c)ではa=3)、既定の定数b(図11(b)ではb=3)を用いて図11(c)を次のように表現できる。すなわち、図11(c)は、被シフト項Pを「2のb乗から、参照距離xの除数aによる剰余(MOD3(x))を減算した値」、左シフト幅Qを「第一の正規化調整項(smax)から参照距離xの除数aによる商(floor(x/3))を減算して定数bを加算した値」としている。
 図11(d)は、被シフト項Pを「16-3*MOD3(x)」、左シフト幅Qを「smax-MOD3(x)+4」としている。既定の除数a(図11(d)ではa=3)、既定の定数b(図11(b)ではb=4)、既定の定数c(図11(b)ではc=3)を用いて図11(d)を次のように表現できる。すなわち、図11(d)は、被シフト項Pを「2のb乗から、参照距離xの除数aによる剰余(MOD3(x))と定数cの積を減算した値」、左シフト幅Qを「第一の正規化調整項(smax)から参照距離xの除数aによる商(floor(x/3))を減算して定数bを加算した値」としている。
 上記図11(a)と図11(c)の式はまとめて次のように表現できる。規定の除数a、既定の定数bを設定し、被シフト項Pを「2のb乗から参照距離xの除数aによる剰余を減算した値」、左シフト幅Qを「第一の正規化調整項から参照距離xの除数aによる商を減算して定数bを加算した値」に設定し、被シフト項Pに左シフト幅Qの左シフト演算を適用することで距離重みを導出する。
 上記図11(b)と図11(d)の式はまとめて次のように表現できる。規定の除数a、既定の定数b、既定の定数cを設定し、被シフト項Pを「2のb乗から、参照距離xの除数aによる剰余と定数cの積を減算した値」、左シフト幅Qを「第一の正規化調整項から参照距離xの除数aによる商を減算して定数bを加算した値」に設定し、被シフト項Pに左シフト幅Qの左シフト演算を適用することで距離重みを導出する。以上のように図11に示した距離重みk[x]の計算方法によれば、参照距離xを既定の除数で除算して得られる剰余に基づいて被シフト項Pの値を設定できる。そのため、被シフト項Pを1以外の値に設定できる。したがって、2のべき乗以外の値を距離重みk[x]の値として導出できるため距離重みの設定自由度が向上し、したがって、より予測残差が少なくなるような予測画像が予測画像補正処理により導出できる距離重みを設定可能となる。
 たとえば、2のべき乗以外の値に制限される場合には、図9に示すように、dが1以外の場合に、距離xが変化しても距離重みが変化しない、ことが生じる。たとえばd=2, smax= 8の場合には、距離重みk[x]は8,8,4,4,2,2,1,1とxが大きくなるにつれて2回に一度しか変化せず、たとえばd=3, smax = 8の場合には、距離重みk[x]は8,8,8,4,4,4,2,2,2,1,1,1と3回に一度しか変化しない。これは、距離重みk[x]を導出する際のfloor(x/d)がd>0では連続的に変化しない(長さdだけxが大きくなると1だけ変化する)ことから生じる。この場合、距離が大きくなると境界の未フィルタ画素の重みを減少させるという処理が適応できていないだけではなく、変化が不連続的になるために予測方式に伴う人工的なパターン(たとえば線)が残ることがあり、主観画質を低下させる原因にもなる。図11に示した距離重みk[x]の計算方法によれば、剰余の項により変化を連続的とすることができる(図13)参照。これは、MOD2(x)は、xが大きくなるにつれて0,1,0,1,0,1,0,1と変化する項であり、これにより4-MOD2(x)は、4,3,4,3,4,3,4,3と変化する。4から3へは、3/4=0.7だけ減少する。d=2の場合には、シフト値であるsmax-floor(x/d)が2回に一度変化する(2回に一度1/2になる)ことと合わせると、1, 3/4, 1/2, 3/4*1/2, 1/4, …のように相対的に重みが変化することになる。
 上記図11を参照して説明した距離重みk[x]の計算式と、変形例1として図8を参照して説明した距離重みk[x]の計算式を組み合わせてもよい。そのような組み合わせによる距離重みk[x]の計算式を図12に示す。図12に示す距離重みk[x]の各計算式は、参照距離xが所定の値以上の場合に0となるよう、図11を参照して説明した対応する距離重みk[x]の計算式を修正したものである。図12(a)は、図11(a)に、図12(b)は、図11(b)に、図12(c)は、図11(c)に、図12(d)は、図11(d)にそれぞれ対応する。
 また、距離重みk[x]の導出において、図12の計算式に基づき都度計算する代わりに、記憶領域内の距離重み参照テーブルを参照して距離重みk[x]を導出してもよい。距離重み参照テーブルの例を図13に示す。図13の(a)から(d)に示したテーブルは、図12の(a)から(d)の距離重みの計算式の結果を保持するテーブルである。
 なお、図11(a)と図11(c)は特にハードウェア処理に適している。たとえば4-MOD2(x)はハードウェアにおいて実装規模が大きくなる積を用いずに処理が可能であり、8-MOD3(x)も同様である。
 〔変形例5:ブロックサイズに応じて補正処理を省略する構成〕
 予測画像補正部145は、予測ブロックサイズが特定の条件を満たす場合に上記予測画像補正処理を実行し、それ以外の場合に入力されたフィルタ済予測画像をそのまま予測画像として出力する構成としてもよい。具体的には、予測ブロックサイズが所定のサイズ以下の場合に予測画像補正処理を省略し、それ以外の場合は予測画像補正処理を実行する構成がある。例えば予測ブロックサイズが4×4、8×8、16×16、32×32の場合、4×4と8×8の予測ブロックで予測画像補正処理を省略し、16×16と32×32の予測ブロックで予測画像補正処理を実行する。一般に小さい予測ブロックを用いる場合に単位面積あたりの処理量が大きく処理のボトルネックとなる。したがって、比較的小さい予測ブロックで予測画像補正処理を省略することで、ボトルネックとなる処理を増加させることなく、予測画像補正処理による予測画像精度の向上効果により符号化データの符号量を削減できる。
 〔動画像符号化装置〕
 本実施形態に係る動画像符号化装置2について、図16を参照して説明する。動画像符号化装置2は、前述の予測画像生成部14と同等の機能を有する予測画像生成部24を備える動画像符号化装置であって、入力画像#10を符号化して上記動画像復号装置1が復号可能な符号化データ#1を生成して出力する。図16を用いて、動画像符号化装置2の構成例を説明する。図16は、動画像符号化装置2の構成を示す機能ブロック図である。図16に示すように、動画像符号化装置2は、符号化設定部21、逆量子化・逆変換部22、加算器23、予測画像生成部24、フレームメモリ25、減算器26、変換・量子化部27、および符号化データ生成部29を備えている。
 符号化設定部21は、入力画像#10に基づいて、符号化に関する画像データおよび各種の設定情報を生成する。具体的には、符号化設定部21は、次の画像データおよび設定情報を生成する。まず、符号化設定部21は、入力画像#10を、スライス単位、ツリーブロック単位、CU単位に順次分割することにより、対象CUについてのCU画像#100を生成する。
 また、符号化設定部21は、分割処理の結果に基づいて、ヘッダ情報H’を生成する。ヘッダ情報H’は、(1)対象スライスに属するツリーブロックのサイズ、形状および対象スライス内での位置についての情報、並びに、(2)各ツリーブロックに属するCUのサイズ、形状および対象ツリーブロック内での位置についてのCU情報CU’を含んでいる。
 さらに、符号化設定部21は、CU画像#100、および、CU情報CU’を参照して、PT設定情報PTI’を生成する。PT設定情報PTI’には、(1)対象CUの各PU(予測ブロック)への可能な分割パターン、および、(2)各予測ブロックに割り付け可能な予測モード、の全ての組み合わせに関する情報が含まれる。
 符号化設定部21は、CU画像#100を減算器26に供給する。また、符号化設定部21は、ヘッダ情報H’を符号化データ生成部29に供給する。また、符号化設定部21は、PT設定情報PTI’を予測画像生成部24に供給する。
 逆量子化・逆変換部22は、変換・量子化部27より供給される、ブロック毎の量子化予測残差を、逆量子化、および、逆直交変換することによって、ブロック毎の予測残差を復元する。逆直交変換については、図2に示す逆量子化・逆変換部13について、既に説明したとおりであるので、ここではその説明を省略する。
 また、逆量子化・逆変換部22は、ブロック毎の予測残差を、TT分割情報(後述)により指定される分割パターンに従って統合し、対象CUについての予測残差Dを生成する。逆量子化・逆変換部22は、生成した対象CUについての予測残差Dを、加算器24に供給する。
 予測画像生成部24は、フレームメモリ25に記録されている局所復号画像P’、および、PT設定情報PTI’を参照して、対象CUについての予測画像Predを生成する。予測画像生成部24は、予測画像生成処理により得られた予測パラメータを、PT設定情報PTI’に設定し、設定後のPT設定情報PTI’を符号化データ生成部29に転送する。なお、予測画像生成部24による予測画像生成処理は動画像復号装置1の備える予測画像生成部14と同様であり説明を省略する。予測画像生成部24は内部に図5で示した予測画像生成部14の各構成要素を含んでおり、PT情報PTI’と局所復号画像P’を入力として予測画像を生成して出力できる。
 加算器23は、予測画像生成部24より供給される予測画像Predと、逆量子化・逆変換部22より供給される予測残差Dとを加算することによって、対象CUについての復号画像Pを生成する。
 フレームメモリ25には、復号された復号画像Pが順次記録される。フレームメモリ25には、対象ツリーブロックを復号する時点において、当該対象ツリーブロックよりも先に復号された全てのツリーブロック(例えば、ラスタスキャン順で先行する全てのツリーブロック)に対応する復号画像が記録されている。
 減算器26は、CU画像#100から予測画像Predを減算することによって、対象CUについての予測残差Dを生成する。減算器26は、生成した予測残差Dを、変換・量子化部27に供給する。
 変換・量子化部27は、予測残差Dに対して、直交変換および量子化を行うことで量子化予測残差を生成する。なお、ここで直交変換とは、画素領域から周波数領域への変換のことをさす。また、逆直交変換の例としては、DCT変換(Discrete Cosine Transform)、およびDST変換(Discrete Sine Transform)等が挙げられる。
 具体的には、変換・量子化部27は、CU画像#100、および、CU情報CU’を参照し、対象CUの1または複数のブロックへの分割パターンを決定する。また、決定された分割パターンに従って、予測残差Dを、各ブロックについての予測残差に分割する。
 また、変換・量子化部27は、各ブロックについての予測残差を直交変換することによって周波数領域における予測残差を生成した後、当該周波数領域における予測残差を量子化することによってブロック毎の量子化予測残差を生成する。
 また、変換・量子化部27は、生成したブロック毎の量子化予測残差と、対象CUの分割パターンを指定するTT分割情報と、対象CUの各ブロックへの可能な全分割パターンに関する情報とを含むTT設定情報TTI’を生成する。変換・量子化部27は、生成したTT設定情報TTI’を逆量子化・逆変換部22および符号化データ生成部29に供給する。
 符号化データ生成部29は、ヘッダ情報H’、TT設定情報TTI’、およびPT設定情報PTI’を符号化し、符号化したヘッダ情報H、TT設定情報TTI、およびPT設定情報PTIを多重化して符号化データ#1を生成し、出力する。
 (動画像符号化装置の効果)
 上記説明した本実施形態における動画像符号化装置は、予測画像補正部145を構成要素として含む予測画像生成部24を備えており、予測画像生成部24は、フィルタ済予測画像の各画素を対象として、重み係数に基づく重み加算により未フィルタ参照画素値とフィルタ済予測画素値から予測画像(補正予測画像)を生成する。上記重み係数は予測モードの示す予測方向に応じて定まる参照強度係数と、対象画素と参照領域の距離の増加に伴い単調減少する距離重みとの積である。したがって、参照距離(例えばx、y)が大きいほど距離重み(例えばk[x]、k[y])の値が小さい値となり、したがって、参照距離が小さいほどより未フィルタ参照画素値の重みを大きくして予測画像を生成することで予測精度の高い予測画素値を生成できる。加えて、重み係数は参照強度係数と距離重みの積であるため、距離重みの値を距離毎に事前に計算してテーブルに保持しておくことで、右シフト演算や除算を用いることなく重み係数を導出できる。
 〔予測画像生成装置〕
 上記動画像復号装置1と動画像符号化装置2は、図5に示す予測画像生成部14を内部に備えており、それにより予測精度の高い予測画像をより少ない計算量で導出して動画像の符号化および復号処理が実現できる。一方で、予測画像生成部14を別の用途に利用することもできる。例えば、予測画像生成部14を、動画や静止画の欠損を補修する画像欠損修復装置に組み込んで利用することもできる。その場合、予測ブロックは欠損補修の対象領域に相当し、予測画像生成部14への入力は画像欠損の修復パターンに相当する予測モード、および、予測ブロック周辺の入力画像もしくは修復済の画像となる。出力は予測ブロックにおける修復済の画像となる。
 予測画像生成部14と同一の構成で予測画像生成装置を実現でき、予測画像生成装置は、動画像復号装置、動画像符号化装置、画像欠損修復装置の構成要素として利用できる。
 〔応用例〕
 上述した動画像符号化装置2及び動画像復号装置1は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像(CGおよびGUIを含む)であってもよい。
 まず、上述した動画像符号化装置2及び動画像復号装置1を、動画像の送信及び受信に利用できることを、図17を参照して説明する。
 図17の(a)は、動画像符号化装置2を搭載した送信装置PROD_Aの構成を示したブロック図である。図17の(a)に示すように、送信装置PROD_Aは、動画像を符号化することによって符号化データを得る符号化部PROD_A1と、符号化部PROD_A1が得た符号化データで搬送波を変調することによって変調信号を得る変調部PROD_A2と、変調部PROD_A2が得た変調信号を送信する送信部PROD_A3と、を備えている。上述した動画像符号化装置2は、この符号化部PROD_A1として利用される。
 送信装置PROD_Aは、符号化部PROD_A1に入力する動画像の供給源として、動画像を撮像するカメラPROD_A4、動画像を記録した記録媒体PROD_A5、及び、動画像を外部から入力するための入力端子PROD_A6、及び、画像を生成または加工する画像処理部A7を更に備えていてもよい。図17の(a)においては、これら全てを送信装置PROD_Aが備えた構成を例示しているが、一部を省略しても構わない。
 なお、記録媒体PROD_A5は、符号化されていない動画像を記録したものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化された動画像を記録したものであってもよい。後者の場合、記録媒体PROD_A5と符号化部PROD_A1との間に、記録媒体PROD_A5から読み出した符号化データを記録用の符号化方式に従って復号する復号部(不図示)を介在させるとよい。
 図17の(b)は、動画像復号装置1を搭載した受信装置PROD_Bの構成を示したブロック図である。図17の(b)に示すように、受信装置PROD_Bは、変調信号を受信する受信部PROD_B1と、受信部PROD_B1が受信した変調信号を復調することによって符号化データを得る復調部PROD_B2と、復調部PROD_B2が得た符号化データを復号することによって動画像を得る復号部PROD_B3と、を備えている。上述した動画像復号装置1は、この復号部PROD_B3として利用される。
 受信装置PROD_Bは、復号部PROD_B3が出力する動画像の供給先として、動画像を表示するディスプレイPROD_B4、動画像を記録するための記録媒体PROD_B5、及び、動画像を外部に出力するための出力端子PROD_B6を更に備えていてもよい。図17の(b)においては、これら全てを受信装置PROD_Bが備えた構成を例示しているが、一部を省略しても構わない。
 なお、記録媒体PROD_B5は、符号化されていない動画像を記録するためのものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化されたものであってもよい。後者の場合、復号部PROD_B3と記録媒体PROD_B5との間に、復号部PROD_B3から取得した動画像を記録用の符号化方式に従って符号化する符号化部(不図示)を介在させるとよい。
 なお、変調信号を伝送する伝送媒体は、無線であってもよいし、有線であってもよい。また、変調信号を伝送する伝送態様は、放送(ここでは、送信先が予め特定されていない送信態様を指す)であってもよいし、通信(ここでは、送信先が予め特定されている送信態様を指す)であってもよい。すなわち、変調信号の伝送は、無線放送、有線放送、無線通信、及び有線通信の何れによって実現してもよい。
 例えば、地上デジタル放送の放送局(放送設備など)/受信局(テレビジョン受像機など)は、変調信号を無線放送で送受信する送信装置PROD_A/受信装置PROD_Bの一例である。また、ケーブルテレビ放送の放送局(放送設備など)/受信局(テレビジョン受像機など)は、変調信号を有線放送で送受信する送信装置PROD_A/受信装置PROD_Bの一例である。
 また、インターネットを用いたVOD(Video On Demand)サービスや動画共有サービスなどのサーバ(ワークステーションなど)/クライアント(テレビジョン受像機、パーソナルコンピュータ、スマートフォンなど)は、変調信号を通信で送受信する送信装置PROD_A/受信装置PROD_Bの一例である(通常、LANにおいては伝送媒体として無線又は有線の何れかが用いられ、WANにおいては伝送媒体として有線が用いられる)。ここで、パーソナルコンピュータには、デスクトップ型PC、ラップトップ型PC、及びタブレット型PCが含まれる。また、スマートフォンには、多機能携帯電話端末も含まれる。
 なお、動画共有サービスのクライアントは、サーバからダウンロードした符号化データを復号してディスプレイに表示する機能に加え、カメラで撮像した動画像を符号化してサーバにアップロードする機能を有している。すなわち、動画共有サービスのクライアントは、送信装置PROD_A及び受信装置PROD_Bの双方として機能する。
 次に、上述した動画像符号化装置2及び動画像復号装置1を、動画像の記録及び再生に利用できることを、図18を参照して説明する。
 図18の(a)は、上述した動画像符号化装置2を搭載した記録装置PROD_Cの構成を示したブロック図である。図18の(a)に示すように、記録装置PROD_Cは、動画像を符号化することによって符号化データを得る符号化部PROD_C1と、符号化部PROD_C1が得た符号化データを記録媒体PROD_Mに書き込む書込部PROD_C2と、を備えている。上述した動画像符号化装置2は、この符号化部PROD_C1として利用される。
 なお、記録媒体PROD_Mは、(1)HDD(Hard Disk Drive)やSSD(Solid State Drive)などのように、記録装置PROD_Cに内蔵されるタイプのものであってもよいし、(2)SDメモリカードやUSB(Universal Serial Bus)フラッシュメモリなどのように、記録装置PROD_Cに接続されるタイプのものであってもよいし、(3)DVD(Digital Versatile Disc)やBD(Blu-ray Disc:登録商標)などのように、記録装置PROD_Cに内蔵されたドライブ装置(不図示)に装填されるものであってもよい。
 また、記録装置PROD_Cは、符号化部PROD_C1に入力する動画像の供給源として、動画像を撮像するカメラPROD_C3、動画像を外部から入力するための入力端子PROD_C4、及び、動画像を受信するための受信部PROD_C5、及び、画像を生成または加工する画像処理部C6を更に備えていてもよい。図18の(a)においては、これら全てを記録装置PROD_Cが備えた構成を例示しているが、一部を省略しても構わない。
 なお、受信部PROD_C5は、符号化されていない動画像を受信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを受信するものであってもよい。後者の場合、受信部PROD_C5と符号化部PROD_C1との間に、伝送用の符号化方式で符号化された符号化データを復号する伝送用復号部(不図示)を介在させるとよい。
 このような記録装置PROD_Cとしては、例えば、DVDレコーダ、BDレコーダ、HD(Hard Disk)レコーダなどが挙げられる(この場合、入力端子PROD_C4又は受信部PROD_C5が動画像の主な供給源となる)。また、カムコーダ(この場合、カメラPROD_C3が動画像の主な供給源となる)、パーソナルコンピュータ(この場合、受信部PROD_C5が動画像の主な供給源となる)、スマートフォン(この場合、カメラPROD_C3又は受信部PROD_C5又は画像処理部C6が動画像の主な供給源となる)なども、このような記録装置PROD_Cの一例である。
 図18の(b)は、上述した動画像復号装置1を搭載した再生装置PROD_Dの構成を示したブロックである。図18の(b)に示すように、再生装置PROD_Dは、記録媒体PROD_Mに書き込まれた符号化データを読み出す読出部PROD_D1と、読出部PROD_D1が読み出した符号化データを復号することによって動画像を得る復号部PROD_D2と、を備えている。上述した動画像復号装置1は、この復号部PROD_D2として利用される。
 なお、記録媒体PROD_Mは、(1)HDDやSSDなどのように、再生装置PROD_Dに内蔵されるタイプのものであってもよいし、(2)SDメモリカードやUSBフラッシュメモリなどのように、再生装置PROD_Dに接続されるタイプのものであってもよいし、(3)DVDやBDなどのように、再生装置PROD_Dに内蔵されたドライブ装置(不図示)に装填されるものであってもよい。
 また、再生装置PROD_Dは、復号部PROD_D2が出力する動画像の供給先として、動画像を表示するディスプレイPROD_D3、動画像を外部に出力するための出力端子PROD_D4、及び、動画像を送信する送信部PROD_D5を更に備えていてもよい。図18の(b)においては、これら全てを再生装置PROD_Dが備えた構成を例示しているが、一部を省略しても構わない。
  なお、送信部PROD_D5は、符号化されていない動画像を送信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを送信するものであってもよい。後者の場合、復号部PROD_D2と送信部PROD_D5との間に、動画像を伝送用の符号化方式で符号化する符号化部(不図示)を介在させるとよい。
 このような再生装置PROD_Dとしては、例えば、DVDプレイヤ、BDプレイヤ、HDDプレイヤなどが挙げられる(この場合、テレビジョン受像機等が接続される出力端子PROD_D4が動画像の主な供給先となる)。また、テレビジョン受像機(この場合、ディスプレイPROD_D3が動画像の主な供給先となる)、デジタルサイネージ(電子看板や電子掲示板等とも称され、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)、デスクトップ型PC(この場合、出力端子PROD_D4又は送信部PROD_D5が動画像の主な供給先となる)、ラップトップ型又はタブレット型PC(この場合、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)、スマートフォン(この場合、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)なども、このような再生装置PROD_Dの一例である。
  (ハードウェア的実現およびソフトウェア的実現)
 また、上述した動画像復号装置1および動画像符号化装置2の各ブロックは、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
 後者の場合、上記各装置は、各機能を実現するプログラムの命令を実行するCPU、上記プログラムを格納したROM(Read Only Memory)、上記プログラムを展開するRAM(Random Access Memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである上記各装置の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記各装置に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
 上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD-ROM(Compact Disc Read-Only Memory)/MOディスク(Magneto-Optical disc)/MD(Mini Disc)/DVD(Digital Versatile Disc)/CD-R(CD Recordable)/ブルーレイディスク(Blu-ray Disc:登録商標)等の光ディスクを含むディスク類、ICカード(メモリカードを含む)/光カード等のカード類、マスクROM/EPROM(Erasable Programmable Read-Only Memory)/EEPROM(登録商標)(Electrically Erasable and Programmable Read-Only Memory)/フラッシュROM等の半導体メモリ類、あるいはPLD(Programmable logic device)やFPGA(Field Programmable Gate Array)等の論理回路類などを用いることができる。
 また、上記各装置を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、LAN(Local Area Network)、ISDN(Integrated Services Digital Network)、VAN(Value-Added Network)、CATV(Community Antenna television/Cable Television)通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、IEEE(Institute of Electrical and ElectronicEngineers)1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDA(Infrared Data Association)やリモコンのような赤外線、Bluetooth(登録商標)、IEEE802.11無線、HDR(High Data Rate)、NFC(Near Field Communication)、DLNA(登録商標)(Digital Living Network Alliance)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
 本発明は、画像データが符号化された符号化データを復号する画像復号装置、および、画像データが符号化された符号化データを生成する画像符号化装置に好適に適用することができる。また、画像符号化装置によって生成され、画像復号装置によって参照される符号化データのデータ構造に好適に適用することができる。
 〔まとめ〕
 上記課題を解決するため、本発明の一態様に係る予測画像生成装置は、予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、上記参照領域上の未フィルタ参照画素値と上記予測モードとに基づいた予測画像補正処理により上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴としている。
 また、上記予測画像生成装置において、上記予測画像補正部は、上記未フィルタ参照画素値と重み係数の積と、上記フィルタ済予測画素値と重み係数の積と、ラウンディング調整項との和に対して右シフト演算を適用して予測画素値を導出し、上記右シフト演算の幅は、第一の正規化調整項と第二の正規化調整項の和であって、上記距離重みは2のN乗に相当する値であって、上記Nの値には上記第一の正規化調整項から上記対象画素と参照領域の距離の増加に伴い単調増加する整数を減算して得られる値が設定されることを特徴としている。
 また、上記予測画像生成装置は、上記1個以上の未フィルタ参照画素値は、左方未フィルタ参照画素値、および、上方未フィルタ参照画素値を含み、上記左方未フィルタ参照画素値に対する上記距離重みは、対象画素と参照領域の間の水平方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であり、上記上方未フィルタ参照画素値に対しる上記距離重みは、対象画素と参照領域の間の鉛直方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であることを特徴としている。
 また、上記予測画像生成装置は、上記1個以上の未フィルタ参照画素値は、左上未フィルタ参照画素値を少なくとも2個含み、一方の上記左上未フィルタ参照画素値に対する上記距離重みは、対象画素と参照領域の間の水平方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であり、他方の上記左上未フィルタ参照画素値に対する上記距離重みは、対象画素と参照領域の間の鉛直方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であることを特徴としている。
 また、上記予測画像生成装置は、上記参照距離が所定の閾値以上の場合に、上記距離重みとして0の値を導出することを特徴としている。
 また、上記予測画像生成装置は、上記所定の閾値は、予測ブロックの幅または高さの半分であることを特徴としている。
 また、上記予測画像生成装置は、参照距離を少なくともインデックスの一つとして、記憶領域上の距離重み導出テーブルを参照して上記距離重みを導出することを特徴としている。
 また、上記予測画像生成装置は、上記距離重みは被シフト項に対して左シフト幅による左シフト演算を適用することを特徴としている。
 また、上記予測画像生成装置は、既定の除数a、既定の定数bを用いて、上記被シフト項を、2のb乗から上記参照距離の除数aによる剰余を減算した値に設定し、上記左シフト幅を、上記第一の正規化調整項から上記参照距離の除数aによる商を減算して定数bを加算した値に設定することを特徴としている。
 また、上記予測画像生成装置は、上記距離重みは被シフト項に対して左シフト幅による左シフト演算を適用することで導出され、既定の除数a、既定の定数b、および、既定の定数cを用いて上記被シフト項を、2のb乗から、上記参照距離の除数aによる剰余と定数cの積を減算した値に設定し、上記左シフト幅を、上記第一の正規化調整項から上記参照距離の除数aによる商を減算して定数bを加算した値に設定することを特徴としている。
 また、上記予測画像生成装置は、上記予測画像補正部は、予測ブロックサイズが特定の条件を満たす場合に上記予測画像補正処理を実行して予測画像を生成し、それ以外の場合に入力されたフィルタ済予測画像をそのまま予測画像とすることを特徴としている。
 上記課題を解決するため、本発明の一態様に係る画像復号装置は、予測モードに対応付けられたイントラ予測方式によって予測ブロックを単位として予測画像を生成することで符号化データから画像を復元する画像復号装置において、予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、上記参照領域上の未フィルタ参照画素値と上記予測モードとに基づいた予測画像補正処理により上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴としている。
 上記課題を解決するため、本発明の一態様に係る画像符号化装置は、予測モードに対応付けられたイントラ予測方式によって予測ブロックを単位として予測画像を生成することで動画像から符号化データを生成する画像符号化装置において、予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、
 予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、上記参照領域上の未フィルタ参照画素値と上記予測モードとに基づいた予測画像補正処理により上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴としている。
 (関連出願の相互参照)
 本出願は、2015年10月21日に出願された特願2015-207191に対して先権の利益を主張するものであり、当該出願を参照することにより、その内容の全てが本書に含まれる。
1     動画像復号装置(画像復号装置)
14、24    予測画像生成部
141   予測ブロック設定部
142   未フィルタ参照画素設定部
143   フィルタ済参照画素設定部
144   イントラ予測部
144D  DC予測部
144P  Planar予測部
144H  水平予測部
144V  垂直予測部
144A  Angular予測部
145   予測画像補正部
16、25    フレームメモリ
2     動画像符号化装置(画像符号化装置)

Claims (12)

  1.  予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、
     予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、
     上記参照領域上の未フィルタ参照画素値と上記予測モードに基づいて予測画像補正処理を行うことにより上記フィルタ済予測画素値から予測画像を生成する予測画像補正部とを備え、
     上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、
     上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴とする予測画像生成装置。
  2.  上記予測画像補正部は、上記未フィルタ参照画素値と重み係数の積と、上記フィルタ済予測画素値と重み係数の積と、ラウンディング調整項との和に対して右シフト演算を適用して予測画素値を導出し、
     上記右シフト演算の幅は、第一の正規化調整項と第二の正規化調整項の和であって、
     上記距離重みは2のN乗に相当する値であって、上記Nの値には上記第一の正規化調整項から上記対象画素と参照領域の距離の増加に伴い単調増加する整数を減算して得られる値が設定されることを特徴とする請求項1に記載の予測画像生成装置。
  3.  上記1個以上の未フィルタ参照画素値は、左方未フィルタ参照画素値、および、上方未フィルタ参照画素値を含み、
     上記左方未フィルタ参照画素値に対する上記距離重みは、対象画素と参照領域の間の水平方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であり、
     上記上方未フィルタ参照画素値に対しる上記距離重みは、対象画素と参照領域の間の鉛直方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であることを特徴とする請求項2に記載の予測画像生成装置。
  4.  上記1個以上の未フィルタ参照画素値は、左上未フィルタ参照画素値を少なくとも2個含み、
     一方の上記左上未フィルタ参照画素値に対する上記距離重みは、対象画素と参照領域の間の水平方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であり、
     他方の上記左上未フィルタ参照画素値に対する上記距離重みは、対象画素と参照領域の間の鉛直方向の距離を参照距離として、参照距離の増加に伴い単調減少する値であることを特徴とする請求項2または請求項3に記載の予測画像生成装置。
  5.  上記参照距離が所定の閾値以上の場合に、上記距離重みとして0の値を導出することを特徴とする請求項1から請求項4の何れかに記載の予測画像生成装置。
  6.  上記所定の閾値は、予測ブロックの幅または高さの半分であることを特徴とする請求項5に記載の予測画像生成装置。
  7.  参照距離を少なくともインデックスの一つとして、記憶領域上の距離重み導出テーブルを参照して上記距離重みを導出することを特徴とする請求項1から請求項6の何れかに記載の予測画像生成装置。
  8.  上記距離重みは被シフト項に対して左シフト幅による左シフト演算を適用することで導出され、
     既定の除数a、既定の定数bを用いて、上記被シフト項を、2のb乗から上記参照距離の除数aによる剰余を減算した値に設定し、上記左シフト幅を、上記第一の正規化調整項から上記参照距離の除数aによる商を減算して定数bを加算した値に設定することを特徴とする請求項2から請求項4に記載の予測画像生成装置。
  9.  上記距離重みは被シフト項に対して左シフト幅による左シフト演算を適用することで導出され、
     既定の除数a、既定の定数b、および、既定の定数cを用いて上記被シフト項を、2のb乗から、上記参照距離の除数aによる剰余と定数cの積を減算した値に設定し、上記左シフト幅を、上記第一の正規化調整項から上記参照距離の除数aによる商を減算して定数bを加算した値に設定することを特徴とする請求項2から請求項4の何れかに記載の予測画像生成装置。
  10.  上記予測画像補正部は、予測ブロックサイズが特定の条件を満たす場合に上記予測画像補正処理を実行して予測画像を生成し、それ以外の場合に入力されたフィルタ済予測画像をそのまま予測画像とすることを特徴とする請求項1から請求項9の何れかに記載の予測画像生成装置。
  11.  予測モードに対応付けられたイントラ予測方式によって予測ブロックを単位として予測画像を生成することで符号化データから画像を復元する画像復号装置において、
     予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、
     予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、
     上記参照領域上の未フィルタ参照画素値と上記予測モードと基づいて予測画像補正処理を行うことにより上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、
     上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、
     上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴とする動画像復号装置。
  12.  予測モードに対応付けられたイントラ予測方式によって予測ブロックを単位として予測画像を生成することで動画像から符号化データを生成する画像符号化装置において、
     予測ブロックに対して設定される参照領域上のフィルタ済参照画素値を導出するフィルタ済参照画素設定部と、
     予測モードに応じた予測方式により上記フィルタ済参照画素値を参照して上記予測ブロックのフィルタ済予測画素値を導出するイントラ予測部と、
     上記参照領域上の未フィルタ参照画素値と上記予測モードに基づいて予測画像補正処理を行うことにより上記フィルタ済予測画素値から予測画像を生成する予測画像補正部を備え、
     上記予測画像補正部は、上記予測ブロック内の対象画素における上記フィルタ済予測画素値と、少なくとも1個以上の未フィルタ参照画素値とに対して重み係数を用いた重み付け加算を適用することで上記予測画像を構成する予測画素値を導出し、
     上記未フィルタ参照画素値に対する上記重み係数は、上記予測モードの示す予測方向に応じて定まる参照強度係数と、上記対象画素に対する参照距離の増加に伴い単調減少する距離重みとの積であることを特徴とする動画像符号化装置。
PCT/JP2016/074695 2015-10-21 2016-08-24 予測画像生成装置、画像復号装置および画像符号化装置 WO2017068856A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US15/763,129 US20180288408A1 (en) 2015-10-21 2016-08-24 Predicted image generation device, image decoding device, and image coding device
JP2017546442A JPWO2017068856A1 (ja) 2015-10-21 2016-08-24 予測画像生成装置、画像復号装置および画像符号化装置
EP16857174.3A EP3367688A4 (en) 2015-10-21 2016-08-24 Predictive image generation device, image decoding device, and image encoding device
CN201680061041.9A CN108141609A (zh) 2015-10-21 2016-08-24 预测图像生成装置、图像解码装置以及图像编码装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-207191 2015-10-21
JP2015207191 2015-10-21

Publications (1)

Publication Number Publication Date
WO2017068856A1 true WO2017068856A1 (ja) 2017-04-27

Family

ID=58557270

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/074695 WO2017068856A1 (ja) 2015-10-21 2016-08-24 予測画像生成装置、画像復号装置および画像符号化装置

Country Status (5)

Country Link
US (1) US20180288408A1 (ja)
EP (1) EP3367688A4 (ja)
JP (1) JPWO2017068856A1 (ja)
CN (1) CN108141609A (ja)
WO (1) WO2017068856A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020050684A1 (ko) * 2018-09-07 2020-03-12 김기백 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10425648B2 (en) * 2015-09-29 2019-09-24 Qualcomm Incorporated Video intra-prediction using position-dependent prediction combination for video coding
EP3393126A4 (en) * 2016-02-16 2019-04-17 Samsung Electronics Co., Ltd. INTRA PREDICTION METHOD FOR REDUCING INTRA PREDICTION ERRORS AND DEVICE THEREFOR
US10645395B2 (en) * 2016-05-25 2020-05-05 Arris Enterprises Llc Weighted angular prediction coding for intra coding
CN116437079A (zh) 2016-09-20 2023-07-14 株式会社Kt 对视频进行解码和编码的方法以及传输方法
US10542275B2 (en) * 2016-12-28 2020-01-21 Arris Enterprises Llc Video bitstream coding
US10728548B2 (en) * 2017-04-04 2020-07-28 Futurewei Technologies, Inc. Processing reference samples used for intra-prediction of a picture block
KR20200012957A (ko) * 2017-06-30 2020-02-05 후아웨이 테크놀러지 컴퍼니 리미티드 인터-프레임 예측 방법 및 디바이스
WO2019059107A1 (ja) * 2017-09-20 2019-03-28 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US10965941B2 (en) 2017-10-09 2021-03-30 Qualcomm Incorporated Position-dependent prediction combinations in video coding
CN113347438B (zh) 2019-01-02 2023-09-29 Oppo广东移动通信有限公司 帧内预测方法及装置、视频编码设备、存储介质
WO2021043138A1 (en) * 2019-09-02 2021-03-11 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods of filter modification on general intra prediction process
CN115280770B (zh) * 2020-03-26 2023-11-21 阿里巴巴(中国)有限公司 用于对视频进行编码或解码的方法和装置
CN112001854A (zh) * 2020-07-14 2020-11-27 浙江大华技术股份有限公司 一种编码图像的修复方法及相关系统和装置
US11743459B2 (en) * 2020-09-29 2023-08-29 Qualcomm Incorporated Filtering process for video coding

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502807A (ja) * 2009-08-17 2013-01-24 サムスン エレクトロニクス カンパニー リミテッド 映像の符号化方法及びその装置、映像復号化方法及びその装置
WO2014050971A1 (ja) * 2012-09-28 2014-04-03 日本電信電話株式会社 イントラ予測符号化方法、イントラ予測復号方法、イントラ予測符号化装置、イントラ予測復号装置、それらのプログラム並びにプログラムを記録した記録媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8249150B2 (en) * 2008-12-24 2012-08-21 Sony Corporation SIMD-processor-friendly MPEG-2 inter-quantizer
US8249151B2 (en) * 2008-12-24 2012-08-21 Sony Corporation SIMD-processor-friendly MPEG-2 intra-quantizer
JP5490404B2 (ja) * 2008-12-25 2014-05-14 シャープ株式会社 画像復号装置
JP5597968B2 (ja) * 2009-07-01 2014-10-01 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502807A (ja) * 2009-08-17 2013-01-24 サムスン エレクトロニクス カンパニー リミテッド 映像の符号化方法及びその装置、映像復号化方法及びその装置
WO2014050971A1 (ja) * 2012-09-28 2014-04-03 日本電信電話株式会社 イントラ予測符号化方法、イントラ予測復号方法、イントラ予測符号化装置、イントラ予測復号装置、それらのプログラム並びにプログラムを記録した記録媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SAID, AMIR ET AL.: "Position dependent prediction combination for intra-frame video coding", 2016 IEEE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING (ICIP, 25 September 2016 (2016-09-25), pages 534 - 538, XP033016540 *
YU , SHENGSHENG ET AL.: "Distance-based weighted prediction for H.264 intra coding", INTERNATIONAL CONFERENCE ON AUDIO, LANGUAGE AND IMAGE PROCESSING, 2008. ICALIP 2008, 7 July 2008 (2008-07-07), pages 1477 - 1480, XP031298416 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020050684A1 (ko) * 2018-09-07 2020-03-12 김기백 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치
US11477439B2 (en) 2018-09-07 2022-10-18 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and device for video signal processing

Also Published As

Publication number Publication date
JPWO2017068856A1 (ja) 2018-08-09
US20180288408A1 (en) 2018-10-04
EP3367688A1 (en) 2018-08-29
CN108141609A (zh) 2018-06-08
EP3367688A4 (en) 2018-10-24

Similar Documents

Publication Publication Date Title
WO2017068856A1 (ja) 予測画像生成装置、画像復号装置および画像符号化装置
US20230199218A1 (en) Image decoding device, image encoding device, and image decoding method
WO2017134992A1 (ja) 予測画像生成装置、動画像復号装置および動画像符号化装置
WO2016203981A1 (ja) 画像復号装置及び画像符号化装置
US20180160118A1 (en) Arithmetic decoding device and arithmetic coding device
WO2014115283A1 (ja) 画像復号装置、および画像符号化装置
WO2015199040A1 (ja) Dmm予測部、画像復号装置、および画像符号化装置
JP5995448B2 (ja) 画像復号装置、および画像符号化装置
WO2012081609A1 (ja) 画像フィルタ装置、復号装置、符号化装置、および、データ構造
WO2012077719A1 (ja) 画像復号装置、および画像符号化装置
TW202133613A (zh) 圖像解碼裝置及圖像編碼裝置
WO2019065488A1 (ja) 画像復号装置および画像符号化装置
CN113196776A (zh) 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法
JP2013192118A (ja) 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置
WO2012121352A1 (ja) 動画像復号装置、動画像符号化装置、および、データ構造
WO2021246284A1 (ja) 動画像復号装置及び動画像符号化装置
WO2012090962A1 (ja) 画像復号装置、画像符号化装置、および符号化データのデータ構造、ならびに、算術復号装置、算術符号化装置
WO2012077795A1 (ja) 画像符号化装置、画像復号装置、およびデータ構造
JP6162289B2 (ja) 画像復号装置および画像復号方法
JP7444570B2 (ja) 動画像復号装置、動画像符号化装置、動画像復号方法および動画像符号化方法
JP7425568B2 (ja) 動画像復号装置、動画像符号化装置、動画像復号方法および動画像符号化方法
WO2012081706A1 (ja) 画像フィルタ装置、フィルタ装置、復号装置、符号化装置、および、データ構造
JP2021197557A (ja) 画像復号装置及び画像符号化装置
JP2016143962A (ja) 領域分割画像生成装置、画像復号装置、および符号化装置。
JP2016076904A (ja) Dcオフセット情報復号装置、画像復号装置、およびdcオフセット情報符号化装置。

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017546442

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15763129

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE