WO2017061189A1 - 画像復号装置または画像符号化装置のための画像予測装置 - Google Patents

画像復号装置または画像符号化装置のための画像予測装置 Download PDF

Info

Publication number
WO2017061189A1
WO2017061189A1 PCT/JP2016/075052 JP2016075052W WO2017061189A1 WO 2017061189 A1 WO2017061189 A1 WO 2017061189A1 JP 2016075052 W JP2016075052 W JP 2016075052W WO 2017061189 A1 WO2017061189 A1 WO 2017061189A1
Authority
WO
WIPO (PCT)
Prior art keywords
parameter
unit
prediction
cost
value
Prior art date
Application number
PCT/JP2016/075052
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 JP2017544411A priority Critical patent/JPWO2017061189A1/ja
Priority to US15/765,276 priority patent/US20180302641A1/en
Publication of WO2017061189A1 publication Critical patent/WO2017061189A1/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/124Quantisation
    • 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/136Incoming video signal characteristics or properties
    • 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/186Methods 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 colour or a chrominance component
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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 an image decoding device, an image encoding device, and a predicted image generation device.
  • 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.
  • the moving image encoding method examples include H.264. H.264 / MPEG-4. Examples include a method proposed in AVC and HEVC (High-Efficiency Video Coding).
  • an image (picture) constituting a moving image is a slice obtained by dividing the image, a coding unit obtained by dividing the slice (Coding Unit) And a hierarchical structure composed of a prediction unit (PU) and a transform unit (TU) that are obtained by dividing a coding unit, and is coded / decoded for each block. .
  • PU prediction unit
  • TU transform unit
  • a predicted image is usually generated based on a local decoded image obtained by encoding / decoding an input image, and the predicted image is generated from the input image (original image).
  • a prediction residual obtained by subtraction (sometimes referred to as “difference image” or “residual image”) is encoded. Examples of the method for generating a predicted image include inter-screen prediction (inter prediction) and intra-screen prediction (intra prediction).
  • Non-Patent Document 1 a method for estimating a linear prediction parameter from the relationship between a luminance component and a color difference component that have already been decoded and predicting a color difference component of a target block using the estimated linear prediction parameter in intra prediction.
  • Non-Patent Document 2 and Non-Patent Document 3 a technique for stabilizing a linear prediction parameter by adding a regularization cost in addition to a least square method for minimizing a square error in derivation of a linear prediction parameter is known. It has been.
  • Non-Patent Document 1 does not use a regularization cost that stabilizes the linear prediction parameter, and thus has a problem that the derived linear prediction parameter is easily affected by noise.
  • regularization costs are used, but in particular, colors for predicting different color spaces (for example, luminance to color difference and color difference to another color difference) in which the sign of the slope parameter of the linear prediction formula is both positive and negative. There was a problem that regularization costs suitable for inter-component prediction are not always the case.
  • Non-Patent Document 3 discloses a regularization cost used for linear prediction in the case of predicting another color difference from a color difference, but does not consider the sign or size of the slope parameter of linear prediction, There is a problem that it is not appropriate in the case where is sometimes positive.
  • the estimated linear prediction parameter is easily affected by noise.
  • the prediction parameter estimated in the prediction between different color components in which the sign of the slope parameter of the linear prediction formula is positive or negative is not appropriate.
  • One form of the present invention is a linear prediction parameter derivation unit for deriving linear prediction parameters a and b for predicting yi from xi with a set of a pixel value xi and a pixel value yi corresponding to the index i as input.
  • An image prediction apparatus including a linear prediction unit that generates a prediction image based on a prediction parameter, wherein the linear prediction parameter derivation unit includes a sum XY of a product of a pixel value xi and a pixel value yi, and a sum X of a pixel value xi, Based on the product of the first parameter a1 derived based on the product of the sum Y of the pixel values yi, the sum XX of the product of the pixel value xi and the pixel value xi, the sum X of the pixel value xi, and the sum X of the pixel value xi Means for deriving the linear prediction parameter a from the second parameter a2 derived in this way, the linear prediction parameter deriving unit compares the first parameter a1 with a predetermined threshold THN, and the first parameter a1 is the threshold If it is less than THN or less than the above threshold THN The means for subtracting the first cost a1cost
  • the estimated linear prediction parameter is resistant to noise, and the accuracy of the predicted image derived using the linear prediction parameter is improved. Encoding efficiency is improved in an image decoding apparatus and an image encoding apparatus that use linear prediction.
  • FIG. 1 is a schematic diagram illustrating a configuration of an image transmission system according to an embodiment of the present invention.
  • FIG. 25 is a schematic diagram illustrating a configuration of the image transmission system 1 according to the present embodiment.
  • the image transmission system 1 is a system that transmits a code obtained by encoding a plurality of layer images and displays an image obtained by decoding the transmitted code.
  • the image transmission system 1 includes an image encoding device 11, a network 21, an image decoding device 31, and an image display device 41.
  • a signal T indicating a single layer image or a plurality of layer images is input to the image encoding device 11.
  • a layer image is an image that is viewed or photographed at a certain resolution and a certain viewpoint.
  • view scalable coding in which a three-dimensional image is coded using a plurality of layer images
  • each of the plurality of layer images is referred to as a viewpoint image.
  • the plurality of layer images include a base layer image having a low resolution and an enhancement layer image having a high resolution.
  • the plurality of layer images are composed of a base layer image with low image quality and an extended layer image with high image quality.
  • the image encoding device 11 and the image decoding device 31 may be a single layer image, or may be performed by arbitrarily combining view scalable encoding, spatial scalable encoding, and SNR scalable encoding.
  • the network 21 transmits the encoded stream Te generated by the image encoding device 11 to the image decoding device 31.
  • the network 21 is the Internet, a wide area network (WAN: Wide Area Network), a small network (LAN: Local Area Network), or a combination thereof.
  • the network 21 is not necessarily limited to a bidirectional communication network, and may be a unidirectional or bidirectional communication network that transmits broadcast waves such as terrestrial digital broadcasting and satellite broadcasting.
  • the network 21 may be replaced by a storage medium that records an encoded stream Te such as a DVD (Digital Versatile Disc) or a BD (Blue-ray Disc).
  • the image decoding device 31 decodes each of the encoded streams Te transmitted by the network 21, and generates a plurality of decoded layer images Td (decoded viewpoint images Td).
  • the image display device 41 displays all or part of the plurality of decoded layer images Td generated by the image decoding device 31. For example, in view scalable coding, a 3D image (stereoscopic image) and a free viewpoint image are displayed in all cases, and a 2D image is displayed in some cases.
  • the image display device 41 includes, for example, a display device such as a liquid crystal display or an organic EL (Electro-luminescence) display.
  • a display device such as a liquid crystal display or an organic EL (Electro-luminescence) display.
  • the spatial scalable coding and SNR scalable coding when the image decoding device 31 and the image display device 41 have a high processing capability, a high-quality enhancement layer image is displayed and only a lower processing capability is provided. Displays a base layer image that does not require higher processing capability and display capability as an extension layer.
  • FIG. 2 is a diagram showing a hierarchical structure of data in the encoded stream Te.
  • the encoded stream Te illustratively includes a sequence and a plurality of pictures constituting the sequence.
  • (A) to (f) of FIG. 2 respectively show a sequence layer that defines a sequence SEQ, a picture layer that defines a picture PICT, a slice layer that defines a slice S, a slice data layer that defines slice data, and a slice data.
  • Coding Unit CU
  • sequence layer a set of data referred to by the image decoding device 31 for decoding a sequence SEQ to be processed (hereinafter also referred to as a target sequence) is defined.
  • the sequence SEQ includes a video parameter set, a sequence parameter set SPS (Sequence Parameter Set), a picture parameter set PPS (Picture Parameter Set), a picture PICT, and an additional extension.
  • Information SEI Supplemental Enhancement Information
  • # indicates the layer ID.
  • FIG. 2 shows an example in which encoded data of # 0 and # 1, that is, layer 0 and layer 1, exists, but the type of layer and the number of layers are not dependent on this.
  • the video parameter set VPS is a set of encoding parameters common to a plurality of moving images, a plurality of layers included in the moving image, and encoding parameters related to individual layers in a moving image composed of a plurality of layers.
  • a set is defined.
  • the sequence parameter set SPS defines a set of encoding parameters that the image decoding device 31 refers to in order to decode the target sequence. For example, the width and height of the picture are defined.
  • a set of encoding parameters referred to by the image decoding device 31 in order to decode each picture in the target sequence is defined.
  • a quantization width reference value (pic_init_qp_minus26) used for picture decoding and a flag (weighted_pred_flag) indicating application of weighted prediction are included.
  • a plurality of PPS may exist. In that case, one of a plurality of PPSs is selected from each picture in the target sequence.
  • Picture layer In the picture layer, a set of data referred to by the image decoding device 31 for decoding a picture PICT to be processed (hereinafter also referred to as a target picture) is defined. As shown in FIG. 2 (b), the picture PICT includes slices S0 to SNS-1 (NS is the total number of slices included in the picture PICT).
  • slice layer In the slice layer, a set of data referred to by the image decoding device 31 for decoding the slice S to be processed (also referred to as a target slice) is defined. As shown in FIG. 2C, the slice S includes a slice header SH and slice data SDATA.
  • the slice header SH includes a coding parameter group that the image decoding device 31 refers to in order to determine a decoding method of the target slice.
  • the slice type designation information (slice_type) that designates the slice type is an example of an encoding parameter included in the slice header SH.
  • I slice using only intra prediction at the time of encoding (2) P slice using 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.
  • the slice header SH may include a reference (pic_parameter_set_id) to the picture parameter set PPS included in the sequence layer.
  • the slice data layer a set of data referred to by the image decoding device 31 in order to decode the slice data SDATA to be processed is defined.
  • the slice data SDATA includes a coded tree block (CTB) as shown in FIG.
  • CTB is a fixed-size block (for example, 64 ⁇ 64) constituting a slice, and may be referred to as a maximum coding unit (LCU).
  • the coding tree layer defines a set of data that the image decoding device 31 refers to in order to decode the coding tree block to be processed.
  • the coding tree unit is divided by recursive quadtree division.
  • a tree-structured node obtained by recursive quadtree partitioning is called a coding tree.
  • An intermediate node of the quadtree is a coded tree unit (CTU), and the coded tree block itself is also defined as the highest CTU.
  • the CTU includes a split flag (splif_flag). When the split_flag is 1, the CTU is split into four coding tree units CTU.
  • the coding tree unit CTU is divided into four coding units (CU: Coded Unit).
  • the coding unit CU is a terminal node of the coding tree layer and is not further divided in this layer.
  • the encoding unit CU is a basic unit of the encoding process.
  • the size of the coding unit is any of 64 ⁇ 64 pixels, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, and 8 ⁇ 8 pixels. It can take.
  • the encoding unit layer defines a set of data referred to by the image decoding device 31 in order to decode the processing target encoding unit.
  • the encoding unit includes a CU header CUH, a prediction tree, a conversion tree, and a CU header CUF.
  • the CU header CUH it is defined whether the coding unit is a unit using intra prediction or a unit using inter prediction.
  • the encoding unit is the root of a prediction tree (PT) and a transform tree (TT).
  • TT transform tree
  • the CU header CUF is included between the prediction tree and the conversion tree or after the conversion tree.
  • the coding unit 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 coding unit.
  • 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 which is a unit of prediction is also referred to as a prediction unit (PU, prediction unit).
  • Intra prediction is prediction within the same picture
  • inter prediction refers to prediction processing performed between different pictures (for example, between display times and between layer images).
  • the division method is encoded by part_mode of encoded data, and 2N ⁇ 2N (the same size as the encoding unit), 2N ⁇ N, 2N ⁇ nU, 2N ⁇ nD, N ⁇ 2N, nL X2N, nRx2N, and NxN.
  • 2N ⁇ nU indicates that a 2N ⁇ 2N encoding unit is divided into two regions of 2N ⁇ 0.5N and 2N ⁇ 1.5N in order from the top.
  • 2N ⁇ nD indicates that a 2N ⁇ 2N encoding unit is divided into two regions of 2N ⁇ 1.5N and 2N ⁇ 0.5N in order from the top.
  • nL ⁇ 2N indicates that a 2N ⁇ 2N encoding unit is divided into two regions of 0.5N ⁇ 2N and 1.5N ⁇ 2N in order from the left.
  • nR ⁇ 2N indicates that a 2N ⁇ 2N encoding unit is divided into two regions of 1.5N ⁇ 2N and 0.5N ⁇ 1.5N in order from the left. Since the number of divisions is one of 1, 2, and 4, PUs included in the CU are 1 to 4. These PUs are expressed as PU0, PU1, PU2, and PU3 in order.
  • the encoding unit 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 unit.
  • the conversion tree includes one or a plurality of conversion blocks obtained by the above division.
  • the division in the transformation tree includes the one in which an area having the same size as that of the encoding unit is assigned as the transformation block, and the one in the recursive quadtree division like the above-described division in the tree block.
  • a transform block that is a unit of transformation is also referred to as a transform unit (TU).
  • the prediction image of the prediction unit is derived by a prediction parameter associated with the prediction unit.
  • the prediction parameters include a prediction parameter for intra prediction or a prediction parameter for inter prediction.
  • prediction parameters for inter prediction inter prediction (inter prediction parameters) will be described.
  • the inter prediction parameter includes prediction list use flags predFlagL0 and predFlagL1, reference picture indexes refIdxL0 and refIdxL1, and vectors mvL0 and mvL1.
  • the prediction list use flags predFlagL0 and predFlagL1 are flags indicating whether or not reference picture lists called L0 list and L1 list are used, respectively, and a reference picture list corresponding to a value of 1 is used.
  • prediction list use flag information can also be expressed by an inter prediction flag inter_pred_idc described later.
  • a prediction list use flag is used in a prediction image generation unit and a prediction parameter memory described later, and an inter prediction flag inter_pred_idc is used when decoding information on which reference picture list is used from encoded data. It is done.
  • Syntax elements for deriving inter prediction parameters included in the encoded data include, for example, a partition mode part_mode, a merge flag merge_flag, a merge index merge_idx, an inter prediction flag inter_pred_idc, a reference picture index refIdxLX, a prediction vector index mvp_LX_idx, and a difference There is a vector mvdLX.
  • FIG. 3 is a conceptual diagram illustrating an example of a reference picture list.
  • the reference picture list 601 five rectangles arranged in a line on the left and right indicate reference pictures, respectively.
  • the codes P1, P2, Q0, P3, and P4 shown in order from the left end to the right are codes indicating respective reference pictures.
  • P such as P1 indicates the viewpoint P
  • Q of Q0 indicates a viewpoint Q different from the viewpoint P.
  • the subscripts P and Q indicate the picture order number POC.
  • a downward arrow directly below refIdxLX indicates that the reference picture index refIdxLX is an index that refers to the reference picture Q0 in the reference picture memory 306.
  • FIG. 4 is a conceptual diagram illustrating an example of a reference picture.
  • the horizontal axis indicates the display time
  • the vertical axis indicates the viewpoint.
  • the rectangles shown in FIG. 4 with 2 rows and 3 columns (6 in total) indicate pictures.
  • the rectangle in the second column from the left in the lower row indicates a picture to be decoded (target picture), and the remaining five rectangles indicate reference pictures.
  • a reference picture Q0 indicated by an upward arrow from the target picture is a picture that has the same display time as the target picture and a different viewpoint. In the displacement prediction based on the target picture, the reference picture Q0 is used.
  • a reference picture P1 indicated by a left-pointing arrow from the target picture is a past picture at the same viewpoint as the target picture.
  • a reference picture P2 indicated by a right-pointing arrow from the target picture is a future picture at the same viewpoint as the target picture. In motion prediction based on the target picture, the reference picture P1 or P2 is used.
  • Inter prediction flag and prediction list usage flag The relationship between the inter prediction flag and the prediction list use flags predFlagL0 and predFlagL1 can be mutually converted as follows. Therefore, as an inter prediction parameter, a prediction list use flag may be used, or an inter prediction flag may be used. In addition, hereinafter, the determination using the prediction list use flag may be replaced with the inter prediction flag. Conversely, the determination using the inter prediction flag can be performed by replacing the prediction list use flag.
  • >> is a right shift
  • is a left shift.
  • the prediction parameter decoding (encoding) method includes a merge prediction (merge) mode and an AMVP (Adaptive Motion Vector Prediction) mode.
  • a merge flag merge_flag is a flag for identifying these.
  • the prediction parameter of the target PU is derived using the prediction parameter of the already processed block.
  • the merge prediction mode is a mode in which the prediction parameter already derived is used as it is without including the prediction list use flag predFlagLX (inter prediction flag inter_pred_idc), the reference picture index refIdxLX, and the vector mvLX in the encoded data.
  • the AMVP mode In this mode, the prediction flag inter_pred_idc, the reference picture index refIdxLX, and the vector mvLX are included in the encoded data.
  • the vector mvLX is encoded as a prediction vector index mvp_LX_idx indicating a prediction vector and a difference vector (mvdLX).
  • the inter prediction flag inter_pred_idc is data indicating the type and number of reference pictures, and takes one of the values Pred_L0, Pred_L1, and Pred_Bi.
  • Pred_L0 and Pred_L1 indicate that reference pictures stored in reference picture lists called an L0 list and an L1 list are used, respectively, and that both use one reference picture (single prediction). Prediction using the L0 list and the L1 list are referred to as L0 prediction and L1 prediction, respectively.
  • Pred_Bi indicates that two reference pictures are used (bi-prediction), and indicates that two reference pictures stored in the L0 list and the L1 list are used.
  • the prediction vector index mvp_LX_idx is an index indicating a prediction vector
  • the reference picture index refIdxLX is an index indicating a reference picture stored in the reference picture list.
  • LX is a description method used when L0 prediction and L1 prediction are not distinguished.
  • refIdxL0 is a reference picture index used for L0 prediction
  • refIdxL1 is a reference picture index used for L1 prediction
  • refIdx (refIdxLX) is a notation used when refIdxL0 and refIdxL1 are not distinguished.
  • the merge index merge_idx is an index indicating which one of the prediction parameter candidates (merge candidates) derived from the processed block is used as the prediction parameter of the decoding target block.
  • the vector mvLX includes a motion vector and a displacement vector (disparity vector).
  • a motion vector is a positional shift between the position of a block in a picture at a certain display time of a layer and the position of the corresponding block in a picture of the same layer at a different display time (for example, an adjacent discrete time). It is a vector which shows.
  • the displacement vector is a vector indicating a positional shift between the position of a block in a picture at a certain display time of a certain layer and the position of a corresponding block in a picture of a different layer at the same display time.
  • the pictures in different layers may be pictures from different viewpoints or pictures with different resolutions.
  • a displacement vector corresponding to pictures of different viewpoints is called a disparity vector.
  • a vector mvLX A prediction vector and a difference vector related to the vector mvLX are referred to as a prediction vector mvpLX and a difference vector mvdLX, respectively.
  • Whether the vector mvLX and the difference vector mvdLX are motion vectors or displacement vectors is determined using a reference picture index refIdxLX associated with the vectors.
  • FIG. 5 is a schematic diagram illustrating a configuration of the image decoding device 31 according to the present embodiment.
  • the image decoding device 31 includes an entropy decoding unit 301, a prediction parameter decoding unit 302, a reference picture memory (reference image storage unit, frame memory) 306, a prediction parameter memory (prediction parameter storage unit, frame memory) 307, and a prediction image generation unit 308.
  • the prediction parameter decoding unit 302 includes an inter prediction parameter decoding unit 303 and an intra prediction parameter decoding unit 304.
  • the predicted image generation unit 308 includes an inter predicted image generation unit 309 and an intra predicted image generation unit 310.
  • the entropy decoding unit 301 performs entropy decoding on the encoded stream Te input from the outside, and separates and decodes individual codes (syntax elements).
  • the separated codes include prediction information for generating a prediction image and residual information for generating a difference image.
  • the entropy decoding unit 301 outputs a part of the separated code to the prediction parameter decoding unit 302.
  • Some of the separated codes are, for example, a prediction mode PredMode, a partition mode part_mode, a merge flag merge_flag, a merge index merge_idx, an inter prediction flag inter_pred_idc, a reference picture index refIdxLX, a prediction vector index mvp_LX_idx, and a difference vector mvdLX.
  • Control of which code to decode is performed based on an instruction from the prediction parameter decoding unit 302.
  • the entropy decoding unit 301 outputs the quantization coefficient to the inverse quantization / inverse DCT unit 311.
  • the quantization coefficient is a coefficient obtained by performing quantization by performing DCT (Discrete Cosine Transform) on the residual signal in the encoding process.
  • the inter prediction parameter decoding unit 303 decodes the inter prediction parameter with reference to the prediction parameter stored in the prediction parameter memory 307 based on the code input from the entropy decoding unit 301.
  • the inter prediction parameter decoding unit 303 outputs the decoded inter prediction parameter to the prediction image generation unit 308 and stores it in the prediction parameter memory 307. Details of the inter prediction parameter decoding unit 303 will be described later.
  • the intra prediction parameter decoding unit 304 refers to the prediction parameter stored in the prediction parameter memory 307 on the basis of the code input from the entropy decoding unit 301 and decodes the intra prediction parameter.
  • the intra prediction parameter is a parameter used in a process of predicting a picture block within one picture, for example, an intra prediction mode IntraPredMode.
  • the intra prediction parameter decoding unit 304 outputs the decoded intra prediction parameter to the prediction image generation unit 308 and stores it in the prediction parameter memory 307.
  • the intra prediction parameter decoding unit 304 may derive different intra prediction modes depending on luminance and color difference.
  • the intra prediction parameter decoding unit 304 decodes the luminance prediction mode IntraPredModeY as the luminance prediction parameter and the color difference prediction mode IntraPredModeC as the color difference prediction parameter.
  • the luminance prediction mode IntraPredModeY is a 35 mode and corresponds to planar prediction (0), DC prediction (1), and direction prediction (2 to 34).
  • the color difference prediction mode IntraPredModeC uses one of planar prediction (0), DC prediction (1), direction prediction (2 to 34), and LM mode (35).
  • the intra prediction parameter decoding unit 304 decodes a flag indicating whether IntraPredModeC is the same mode as the luminance mode.
  • IntraPredModeC is assigned to IntraPredModeC, and the flag is luminance. If it is indicated that the mode is different from the mode, planar prediction (0), DC prediction (1), direction prediction (2 to 34), and LM mode (35) may be decoded as I IntraPredModeC.
  • the reference picture memory 306 stores the reference picture block (reference picture block) generated by the adding unit 312 at a predetermined position for each picture and block to be decoded.
  • the prediction parameter memory 307 stores the prediction parameter in a predetermined position for each decoding target picture and block. Specifically, the prediction parameter memory 307 stores the inter prediction parameter decoded by the inter prediction parameter decoding unit 303, the intra prediction parameter decoded by the intra prediction parameter decoding unit 304, and the prediction mode predMode separated by the entropy decoding unit 301. .
  • the stored inter prediction parameters include, for example, a prediction list use flag predFlagLX (inter prediction flag inter_pred_idc), a reference picture index refIdxLX, and a vector mvLX.
  • the prediction image generation unit 308 receives the prediction mode predMode input from the entropy decoding unit 301 and the prediction parameter from the prediction parameter decoding unit 302. Further, the predicted image generation unit 308 reads a reference picture from the reference picture memory 306. The predicted image generation unit 308 generates a predicted picture block P (predicted image) using the input prediction parameter and the read reference picture in the prediction mode indicated by the prediction mode predMode.
  • the inter prediction image generation unit 309 uses the inter prediction parameter input from the inter prediction parameter decoding unit 303 and the read reference picture to perform the prediction picture block P by inter prediction. Is generated.
  • the predicted picture block P corresponds to the prediction unit PU.
  • the PU corresponds to a part of a picture composed of a plurality of pixels as a unit for performing the prediction process as described above, that is, a decoding target block on which the prediction process is performed at a time.
  • the inter predicted image generation unit 309 For the reference picture list (L0 list or L1 list) for which the prediction list use flag predFlagLX is 1, the inter predicted image generation unit 309 generates a vector mvLX based on the decoding target block from the reference picture indicated by the reference picture index refIdxLX. The reference picture block at the position indicated by is read from the reference picture memory 306. The inter prediction image generation unit 309 performs prediction on the read reference picture block to generate a prediction picture block P. The inter prediction image generation unit 309 outputs the generated prediction picture block P to the addition unit 312.
  • the intra predicted image generation unit 310 When the prediction mode predMode indicates the intra prediction mode, the intra predicted image generation unit 310 performs intra prediction using the intra prediction parameter input from the intra prediction parameter decoding unit 304 and the read reference picture. Specifically, the intra predicted image generation unit 310 reads, from the reference picture memory 306, a reference picture block that is a decoding target picture and is in a predetermined range from the decoding target block among blocks that have already been decoded.
  • the predetermined range is, for example, any of the left, upper left, upper, and upper right adjacent blocks when the decoding target block sequentially moves in a so-called raster scan order, and varies depending on the intra prediction mode.
  • the raster scan order is an order in which each row is sequentially moved from the left end to the right end in each picture from the upper end to the lower end.
  • the intra-predicted image generation unit 310 generates a predicted picture block by performing prediction in the prediction mode indicated by the intra-prediction mode IntraPredMode for the read reference picture block.
  • the intra predicted image generation unit 310 outputs the generated predicted picture block P to the addition unit 312.
  • the intra prediction image generation unit 310 performs planar prediction (0), DC prediction (1), direction according to the luminance prediction mode IntraPredModeY.
  • a luminance prediction picture block is generated by any one of prediction (2 to 34), and planar prediction (0), DC prediction (1), direction prediction (2 to 344), and LM mode (in accordance with the color difference prediction mode IntraPredModeC) 35) generate a color difference prediction picture block.
  • the LM mode using the regularization cost will be described.
  • the regularization cost is a term added as a parameter cost to the objective function in the prediction parameter derivation by the least square method.
  • the LM mode uses a processed image adjacent to the target block to derive a linear prediction parameter for predicting a color difference pixel value from the luminance pixel value, and based on the linear prediction parameter, from the processed luminance block
  • a color difference picture block is generated (TYPE 0)
  • a linear prediction parameter for predicting another color difference pixel value is derived from the color difference pixel value using the processed image adjacent to the target block, and the linear prediction parameter
  • another color difference picture block is generated from the processed color difference block (TYPE 1).
  • Such prediction that derives a linear prediction parameter for estimating another color component from a certain color component and generates a prediction image using the derived linear prediction parameter is called LM prediction.
  • the prediction method is the same as that of an illuminance compensation unit 3093 described later.
  • the intra predicted image generation unit 310 includes a DC prediction unit 3101, a planar prediction unit 3102, a direction prediction unit 3103, and an LM prediction unit 3104 (not shown).
  • LM for LM prediction is an abbreviation of Liner Model.
  • a linear prediction parameter is derived in consideration of a cost obtained by adding an appropriate parameter cost (regularization cost) to the error E when the linear prediction parameter is estimated.
  • regularization cost is known as the regularization cost that makes the parameter value close to 0, that is, the squared terms of a and b multiplied by the weights lambda_a and lambda_b as shown in the following equation. (Ridge regression).
  • the inventor investigates the distribution and characteristics of the parameters a and b, and then uses a regularization term (parameters a and a) that brings the linear parameter a closer to an appropriate value k as follows. We found that it is appropriate to use a term that is proportional to the square of the deviation from k.
  • a ( ⁇ xy-N * ⁇ x ⁇ y-k * lambda_a) / ( ⁇ xx-N ⁇ x ⁇ x-lambda_a) Equation (A-3)
  • b ( ⁇ y / N-a * ⁇ x / N)
  • a value corresponding to the numerator is referred to as a first parameter a1 (numerator)
  • a number corresponding to the denominator is referred to as a second parameter a2 (denominator).
  • ⁇ xy ⁇ N * ⁇ x ⁇ y a1
  • ⁇ xx ⁇ N ⁇ x ⁇ x a2
  • lambda_a acost
  • the equation (A-1) of the least square method can be modified as follows.
  • FIG. 1 is a block diagram illustrating a configuration of the LM prediction unit 3104.
  • the LM prediction unit 3104 includes an LM parameter estimation unit 31041 that derives linear prediction parameters, and an LM prediction filter unit 31042 that performs actual prediction using the derived linear prediction parameters.
  • the LM parameter estimation unit 31041 includes an LM integrated value deriving unit 310412, an LM addition value deriving unit 310413, an LM first parameter deriving unit 310414, an LM second parameter deriving unit 310415, an LM parameter a deriving unit 310416, and an LM parameter b deriving unit 310417. Consists of
  • the linear prediction parameter a corresponds to a slope
  • the linear prediction parameter b corresponds to an offset.
  • FIG. 17 is a histogram showing the distribution of the parameter a estimated by the LM parameter estimation unit 31041.
  • the LM parameter estimation unit 31041 receives pixels that are present around a reference block of a certain color component around the target block shown in FIG. 12 as input reference pixels x [], and pixels of another color component that exist around the target block.
  • a target reference pixel y [] is used, and parameters a and parameters are parameters when the target reference pixel y [] is linearly predicted from the input reference pixel x based on the input reference pixel x [] and the target reference pixel y [].
  • b is derived.
  • the LM addition value deriving unit 310413 derives the sum Y of the target reference pixel y and the sum X of the input reference pixel x by the following equations (B-2) and (B-3).
  • the LM integrated value deriving unit 310412 calculates the sum XY of the product of the target reference pixel y and the input reference pixel x and the sum XX of the square of the target reference pixel x by the following equations (B-4) to (B-5). To derive.
  • ⁇ x [i] Formula (B-2)
  • Y ⁇ y [i] Formula (B-3)
  • XX ⁇ (x [i] * x [i])
  • XY ⁇ (y [i] * y [i])
  • is a sum with respect to the reference area, and an index i for specifying a pixel in the reference area Derive the sum for.
  • ⁇ (z [i]) indicates a process of taking the sum of z [i] from 0 to the number of reference signals N ⁇ 1 for i.
  • y [i] is the pixel value at index i of the decoded image.
  • x [i] is a pixel value at index i of the reference image.
  • the count shift value iCountShift is a logarithm of 2 of the size of the reference area.
  • the LM first parameter deriving unit 310414 generates the first parameter based on the sum XY of the product of the target reference pixel y and the input reference pixel x and the product of the sum Y of the target reference pixel y and the sum X of the input reference pixel x.
  • a1 is derived from the following equation.
  • a1 (XY ⁇ iCountShift)-(Y * X); Formula (B-7) As shown in Expression (B-7), XY is shifted left by the count shift value iCountShift, and the product of Y and X is shifted right by the integrated shift value precShift, and then the difference is calculated.
  • the LM second parameter deriving unit 310415 derives the second parameter a2 by the following expression based on the difference between the square sum XX of the input reference pixels x and the square of the sum X of the input reference pixels x.
  • A2 (XX ⁇ iCountShift)-(X * X); ⁇ Formula (B-8)
  • the derived first parameter a1 and second parameter a2 are output to the LM parameter a deriving unit 310416.
  • the LM first parameter deriving unit 310414 and the LM second parameter deriving unit 310415 reduce the bit range necessary for the calculation by using the formulas (B-7) and (B-8) as iCountShift as follows: It may be derived using the right-shifted equations (B-7 ′) and (B-8 ′).
  • the LM first parameter deriving unit 310414 and the LM second parameter deriving unit 310415 consider the remainder remX and remY when deriving the average values aveX and aveY in order to improve the calculation accuracy as follows.
  • the difference between the numbers of aveX and remX is calculated based on the product of a1 and XX A2 may be derived by adding twice the product.
  • precShift ⁇ (x [i] * x [i]) >> precShift formula (B-4 ′)
  • XY ⁇ (y [i] * y [i]) >> precShift formula (B-5 ')
  • the integrated shift value precShift may be derived from the following.
  • precShift Max (0, bitDepth-12) Formula (B-1)
  • the first parameter a1 and the second parameter a2 XY and XX are shifted left by the count shift value iCountShift, the product of X and X, and X and Y as shown below.
  • the product may be calculated by shifting the product to the right by the integrated shift value precShift.
  • a2 (XX ⁇ iCountShift)-(X * X) >> precShift
  • a linear prediction parameter deriving unit for deriving and a linear prediction unit for generating a predicted image based on the linear prediction parameter
  • the linear prediction parameter deriving unit comprising a pixel value xi and a pixel value
  • the first parameter a1 derived based on the product of the sum XY of the products yi, the sum X of the pixel values xi, and the sum Y of the pixel values yi, and the sum XX and the pixel values xi of the products of the pixel values xi and xi
  • Means for deriving the linear prediction parameter a from the second parameter a2 derived based on the product of the sum X of the pixel values xi and the sum X of the pixel values xi, and the linear prediction parameter derivation unit includes the first parameter a1 and a predetermined value.
  • the threshold THN is compared, and the first parameter a1 is the threshold THN If it is less than or less than the threshold THN, the means for subtracting the first cost a1costN from the first parameter a1 is compared with the first parameter a1 and the predetermined threshold THP, and the first parameter a1 is the threshold THP. If it is less than or less than the threshold value THP, at least one means for adding the second cost a1costP to the first parameter a1 is provided.
  • FIG. 18 is a block diagram showing a configuration of the LM parameter a deriving unit 310416.
  • the LM parameter a derivation unit 310416 includes an LM regularization cost addition unit 310418, an LM first parameter normalization shift unit 3104161, an LM second parameter normalization shift unit 3104162, and an LM division value derivation unit 3104163.
  • the LM parameter a deriving unit 310416 limits the first parameter a1 according to the size of the second parameter a2 by an LM first parameter clip unit (not shown). For example, as shown in the following expression, a1 may be clipped to -2 * a2 or more and twice or less of a2.
  • a1 Clip3 (-(m1 * a2 >> m3), (m2 * a2 >> m43), a1) Formula (B-12 ′′)
  • m1, m2, m3, and m4 are positive integers.
  • a1 can be limited to a value between -1.5 and 1.5 times a2.
  • a1 / a2 can be limited between -1.5 and 1.5.
  • the LM parameter estimation unit 31041 of this embodiment uses the LM regularization cost addition unit 310418 to compare the first parameter a1 with a predetermined threshold value THN, and when the first parameter a1 is equal to or less than the threshold value THN, 0 or more.
  • LM first parameter regularization cost adding unit that subtracts the first cost a1costN of the first parameter a1 from the first parameter a1, the first parameter a1 and one or more predetermined thresholds THP are compared, and the first parameter a1 is the threshold THP
  • at least one means of the LM first parameter regularization cost addition unit for adding the second cost a1costP of 0 or more to the first parameter a1 is provided.
  • the updated values obtained by subtracting or adding the regularization costs to the first parameter a1 and the second parameter a2 are also expressed as a1 and a2. However, if the values before and after the update are distinguished, These parameters are a1 and a2, and the updated parameters are a1 ′ and a2 ′.
  • the LM regularization cost adding unit 310418 Subtract the cost a1costN.
  • a specific configuration of the LM regularization cost addition unit 310418 and a modification thereof will be described later.
  • a1 a1 + a1costN (LM normalization shift part)
  • A1s is derived by adjusting the size by shifting.
  • the LM second parameter normalization shift unit 3104162 adjusts the size of a2 by shift to derive a2s.
  • the LM parameter second normalization shift unit 3104162 calculates the second normalization shift value according to the following expression for the predetermined bit width ShiftA2 used for derivation of the table of FIG. 16 according to the magnitude of the second parameter a2. Derives iScaleShiftA2. The derived second normalized shift value iScaleShiftA2 is output to the LM division value deriving unit 3104163.
  • iScaleShiftA2 Max (0, Floor (Log2 (Abs (a2)))-(ShiftA2-1)) Formula (B-14)
  • the LM first parameter normalization shift unit 3104161 derives the first normalization shift value iScaleShiftA1 by the following equation in accordance with the second normalization shift value iScaleShiftA2.
  • the derived first normalized shift value iScaleShiftA1 is output to the LM division value deriving unit 3104163.
  • iScaleShiftA1 Max (0, iScaleShiftA2-offsetA1) Formula (B-13)
  • offsetA1 is a constant satisfying 10 or less.
  • the LM first parameter normalization shift unit 3104161 may derive the following equation without depending on the second normalization shift value iScaleShiftA2.
  • iScaleShiftA1 Max (0, Floor (Log2 (Abs (a1)))-(ShiftA1-1))
  • a fixed value such as 6 to 14 may be used as ShiftA1
  • a value such as a value depending on bit depth (for example, bitDepth-2) may be used.
  • the LM first parameter normalization shift unit 3104161 and the LM second parameter normalization shift unit 3104162 right shift the first parameter a1 by the first normalization shift value iScaleShiftA1 and the second parameter a2 by the second normalization shift value iScaleShiftA2.
  • a normalized first parameter a1s and a normalized second parameter a2s are derived.
  • a1s a1 >> iScaleShiftA1 formula (B-15)
  • a2s a2 >> iScaleShiftA2 formula (B-16)
  • the normalization first parameter a1s and the normalization second parameter a2s are normalized to values between 0 and 2 iShiftA1 ⁇ 1, ⁇ 2 ShiftA2 and 2 ShiftA2 ⁇ 1, respectively.
  • the LM division value deriving unit 3104163 derives a number corresponding to a1s / a2s.
  • a number multiplied by (1 ⁇ ScaleShiftA) for handling as an integer value is derived using a table.
  • the LM division value deriving unit 3104163 derives the parameter a shift value iScaleShiftA by the following formula based on the difference between the first normalized shift value iScaleShiftA1 and the second normalized shift value iScaleShiftA2.
  • ScaleShiftA ShiftA1 + iScaleShiftA2-iScaleShiftA1-iShift formula (B-18)
  • iScaleShiftA1 Max (0, iScaleShiftA2 ⁇ offsetA1)
  • the LM division value deriving unit 3104163 refers to the reciprocal table value invTable determined according to the normalized second parameter a2s, takes the product with the normalized first parameter a1s, and shifts to the right by the table shift value (ScaleShiftA).
  • the parameter a is derived from the following equation.
  • FIG. 16 shows the reciprocal table value invTable [] used in this embodiment.
  • the reciprocal number invTable [x] in FIG. 16 is 0 when the index x is 0, and is derived from a value obtained by dividing a predetermined constant (ShiftA2 of 2) by x to be an integer when the index x is other than 0.
  • invTable [x] 0 (when x is 0)
  • invTable [x] Floor ((2 ⁇ ShiftA2 / x / 2) / x) (When x is other than 0)
  • Floor (x) is a function that rounds off the decimal part.
  • the formula (T-1) the following formula (T-2 ′) may be used. That is, it is not necessary to perform round adjustment for adding 1/2 times the divisor x.
  • invTable [x] Floor (M / x) (when x is other than 0) Expression (T-2 ')
  • the operation equivalent to division by a2s is realized by the product of the reciprocal table value invTable [a2s] corresponding to the reciprocal of a2s and the right shift corresponding to log2 (M) can do.
  • the value of the parameter a is the ratio of the first parameter a1 and the second parameter a2 (corresponding to a value obtained by shifting a1 / a2 leftward by iShift).
  • the derived parameter a is output to the LM parameter b deriving unit 310417 and the LM prediction filter unit 31042.
  • the LM parameter b deriving unit 310417 subtracts a value obtained by subtracting a value right shifted by a fixed shift value iShift from the sum Y of the target reference pixels y by multiplying the sum X of the input reference pixels x by the parameter a.
  • the parameter b is derived by the following equation.
  • b (Y-((a * X) >> iShift) + (1 ⁇ (iCountShift-1))) >> iCountShift expression (B-20) Note that the right shift of iCountShift corresponds to dividing by the number N of pixels in the reference area.
  • the LM prediction filter unit 31042 uses the estimation parameter derived by the LM parameter estimation unit 31041 in the case of TYPE0 that predicts a color difference component from the above-described luminance component or TYPE1 that predicts another color difference component from the color difference component.
  • the predicted image predSamples ′ [] after LM prediction is derived from the predicted image predSamples [] corresponding to the prediction block in the input reference pixel before LM prediction.
  • the parameter b is derived from the equation (B-20), the following equation is used.
  • predSamples ⁇ [x] [y] (a * predSamples [x] [y] >> iShift) + b formula (P-1) If the sampling of the input reference pixel predSamples [x] [y] and the predicted image predSamples ′ [] are different, such as when the color component is 420, the sampled pixels are used as predSamples [x] [y]. Also good.
  • the predicted image of the input reference pixel is 2 as the input reference pixel predSamples [x] [y].
  • a block subsampled to 1: 1 or a block subsampled to 2: 1 after filtering a predicted image of an input reference pixel may be used.
  • LM prediction filter unit 31042 ′ an LM prediction filter unit 31042 ′, which is another configuration of the LM prediction filter unit 31042, is used.
  • the LM prediction filter unit 31042 ′ derives a prediction image predSamples ′ [] after LM prediction from the prediction image predSamples [] before LM prediction by the following formula.
  • predSamples ⁇ [x] [y] (a * predSamples [x] [y] + b >> iShift) Expression (P-1 ⁇ )
  • LM parameter b deriving unit 310417 of the LM parameter b deriving unit 310417 is used. ' May be used.
  • the value obtained by subtracting the value obtained by multiplying the sum X of the target reference pixels x by the parameter a from the value obtained by shifting the sum Y of the target reference pixels y by the fixed shift value iShift is divided by the number of reference pixels.
  • the parameter b may be derived from the following equation.
  • LM prediction filter unit 31042B ((Y ⁇ iShift)-((a * X)) + (1 ⁇ (iCountShift-1))) >> iCountShift expression (B-20 ') (LM prediction filter unit 31042B)
  • the following LM prediction filter unit 31042B using a residual may be used.
  • the LM prediction filter unit 31042B uses the estimation parameters derived by the LM parameter estimation unit 31041, and the prediction image predSamples [x] [of the target color component corresponding to the target reference signal derived by planar prediction, DC prediction, direction prediction, or the like. y] and the residual image resSamples [x] [y] of the reference color component corresponding to the input reference signal (for example, the Cb component of the first color difference component) after the LM prediction corresponding to the target reference signal (for example, the second color)
  • the prediction image predSamples ′ [] (of the Cr component of the color difference component) is derived.
  • predSamples ⁇ [x] [y] predSamples [x] [y] + (a * resSamples [x] [y] >> iShift) Expression (P-2)
  • the operation of the LM prediction filter unit 31042B predicts the residual image in the target color component from the residual image in the reference color component using linear prediction, and uses the predicted residual image. The predicted image in the target color component is updated.
  • the configuration using the residual image is particularly effective in TYPE 1 that predicts another color difference component from the color difference component, but can also be used in TYPE 0 that predicts the color difference component from the luminance component.
  • the LM parameter estimation unit 31041A (LM regularization cost addition unit 310418A) sets the first parameter a1 when the first parameter a1 is smaller than the predetermined threshold THN or when the first parameter a1 is equal to or smaller than the predetermined threshold THN. A first cost a1costN of 0 or more is subtracted.
  • FIG. 19 is a block diagram illustrating a configuration of an LM regularization cost addition unit 310418 (LM regularization cost addition unit 310418A, LM regularization cost addition unit 310418B, and LM regularization cost addition unit 310418C) included in the LM parameter a deriving unit 310416. It is.
  • the LM regularization cost addition unit 310418 includes an LM regularization cost derivation unit 3104180, an LM regularization cost threshold determination unit 3104183, and an LM first parameter regularization cost addition unit 3104181.
  • the LM regularization cost deriving unit 3104180 derives a regularization cost acost.
  • the derived regularization cost acost is used as the first parameter cost a1costN. Details of the LM regularization cost deriving unit 3104180 will be described later.
  • the LM parameter estimation unit 31041A determines the magnitude of the first parameter a1 and the threshold, and adds the regularization cost to the first parameter a1 based on the determination. To do. More specifically, the LM regularization cost threshold value determination unit 3104183 compares the first parameter a1 and the threshold value THN, and when the first parameter a1 is less than the threshold value THN (or the first parameter a1 is equal to or less than the threshold value THN), Using the LM first parameter regularization cost addition unit 3104181, the first parameter regularization cost a1costN is subtracted from the first parameter a1. Conversely, when the first parameter a1 is equal to or greater than the threshold value THN, the first parameter regularization cost a1costN is not subtracted.
  • the LM regularization cost threshold value determination unit 3104183 compares the first parameter a1 and the threshold value THN. When the first parameter a1 is less than the threshold value THN (or when the first parameter a1 is equal to or less than the threshold value THN), the process proceeds to S1102.
  • the LM parameter a deriving unit 310416 uses the LM first parameter regularization cost adding unit 3104181 to subtract the first parameter regularization cost a1costN from the first parameter a1.
  • the subtracted parameter a1 is also referred to as a1 ′.
  • the LM regularization cost addition unit 310418B does not add the regularization cost a2costN to the second parameter a2, but, like the LM regularization cost addition unit 310418B2, which will be described later, executes S1203 following S1202, and executes the second parameter.
  • the second parameter regularization cost a2costN may be added to a2.
  • S1103 LM second parameter regularization cost addition unit 3104182 adds the second parameter regularization cost a2costN to the second parameter a2.
  • the second parameter a2 after the addition is also called a2 ′.
  • the addition of the regularization cost is another device after the first parameter a1 and the second parameter a2 are derived by the LM first parameter deriving unit 310414 and the LM second parameter deriving unit 310415 as described above.
  • the regularization cost is simultaneously calculated. You may add.
  • the LM parameter estimation unit 31041 uses the above-described equations (B-7), (B-7 ′), and (B-7) in the LM first parameter deriving unit 310414 and the LM second parameter deriving unit 310415. In place of “′′), the following equations (BC-7), (BC-7 ′), and (BC-7 ′′) are used.
  • a1costN is derived based on the second parameter a2 (see the LM regularization cost deriving unit 3104180D, equation (C-1D)).
  • the parameter a corresponding to a1 / a2 is derived by the following equation.
  • the effect of the regularization cost is that the parameter a (a1 / a2) is set to a small value when a1 is less than the threshold THN. This is equivalent to subtracting the offset 0.0315.
  • the LM regularization cost threshold value determination unit 3104183A may set the threshold value THN to 0 as in the equation (D-1) or a multiple of a2 as in the equation (D-1 ′). It is clear from these experiments.
  • the LM parameter estimation unit 31041 uses the sign of the first parameter a1 or the comparison result between the first parameter a1 and a predetermined threshold.
  • the LM parameter estimation unit 31041 subtracts the regularization cost a1costN from a1, thereby obtaining the value of the parameter a by a least square method. It can be understood that it is possible to approach the direction farther from 0 (here, the negative direction). With the above configuration, the LM parameter estimation unit 31041 can derive a linear prediction parameter that is resistant to noise, and has an effect of improving the prediction accuracy when generating a predicted image.
  • A1costN, a1costP, a2costN, a2costP are the regularization cost to a1 that brings the parameter a closer to the negative direction, the regularization cost to the a2 that brings the parameter a closer to the negative direction, the parameter a Means a regularization cost to a1 that approximates the direction of approximately positive, and a regularization cost to a2 that approximates the parameter a to the direction of approximately positive.
  • acost, a1cost, a2cost, acostN, acostP, etc. are simply used.
  • THN 0 is preferable as the predetermined threshold in the sense of approaching in a direction far from 0. That is, the LM regularization cost threshold value determination unit 3104183 compares the first parameter a1 and the threshold value THN, and if the first parameter a1 is less than or equal to the threshold value THN of 0 or more (or the first parameter a1 is less than or equal to the threshold value THN), A configuration in which the first parameter regularization cost a1costN is added to the first parameter a1 using the one-parameter LM regularization cost addition unit 3104181 is preferable.
  • tshift is a constant of 2 to 8.
  • the LM parameter estimation unit 31041 uses the regularization cost to bring the value of the parameter a closer to the negative direction, thereby passing the parameter a from 0.
  • the regularization cost In consideration of the case where the parameter a is positive, it is possible to bring the parameter a closer to a direction far from 0 by using the regularization cost to bring the value of the parameter a closer to the positive direction.
  • This example will be described as the LM parameter estimation unit 31041B.
  • a configuration that considers both cases where the parameter a is negative and positive will be described as the LM parameter estimation unit 31041C.
  • the LM parameter estimation unit 31041B (LM regularization cost addition unit 310418B) sets the first parameter a1 when the first parameter a1 is greater than the predetermined threshold THP or when the first parameter a1 is greater than or equal to the predetermined threshold THP.
  • a first parameter regularization cost a1costP of 0 or more is added.
  • the LM regularization cost threshold value determination unit 3104183 compares the first parameter a1 with the threshold value THN. When the first parameter a1 is greater than the threshold value THP (or when the first parameter a1 is equal to or greater than the threshold value THP), the process proceeds to S1202.
  • the first parameter LM regularization cost addition unit 3104181 uses the first parameter LM regularization cost addition unit 3104181 to add the first parameter regularization cost a1costP to the first parameter a1.
  • the parameter a1 after the addition is also referred to as a1 ′.
  • the LM regularization cost addition unit 310418B does not add the regularization cost a2costP to the second parameter a2, but, like the LM regularization cost addition unit 310418B2, which will be described later, executes S1203 following S1202, and executes the second parameter
  • the second parameter regularization cost a2costP may be added to a2.
  • the LM second parameter regularization cost addition unit 3104182 adds the second parameter regularization cost a1costP to the second parameter a2.
  • the parameter a2 after the addition is also called a2 ′.
  • the LM regularization cost deriving unit 3104180 derives a regularization cost acost.
  • the acost derived from any one of the above expressions (C-1A) to (C-1D2) or a combination thereof is derived as the first cost a1costP of the first parameter cost.
  • the LM regularization cost addition unit 310418B determines the size of the first parameter a1 and the threshold value, and adds the regularization cost to the first parameter a1 based on the determination. More specifically, the LM regularization cost threshold value determination unit 3104183B compares the first parameter a1 with a threshold value THP equal to or greater than 0, and the first parameter a1 is greater than the threshold value THP (or the first parameter a1 is equal to or greater than the threshold value THP). ), The LM first parameter regularization cost addition unit 3104181 is used to add the first parameter regularization cost a1costP to the first parameter a1. Conversely, when the first parameter a1 is equal to or less than the threshold THP (or less than the threshold THP), the first parameter regularization cost a1costP is not added.
  • a1 a1 + a1costP
  • the addition of the regularization cost may be performed by the LM first parameter derivation unit 310414 and the LM second parameter derivation unit 310415.
  • the derivation formula is a formula in which a1costN is replaced with a1costP in the formulas (BC-7), (BC-7 ′), and (BC-7 ′′) already described.
  • a1costN is derived based on the second parameter a2 (see the LM regularization cost deriving unit 3104180D, equation (C-1D)).
  • the LM regularization cost threshold value determination unit 3104183B may set the threshold value THP to 0 as in the equation (D-2) or a multiple of a2 as in the equation (D-2 ′). It is clear from these experiments.
  • THP 0 formula (D-2)
  • THP a2 >> tshift2 formula (D-2 ')
  • LM parameter estimation unit 31041C the LM parameter estimation unit 31041C will be described as one configuration of the LM parameter estimation unit 31041.
  • the LM parameter estimation unit 31041C is configured by combining the LM parameter estimation unit 31041A and the LM parameter estimation unit 31041B in the regularization cost addition (LM regularization cost addition unit 310418).
  • the LM parameter estimation unit 31041C subtracts a first cost a1costN of 0 or more from the first parameter a1 when the first parameter a1 is smaller than the predetermined threshold value THN or when the first parameter a1 is equal to or smaller than the predetermined threshold value THN. Further, when the first parameter a1 is larger than the predetermined threshold value THP, or when the first parameter a1 is equal to or larger than the predetermined threshold value THP, a second cost a1costP of 0 or more is added to the first parameter a1.
  • the LM regularization cost threshold value determination unit 3104183 compares the first parameter a1 with the threshold value THN. When the first parameter a1 is less than the threshold value THN (or when the first parameter a1 is equal to or less than the threshold value THN), the process proceeds to S1302.
  • the first parameter LM regularization cost addition unit 3104181 uses the first parameter LM regularization cost addition unit 3104181 to add the first parameter regularization cost a1costN to the first parameter a1.
  • the parameter a1 after the addition is also referred to as a1 ′.
  • the LM regularization cost addition unit 310418C skips S1303 and proceeds to S1304.
  • the LM regularization cost addition unit 310418C does not perform the operation of S1303. However, like the LM regularization cost addition unit 310418C2, which will be described later, executes S1303 subsequent to S1302, and regularizes the a2 parameter to the second parameter a2.
  • a configuration in which the cost a2costN is added may also be used.
  • the LM second parameter regularization cost addition unit 3104182 uses the LM second parameter regularization cost addition unit 3104182 to add the second parameter regularization cost a2costN to the second parameter a2.
  • the parameter a2 after the addition is also called a2 ′.
  • the LM regularization cost threshold value determination unit 3104183 compares the first parameter a1 and the threshold value THP. If the first parameter a1 is greater than the threshold value THP (or the first parameter a1 is greater than or equal to the threshold value THP), the process proceeds to S1305.
  • the first parameter LM regularization cost addition unit 3104181 uses the LM first parameter regularization cost addition unit 3104181 to add the first parameter regularization cost a1costP to the first parameter a1.
  • the parameter a1 after the addition is also referred to as a1 ′.
  • the operation of the LM regularization cost addition unit 310418C ends here. Note that the LM regularization cost addition unit 310418C does not perform the operation of S1306, but, like the LM regularization cost addition unit 310418C2, which will be described later, executes S1306 following S1305 and sets the second parameter regular to the second parameter a2. A configuration in which the conversion cost a2costP is added may also be used.
  • the LM second parameter regularization cost addition unit 3104182 uses the second parameter LM regularization cost addition unit 3104182 to add the second parameter regularization cost a2costP to the second parameter a2.
  • the parameter a2 after the addition is also called a2 ′.
  • the LM regularization cost deriving unit 3104180 derives a regularization cost acost. For example, it is derived from any one of the previously described formulas (C-1A) and formulas (C-1D2), or a combination thereof.
  • the LM regularization cost addition unit 310418C determines the magnitude of the first parameter a1 and the threshold, and adds the regularization cost to the first parameter a1 and the second parameter a2 based on the determination. More specifically, the LM regularization cost threshold value determination unit 3104183C compares the first parameter a1 with a threshold value THN of 0 or less, and the first parameter a1 is smaller than the threshold value THN (or the first parameter a1 is less than the threshold value THN). In this case, the first parameter LM regularization cost adding unit 3104181 is used to subtract the first parameter regularization cost a1costN from the first parameter a1.
  • the LM regularization cost threshold determination unit 3104183C compares the first parameter a1 with a threshold THP equal to or greater than 0, and the first parameter a1 is greater than the threshold THP (or the first parameter a1 is equal to or greater than the threshold THP).
  • the first parameter LM regularization cost addition unit 3104181 is used to add the first parameter regularization cost a1costP to the first parameter a1.
  • the first parameter regularization cost a1costP is not added.
  • the following may be derived as the first parameter regularization cost a1costN or less when subtracting the regularization cost a1costP when adding.
  • the LM parameter estimation unit 31041A, the LM parameter estimation unit 31041B, and the LM parameter estimation unit 31041C described above are based on the inventor's knowledge that the parameter a should be closer to the side away from 0, but in more detail.
  • the absolute value of the parameter a is sufficiently large, if the parameter a is further moved closer to 0, the absolute value of the parameter a may become too larger than the original optimum value. I understood. This is because there is a relatively high possibility that the parameter a is basically reduced as an influence of noise, but the parameter a may be increased due to the influence of noise. If the parameter a derived without the regularization cost obtained in (1) is sufficiently large, the probability is high.
  • the LM parameter estimator 31041A2, LM parameter estimator 31041B2, and LM parameter estimator 31041C2 described below solve these problems instead of the configuration becoming slightly complicated.
  • the LM parameter estimation unit 31041A, the LM parameter estimation unit 31041B, and the LM parameter estimation unit 31041C add or subtract the regularized super sound to the first parameter a1 as the LM regularization cost, but the LM parameter estimation unit 31041A2, the LM parameter estimation unit 31041B2 and the LM parameter estimation unit 31041C2 are configured to add the regularization cost to the second parameter a2 while adding or subtracting the regularization cost to the first parameter a1.
  • FIG. 20 is a block diagram illustrating a configuration of an LM regularization cost addition unit 310418 (LM regularization cost addition unit 310418A2, LM regularization cost addition unit 310418B2, LM regularization cost addition unit 310418C2) included in the LM parameter estimation unit 31041. is there.
  • the LM regularization cost addition unit 310418 includes an LM regularization cost derivation unit 3104180, an LM regularization cost threshold determination unit 3104183, an LM first parameter regularization cost addition unit 3104181, and an LM second parameter regularization cost addition unit 3104182.
  • the LM regularization cost addition unit 310418 includes an LM regularization cost derivation unit 3104180, an LM regularization cost threshold determination unit 3104183, an LM first parameter regularization cost addition unit 3104181, and an LM second parameter regularization cost addition unit 3104182.
  • the LM parameter estimation unit 31041 in FIG. 20 compares the first parameter a1 with a predetermined threshold THN, and if the first parameter a1 is less than the threshold THN or less than the threshold THN, the first cost a1costN is calculated.
  • a means for subtracting the cost a2costN from the first parameter a1 and adding the cost a2costN to the second parameter a2 is compared with the first parameter a1 and a predetermined threshold value THP, and the first parameter a1 is less than the threshold value THP or the threshold value THP.
  • it is characterized by comprising at least one means for adding the second cost a1costP to the first parameter a1 and adding the cost a2costP to the second parameter a2.
  • LM parameter estimation unit 31041A2 (LM parameter estimation unit 31041A2)
  • the LM parameter estimation unit 31041A2 will be described as one configuration of the LM parameter estimation unit 31041.
  • the LM parameter estimation unit 31041A already described subtracts the first parameter regularization cost a1costN from the first parameter a1, whereas the LM parameter estimation unit 31041A2 subtracts the regularization cost a1costN from the first parameter a1.
  • the second parameter regularization cost a2costN is added to the second parameter a2.
  • LM regularization cost addition unit 310418A2 The operation of the LM parameter estimation unit 31041A2 (LM regularization cost addition unit 310418A2) is as shown in the flowchart of FIG. Since the details of each step in FIG. 21 have already been described in the LM regularization cost addition unit 310418A, a description thereof will be omitted.
  • the LM regularization cost adding unit 310418A2 One cost a1costN is subtracted (S1102), and a second cost a2costN of 0 or more is added to the second parameter a2 (S1103).
  • the parameter a is corrected to approach -a1costN / a2costN.
  • the LM regularization cost deriving unit 3104180 derives a regularization cost acost. For example, it is derived from any one of the previously described formulas (C-1A) and formulas (C-1D2), or a combination thereof. Further, a1costN and a2costN are derived from the regularization cost acost by the following formula.
  • a1costN (acost >> kshift)
  • a2costN acost
  • kshift 0, 1, 2, 3 that approaches 1, 0.5, 0.25, 0.125 is appropriate.
  • the regularization term that can be calculated by shifting is easy to calculate, but the regularization cost is not limited to the above. For example, if the following is performed, correction is applied so as to approach k >> kshift.
  • kshift a2costN acost
  • a2costN is preferably equal to or higher than the cost a1costN, that is, a1costN / a2costN is preferably 1 or less.
  • the LM parameter estimation unit 31041A2 determines the magnitude of the first parameter a1 and the threshold value, and determines the first parameter a1 and the second parameter a2 based on the determination. Add regularization costs. More specifically, the LM regularization cost threshold value determination unit 3104183A2 compares the first parameter a1 with a threshold value THN of 0 or more, and the first parameter a1 is less than the threshold value THN (or the first parameter a1 is less than the threshold value THN).
  • the first parameter regularization cost a1costN is added to the first parameter a1
  • the second parameter regularization cost a2cost is added to the second parameter a2.
  • the regularization cost is not added to the first parameter a1 and the second parameter a2.
  • the first parameter regularization cost a1costN is subtracted from the first parameter a1
  • the second parameter regularization cost a2costN is subtracted from the second parameter a2.
  • the value of the parameter a can be made closer to the direction closer to -a1costN / a2costN than the value derived by the method of least squares, and the effect of improving the prediction accuracy when generating a prediction image is achieved. Play.
  • the LM regularization cost addition unit 310418A simply brings the value of the parameter a closer to the direction farther from 0 than the value derived by the least square method, whereas the LM regularization cost addition unit 31041A2 (LM regularization The cost adding unit 310418A2) approximates ⁇ a1costNa / a2costN by adding the second parameter regularization cost a2costN to the second parameter a2.
  • the slope a suitable for luminance color difference prediction is between 0 and ⁇ 1 when a is negative, and thus the value derived by the least square method is negative as in the LM regularization cost adding unit 310418B.
  • a1costN is derived based on the second parameter a2 (see the LM regularization cost deriving unit 3104180D, equation (C-1D)).
  • the form of the present invention is not limited
  • the LM parameter estimation unit 31041B2 (LM parameter estimation unit 31041B2)
  • the LM parameter estimation unit 31041B2 will be described as one configuration of the LM parameter estimation unit 31041.
  • the first parameter regularization cost a1costN is added to the first parameter a1
  • the first parameter regularization cost a1costN is added to the first parameter a1.
  • the second parameter regularization cost a2costN is added to the second parameter a2.
  • the operation of the LM regularization cost addition unit 310418B2 is as shown in the flowchart of FIG. The details of each step in FIG. 21 have already been described in the LM regularization cost addition unit 310418B, and will be omitted.
  • the LM regularization cost addition unit 310418B2 when the first parameter a1 is greater than the predetermined threshold THP, or when the first parameter a1 is greater than or equal to the predetermined threshold THP (S1201), the first parameter a1. Is subtracted from the first cost a1costP of 0 or more (S1202), and the second cost a2costP of 0 or more is added to the second parameter a2 (S1203).
  • the first parameter regularization cost a1costP is added to the first parameter a1
  • the second parameter regularization cost a2costP is added to the second parameter a2.
  • the LM parameter estimation unit 31041B (LM regularization cost addition unit 310418B) simply brings the value of the parameter a closer to a direction farther from 0 than the value derived by the method of least squares, whereas the LM parameter The estimation unit 31041B2 (LM regularization cost addition unit 310418B2) adds the second parameter regularization cost a2costP also to the second parameter a2, thereby bringing it closer to a1costP / a2costP.
  • the slope a suitable for predicting the color difference component from the luminance component is a value of 0 or more and less than 1 in many cases when a is positive.
  • a1costN is derived based on the second parameter a2 (see the LM regularization cost deriving unit 3104180D, equation (C-1D)).
  • a2costP is preferably equal to or higher than the cost a1costP, that is, a1costP / a2costP is preferably 1 or less.
  • LM regularization cost addition unit 310418C2 (LM regularization cost addition unit 310418C2)
  • the LM regularization cost addition unit 310418C2 will be described as one configuration of the LM regularization cost addition unit 310418.
  • the first parameter regularization cost (a1costN and a1costP) is subtracted or added to the first parameter a1, but in the LM regularization cost addition unit 310418C2, the first parameter a1
  • the second parameter regularization cost (a2costN and a2costP) is added to the second parameter a2.
  • the operation of the LM regularization cost addition unit 310418C2 is as shown in the flowchart of FIG. Since the details of each step in FIG. 21 have already been described in the LM regularization cost addition unit 310418C, a description thereof will be omitted.
  • the LM regularization cost addition unit 310418C2 performs the first parameter a1 when the first parameter a1 is smaller than the predetermined threshold THN or when the first parameter a1 is equal to or smaller than the predetermined threshold THN (S1301).
  • the first parameter regularization cost a1costN is subtracted from the first parameter a1 or a1costP is added to the second parameter a2.
  • 2-parameter regularization cost a2costN or a2costP the value of parameter a can be made closer to a direction closer to a1costN / a2costN (or a1costP / a2costP) as an absolute value than the value derived by the method of least squares
  • the slope a suitable for luminance color difference prediction is a value of 0 or more and less than 1 in many cases when a is positive, and is derived by the least square method as in the LM regularization cost addition unit 310418C.
  • the value to be obtained is sufficiently large as an absolute value (larger than a1costP) / a2costP)
  • LM regularization cost addition unit 310418C There is an effect that a linear prediction parameter with high accuracy can be derived.
  • the LM regularization cost deriving unit 3104180 may derive, for example, any one of the following formulas (C-1A) to (C-1D2) or a combination thereof.
  • the LM regularization cost deriving unit 3104180A derives a regularization cost based on the sum XX of the products of the input reference signal x and the input reference signal x. This value is always greater than zero.
  • acost XX >> ashift formula (C-1A)
  • the LM regularization cost deriving unit 3104180A of this configuration has an effect that an appropriate regularization cost can be derived when the value ranges of the input reference pixel x and the target reference pixel y [] are relatively equal.
  • the LM regularization cost deriving unit 3104180B derives the regularization cost based on the sum XY of the products of the input reference signal x and the target reference signal y. This value is always greater than zero.
  • acost XY >> ashift formula (C-1B)
  • the first parameter a1 is calculated by subtracting a predetermined value from the sum XY of the products of the input reference signal x and the target reference signal y as in the already described formula XY ⁇ ((aveY * aveX) ⁇ iCountShift). Therefore, the regularization cost derived by XY can be expected to be in the same level as the first parameter a1, and is appropriate as the regularization cost.
  • Input reference pixel x [] and target reference pixel XY derived from the sum of the products of y [] has an effect that an appropriate regularization cost can be derived regardless of the range of the input reference pixel x and the range of the target reference pixel y [].
  • LM regularization cost deriving unit 3104180C (LM regularization cost deriving unit 3104180C)
  • the LM regularization cost deriving unit 3104180C will be described as one configuration of the LM regularization cost deriving unit 3104180.
  • the LM regularization cost deriving unit 3104180C derives a regularization cost based on bitDepth. This value is always greater than zero.
  • bitDepTHN bitDepTHN
  • acost 1 ⁇ (2 * bitDepth) ⁇ CountShift >> ashift expression (C-1C2)
  • the method based on bitDepth of the LM regularization cost deriving unit 3104180C does not use the input reference pixel x or the target reference pixel y [], and thus has an effect that the regularization cost can be derived with a relatively small number of operations.
  • the LM regularization cost deriving unit 3104180D derives the regularization cost based on the second parameter a2. For example, it is derived by the following formula. This value is always greater than zero.
  • the second parameter a2 corresponds to the variance of the input reference pixel x [].
  • the regularization cost is added to or subtracted from the first parameter a1 and the second parameter a2, but when the second parameter a2 is relatively small, the regularization cost acost that is too large compared to the second parameter a2 is added to a2. In this case, a problem arises as a result of the value changing too much.
  • by deriving the regularization cost based on the second parameter a2 there is an effect of suppressing the regularization cost from being excessively effective.
  • LM regularization cost deriving unit 3104180D2 Further, the LM regularization cost deriving unit 3104180D for deriving the regularization cost based on the second parameter a2 clips the upper limit of the regularization cost acost derived from XX, XY, bitDepth, etc. with the value derived from a2. By doing so, the regularization cost acost may be derived (LM regularization cost deriving unit 3104180D2). This value is always greater than zero.
  • the regularization cost is added to or subtracted from the first parameter a1 and the second parameter a2, but when the second parameter a2 is relatively small, the regularization cost acost that is too large compared to the second parameter a2 is added to a2. In this case, there arises a problem that the value changes too much as a result. Therefore, it is appropriate to derive the regularization cost acost according to the magnitude of the second parameter a2. As a result, there is an effect of suppressing the appropriate regularization cost from being excessively effective.
  • acost0 is the regularization cost acost derived by any of the LM regularization cost deriving unit 3104180A, the LM regularization cost deriving unit 3104180B, and the LM regularization cost deriving unit 3104180C described above.
  • the LM regularization cost deriving unit 3104180A derives the maximum value of the base cost acost0 and the value derived from a2 that defines the upper limit (here, k * a2 >> kshift). Clips can be made according to the size of a2.
  • the regularization cost is a parameter that is added or subtracted to stabilize the estimated parameter when the reliability of a1 and a2 is low due to noise, etc., but corresponds to the variance of x ( ⁇ XX- ⁇ XX / N)
  • the regularization cost acost that is too large compared to the second parameter a2 is added to a2 when the value of a2 is relatively small, there is a problem that the regularization cost is too effective for the estimated linear prediction parameter. Arise. Therefore, it is appropriate to match the size of the second parameter a2, which is a term to which the regularization cost acost is added. Thereby, there is an effect of suppressing the regularization term from being too effective.
  • equation (C-1D2) has a suitable prediction accuracy, but equation (C-1D) can also achieve close accuracy. Since it is easier to derive the regularization term in the formula (C-1D), it is also effective to use the formula (C-1D).
  • the inverse quantization / inverse DCT unit 311 inversely quantizes the quantization coefficient input from the entropy decoding unit 301 to obtain a DCT coefficient.
  • the inverse quantization / inverse DCT unit 311 performs inverse DCT (Inverse Discrete Cosine Transform) on the obtained DCT coefficient to calculate a decoded residual signal.
  • the inverse quantization / inverse DCT unit 311 outputs the calculated decoded residual signal to the addition unit 312 and the residual storage unit 313.
  • the adder 312 outputs the prediction picture block P input from the inter prediction image generation unit 309 and the intra prediction image generation unit 310 and the signal value of the decoded residual signal input from the inverse quantization / inverse DCT unit 311 for each pixel. Addition to generate a reference picture block.
  • the adder 312 stores the generated reference picture block in the reference picture memory 306, and outputs a decoded layer image Td in which the generated reference picture block is integrated for each picture to the outside. (Configuration of inter prediction parameter decoding unit) Next, the configuration of the inter prediction parameter decoding unit 303 will be described.
  • FIG. 6 is a schematic diagram illustrating a configuration of the inter prediction parameter decoding unit 303 according to the present embodiment.
  • the inter prediction parameter decoding unit 303 includes an inter prediction parameter decoding control unit 3031, an AMVP prediction parameter derivation unit 3032, an addition unit 3035, and a merge prediction parameter derivation unit 3036.
  • the inter prediction parameter decoding control unit 3031 instructs the entropy decoding unit 301 to decode a code related to the inter prediction (the syntax element) includes, for example, a division mode part_mode, a merge included in the encoded data.
  • a flag merge_flag, a merge index merge_idx, an inter prediction flag inter_pred_idc, a reference picture index refIdxLX, a prediction vector index mvp_LX_idx, and a difference vector mvdLX are extracted.
  • the inter prediction parameter decoding control unit 3031 When the inter prediction parameter decoding control unit 3031 expresses that a certain syntax element is to be extracted, it means that the entropy decoding unit 301 is instructed to decode a certain syntax element, and the corresponding syntax element is read from the encoded data. To do.
  • the inter prediction parameter decoding control unit 3031 extracts the merge index merge_idx as a prediction parameter related to merge prediction.
  • the inter prediction parameter decoding control unit 3031 outputs the extracted merge index merge_idx to the merge prediction parameter derivation unit 3036.
  • the inter prediction parameter decoding control unit 3031 uses the entropy decoding unit 301 to extract AMVP prediction parameters from the encoded data.
  • AMVP prediction parameters include an inter prediction flag inter_pred_idc, a reference picture index refIdxLX, a vector index mvp_LX_idx, and a difference vector mvdLX.
  • the inter prediction parameter decoding control unit 3031 outputs the prediction list use flag predFlagLX derived from the extracted inter prediction flag inter_pred_idc and the reference picture index refIdxLX to the AMVP prediction parameter derivation unit 3032 and the prediction image generation unit 308 (FIG. 5).
  • the inter prediction parameter decoding control unit 3031 outputs the extracted vector index mvp_LX_idx to the AMVP prediction parameter deriving unit 3032.
  • the inter prediction parameter decoding control unit 3031 outputs the extracted difference vector mvdLX to the addition unit 3035.
  • FIG. 7 is a schematic diagram illustrating the configuration of the merge prediction parameter deriving unit 3036 according to the present embodiment.
  • the merge prediction parameter derivation unit 3036 includes a merge candidate derivation unit 30361 and a merge candidate selection unit 30362.
  • the merge candidate storage unit 303611 stores the merge candidates input from the merge candidate derivation unit 30361.
  • the merge candidate includes a prediction list use flag predFlagLX, a vector mvLX, and a reference picture index refIdxLX.
  • an index is assigned to the stored merge candidates according to a predetermined rule.
  • the merge candidate derivation unit 30361 includes a spatial merge candidate derivation unit 3036131, a temporal merge candidate derivation unit 3036132, a merge merge candidate derivation unit 3036133, and a zero merge candidate derivation unit 3036134.
  • the spatial merge candidate derivation unit 3036131 reads the prediction parameters (prediction list use flag predFlagLX, vector mvLX, reference picture index refIdxLX) stored in the prediction parameter memory 307 according to a predetermined rule, and uses the read prediction parameters as merge candidates.
  • the prediction parameter to be read is a prediction parameter relating to each of the blocks within a predetermined range from the decoding target block (for example, all or a part of the blocks in contact with the lower left end, upper left upper end, and upper right end of the decoding target block, respectively). is there.
  • the derived merge candidates are stored in the merge candidate storage unit 303611.
  • the temporal merge candidate derivation unit 3036132 reads the prediction parameter of the block in the reference image including the lower right coordinate of the decoding target block from the prediction parameter memory 307 and sets it as a merge candidate.
  • the reference picture designation method may be, for example, the reference picture index refIdxLX designated in the slice header, or may be designated using the smallest reference picture index refIdxLX of the block adjacent to the decoding target block. .
  • the derived merge candidates are stored in the merge candidate storage unit 303611.
  • the merge merge candidate derivation unit 3036133 derives merge merge candidates by combining two different derived merge candidate vectors and reference picture indexes already derived and stored in the merge candidate storage unit 303611 as L0 and L1 vectors, respectively. To do.
  • the derived merge candidates are stored in the merge candidate storage unit 303611.
  • the zero merge candidate derivation unit 3036134 derives a merge candidate in which the reference picture index refIdxLX is 0 and both the X component and the Y component of the vector mvLX are 0.
  • the derived merge candidates are stored in the merge candidate storage unit 303611.
  • the merge candidate selection unit 30362 selects, from the merge candidates stored in the merge candidate storage unit 303611, a merge candidate to which an index corresponding to the merge index merge_idx input from the inter prediction parameter decoding control unit 3031 is assigned. As an inter prediction parameter.
  • the merge candidate selection unit 30362 stores the selected merge candidate in the prediction parameter memory 307 (FIG. 5) and outputs it to the prediction image generation unit 308 (FIG. 5).
  • FIG. 8 is a schematic diagram showing a configuration of the AMVP prediction parameter derivation unit 3032 according to the present embodiment.
  • the AMVP prediction parameter derivation unit 3032 includes a vector candidate derivation unit 3033 and a prediction vector selection unit 3034.
  • the vector candidate derivation unit 3033 reads a vector (motion vector or displacement vector) stored in the prediction parameter memory 307 (FIG. 5) as a vector candidate mvpLX based on the reference picture index refIdx.
  • the vector to be read is a vector related to each of the blocks within a predetermined range from the decoding target block (for example, all or a part of the blocks in contact with the lower left end, the upper left upper end, and the upper right end of the decoding target block, respectively).
  • the prediction vector selection unit 3034 selects a vector candidate indicated by the vector index mvp_LX_idx input from the inter prediction parameter decoding control unit 3031 among the vector candidates read by the vector candidate derivation unit 3033 as the prediction vector mvpLX.
  • the prediction vector selection unit 3034 outputs the selected prediction vector mvpLX to the addition unit 3035.
  • FIG. 9 is a conceptual diagram showing an example of vector candidates.
  • a predicted vector list 602 illustrated in FIG. 9 is a list including a plurality of vector candidates derived by the vector candidate deriving unit 3033.
  • five rectangles arranged in a line on the left and right indicate areas indicating prediction vectors, respectively.
  • the downward arrow directly below the second mvp_LX_idx from the left end and mvpLX below the mvp_LX_idx indicate that the vector index mvp_LX_idx is an index referring to the vector mvpLX in the prediction parameter memory 307.
  • the candidate vector is a block for which the decoding process has been completed, and is generated based on a vector related to the referenced block with reference to a block (for example, an adjacent block) in a predetermined range from the decoding target block.
  • the adjacent block has a block that is spatially adjacent to the target block, for example, the left block and the upper block, and a block that is temporally adjacent to the target block, for example, the same position as the target block, and has a different display time. Contains blocks derived from blocks.
  • the addition unit 3035 adds the prediction vector mvpLX input from the prediction vector selection unit 3034 and the difference vector mvdLX input from the inter prediction parameter decoding control unit to calculate a vector mvLX.
  • the adding unit 3035 outputs the calculated vector mvLX to the predicted image generation unit 308 (FIG. 5).
  • FIG. 10 is a diagram illustrating a configuration of the inter prediction parameter decoding control unit 3031.
  • the inter prediction parameter decoding control unit 3031 includes an additional prediction flag decoding unit 30311, a merge index decoding unit 30312, a vector candidate index decoding unit 30313, and a partition mode decoding unit, a merge flag decoding unit, an inter prediction flag decoding unit, not shown.
  • a picture index decoding unit and a vector difference decoding unit are included.
  • the partition mode decoding unit, the merge flag decoding unit, the merge index decoding unit, the inter prediction flag decoding unit, the reference picture index decoding unit, the vector candidate index decoding unit 30313, and the vector difference decoding unit are respectively divided mode part_mode, merge flag merge_flag, merge The index merge_idx, inter prediction flag inter_pred_idc, reference picture index refIdxLX, prediction vector index mvp_LX_idx, and difference vector mvdLX are decoded.
  • the additional prediction flag decoding unit 30311 decodes a flag ic_enable_flag indicating whether or not to perform illuminance prediction that is additional prediction, and outputs the decoded signal to the inter predicted image generation unit 309.
  • the displacement vector acquisition unit extracts the displacement vector from the prediction parameter memory 307, refers to the prediction parameter memory 307, and predicts the prediction flag of the block adjacent to the target PU.
  • FIG. 11 is a schematic diagram illustrating a configuration of the inter predicted image generation unit 309 according to the present embodiment.
  • the inter prediction image generation unit 309 includes a motion compensation unit 3091, an illuminance compensation unit 3093, and a weight prediction unit 3094.
  • the motion compensation unit 3091 Based on the prediction list use flag predFlagLX, the reference picture index refIdxLX, and the motion vector mvLX input from the inter prediction parameter decoding unit 303, the motion compensation unit 3091 refers to the reference specified by the reference picture index refIdxLX from the reference picture memory 306.
  • a motion compensated image is generated by reading out a block at a position shifted by the vector mvLX starting from the position of the target block of the picture.
  • a motion compensation image is generated by applying a filter called a motion compensation filter (or displacement compensation filter) for generating a pixel at a decimal position.
  • the above processing is called motion compensation.
  • the vector mvLX is a displacement vector
  • it may be called displacement compensation.
  • it is simply expressed as motion compensation without distinguishing the type of vector.
  • the motion compensated image for L0 prediction is called predSamplesL0
  • the motion compensated image for L1 prediction is called predSamplesL1. If the two are not distinguished, they are called predSamplesLX.
  • illuminance compensation is further performed on the motion displacement compensation image predSamplesLX obtained by the motion compensation unit 3091 will be described.
  • These output images are also referred to as motion compensation images predSamplesLX.
  • predSamplesLX when an input image and an output image are distinguished, the input image is expressed as predSamplesLX and the output image is expressed as predSamplesLX ′.
  • Illuminance compensation When the illumination compensation flag ic_enable_flag is 1, the illumination compensation unit 3093 performs illumination compensation on the input motion displacement image predSamplesLX. When the illumination compensation flag ic_enable_flag is 0, the input motion compensation image predSamplesLX is output as it is.
  • the motion compensation image predSamplesLX input to the illuminance compensation unit 3093 is an output image of the motion compensation unit 3091. Illuminance compensation is performed by calculating a pixel value of a motion compensated image in an adjacent area adjacent to a target block for which a predicted image is generated and a change in a decoded image in the adjacent area between a pixel value in the target block and an original image of the target block. This is done on the assumption that it is similar to a change.
  • the illuminance parameter estimation unit 30931 obtains an estimation parameter for estimating the pixel of the target block (target prediction unit) from the pixel of the reference block.
  • FIG. 13 is a diagram for explaining illumination compensation.
  • FIG. 13 shows the positions of pixels around the target block (target reference pixels) and pixels around the reference block (input reference pixels) on the reference layer image at a position shifted by a certain vector from the target block. Yes.
  • the illuminance parameter estimation unit 30931 calculates an estimation parameter (illuminance change parameter) from the target reference pixels y (y0 to yN-1) around the target block and the input reference pixels x (x0 to xN-1) around the reference block. )
  • FIG. 24 is a block diagram illustrating a configuration of the illuminance compensation unit 3093.
  • the illuminance compensation unit 3093 includes an illuminance parameter estimation unit 30931 and an illuminance compensation filter unit 30932.
  • the illuminance parameter estimation unit 30931 includes an integrated shift value deriving unit 309311, an integrated value deriving unit 309312, an addition value deriving unit 309313, a first parameter deriving unit 309314, a second parameter deriving unit 309315, a parameter a deriving unit 309316, and a parameter b deriving unit. 309317 and a regularization cost addition unit 309318.
  • the illuminance parameter estimation unit 30931 uses the pixel C around the reference block on the reference layer image shown in FIG. 13 as the input reference pixel x [] and the pixel L around the target block as the target reference pixel y []. Based on the pixel x [] and the target reference pixel y [], parameters a and b, which are parameters for linear prediction of the target reference pixel y [] from the input reference pixel x, are derived.
  • the addition value deriving unit 309313 derives the sum Y of the target reference pixel y and the sum X of the input reference pixel x by the following equations (B-2) and (B-3).
  • the integrated value deriving unit 309312 derives the sum XY of the product of the target reference pixel y and the input reference pixel x and the sum XX of the squares of the input reference pixels by the following equations (B-4) to (B-5). . At this time, the integrated value deriving unit 309312 derives the sum XY of the square of the input reference pixel x and the sum XY of the product of the target reference pixel y and the input reference pixel x. X, Y, XY, and XX are initialized to 0 before the following sum.
  • ⁇ x [i * 2] Formula (B-2)
  • Y ⁇ y [i * 2] Formula (B-3)
  • XX ⁇ (x [i] * x [i])
  • XY ⁇ (x [i] * y [i])
  • Formula (B-5)
  • is a sum with respect to the reference region, and a sum with respect to an index i specifying a pixel in the reference region is derived.
  • y [i] is the pixel value at index i of the decoded image.
  • x [i] is a pixel value at index i of the reference image.
  • the count shift value iCountShift is a logarithm of 2 of the size of the reference area.
  • the first parameter deriving unit 309314 calculates the first parameter a1 from the difference between the sum XY of the product of the target reference pixel y and the input reference pixel x and the product of the sum Y of the target reference pixel and the sum X of the input reference pixel as follows: Derived by
  • a1 (XY ⁇ iCountShift)-(Y * X) Formula (B-7) As shown in Equation (B-7), XY calculates the difference after shifting left by the count shift value iCountShift.
  • the second parameter deriving unit 309315 derives the second parameter a2 from the difference between the square of the input reference pixel sum XX and the square of the input reference pixel sum X by the following equation.
  • a2 (XX ⁇ iCountShift)-(X * X); Formula (B-8) As shown in Expression (B-8), XX calculates the difference after shifting left by the count shift value iCountShift.
  • the derived first parameter a1 and second parameter a2 are output to the parameter a deriving unit 309316.
  • the first parameter deriving unit 309314 limits the first parameter a1 according to the size of the second parameter a2. For example, as shown in the following expression, a1 is clipped to 0 or more and 2 or less of a2.
  • a1 Clip3 (0, 2 * a2, a1) Formula (B-12)
  • the first parameter deriving unit 309314 derives the second normalized shift value iScaleShiftA2 by the following equation for the predetermined bit width ShiftA2 used for deriving the table of FIG. 16 according to the magnitude of the second parameter a2. To do.
  • the derived second normalized shift value iScaleShiftA2 is output to the table base parameter a derivation unit 3093163.
  • iScaleShiftA2 Max (0, Floor (Log2 (Abs (a2)))-(ShiftA2-1)) Formula (B-14)
  • the first parameter normalization shift unit 3093161 derives the first normalization shift value iScaleShiftA1 by the following equation according to the second normalization shift value iScaleShiftA2.
  • the derived first normalized shift value iScaleShiftA1 is output to the table base parameter a derivation unit 3093163.
  • iScaleShiftA1 Max (0, iScaleShiftA2-offsetA1) Formula (B-13)
  • offsetA1 is a constant satisfying 10 or less.
  • the first parameter deriving unit 309314 and the second parameter deriving unit 309315 right-shift the first parameter a1 by the first normalized shift value iScaleShiftA1 and the second parameter a2 by the second normalized shift value iScaleShiftA2, and normalize the first parameter a1s and a normalized second parameter a2s are derived.
  • a1s a1 >> iScaleShiftA1 formula (B-15)
  • a2s a2 >> iScaleShiftA2 formula (B-16)
  • the parameter a deriving unit 309316 derives the parameter a shift value iScaleShiftA by the following equation based on the difference between the first normalized shift value iScaleShiftA1 and the second normalized shift value iScaleShiftA2.
  • ScaleShiftA ShiftA1 + iScaleShiftA2-iScaleShiftA1-iShift formula (B-18)
  • iScaleShiftA1 Max (0, iScaleShiftA2 ⁇ offsetA1)
  • the parameter a deriving unit 309316 refers to the reciprocal table value invTable determined according to the normalized second parameter a2s, takes the product with the normalized first parameter a1s, and shifts to the right by the table shift value (ScaleShiftA), thereby
  • the parameter a is derived from the following equation.
  • FIG. 16 shows the reciprocal table value invTable [] used in this embodiment.
  • the reciprocal invTable [x] in FIG. 16 becomes 0 when the index x is 0, and when the index x is other than 0, a predetermined constant (here, 2 to the 15th power) M is set to x. Derived from the integer value obtained by dividing.
  • the derived parameter a is output to the parameter b deriving unit 309317 and the illuminance compensation filter unit 30932.
  • the parameter b deriving unit 309317 divides, by the number of pixels in the reference area, a value obtained by subtracting a value obtained by adding the parameter a to the sum X of the input reference pixels and shifting the value to the right by the fixed shift value iShift.
  • the parameter b is derived by the following equation.
  • b (Y-((a * X) >> iShift) + (1 ⁇ (iCountShift-1))) >> iCountShift expression (B-20) Note that the right shift of iCountShift corresponds to dividing by the number of pixels in the reference area.
  • the illuminance compensation filter unit 30932 derives the predicted image predSamples ′ [] after illuminance compensation from the predicted image predSamples [] before illuminance compensation, using the estimation parameter derived by the illuminance parameter estimation unit 30931. For example, when the parameter b is derived from the equation (B-20), the following equation is used.
  • the weight prediction unit 3094 generates a prediction picture block P (prediction image) by multiplying the input motion displacement image predSamplesLX by a weight coefficient.
  • the input motion displacement image predSamplesLX is an image on which residual prediction and illuminance compensation are performed.
  • predSamples [x] [y] Clip3 (0, (1 ⁇ bitDepth)-1, (predSamplesLX [x] [y] + offset1) >> shift1)
  • shift1 14-bitDepth
  • offset1 1 ⁇ (shift1-1).
  • predSamples [x] [y] Clip3 (0, (1 ⁇ bitDepth)-1, (predSamplesL0 [x] [y] + predSamplesL1 [x] [y] + offset2) >> shift2)
  • shift2 15-bitDepth
  • offset2 1 ⁇ (shift2-1).
  • the weight prediction unit 3094 when performing weight prediction, derives the weight prediction coefficient w0 and the offset o0, and performs the processing of the following equation.
  • predSamples [x] [y] Clip3 (0, (1 ⁇ bitDepth)-1, ((predSamplesLX [x] [y] * w0 + 2log2WD-1) >> log2WD) + o0)
  • log2WD is a variable indicating a predetermined shift amount.
  • the weight prediction unit 3094 when performing weight prediction, derives weight prediction coefficients w0, w1, o0, o1, and performs the processing of the following equation.
  • predSamples [x] [y] Clip3 (0, (1 ⁇ bitDepth)-1, (predSamplesL0 [x] [y] * w0 + predSamplesL1 [x] [y] * w1 + ((o0 + o1 + 1) ⁇ log2WD)) >> (log2WD + 1)) (Configuration of image encoding device)
  • the image encoding device 11 includes a prediction image generation unit 101, a subtraction unit 102, a DCT / quantization unit 103, an entropy encoding unit 104, an inverse quantization / inverse DCT unit 105, an addition unit 106, a prediction parameter memory (prediction parameter storage). Unit, frame memory) 108, reference picture memory (reference image storage unit, frame memory) 109, coding parameter determination unit 110, prediction parameter coding unit 111, and residual storage unit 313 (residual recording unit). Is done.
  • the prediction parameter encoding unit 111 includes an inter prediction parameter encoding unit 112 and an intra prediction parameter encoding unit 113.
  • the predicted image generation unit 101 generates a predicted picture block P for each block which is an area obtained by dividing the picture for each viewpoint of the layer image T input from the outside.
  • the predicted image generation unit 101 reads the reference picture block from the reference picture memory 109 based on the prediction parameter input from the prediction parameter encoding unit 111.
  • the prediction parameter input from the prediction parameter encoding unit 111 is, for example, a motion vector or a displacement vector.
  • the predicted image generation unit 101 reads the reference picture block of the block at the position indicated by the motion vector or the displacement vector predicted from the encoding target block.
  • the prediction image generation unit 101 generates a prediction picture block P using one prediction method among a plurality of prediction methods for the read reference picture block.
  • the predicted image generation unit 101 outputs the generated predicted picture block P to the subtraction unit 102. Note that since the predicted image generation unit 101 performs the same operation as the predicted image generation unit 308 already described, details of generation of the predicted picture block P are omitted.
  • the predicted image generation unit 101 calculates an error value based on a difference between a signal value for each pixel of a block included in the layer image and a signal value for each corresponding pixel of the predicted picture block P. Select the prediction method to minimize.
  • the method for selecting the prediction method is not limited to this.
  • the plurality of prediction methods are intra prediction, motion prediction, and merge prediction.
  • Motion prediction is prediction between display times among the above-mentioned inter predictions.
  • the merge prediction is a prediction that uses the same reference picture block and prediction parameter as a block that has already been encoded and is within a predetermined range from the encoding target block.
  • the plurality of prediction methods are intra prediction, motion prediction, merge prediction, and displacement prediction.
  • the displacement prediction is prediction between different layer images (different viewpoint images) in the above-described inter prediction.
  • motion prediction, merge prediction, and displacement prediction With respect to displacement prediction (parallax prediction), there are predictions with and without additional prediction (illuminance compensation).
  • the prediction image generation unit 101 outputs a prediction mode predMode indicating the intra prediction mode used when generating the prediction picture block P to the prediction parameter encoding unit 111 when intra prediction is selected.
  • the predicted image generation unit 101 when selecting motion prediction, stores the motion vector mvLX used when generating the predicted picture block P in the prediction parameter memory 108 and outputs the motion vector mvLX to the inter prediction parameter encoding unit 112.
  • the motion vector mvLX indicates a vector from the position of the encoding target block to the position of the reference picture block when the predicted picture block P is generated.
  • the information indicating the motion vector mvLX may include information indicating a reference picture (for example, a reference picture index refIdxLX, a picture order number POC), and may represent a prediction parameter.
  • the predicted image generation unit 101 outputs a prediction mode predMode indicating the inter prediction mode to the prediction parameter encoding unit 111.
  • the prediction image generation unit 101 When the prediction image generation unit 101 selects the displacement prediction, the prediction image generation unit 101 stores the displacement vector used when generating the prediction picture block P in the prediction parameter memory 108 and outputs it to the inter prediction parameter encoding unit 112.
  • the displacement vector dvLX indicates a vector from the position of the encoding target block to the position of the reference picture block when the predicted picture block P is generated.
  • the information indicating the displacement vector dvLX may include information indicating a reference picture (for example, reference picture index refIdxLX, view IDview_id) and may represent a prediction parameter.
  • the predicted image generation unit 101 outputs a prediction mode predMode indicating the inter prediction mode to the prediction parameter encoding unit 111.
  • the prediction image generation unit 101 selects merge prediction
  • the prediction image generation unit 101 outputs a merge index merge_idx indicating the selected reference picture block to the inter prediction parameter encoding unit 112. Further, the predicted image generation unit 101 outputs a prediction mode predMode indicating the merge prediction mode to the prediction parameter encoding unit 111.
  • the prediction image generation unit 101 includes the prediction image generation unit 101 as described above when the residual prediction flag res_pred_flag indicates that the residual prediction is performed.
  • the residual prediction unit 3092 performs residual prediction and the illuminance compensation flag ic_enable_flag indicates that illuminance compensation is performed, the illuminance compensation prediction is performed in the illuminance compensation unit 3093 included in the predicted image generation unit 101 as described above. I do.
  • the subtraction unit 102 subtracts the signal value of the prediction picture block P input from the prediction image generation unit 101 for each pixel from the signal value of the corresponding block of the layer image T input from the outside, and generates a residual signal. Generate.
  • the subtraction unit 102 outputs the generated residual signal to the DCT / quantization unit 103 and the encoding parameter determination unit 110.
  • the DCT / quantization unit 103 performs DCT on the residual signal input from the subtraction unit 102 and calculates a DCT coefficient.
  • the DCT / quantization unit 103 quantizes the calculated DCT coefficient to obtain a quantization coefficient.
  • the DCT / quantization unit 103 outputs the obtained quantization coefficient to the entropy encoding unit 104 and the inverse quantization / inverse DCT unit 105.
  • the entropy coding unit 104 receives the quantization coefficient from the DCT / quantization unit 103 and the coding parameter from the coding parameter determination unit 110.
  • Input encoding parameters include codes such as a reference picture index refIdxLX, a vector index mvp_LX_idx, a difference vector mvdLX, a prediction mode predMode, and a merge index merge_idx.
  • the entropy encoding unit 104 generates an encoded stream Te by entropy encoding the input quantization coefficient and encoding parameter, and outputs the generated encoded stream Te to the outside.
  • the inverse quantization / inverse DCT unit 105 inversely quantizes the quantization coefficient input from the DCT / quantization unit 103 to obtain a DCT coefficient.
  • the inverse quantization / inverse DCT unit 105 performs inverse DCT on the obtained DCT coefficient to calculate a decoded residual signal.
  • the inverse quantization / inverse DCT unit 105 outputs the calculated decoded residual signal to the addition unit 106.
  • the addition unit 106 adds the signal value of the predicted picture block P input from the predicted image generation unit 101 and the signal value of the decoded residual signal input from the inverse quantization / inverse DCT unit 105 for each pixel, and refers to them. Generate a picture block.
  • the adding unit 106 stores the generated reference picture block in the reference picture memory 109.
  • the prediction parameter memory 108 stores the prediction parameter generated by the prediction parameter encoding unit 111 at a predetermined position for each picture and block to be encoded.
  • the reference picture memory 109 stores the reference picture block generated by the adding unit 106 at a predetermined position for each picture and block to be encoded.
  • the encoding parameter determination unit 110 selects one set from among a plurality of sets of encoding parameters.
  • the encoding parameter is a parameter to be encoded that is generated in association with the above-described prediction parameter or the prediction parameter.
  • the predicted image generation unit 101 generates a predicted picture block P using each of these sets of encoding parameters.
  • the encoding parameter determination unit 110 calculates a cost value indicating the amount of information and the encoding error for each of a plurality of sets.
  • the cost value is, for example, the sum of a code amount and a square error multiplied by a coefficient ⁇ .
  • the code amount is the information amount of the encoded stream Te obtained by entropy encoding the quantization error and the encoding parameter.
  • the square error is the sum between pixels regarding the square value of the residual value of the residual signal calculated by the subtracting unit 102.
  • the coefficient ⁇ is a real number larger than a preset zero.
  • the encoding parameter determination unit 110 selects a set of encoding parameters that minimizes the calculated cost value. As a result, the entropy encoding unit 104 outputs the selected set of encoding parameters to the outside as the encoded stream Te, and does not output the set of unselected encoding parameters.
  • the prediction parameter encoding unit 111 derives a prediction parameter used when generating a prediction picture based on the parameter input from the prediction image generation unit 101, and encodes the derived prediction parameter to generate a set of encoding parameters. To do.
  • the prediction parameter encoding unit 111 outputs the generated set of encoding parameters to the entropy encoding unit 104.
  • the prediction parameter encoding unit 111 stores, in the prediction parameter memory 108, a prediction parameter corresponding to the set of the generated encoding parameters selected by the encoding parameter determination unit 110.
  • the prediction parameter encoding unit 111 operates the inter prediction parameter encoding unit 112 when the prediction mode predMode input from the prediction image generation unit 101 indicates the inter prediction mode.
  • the prediction parameter encoding unit 111 operates the intra prediction parameter encoding unit 113 when the prediction mode predMode indicates the intra prediction mode.
  • the inter prediction parameter encoding unit 112 derives an inter prediction parameter based on the prediction parameter input from the encoding parameter determination unit 110.
  • the inter prediction parameter encoding unit 112 includes the same configuration as the configuration in which the inter prediction parameter decoding unit 303 (see FIG. 5 and the like) derives the inter prediction parameter as a configuration for deriving the inter prediction parameter.
  • the configuration of the inter prediction parameter encoding unit 112 will be described later.
  • the intra prediction parameter encoding unit 113 determines the intra prediction mode IntraPredMode indicated by the prediction mode predMode input from the encoding parameter determination unit 110 as a set of inter prediction parameters.
  • the predicted image generation unit 101 includes an LM prediction unit 3104.
  • the LM prediction unit 3104 includes the LM parameter estimation unit 31041, and receives a set of the pixel value xi and the pixel value yi corresponding to the index i as input and predicts the linear prediction parameters a and b from xi.
  • the first parameter a1 derived from the product of the sum of products XY, the sum X of pixel values xi, and the sum Y of pixel values yi, the sum XX of the products of pixel values xi and pixel values xi, and the sum X of pixel values xi
  • the first parameter a1 is the threshold When the value is less than the value THN or less than the threshold THN, the first cost a1costN is subtracted from the first parameter a1, the first parameter a1 is compared with a predetermined threshold THP, and the first parameter a1 is It is characterized by comprising at least one means for adding the second cost a1costP to the first parameter a1 when it is
  • the value of the parameter a can be made closer to a direction farther from 0 than the value derived by the least square method.
  • the LM parameter estimation unit 31041 can derive a linear prediction parameter that is resistant to noise, and has an effect of improving the prediction accuracy when generating a predicted image.
  • the inter prediction parameter encoding unit 112 is means corresponding to the inter prediction parameter decoding unit 303.
  • FIG. 15 is a schematic diagram illustrating a configuration of the inter prediction parameter encoding unit 112 according to the present embodiment.
  • the inter prediction parameter encoding unit 112 includes an inter prediction parameter encoding control unit 1031, a merge prediction parameter derivation unit 3036, an AMVP prediction parameter derivation unit 3032, a subtraction unit 1123, and a prediction parameter integration unit 1126 (not shown). .
  • the merge prediction parameter derivation unit 3036 has the same configuration as the merge prediction parameter derivation unit 3036 (see FIG. 7).
  • the inter prediction parameter encoding control unit 1031 instructs the entropy encoding unit 104 to decode a code related to the inter prediction (syntax element decoding), for example, a code (syntax element) included in the encoded data.
  • a code related to the inter prediction for example, a code (syntax element) included in the encoded data.
  • Merge flag merge_flag, merge index merge_idx, inter prediction flag inter_pred_idc, reference picture index refIdxLX, prediction vector index mvp_LX_idx, and difference vector mvdLX are encoded.
  • the inter prediction parameter encoding control unit 1031 includes an additional prediction flag encoding unit 10311, a merge index encoding unit 10312, a vector candidate index encoding unit 10313, and a split mode encoding unit, a merge flag encoding unit, an inter not shown.
  • a prediction flag encoding unit, a reference picture index encoding unit, and a vector difference encoding unit are configured.
  • the division mode encoding unit, the merge flag encoding unit, the merge index encoding unit, the inter prediction flag encoding unit, the reference picture index encoding unit, the vector candidate index encoding unit 10313, and the vector difference encoding unit are respectively divided modes.
  • merge flag merge_flag merge index merge_idx
  • inter prediction flag inter_pred_idc reference picture index refIdxLX
  • prediction vector index mvp_LX_idx reference picture index refIdxLX
  • difference vector mvdLX difference vector
  • the additional prediction flag encoding unit 10311 encodes the illuminance compensation flag ic_enable_flag to indicate whether or not additional prediction is performed.
  • the merge index merge_idx is input from the encoding parameter determination unit 110 to the merge prediction parameter derivation unit 3036 when the prediction mode predMode input from the prediction image generation unit 101 indicates the merge prediction mode.
  • the merge index merge_idx is output to the prediction parameter integration unit 1126.
  • the merge prediction parameter derivation unit 3036 reads from the prediction parameter memory 108 the reference picture index refIdxLX and the vector mvLX of the reference block indicated by the merge index merge_idx among the merge candidates.
  • the merge candidate is a reference block (for example, a reference block in contact with the lower left end, upper left end, and upper right end of the encoding target block) within a predetermined range from the encoding target block to be encoded, This is a reference block for which the encoding process has been completed.
  • the AMVP prediction parameter derivation unit 3032 has the same configuration as the above-described AMVP prediction parameter derivation unit 3032 (see FIG. 8).
  • the vector mvLX is input from the encoding parameter determination unit 110 to the AMVP prediction parameter derivation unit 3032.
  • the AMVP prediction parameter derivation unit 3032 derives a prediction vector mvpLX based on the input vector mvLX.
  • the AMVP prediction parameter derivation unit 3032 outputs the derived prediction vector mvpLX to the subtraction unit 1123. Note that the reference picture index refIdx and the vector index mvp_LX_idx are output to the prediction parameter integration unit 1126.
  • the subtraction unit 1123 subtracts the prediction vector mvpLX input from the AMVP prediction parameter derivation unit 3032 from the vector mvLX input from the encoding parameter determination unit 110 to generate a difference vector mvdLX.
  • the difference vector mvdLX is output to the prediction parameter integration unit 1126.
  • the prediction parameter integration unit 1126 When the prediction mode predMode input from the predicted image generation unit 101 indicates the merge prediction mode, the prediction parameter integration unit 1126 outputs the merge index merge_idx input from the encoding parameter determination unit 110 to the entropy encoding unit 104. To do.
  • the prediction parameter integration unit 1126 performs the following process.
  • the prediction parameter integration unit 1126 integrates the reference picture index refIdxLX and the vector index mvp_LX_idx input from the encoding parameter determination unit 110 and the difference vector mvdLX input from the subtraction unit 1123.
  • the prediction parameter integration unit 1126 outputs the integrated code to the entropy encoding unit 104.
  • a part of the image encoding device 11 and the image decoding device 31 in the above-described embodiment for example, the entropy decoding unit 301, the prediction parameter decoding unit 302, the predicted image generation unit 101, the DCT / quantization unit 103, and entropy encoding.
  • Unit 104, inverse quantization / inverse DCT unit 105, encoding parameter determination unit 110, prediction parameter encoding unit 111, entropy decoding unit 301, prediction parameter decoding unit 302, predicted image generation unit 308, inverse quantization / inverse DCT unit 311 may be realized by a computer.
  • the program for realizing the control function may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read by a computer system and executed.
  • the “computer system” here is a computer system built in either the image encoding device 11-11h or the image decoding device 31-31h, and includes an OS and hardware such as peripheral devices.
  • the “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system.
  • the “computer-readable recording medium” is a medium that dynamically holds a program for a short time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line,
  • a volatile memory inside a computer system serving as a server or a client may be included and a program that holds a program for a certain period of time.
  • the program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
  • part or all of the image encoding device 11 and the image decoding device 31 in the above-described embodiment may be realized as an integrated circuit such as an LSI (Large Scale Integration).
  • LSI Large Scale Integration
  • Each functional block of the image encoding device 11 and the image decoding device 31 may be individually made into a processor, or a part or all of them may be integrated into a processor.
  • the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. Further, in the case where an integrated circuit technology that replaces LSI appears due to progress in semiconductor technology, an integrated circuit based on the technology may be used.
  • One form of the present invention is a linear prediction parameter derivation unit for deriving linear prediction parameters a and b for predicting yi from xi with a set of a pixel value xi and a pixel value yi corresponding to the index i as input.
  • An image prediction apparatus including a linear prediction unit that generates a prediction image based on a prediction parameter, wherein the linear prediction parameter derivation unit includes a sum XY of a product of a pixel value xi and a pixel value yi, and a sum X of a pixel value xi, Based on the product of the first parameter a1 derived based on the product of the sum Y of the pixel values yi, the sum XX of the product of the pixel value xi and the pixel value xi, the sum X of the pixel value xi, and the sum X of the pixel value xi Means for deriving the linear prediction parameter a from the second parameter a2 derived in this way, the linear prediction parameter deriving unit compares the first parameter a1 with a predetermined threshold THN, and the first parameter a1 is the threshold If it is less than THN or less than the above threshold THN The means for subtracting the first cost a1cost
  • the linear prediction parameter derivation unit may perform the above operation when the first parameter a1 is smaller than the predetermined threshold value THN or when the first parameter a1 is equal to or smaller than the predetermined threshold value THN.
  • the first cost a1costN is subtracted from the first parameter a1.
  • the linear prediction parameter derivation unit may perform the above operation when the first parameter a1 is greater than the predetermined threshold THP, or when the first parameter a1 is greater than or equal to the predetermined threshold THP.
  • the second cost a1costP is added to the first parameter a1.
  • the linear prediction parameter derivation unit may perform the above operation when the first parameter a1 is smaller than the predetermined threshold value THN or when the first parameter a1 is equal to or smaller than the predetermined threshold value THN.
  • the first parameter a1costN is subtracted from the first parameter a1 and the first parameter a1 is greater than the predetermined threshold value THP, or when the first parameter a1 is greater than or equal to the predetermined threshold value THP,
  • the second cost a1costP is added to the parameter a1.
  • One embodiment of the present invention is characterized in that the linear prediction parameter derivation unit further includes means for adding a cost a2cost to the second parameter a2.
  • the linear prediction parameter derivation unit compares the first parameter a1 with a predetermined threshold THN, and when the first parameter a1 is less than the threshold THN or less than the threshold THN.
  • a means for subtracting the first cost a1costN from the first parameter a1 and adding the cost a2costN to the second parameter a2 is compared with the first parameter a1 and a predetermined threshold value THP, and the first parameter a1 is the threshold value.
  • THP a predetermined threshold value
  • the linear prediction parameter derivation unit may perform the above operation when the first parameter a1 is smaller than the predetermined threshold value THN or when the first parameter a1 is equal to or smaller than the predetermined threshold value THN.
  • Means is provided for subtracting the first cost a1costN from the first parameter a1 and adding the cost a2costN to the second parameter a2.
  • the linear prediction parameter derivation unit may perform the above operation when the first parameter a1 is greater than the predetermined threshold THP, or when the first parameter a1 is greater than or equal to the predetermined threshold THP.
  • Means is provided for adding the second cost a1costP to the first parameter a1 and adding the cost a2costN to the second parameter a2.
  • One embodiment of the present invention is characterized in that the cost a2cost is equal to or higher than the cost a1costN.
  • One embodiment of the present invention is characterized in that the linear prediction parameter derivation unit sets one or both of the threshold values THN and THP to 0.
  • One embodiment of the present invention is characterized in that the linear prediction parameter deriving unit derives one or both of the threshold values THN and THP based on the second parameter a2.
  • One embodiment of the present invention is characterized in that the linear prediction parameter derivation unit derives the threshold THN based on the second parameter a2 based on the threshold THN of 0.
  • One embodiment of the present invention is characterized in that the linear prediction parameter deriving unit derives the threshold value THN by right-shifting the second parameter a2 by a predetermined constant.
  • One embodiment of the present invention is characterized in that the linear prediction parameter deriving unit derives the first cost a1costN or the second cost a1costP from the sum XX of the product of the pixel value xi and the pixel value xi. .
  • One embodiment of the present invention is characterized in that the linear prediction parameter derivation unit derives the first cost a1costN or the second cost a1costP from the sum XY of the product of the pixel value xi and the pixel value yi. .
  • One embodiment of the present invention is characterized in that the linear prediction parameter deriving unit derives the first cost a1costN or the second cost a1costP from a bit depth value of a pixel.
  • One embodiment of the present invention is characterized in that the linear prediction parameter deriving unit derives the first cost a1costN or the second cost a1costP based on the second parameter a2.
  • One embodiment of the present invention is characterized in that the linear prediction parameter deriving unit derives the first cost a1costN or the second cost a1costP by right-shifting the second parameter a2 by a predetermined constant.
  • the linear prediction parameter derivation unit includes a value obtained by shifting the first cost a1costN or the second cost a1costP to the right by the second parameter a1 by a predetermined constant, and a bit depth value of the pixel. It derives from the minimum value with the value derived from.
  • the present invention relates to an image decoding apparatus that decodes encoded data in which image data is encoded, an image encoding apparatus that generates encoded data in which image data is encoded, and prediction that performs inter-color component prediction
  • the present invention can be suitably applied to an image generation device.
  • Intra prediction Parameter encoding unit 21 ... Network 31 ... Image decoding device 301 ... Entropy decoding unit 302 ... Prediction parameter decoding unit 303 ... Inter prediction parameter decoding unit 30312 ... Merge index decoding unit 30313 ... Vector candidate index decoding unit 3032 ... AMVP prediction parameter derivation unit 3035 ... Addition unit 3036 ... Merge prediction parameter derivation unit 30361 ... Merge candidate derivation unit 303611 ... Merge candidate storage unit 3036131 ... Spatial merge candidate derivation unit 3036132 ... Time marker Di candidate derivation unit 3036133 ... binding merging candidate deriving unit 3036134 ... Zeromaji candidate derivation unit 30362 ... merging candidate selector 304 ...
  • intra-prediction parameter decoding section 306 ... reference picture memory (frame memory) 307 ... Prediction parameter memory (frame memory) 308 ... Prediction image generation unit 309 ... Inter prediction image generation unit 3091 ... Motion compensation unit 3092 ... Residual prediction unit 3093 ... Illuminance compensation unit 30931 ... Illuminance parameter estimation unit 309313 ... Integrated value deriving unit 309313 ... Addition value deriving unit 309314 ... 1 parameter derivation unit 309315 ... second parameter derivation unit 309316 ... parameter a derivation unit 3093161 ... first parameter normalization shift unit 3093162 ... second parameter normalization shift unit 3093163 ... table-based parameter a derivation unit 309317 ...
  • parameter b derivation unit 309318 Regularization cost addition unit 30932 ...
  • Illuminance compensation filter unit 3094 Weight prediction unit 310 ...
  • Intra prediction image generation unit 3104 ... LM prediction units 31041, 31041A, 31041B, 31041C, 31041A2, 1041B2, 31041C2 ... LM parameter estimation units 31042, 31042B ... LM filter unit 310412 ... LM integrated value deriving unit 310413 ... LM added value deriving unit 310414 ... LM first parameter deriving unit 310415 ... LM second parameter deriving unit 310416 ... LM parameter a Deriving unit 3104161 ...

Landscapes

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

Abstract

イントラLM予測画像または照度予測画像の精度を向上させるための画像予測装置を提供する。 画像予測装置は、線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える。上記線形予測パラメータ導出部は、第1パラメータa1と第2パラメータa2から線形予測パラメータaを導出する手段を備える。上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備える。

Description

[規則37.2に基づきISAが決定した発明の名称] 画像復号装置または画像符号化装置のための画像予測装置
 本発明は、画像復号装置、画像符号化装置、および予測画像生成装置に関する。
 動画像を効率的に伝送または記録するために、動画像を符号化することによって符号化データを生成する動画像符号化装置、および、当該符号化データを復号することによって復号画像を生成する動画像復号装置が用いられている。
 具体的な動画像符号化方式としては、例えば、H.264/MPEG-4.AVCやHEVC(High-Efficiency Video Coding)にて提案されている方式などが挙げられる。
 このような動画像符号化方式においては、動画像を構成する画像(ピクチャ)は、画像を分割することにより得られるスライス、スライスを分割することにより得られる符号化単位(コーディングユニット(Coding Unit)と呼ばれることもある)、及び、符号化単位を分割することより得られるブロックである予測ユニット(PU)、変換ユニット(TU)からなる階層構造により管理され、ブロックごとに符号化/復号される。
 また、このような動画像符号化方式においては、通常、入力画像を符号化/復号することによって得られる局所復号画像に基づいて予測画像が生成され、当該予測画像を入力画像(原画像)から減算して得られる予測残差(「差分画像」または「残差画像」と呼ぶこともある)が符号化される。予測画像の生成方法としては、画面間予測(インター予測)、および、画面内予測(イントラ予測)が挙げられる。
 非特許文献1では、画面内予測において、既に復号した輝度成分と色差成分の関係から、線形予測パラメータを推定し、推定された線形予測パラメータを用いて対象ブロックの色差成分を予測する、方法が知られている。
 非特許文献2、非特許文献3には、さらに、線形予測パラメータの導出において、二乗誤差を最小化する最小二乗法に加え、正則化コストを加えることで、線形予測パラメータを安定させる技術が知られている。
J. Kim, S.-W. Park, J.-Y. Park, B.-M. Jeon (LG), "Intra chroma prediction using inter channel correlation", JCTVC-B021, JCT-VC 2nd Meeting: Geneva, CH, 21-28 July, 2010 T. Ikai, "3D-CE5.h related: Illumination compensation regression improvement and simplification", JCT3V-D0061, JCT3V 4th Meeting: Incheon,KR, 20-26 Apr. 2013(2013年4月12日公開) J. Chen, Y. Chen, M. Karczewicz, X. Li, H. Liu, L. Zhang, X. Zhao, "Coding tools investigation for next generation video coding", ITU-T SG16 Doc. COM16-C806, Feb. 2015.
 しかしながら、非特許文献1では、線形予測パラメータを安定させるような正則化コストを用いないため、導出される線形予測パラメータがノイズの影響を受けやすい、という課題があった。非特許文献2では、正則化コストを用いるが、特に線形予測式の傾きのパラメータの符号が正にも負にもなる異なる色空間(例えば輝度から色差及び色差から別の色差)を予測する色コンポーネント間予測に適した正則化コストとは限らないという課題があった。非特許文献3では、色差から別の色差を予測する場合の線形予測に用いる正則化コストは開示されているが、線形予測の傾きパラメータの符号や大きさを考慮しておらず、特に、傾きが正となることがある場合に適当ではないという課題があった。このように、従来は、色成分間の線形予測パラメータを推定し、推定した線形予測パラメータを用いて予測画像を生成する予測画像生成装置において、推定される線形予測パラメータが雑音の影響を受けやすいという課題があった。さらに、特に、線形予測式の傾きのパラメータの符号が正にも負にもなる異なる色コンポーネント間予測において推定される予測パラメータが適当ではないという課題があった。
 本発明の一つの形態は、インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
 本発明によれば、推定される線形予測パラメータが雑音に強くなり、線形予測パラメータを用いて導出される予測画像の精度が向上する。線形予測を利用した画像復号装置及び画像符号化装置において符号化効率が向上する。
本実施形態に係るLM予測部3093の構成を示すブロック図である。 本実施形態に係る符号化ストリームのデータの階層構造を示す図である。 参照ピクチャリストの一例を示す概念図である。 参照ピクチャの例を示す概念図である。 本実施形態に係る画像復号装置の構成を示す概略図である。 本実施形態に係るインター予測パラメータ復号部の構成を示す概略図である。 本実施形態に係るマージ予測パラメータ導出部の構成を示す概略図である。 本実施形態に係るAMVP予測パラメータ導出部の構成を示す概略図である。 ベクトル候補の一例を示す概念図である。 本実施形態に係るインター予測パラメータ復号制御部の構成を示す概略図である。 本実施形態に係るインター予測画像生成部の構成を示す概略図である。 本実施形態に係るLM予測の概念図である。 本実施形態に係る照度補償の概念図である。 本実施形態に係る画像符号化装置の構成を示すブロック図である。 本実施形態に係るインター予測パラメータ符号化部の構成を示す概略図である。 本実施形態に係る照度補償で用いるテーブルを示す図である。 本実施形態に係る線形予測パラメータaの分布を示すヒストグラムである。 本実施形態に係るLMパラメータa導出部309316の構成を示すブロック図である。 本実施形態に係るLM正則化コスト加算部309318の構成を示すブロック図である。 本実施形態に係るLM正則化コスト加算部309318の構成を示すブロック図である。 本実施形態に係るLM正則化コスト加算部309318A、LM正則化コスト加算部309318A2の動作を示すフローチャートである。 本実施形態に係るLM正則化コスト加算部309318B、LM正則化コスト加算部309318B2の動作を示すフローチャートである。 本実施形態に係るLM正則化コスト加算部309318C、LM正則化コスト加算部309318C2の動作を示すフローチャートである。 本実施形態に係る照度補償部3093の構成を示すブロック図である。 本発明の実施形態に係る画像伝送システムの構成を示す概略図である。
  (第1の実施形態)
 以下、図面を参照しながら本発明の実施形態について説明する。
 図25は、本実施形態に係る画像伝送システム1の構成を示す概略図である。
 画像伝送システム1は、複数のレイヤ画像を符号化した符号を伝送し、伝送された符号を復号した画像を表示するシステムである。画像伝送システム1は、画像符号化装置11、ネットワーク21、画像復号装置31及び画像表示装置41を含んで構成される。
 画像符号化装置11には、単一レイヤもしくは複数のレイヤ画像を示す信号Tが入力される。レイヤ画像とは、ある解像度及びある視点で視認もしくは撮影される画像である。複数のレイヤ画像を用いて3次元画像を符号化するビュースケーラブル符号化を行う場合、複数のレイヤ画像のそれぞれは、視点画像と呼ばれる。また、空間スケーラブル符号化を行う場合、その複数のレイヤ画像は、解像度の低いベースレイヤ画像と、解像度の高い拡張レイヤ画像からなる。SNRスケーラブル符号化を行う場合、その複数のレイヤ画像は、画質の低いベースレイヤ画像と、画質の高い拡張レイヤ画像からなる。なお、画像符号化装置11及び画像復号装置31は、単一レイヤ画像でも良いし、ビュースケーラブル符号化、空間スケーラブル符号化、SNRスケーラブル符号化を任意に組み合わせて行っても良い。ネットワーク21は、画像符号化装置11が生成した符号化ストリームTeを画像復号装置31に伝送する。ネットワーク21は、インターネット(internet)、広域ネットワーク(WAN:Wide Area Network)、小規模ネットワーク(LAN:Local Area Network)又はこれらの組み合わせである。ネットワーク21は、必ずしも双方向の通信網に限らず、地上波ディジタル放送、衛星放送等の放送波を伝送する一方向又は双方向の通信網であっても良い。また、ネットワーク21は、DVD(Digital Versatile Disc)、BD(Blue-ray Disc)等の符号化ストリームTeを記録した記憶媒体で代替されても良い。
 画像復号装置31は、ネットワーク21が伝送した符号化ストリームTeのそれぞれを復号し、それぞれ復号した複数の復号レイヤ画像Td(復号視点画像Td)を生成する。
 画像表示装置41は、画像復号装置31が生成した複数の復号レイヤ画像Tdの全部又は一部を表示する。例えば、ビュースケーラブル符号化においては、全部の場合、3次元画像(立体画像)や自由視点画像が表示され、一部の場合、2次元画像が表示される。画像表示装置41は、例えば、液晶ディスプレイ、有機EL(Electro-luminescence)ディスプレイ等の表示デバイスを備える。また、空間スケーラブル符号化、SNRスケーラブル符号化では、画像復号装置31、画像表示装置41が高い処理能力を有する場合には、画質の高い拡張レイヤ画像を表示し、より低い処理能力しか有しない場合には、拡張レイヤほど高い処理能力、表示能力を必要としないベースレイヤ画像を表示する。
  <符号化ストリームTeの構造>
 本実施形態に係る画像符号化装置11および画像復号装置31の詳細な説明に先立って、画像符号化装置11によって生成され、画像復号装置31によって復号される符号化ストリームTeのデータ構造について説明する。
 図2は、符号化ストリームTeにおけるデータの階層構造を示す図である。符号化ストリームTeは、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。図2の(a)~(f)は、それぞれ、シーケンスSEQを既定するシーケンスレイヤ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、スライスデータを規定するスライスデータレイヤ、スライスデータに含まれる符号化ツリーユニットを規定する符号化ツリーレイヤ、符号化ツリーに含まれる符号化単位(Coding Unit;CU)を規定する符号化ユニットレイヤを示す図である。
  (シーケンスレイヤ)
 シーケンスレイヤでは、処理対象のシーケンスSEQ(以下、対象シーケンスとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。シーケンスSEQは、図2の(a)に示すように、ビデオパラメータセット(Video Parameter Set)シーケンスパラメータセットSPS(Sequence Parameter Set)、ピクチャパラメータセットPPS(Picture Parameter Set)、ピクチャPICT、及び、付加拡張情報SEI(Supplemental Enhancement Information)を含んでいる。ここで#の後に示される値はレイヤIDを示す。図2では、#0と#1すなわちレイヤ0とレイヤ1の符号化データが存在する例を示すが、レイヤの種類およびレイヤの数はこれによらない。
 ビデオパラメータセットVPSは、複数のレイヤから構成されている動画像において、複数の動画像に共通する符号化パラメータの集合および動画像に含まれる複数のレイヤおよび個々のレイヤに関連する符号化パラメータの集合が規定されている。
 シーケンスパラメータセットSPSでは、対象シーケンスを復号するために画像復号装置31が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの幅や高さが規定される。
 ピクチャパラメータセットPPSでは、対象シーケンス内の各ピクチャを復号するために画像復号装置31が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの復号に用いられる量子化幅の基準値(pic_init_qp_minus26)や重み付き予測の適用を示すフラグ(weighted_pred_flag)が含まれる。なお、PPSは複数存在してもよい。その場合、対象シーケンス内の各ピクチャから複数のPPSの何れかを選択する。
  (ピクチャレイヤ)
 ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。ピクチャPICTは、図2の(b)に示すように、スライスS0~SNS-1を含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
 なお、以下、スライスS0~SNS-1のそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化ストリームTeに含まれるデータであって、添え字を付している他のデータについても同様である。
  (スライスレイヤ)
 スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。スライスSは、図2の(c)に示すように、スライスヘッダSH、および、スライスデータSDATAを含んでいる。
 スライスヘッダSHには、対象スライスの復号方法を決定するために画像復号装置31が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。
 スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単方向予測、または、イントラ予測を用いるPスライス、(3)符号化の際に単方向予測、双方向予測、または、イントラ予測を用いるBスライスなどが挙げられる。
 なお、スライスヘッダSHには、上記シーケンスレイヤに含まれる、ピクチャパラメータセットPPSへの参照(pic_parameter_set_id)を含んでいても良い。
  (スライスデータレイヤ)
 スライスデータレイヤでは、処理対象のスライスデータSDATAを復号するために画像復号装置31が参照するデータの集合が規定されている。スライスデータSDATAは、図2の(d)に示すように、符号化ツリーブロック(CTB:Coded Tree Block)を含んでいる。CTBは、スライスを構成する固定サイズ(例えば64×64)のブロックであり、最大符号化単位(LCU:Largest Cording Unit)と呼ぶこともある。
  (符号化ツリーレイヤ)
 符号化ツリーレイヤは、図2の(e)に示すように、処理対象の符号化ツリーブロックを復号するために画像復号装置31が参照するデータの集合が規定されている。符号化ツリーユニットは、再帰的な4分木分割により分割される。再帰的な4分木分割により得られる木構造のノードのことを符号化ツリー(coding tree)と称する。4分木の中間ノードは、符号化ツリーユニット(CTU:Coded Tree Unit)であり、符号化ツリーブロック自身も最上位のCTUとして規定される。CTUは、分割フラグ(splif_flag)を含み、splif_flagが1の場合には、4つの符号化ツリーユニットCTUに分割される。splif_flagが0の場合には、符号化ツリーユニットCTUは4つの符号化ユニット(CU:Coded Unit)に分割される。符号化ユニットCUは符号化ツリーレイヤの末端ノードであり、このレイヤではこれ以上分割されない。符号化ユニットCUは、符号化処理の基本的な単位となる。
 また、符号化ツリーブロックCTBのサイズ64×64画素の場合には、符号化ユニットのサイズは、64×64画素、32×32画素、16×16画素、および、8×8画素の何れかをとり得る。
  (符号化ユニットレイヤ)
 符号化ユニットレイヤは、図2の(f)に示すように、処理対象の符号化ユニットを復号するために画像復号装置31が参照するデータの集合が規定されている。具体的には、符号化ユニットは、CUヘッダCUH、予測ツリー、変換ツリー、CUヘッダCUFから構成される。CUヘッダCUHでは、符号化ユニットが、イントラ予測を用いるユニットであるか、インター予測を用いるユニットであるかなどが規定される。符号化ユニットは、予測ツリー(prediction tree;PT)および変換ツリー(transform tree;TT)のルートとなる。CUヘッダCUFは、予測ツリーと変換ツリーの間、もしくは、変換ツリーの後に含まれる。
 予測ツリーは、符号化ユニットが1または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ユニットを構成する1または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた1または複数の予測ブロックを含む。
 予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位(prediction unit;PU、予測ユニット)とも称する。
 予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との2つがある。イントラ予測とは、同一ピクチャ内の予測であり、インター予測とは、互いに異なるピクチャ間(例えば、表示時刻間、レイヤ画像間)で行われる予測処理を指す。
 イントラ予測の場合、分割方法は、2N×2N(符号化ユニットと同一サイズ)と、N×Nとがある。
 また、インター予測の場合、分割方法は、符号化データのpart_modeにより符号化され、2N×2N(符号化ユニットと同一サイズ)、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2N、および、N×Nなどがある。なお、2N×nUは、2N×2Nの符号化ユニットを上から順に2N×0.5Nと2N×1.5Nの2領域に分割することを示す。2N×nDは、2N×2Nの符号化ユニットを上から順に2N×1.5Nと2N×0.5Nの2領域に分割することを示す。nL×2Nは、2N×2Nの符号化ユニットを左から順に0.5N×2Nと1.5N×2Nの2領域に分割することを示す。nR×2Nは、2N×2Nの符号化ユニットを左から順に1.5N×2Nと0.5N×1.5Nの2領域に分割することを示す。分割数は1、2、4のいずれかであるため、CUに含まれるPUは1個から4個である。これらのPUを順にPU0、PU1、PU2、PU3と表現する。
 また、変換ツリーにおいては、符号化ユニットが1または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ユニットを構成する1または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた1または複数の変換ブロックを含む。
 変換ツリーにおける分割には、符号化ユニットと同一のサイズの領域を変換ブロックとして割り付けるものと、上述したツリーブロックの分割と同様、再帰的な4分木分割によるものがある。
 変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位(transform unit;TU)とも称する。
  (予測パラメータ)
 予測ユニットの予測画像は、予測ユニットに付随する予測パラメータによって導出される。予測パラメータには、イントラ予測の予測パラメータもしくはインター予測の予測パラメータがある。以下、インター予測の予測パラメータ(インター予測パラメータ)について説明する。インター予測パラメータは、予測リスト利用フラグpredFlagL0、predFlagL1と、参照ピクチャインデックスrefIdxL0、refIdxL1と、ベクトルmvL0、mvL1から構成される。予測リスト利用フラグpredFlagL0、predFlagL1は、各々L0リスト、L1リストと呼ばれる参照ピクチャリストが用いられるか否かを示すフラグであり、値が1の場合に対応する参照ピクチャリストが用いられる。なお、本明細書中「XXであるか否かを示すフラグ」と記す場合、1をXXである場合、0をXXではない場合とし、論理否定、論理積などでは1を真、0を偽と扱う(以下同様)。但し、実際の装置や方法では真値、偽値として他の値を用いることもできる。2つの参照ピクチャリストが用いられる場合、つまり、predFlagL0=1, predFlagL1=1の場合が、双予測に対応し、1つの参照ピクチャリストを用いる場合、すなわち(predFlagL0, predFlagL1) = (1, 0)もしくは(predFlagL0, predFlagL1) = (0, 1)の場合が単予測に対応する。なお、予測リスト利用フラグの情報は、後述のインター予測フラグinter_pred_idcで表現することもできる。通常、後述の予測画像生成部、予測パラメータメモリでは、予測リスト利用フラグが用いれ、符号化データから、どの参照ピクチャリストが用いられるか否かの情報を復号する場合にはインター予測フラグinter_pred_idcが用いられる。
 符号化データに含まれるインター予測パラメータを導出するためのシンタックス要素には、例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。
  (参照ピクチャリストの一例)
 次に、参照ピクチャリストの一例について説明する。参照ピクチャリストとは、参照ピクチャメモリ306(図5)に記憶された参照ピクチャからなる列である。図3は、参照ピクチャリストの一例を示す概念図である。参照ピクチャリスト601において、左右に一列に配列された5個の長方形は、それぞれ参照ピクチャを示す。左端から右へ順に示されている符号、P1、P2、Q0、P3、P4は、それぞれの参照ピクチャを示す符号である。P1等のPとは、視点Pを示し、そしてQ0のQとは、視点Pとは異なる視点Qを示す。P及びQの添字は、ピクチャ順序番号POCを示す。refIdxLXの真下の下向きの矢印は、参照ピクチャインデックスrefIdxLXが、参照ピクチャメモリ306において参照ピクチャQ0を参照するインデックスであることを示す。
  (参照ピクチャの例)
 次に、ベクトルを導出する際に用いる参照ピクチャの例について説明する。図4は、参照ピクチャの例を示す概念図である。図4において、横軸は表示時刻を示し、縦軸は視点を示す。図4に示されている、縦2行、横3列(計6個)の長方形は、それぞれピクチャを示す。6個の長方形のうち、下行の左から2列目の長方形は復号対象のピクチャ(対象ピクチャ)を示し、残りの5個の長方形がそれぞれ参照ピクチャを示す。対象ピクチャから上向きの矢印で示される参照ピクチャQ0は対象ピクチャと同表示時刻であって視点が異なるピクチャである。対象ピクチャを基準とする変位予測においては、参照ピクチャQ0が用いられる。対象ピクチャから左向きの矢印で示される参照ピクチャP1は、対象ピクチャと同じ視点であって、過去のピクチャである。対象ピクチャから右向きの矢印で示される参照ピクチャP2は、対象ピクチャと同じ視点であって、未来のピクチャである。対象ピクチャを基準とする動き予測においては、参照ピクチャP1又はP2が用いられる。
  (インター予測フラグと予測リスト利用フラグ)
 インター予測フラグと、予測リスト利用フラグpredFlagL0、predFlagL1の関係は以下のように相互に変換可能である。そのため、インター予測パラメータとしては、予測リスト利用フラグを用いても良いし、インター予測フラグを用いてもよい。また、以下、予測リスト利用フラグを用いた判定は、インター予測フラグに置き替えても可能である。逆に、インター予測フラグを用いた判定は、予測リスト利用フラグに置き替えても可能である。
 インター予測フラグ = (predFlagL1<<1) + predFlagL0
 predFlagL0 =インター予測フラグ & 1
 predFlagL1 =インター予測フラグ >> 1
 ここで、>>は右シフト、<<は左シフトである。
  (マージ予測とAMVP予測)
 予測パラメータの復号(符号化)方法には、マージ予測(merge)モードとAMVP(Adaptive Motion Vector Prediction、適応動きベクトル予測)モードがある、マージフラグmerge_flagは、これらを識別するためのフラグである。マージ予測モードでも、AMVPモードでも、既に処理済みのブロックの予測パラメータを用いて、対象PUの予測パラメータが導出される。マージ予測モードは、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idc)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めずに、既に導出した予測パラメータをそのまま用いるモードであり、AMVPモードは、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めるモードである。なおベクトルmvLXは、予測ベクトルを示す予測ベクトルインデックスmvp_LX_idxと差分ベクトル(mvdLX)として符号化される。
 インター予測フラグinter_pred_idcは、参照ピクチャの種類および数を示すデータであり、Pred_L0、Pred_L1、Pred_Biの何れかの値をとる。Pred_L0、Pred_L1は、各々L0リスト、L1リストと呼ばれる参照ピクチャリストに記憶された参照ピクチャが用いられることを示し、共に1枚の参照ピクチャを用いること(単予測)を示す。L0リスト、L1リストを用いた予測を各々L0予測、L1予測と呼ぶ。Pred_Biは2枚の参照ピクチャを用いること(双予測)を示し、L0リストとL1リストに記憶された参照ピクチャの2つを用いることを示す。予測ベクトルインデックスmvp_LX_idxは予測ベクトルを示すインデックスであり、参照ピクチャインデックスrefIdxLXは、参照ピクチャリストに記憶された参照ピクチャを示すインデックスである。なお、LXは、L0予測とL1予測を区別しない場合に用いられる記述方法であり、LXをL0、L1に置き換えることでL0リストに対するパラメータとL1リストに対するパラメータを区別するする。例えば、refIdxL0はL0予測に用いる参照ピクチャインデックス、refIdxL1はL1予測に用いる参照ピクチャインデックス、refIdx(refIdxLX)は、refIdxL0とrefIdxL1を区別しない場合に用いられる表記である。
 マージインデックスmerge_idxは、処理が完了したブロックから導出される予測パラメータ候補(マージ候補)のうち、いずれかの予測パラメータを復号対象ブロックの予測パラメータとして用いるかを示すインデックスである。
  (動きベクトルと変位ベクトル)
 ベクトルmvLXには、動きベクトルと変位ベクトル(disparity vector、視差ベクトル)がある。動きベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、異なる表示時刻(例えば、隣接する離散時刻)における同一のレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。変位ベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、同一の表示時刻における異なるレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。異なるレイヤのピクチャとしては、異なる視点のピクチャである場合、もしくは、異なる解像度のピクチャである場合などがある。特に、異なる視点のピクチャに対応する変位ベクトルを視差ベクトルと呼ぶ。以下の説明では、動きベクトルと変位ベクトルを区別しない場合には、単にベクトルmvLXと呼ぶ。ベクトルmvLXに関する予測ベクトル、差分ベクトルを、それぞれ予測ベクトルmvpLX、差分ベクトルmvdLXと呼ぶ。ベクトルmvLXおよび差分ベクトルmvdLXが、動きベクトルであるか、変位ベクトルであるかは、ベクトルに付随する参照ピクチャインデックスrefIdxLXを用いて行われる。
  (画像復号装置の構成)
 次に、本実施形態に係る画像復号装置31の構成について説明する。図5は、本実施形態に係る画像復号装置31の構成を示す概略図である。画像復号装置31は、エントロピー復号部301、予測パラメータ復号部302、参照ピクチャメモリ(参照画像記憶部、フレームメモリ)306、予測パラメータメモリ(予測パラメータ記憶部、フレームメモリ)307、予測画像生成部308、逆量子化・逆DCT部311、及び加算部312、残差格納部313(残差記録部)を含んで構成される。
 また、予測パラメータ復号部302は、インター予測パラメータ復号部303及びイントラ予測パラメータ復号部304を含んで構成される。予測画像生成部308は、インター予測画像生成部309及びイントラ予測画像生成部310を含んで構成される。
 エントロピー復号部301は、外部から入力された符号化ストリームTeに対してエントロピー復号を行って、個々の符号(シンタックス要素)を分離し復号する。分離された符号には、予測画像を生成するための予測情報および、差分画像を生成するための残差情報などがある。
 エントロピー復号部301は、分離した符号の一部を予測パラメータ復号部302に出力する。分離した符号の一部とは、例えば、予測モードPredMode、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックmvp_LX_idx、差分ベクトルmvdLXである。どの符号を復号するか否かの制御は、予測パラメータ復号部302の指示に基づいて行われる。エントロピー復号部301は、量子化係数を逆量子化・逆DCT部311に出力する。この量子化係数は、符号化処理において、残差信号に対してDCT(Discrete Cosine Transform、離散コサイン変換)を行い量子化して得られる係数である。
 インター予測パラメータ復号部303は、エントロピー復号部301から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してインター予測パラメータを復号する。
 インター予測パラメータ復号部303は、復号したインター予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。インター予測パラメータ復号部303の詳細については後述する。
 イントラ予測パラメータ復号部304は、エントロピー復号部301から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してイントラ予測パラメータを復号する。イントラ予測パラメータとは、ピクチャブロックを1つのピクチャ内で予測する処理で用いるパラメータ、例えば、イントラ予測モードIntraPredModeである。イントラ予測パラメータ復号部304は、復号したイントラ予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。
 イントラ予測パラメータ復号部304は、輝度と色差で異なるイントラ予測モードを導出しても良い。この場合、イントラ予測パラメータ復号部304は、輝度の予測パラメータとして輝度予測モードIntraPredModeY、色差の予測パラメータとして、色差予測モードIntraPredModeCを復号する。輝度予測モードIntraPredModeYは、35モードであり、プレーナ予測(0)、DC予測(1)、方向予測(2~34)が対応する。色差予測モードIntraPredModeCは、プレーナ予測(0)、DC予測(1)、方向予測(2~34)、LMモード(35)の何れかを用いるもの。イントラ予測パラメータ復号部304は、IntraPredModeCは輝度モードと同じモードであるか否かを示すフラグを復号し、フラグが輝度モードと同じモードであることを示せば、IntraPredModeCにIntraPredModeYを割り当て、フラグが輝度モードと異なるモードであることを示せば、I IntraPredModeCとして、プレーナ予測(0)、DC予測(1)、方向予測(2~34)、LMモード(35)を復号しても良い。
 参照ピクチャメモリ306は、加算部312が生成した参照ピクチャのブロック(参照ピクチャブロック)を、復号対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
 予測パラメータメモリ307は、予測パラメータを、復号対象のピクチャ及びブロック毎に予め定めた位置に記憶する。具体的には、予測パラメータメモリ307は、インター予測パラメータ復号部303が復号したインター予測パラメータ、イントラ予測パラメータ復号部304が復号したイントラ予測パラメータ及びエントロピー復号部301が分離した予測モードpredModeを記憶する。記憶されるインター予測パラメータには、例えば、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idc)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXがある。
 予測画像生成部308には、エントロピー復号部301から入力された予測モードpredModeが入力され、また予測パラメータ復号部302から予測パラメータが入力される。また、予測画像生成部308は、参照ピクチャメモリ306から参照ピクチャを読み出す。予測画像生成部308は、予測モードpredModeが示す予測モードで、入力された予測パラメータと読み出した参照ピクチャを用いて予測ピクチャブロックP(予測画像)を生成する。
 ここで、予測モードpredModeがインター予測モードを示す場合、インター予測画像生成部309は、インター予測パラメータ復号部303から入力されたインター予測パラメータと読み出した参照ピクチャを用いてインター予測により予測ピクチャブロックPを生成する。予測ピクチャブロックPは予測単位PUに対応する。PUは、上述したように予測処理を行う単位となる複数の画素からなるピクチャの一部分、つまり1度に予測処理が行われる復号対象ブロックに相当する。
 インター予測画像生成部309は、予測リスト利用フラグpredFlagLXが1である参照ピクチャリスト(L0リスト、もしくはL1リスト)に対し、参照ピクチャインデックスrefIdxLXで示される参照ピクチャから、復号対象ブロックを基準としてベクトルmvLXが示す位置にある参照ピクチャブロックを参照ピクチャメモリ306から読み出す。インター予測画像生成部309は、読み出した参照ピクチャブロックについて予測を行って予測ピクチャブロックPを生成する。インター予測画像生成部309は、生成した予測ピクチャブロックPを加算部312に出力する。
 予測モードpredModeがイントラ予測モードを示す場合、イントラ予測画像生成部310は、イントラ予測パラメータ復号部304から入力されたイントラ予測パラメータと読み出した参照ピクチャを用いてイントラ予測を行う。具体的には、イントラ予測画像生成部310は、復号対象のピクチャであって、既に復号されたブロックのうち復号対象ブロックから予め定めた範囲にある参照ピクチャブロックを参照ピクチャメモリ306から読み出す。予め定めた範囲とは、復号対象ブロックがいわゆるラスタースキャンの順序で順次移動する場合、例えば、左、左上、上、右上の隣接ブロックのうちのいずれかであり、イントラ予測モードによって異なる。ラスタースキャンの順序とは、各ピクチャにおいて、上端から下端まで各行について、順次左端から右端まで移動させる順序である。
 イントラ予測画像生成部310は、読み出した参照ピクチャブロックについてイントラ予測モードIntraPredModeが示す予測モードで予測を行って予測ピクチャブロックを生成する。イントラ予測画像生成部310は、生成した予測ピクチャブロックPを加算部312に出力する。
 イントラ予測パラメータ復号部304において、輝度と色差で異なるイントラ予測モードを導出する場合、イントラ予測画像生成部310は、輝度予測モードIntraPredModeYに応じて、プレーナ予測(0)、DC予測(1)、方向予測(2~34)の何れかによって輝度の予測ピクチャブロックを生成し、色差予測モードIntraPredModeCに応じて、プレーナ予測(0)、DC予測(1)、方向予測(2~344)、LMモード(35)の何れかによって色差の予測ピクチャブロックを生成する。ここでは、正則化コストを用いたLMモードを説明する。正則化コストとは、最小2乗法による予測パラメータ導出において、目的関数にパラメータコストとして加算される項である。LMモードは、対象ブロックに隣接する処理済み画像を用いて、輝度の画素値から色差の画素値を予測する線形予測パラメータを導出し、その線形予測パラメータに基づいて、処理済みの輝度のブロックから、色差のピクチャブロックを生成する(TYPE0)と、対象ブロックに隣接する処理済み画像を用いて、色差の画素値から別の色差の画素値を予測する線形予測パラメータを導出し、その線形予測パラメータに基づいて、処理済みの色差のブロックから、別の色差のピクチャブロックを生成する(TYPE1)。このようなある色コンポーネントから別の色コンポーネントを推定する線形予測パラメータを導出し、導出した線形予測パラメータを用いて予測画像を生成する予測はLM予測と呼ばれる。予測の方法は、後述の照度補償部3093と概略は同じである。イントラ予測画像生成部310は、図示しないDC予測部3101、プレーナ予測部3102、方向予測部3103、LM予測部3104から構成される。なお、LM予測のLMは、Liner Modelの略である。
 (最小二乗法と正則化項)
 入力参照信号xiと目的参照信号yiからなる2次元の数列(xi, yi)、i=0..N-1(Nは数列の個数)に対して、目的参照信号yiを入力参照信号xiから予測する以下の線形予測式を考える。なお、yiは教師信号とも呼ばれる。
 yi = a * xi + b
 このとき、線形予測の2乗誤差の和Eは以下の式で定義される。
 E= |yi - a * xi - b| ^ 2           式(E-1)
 上記2乗誤差Eを最小化する線形予測パラメータa, bは、Eをa、bで偏微分して得られる式を0と置くことから以下のように導出される。
 a = (Σxy - N*ΣxΣy) / (Σxx - NΣxΣx)    式(A-1)
 b = (Σy/N - a*Σx/N)
 しかしながら、上記最小2乗法によるパラメータ導出では、参照信号xi, yiに雑音成分等が加わっていると、十分な数Nの参照信号を用意しない場合には、精度の高い線形予測パラメータa、bを推定できない場合がある。また、Nが小さい場合や、参照信号に含まれる入力参照画素xiと目的参照画素yiの変化が小さい場合に、オーバーフィッティングになる可能性がある。そのため線形予測パラメータを推定する場合に、誤差Eに適当なパラメータコスト(正則化コスト)を加えたコストを考慮して、線形予測パラメータを導出するような方式ことが知られている。一般には、正則化項として、パラメータの値を0に近くなるような正則化コスト、すなわち、以下の式のようにaとbの2乗項に重みlambda_a、lambda_bをかけた形が知られている(リッジ回帰)。
 E= |yi - a * xi - b| ^ 2 + lambda_a * a^2 + lambda_b * b^2   式(E-2)
 しかしながら、リッジ回帰の正則化項を画像に適用しても、画素間の線形回帰では、線形予測パラメータaとbが0に近い値である、という仮定自体が成り立たないため、適当な結果が得られない。
 発明者は、画像に適用する場合には、パラメータaとパラメータbの分布や特性を調査した上で、以下のように線形パラメータaを適当な値kに近づけるような正則化項(パラメータaとkとのずれの2乗に比例する項)を用いることが適当であることを見出した。
 E´= |yi - a * xi - b| ^ 2 + lambda_a * (a - k)^2   式(E-3)
 2乗誤差の和E´をa、bで偏微分して得られる式を0と置くことで、上記式を、解くことができる。これにより、以下の線形パラメータa、bの推定式が得られる。
 a = (Σxy - N*ΣxΣy - k* lambda_a) / (Σxx - NΣxΣx - lambda_a)    式(A-3)
 b = (Σy/N - a*Σx/N) 
 以下、線形予測パラメータaを導出する際の除算の式において、分子に相当する値を第1パラメータa1(numerator)、分母に相当する数を第2パラメータa2(denominator)と呼ぶ。ここで、Σxy - N*ΣxΣy = a1、Σxx - NΣxΣx = a2、lambda_a=acostと置くと、最小2乗法の式(A-1)は、以下のように変形できる。
 a = a1 / a2
 さらに、正則化項を含む式(A-3)は、以下のように変形される。
 a = (a1 + k*acost) / (a2 + acost)
 上記は、第1パラメータa1の第2パラメータa2による除算で示される線形予測パラメータaの導出において、第1パラメータa1をk*costを加算して更新し、第2パラメータa2をacostを加算して更新することで、正則化項を考慮した線形予測パラメータaが得られることを示す。以下、本特許ではacost、及び、k*acostのような第1パラメータa1、第2パラメータa2の更新に用いられる値を正則化コスト(もしくはパラメータコスト)と呼ぶ。
 (LM予測部3104)
 図1は、LM予測部3104の構成を示すブロック図である。LM予測部3104は、線形予測パラメータを導出するLMパラメータ推定部31041と、導出した線形予測パラメータを用いて実際に予測を行うLM予測フィルタ部31042から構成される。LMパラメータ推定部31041は、LM積算値導出部310412、LM加算値導出部310413、LM第1パラメータ導出部310414、LM第2パラメータ導出部310415、LMパラメータa導出部310416、LMパラメータb導出部310417から構成される。
 LMパラメータ推定部31041は、入力参照画素xiから目的参照画素yiを、yi = a * xi + bの式で予測する場合の線形予測パラメータaとbを導出する。線形予測パラメータaは傾き、線形予測パラメータbはオフセットに相当する。
 図17は、LMパラメータ推定部31041が推定するパラメータaの分布を示すヒストグラムである。図17(a)と(b)は別々のピクチャから得られた分布である。パラメータaの分布はピクチャ(シーケンス)によって異なるが、aの絶対値が0から1の範囲に比較的多く分布する。輝度と色差間の色コンポーネント予測に対応するTYPE=0ではパラメータaは正と負の両方に存在し、色差と別の色差間の色コンポーネント予測に対応するTYYPE=1では、比較的、パラメータaが負となることが多いが、パラメータaが正となる場合も発生する。
 LMパラメータ推定部31041は、図12に示す対象ブロックの周囲のある色コンポーネントの参照ブロックの周囲に存在する画素を入力参照画素x[]、対象ブロックの周囲に存在する別の色コンポーネントの画素を目的参照画素y[]とし、これら入力参照画素x[]と目的参照画素y[]に基づいて、目的参照画素y[]を入力参照画素xから線形予測する場合のパラメータであるパラメータa、パラメータbを導出する。
 LM加算値導出部310413は、目的参照画素yの和Yと入力参照画素xの和Xを、以下の式(B-2)式(B-3)により導出する。
 LM積算値導出部310412は目的参照画素yと入力参照画素xの積の和XYと、目的参照画素xの2乗の和XXを、以下の式(B-4)~(B-5)により導出する。
  X = Σx[i]                 式(B-2)
  Y = Σy[i]                 式(B-3)
  XX = Σ(x[i] * x[i])           式(B-4)
  XY = Σ(y[i] * y[i])           式(B-5)
 ここで、Σは、参照領域に対する和であり、参照領域の画素を特定するインデックスi
に対する和を導出する。つまり、Σ(z[i])はiについて0から参照信号数N-1までz[i]の和をとる処理を示す。y[i]は、復号画像のインデックスiにおける画素値。x[i]は、参照画像のインデックスiにおける画素値。カウントシフト値iCountShiftは、参照領域のサイズの2の対数である。
 iCountShift = log2 (参照領域の画素数)      式(B-6)
 LM第1パラメータ導出部310414は、目的参照画素yと入力参照画素xの積の和XYと、目的参照画素yの和Yと入力参照画素xの和Xの積の差に基づいて第1パラメータa1を以下の式により導出する。
  a1 = ( XY << iCountShift ) - (Y * X);     式(B-7)
 式(B-7)に示すように、XYは、カウントシフト値iCountShiftだけ左シフト、YとXの積は積算シフト値precShiftだけ右シフトしてから差を算出する。
 LM第2パラメータ導出部310415は、入力参照画素xの2乗の和XXと、入力参照画素xの和Xの2乗の差に基づいて第2パラメータa2を以下の式により導出する。
  a2 = ( XX << iCountShift ) - (X * X);     式(B-8) 導出された第1パラメータa1と第2パラメータa2は、LMパラメータa導出部310416に出力される。
 また、LM第1パラメータ導出部310414、LM第2パラメータ導出部310415は、演算に必要なビットレンジを低減させるため、以下のように式(B-7)、式(B-8)をiCountShiftだけ右シフトした式(B-7´)、(B-8´)を用いて導出しても良い。
  aveX = X >> iCountShift
  aveY = Y >> iCountShift
  a1 = XY - ((aveY * aveX)<<iCountShift);     式(B-7´)
  a2 = XX - ((aveX * aveX)<<iCountShift);     式(B-8´)
 このとき、aveX、aveYは、XとYの平均値であり、各々XとYをiCountShiftだけ右シフトして導出する。
 また、、LM第1パラメータ導出部310414、LM第2パラメータ導出部310415は、演算精度を向上させるために、平均値aveX、aveYを導出した際の余りremX、remYも考慮して、以下のようにXYからaveYとaveXの積に基づいた数の差にaveXとremYの積とaveYとremXの積を加えることでa1、XXからaveXとaveXの積に基づいた数の差にaveXとremXの積の2倍を加えることでa2を導出しても良い。
  aveX = X >> iCountShift
  remX = X - aveX
  aveY = Y >> iCountShift
  remX = Y - aveY
  a1 = XY - ((aveY * aveX)<<iCountShift) + (aveX * remY) + (aveY * remX);     式(B-7´´)
  a2 = XX - ((aveX * aveX)<<iCountShift) + 2*(aveX * remX);   式(B-8´´)
 なお、LM積算値導出部310412は、目的参照画素yと入力参照画素xの積の和XYの導出時と、入力参照画素xの2乗の和XXにおいて、下記のように所定の積算シフト値precShiftだけ右シフトしてから加算しても良い。
  XX = Σ(x[i] * x[i])>>precShift     式(B-4´)
  XY = Σ(y[i] * y[i])>>precShift     式(B-5´)
 なお、積算シフト値precShiftは以下等から導出しても良い。
 precShift = Max(0, bitDepth - 12)    式(B-1)
 なお、積算シフト値precShiftを用いる場合には以下に示すように、第1パラメータa1と第2パラメータa2、XY及びXXは、カウントシフト値iCountShiftだけ左シフト、XとXの積及びXとYの積は積算シフト値precShiftだけ右シフトしてから差を算出しても良い。
  a1 = ( XY << iCountShift ) - (Y * X) >> precShift
  a2 = ( XX << iCountShift ) - (X * X) >> precShift
 一般の小数点精度の最小2乗法であればパラメータaをa1/a2で推定することができるが、本特許では、パラメータの頑健性を向上させるために、場合に応じて正則化コストを加える。また、さらに本特許では、整数演算を行うために、シフト値iShiftを導入し、パラメータaとして、iShiftだけ左シフトした値(a1 << iShift) / a2を導出する。
 (本実施形態のLMパラメータ導出部)
 本実施形態のLMパラメータ推定部31041の構成は、インデックスi(i=0からN-1)に対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
 図18は、LMパラメータa導出部310416の構成を示すブロック図である。LMパラメータa導出部310416は、LM正則化コスト加算部310418、LM第1パラメータ正規化シフト部3104161、LM第2パラメータ正規化シフト部3104162、LM除算値導出部3104163から構成される。
 LMパラメータa導出部310416は、図示しないLM第1パラメータクリップ部により、第1パラメータa1を第2パラメータa2の大きさに応じて制限する。例えば以下の式のように、a1を-2*a2以上、a2の2倍以下にクリップしても良い。
 a1 = Clip3(-2*a2, (127*a2)>>6, a1)     式(B-12)
 上記により、a1 / a2の値は、-2から127/64の間にクリップされる。従って、パラメータaの値であるa1 / a2 << iShiftの値も、-2<<iShiftから(127/64)<<iShiftにクリップされる。すなわち、iShift=6の場合、パラメータaは-128~127となり、8ビット整数の範囲に入る。
 なお、クリップは上記に限定せず、以下の式などでも良い。
 a1 = Clip3(-m1*a2, m2*a2, a1)     式(B-12´)
 ここでm1、m2は正の整数。例えばm1=2から3、m2=2から3の値などが適当である。さらに整数よりも細かい単位で制限するために、以下の式でもクリップしても良い。
 a1 = Clip3(-(m1*a2>>m3), (m2*a2>>m43), a1)     式(B-12´´)
 ここで、m1、m2、m3、m4は正の整数。例えばm1=3、m2=3、m3=1、m4=1とすれば、a1をa2の-1.5倍~1.5倍の間の値に制限できる。つまりa1/a2を-1.5~1.5の間に制限できる。
 本実施形態のLMパラメータ推定部31041は、LM正則化コスト加算部310418により、第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN以下である場合には0以上の第1コストa1costNを第1パラメータa1から減算するLM第1パラメータ正則化コスト加算部と、第1パラメータa1と1つ以上の所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THPより以上の場合には0以上の第2コストa1costPを第1パラメータa1に加算するLM第1パラメータ正則化コスト加算部の少なくとも1つの手段を備える。ここで、第1パラメータa1、第2パラメータa2に正則化コストを減算もしくは加算した更新後の値もa1、a2と表記するが、更新前と変更後の値を区別する場合には、更新前のパラメータをa1、a2、更新後のパラメータをa1´、a2´と表記する。
 LM正則化コスト加算部310418は、例えば、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に、第1パラメータa1に0以上の第1コストa1costNを減算する。その他、LM正則化コスト加算部310418の具体的な構成及びその変形例は後述する。
 a1 = a1 + a1costN
 (LM正規化シフト部)
 以下、a1 << iShift / a2に対応するパラメータaを整数処理により導出する前に、導出時に処理に必要な値域が大きくなりすぎないように、LM第1パラメータ正規化シフト部3104161で、a1の大きさをシフトにより調節しa1sを導出する。また、同様に、a2で除算する場合に参照するテーブルのサイズを制限するために、LM第2パラメータ正規化シフト部3104162によりa2の大きさをシフトにより調節しa2sを導出する。
 LMパラメータ第2正規化シフト部3104162は、第2パラメータa2の大きさに応じて、図16のテーブルの導出に用いた所定のビット幅ShiftA2に対して、以下の式により第2正規化シフト値iScaleShiftA2を導出する。導出された第2正規化シフト値iScaleShiftA2は、LM除算値導出部3104163に出力される。
 iScaleShiftA2 = Max( 0, Floor( Log2( Abs( a2 ) ) ) - (ShiftA2-1))
    式(B-14)
 なお、Floor( Log2( Abs( x ) ) )は、a2を32ビットレジスタに格納した際に、ビット列の左側 Leftmost bit から見て 0 が連続している数である Number of Leading Zero (NLZ)を用いて、
 Floor( Log2( Abs( x ) ) ) = 32 - NLZ(x)
 により求めることができる。なお、64ビットレジスタを用いる場合には、64 - NLZ(x)により導出することができる。
 なお、NLZの導出は、比較的複雑な計算が必要になるため、数が少ない方が好ましい。
 LM第1パラメータ正規化シフト部3104161は、第2正規化シフト値iScaleShiftA2に応じて、以下の式により第1正規化シフト値iScaleShiftA1を導出する。導出された第1正規化シフト値iScaleShiftA1は、LM除算値導出部3104163に出力される。
 iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)    式(B-13)
 なお、offsetA1はここでは10以下を満たす定数とする。
 上記では、第1正規化シフト値を第2正規化シフト値に基づいて導出するため、第1正規化パラメータを導出する処理が容易になるという効果を奏する。
 なお、LM第1パラメータ正規化シフト部3104161は、第2正規化シフト値iScaleShiftA2に応じずに、以下の式で導出しても良い。
 iScaleShiftA1 = Max( 0, Floor( Log2( Abs( a1 ) ) ) - (ShiftA1-1))
 ここでShiftA1は、例えば6~14などの固定値を用いても良いし、ビットデプスに依存する値(例えばbitDepth - 2)などの値を用いても良い。
 LM第1パラメータ正規化シフト部3104161、LM第2パラメータ正規化シフト部3104162は、第1パラメータa1を第1正規化シフト値iScaleShiftA1、第2パラメータa2を第2正規化シフト値iScaleShiftA2により右シフトし、正規化第1パラメータa1sと正規化第2パラメータa2sを導出する。
 a1s = a1 >> iScaleShiftA1     式(B-15)
 a2s = a2 >> iScaleShiftA2     式(B-16)
 なお、正則化コストを用いる場合には、上記式において、a1、a2の代わりに正則化コストを減算もしくは加算後のa1´、a2´を用いる。
 これにより、正規化第1パラメータa1sと正規化第2パラメータa2sは各々、0から2のiShiftA1乗-1、―2のShiftA2乗から2のShiftA2乗-1の間の値に正規化される。
 LM除算値導出部3104163は、a1s / a2sに相当に相当する数を導出する。本実施形態では、整数値として扱うために(1<< ScaleShiftA)倍した数を、テーブルを用いて導出する。
 LM除算値導出部3104163は、第1正規化シフト値iScaleShiftA1と第2正規化シフト値iScaleShiftA2の差に基づいて、以下の式によりパラメータaシフト値iScaleShiftAを導出する。
 ScaleShiftA = ShiftA1 + iScaleShiftA2 - iScaleShiftA1 - iShift     式(B-18)
 ここで、iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)であるから、以下の式が得られる。
 ScaleShiftA <= ShiftA1 + iScaleShiftA2 - (iScaleShiftA2 - offsetA1) - iShift
 ScaleShiftA <= ShiftA1 + offsetA1 - iShift
 offsetA1は0以上、iShiftは5から8ビット、ShiftA1は14ビット~15ビットであるから、ScaleShiftAは常に0以上になる。
 LM除算値導出部3104163は、正規化第2パラメータa2sに応じて定まる逆数テーブル値invTableを参照し、正規化第1パラメータa1sとの積をとりテーブルシフト値(ScaleShiftA)で右シフトすることにより、以下の式によりパラメータaを導出する。
 a = (a1s * invTable[a2s]) >> (ScaleShiftA)      式(B-19)
 図16は、本実施形態で用いる逆数テーブル値invTable[]である。図16の逆数invTable[x]は、インデックスxが0の場合に0となり、インデックスxが0以外の場合には、所定の定数(2のShiftA2)をxで割って整数化した値から導出される。すなわち、
 invTable[x] = 0 (xが0の場合)             式(T-1)
 invTable[x] = Floor((2^ ShiftA2 / x/2) / x) (xが0以外の場合)  式(T-2)
 なお、Floor(x)は、小数点以下を切り捨てにより整数化する関数である。式(T-1)の代わりに、以下の式(T-2´)を用いても良い。すなわち、除数xの1/2倍を加える丸目調整を行わなくても良い。
 invTable[x] = Floor(M / x) (xが0以外の場合)  式(T-2´)
 逆数テーブル値invTable[]を用いることにより、a2sでの除算に相当する演算を、a2sの逆数に相当する逆数テーブル値invTable[a2s]との積と、log2(M)に相当する右シフトにより実現することができる。
 パラメータaの値は、第1パラメータa1と第2パラメータa2の比(a1/a2をiShiftだけ左シフトした値に相当する)。
 導出されたパラメータaは、LMパラメータb導出部310417とLM予測フィルタ部31042に出力される。
 LMパラメータb導出部310417は、目的参照画素yの和Yから、入力参照画素xの和Xにパラメータaをかけて固定シフト値iShiftだけ右シフトした値を引いた値を、参照領域の画素数で割ることにより、以下の式によりパラメータbを導出する。
 b = ( Y - ( ( a * X ) >> iShift ) + ( 1 << ( iCountShift - 1 ) ) ) >> iCountShift     式(B-20)
 なお、iCountShiftの右シフトは、参照領域の画素数Nで割ることに相当する。
 (LM予測フィルタ部31042)
 LM予測フィルタ部31042は、前述の輝度成分から色差成分を予測するTYPE0や、色差成分から別の色差成分を予測するTYPE1の予測の場合には、LMパラメータ推定部31041が導出した推定パラメータを用いて、LM予測前の入力参照画素における予測ブロックに対応する予測画像predSamples []から、LM予測後の予測画像predSamples´[]を導出する。例えば、パラメータbを式(B-20)により導出する場合には以下の式を用いる。
 predSamples´[x][y] = (a * predSamples[x][y] >> iShift)+b      式(P-1)
 なお、色コンポーネントが420の場合など、入力参照画素predSamples[x][y]と予測画像predSamples´[]のサンプリングが異なる場合には、サンプリング後の画素をpredSamples[x][y]として用いても良い。例えば、入力参照画素predSamples[x][y]が輝度成分、予測画像predSamples´[]が色差成分の場合には、入力参照画素predSamples[x][y]として、入力参照画素の予測画像を2:1にサブサンプルしたブロック、もしくは、入力参照画素の予測画像にフィルタ処理をしてから2:1にサブサンプルしたブロックを用いても良い。
 (LM予測フィルタ部31042´)
 LM予測フィルタ部31042の代わりに、LM予測フィルタ部31042の別の構成であるLM予測フィルタ部31042´を用いる。LM予測フィルタ部31042´は、LM予測前の予測画像predSamples []から、以下の式により、LM予測後の予測画像predSamples´[]を導出する。
 predSamples´[x][y] = (a * predSamples[x][y] + b >> iShift)      式(P-1´)
 なお、LM予測フィルタ部31042´のようにパラメータbを加算してからシフトする場合には、LMパラメータb導出部310417の代わりに、LMパラメータb導出部310417の別の構成LMパラメータb導出部310417´を用いても良い。この場合、目的参照画素yの和Yを固定シフト値iShiftだけ左シフトした値から、目的参照画素xの和Xにパラメータaをかけた値を引いた値を、参照画素の数で割ることにより、以下の式によりパラメータbを導出しても良い。
 b = ( (Y << iShift) - ( ( a * X ) ) + ( 1 << ( iCountShift - 1 ) ) ) >> iCountShift     式(B-20´)
 (LM予測フィルタ部31042B)
 LM予測フィルタ部31042の別の構成として、残差を利用した以下のLM予測フィルタ部31042Bを用いても良い。
 LM予測フィルタ部31042Bは、LMパラメータ推定部31041が導出した推定パラメータを用いて、プレーナ予測、DC予測、方向予測などで導出した目的参照信号に対応する対象色成分の予測画像predSamples[x][y]と、入力参照信号に対応する参照色成
分(例えば第1色差成分のCb成分)の残差画像resSamples[x][y]から、目的参照信号に対応するLM予測後の(例えば第2色差成分のCr成分の)予測画像predSamples´[]を導出する。
 predSamples´[x][y] = predSamples[x][y] + (a * resSamples[x][y] >> iShift)     式(P-2)
 上記のように、LM予測フィルタ部31042Bの動作は、線形予測を利用して参照色コンポーネントでの残差画像から、対象色コンポーネントでの残差画像を予測し、予測した残差画像を用いて、対象色コンポーネントでの予測画像を更新する。
 残差画像を利用した構成は、特に色差成分から別の色差成分を予測するTYPE1において有効であるが、輝度成分から色差成分を予測するTYPE0で利用することもできる。
 (LMパラメータ推定部31041A)
 以下、本実施形態に係るLMパラメータ推定部31041一つの構成としてLMパラメータ推定部31041Aを説明する。LMパラメータ推定部31041A(LM正則化コスト加算部310418A)は、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に、第1パラメータa1に0以上の第1コストa1costNを減算することを特徴とする。
 なお、0以上の正則化コストの減算は、0以下の正則化コストの加算と等価であるから、正則化コストの減算の構成は、全て正則化コストの加算で置き換えることができる(以下、同様)。
 図19は、LMパラメータa導出部310416が備えるLM正則化コスト加算部310418(LM正則化コスト加算部310418A、LM正則化コスト加算部310418B、LM正則化コスト加算部310418C)の構成を示すブロック図である。LM正則化コスト加算部310418は、LM正則化コスト導出部3104180、LM正則化コスト閾値判定部3104183、LM第1パラメータ正則化コスト加算部3104181から構成される。
 LM正則化コスト導出部3104180は、正則化コストacostを導出する。導出した正則化コストacostを、第1パラメータコストa1costNとして用いる。LM正則化コスト導出部3104180の詳細については後述する。
 本実施形態に係るLMパラメータ推定部31041A(LM正則化コスト加算部310418A)は、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較し、第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを減算する。逆に、第1パラメータa1が閾値THN以上の場合には、第1パラメータ正則化コストa1costNを減算しない。
 a1´ = a1 - a1costN
 LM正則化コスト加算部310418Aの動作を、図21のS1101、S1102を用いてフローチャートを用いて、再度、説明する。
 S1101 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較する。第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、S1102に遷移する。
 S1102 LMパラメータa導出部310416は、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを減算する。減算後のパラメータa1をa1´とも呼ぶ。
 LM正則化コスト加算部310418Bの動作はここで終了する。
 なお、LM正則化コスト加算部310418Bは、第2パラメータa2に正則化コストa2costNを加算しないが、後述のLM正則化コスト加算部310418B2のように、S1202に続いてS1203を実行し、第2パラメータa2に第2パラメータ正則化コストa2costNを加算しても良い。
 S1103 LM第2パラメータ正則化コスト加算部3104182は、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。加算後の第2パラメータa2をa2´とも呼ぶ。
 なお、正則化コストの加算は、上記のように、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415で、第1パラメータa1、第2パラメータa2を導出した後に別の装置であるLM正則化コスト加算部310418で行うのではなく、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415で第1パラメータa1、第2パラメータa2を導出する際に、同時に正則化コストを加算しても良い。この構成のLMパラメータ推定部31041は、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415において、前述の式(B-7)、式(B-7´)、式(B-7´´)の代わりに、各々、以下の式(BC-7)、式(BC-7´)、式(BC-7´´)の式を用いる。
  a1 = (XY<<iCountShift) - X*Y - a1costN;         式(BC-7)
  a1 = XY - ((aveY * aveX)<<iCountShift) - a1costN;     式(BC-7´)
  a1 = XY - ((aveY * aveX)<<iCountShift) + (aveX * remY) + (aveY * remX) - a1costN;     式(BC-7´´)
 (具体例)
 以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C-1D)参照)。例えば、a1costNがa2のk倍をLで割った以下の値である場合、
 a1costN = k * a2 / L
 正則化コストを加算後(減算後)の第1パラメータa1´、第2パラメータa2´を用いると、a1/a2に相当するパラメータaは以下の式で導出される。
 a1´/a2´ = (a1 + a1costN) / a2 = a1/a2 - k / L。
 ここでk=1、L=32の場合には、k / L = 0.0315であり、正則化コストの効果は、a1が閾値THN未満である場合に、パラメータa(a1/a2)を小さな値のオフセット0.0315だけ減算することと等価である。
 なお、LM正則化コスト閾値判定部3104183Aは、閾値THNとして、式(D-1)のように0もしくは、式(D-1´)のようにa2の倍数に設定すると良いことが、発明者らの実験により明らかになっている。
 THN = 0          式(D-1)
 THN = -(a2 >> tshift2)    式(D-1´)
 (説明)
 発明者の知見では、最小2乗法により導出されるパラメータaは、雑音などにより、予測画像の生成に最適な値よりも、絶対値が小さくなることが多い(最適な値よりも0に近い側になる)ことが分かった。正則化コストによって、パラメータaを調整する場合には、以下の2通りがある。パラメータaを正の方向に近づけて絶対値を大きく場合には、0以上の正則化コストをパラメータa1に加算する必要があるのに対して、パラメータaを負の方向に近づけて絶対値を大きくするには、0以上の正則化コストをパラメータa1から減算する必要がある。このように、パラメータaの符号により、正則化コストを加算するか減算するかを変更する必要がある。そのためには、正則化コストで第1パラメータa1の大きさを調整する前にパラメータaの符号を判定する必要がある。この判定のために、本実施形態に係るLMパラメータ推定部31041(変形例を含む)は、第1パラメータa1の符号、もしくは、第1パラメータa1と所定の閾値との比較結果を利用する。
 パラメータaは、a1/a2の整数倍(1<<iShift倍)に相当する値として導出される。第2パラメータa2は常に0以上であるから、パラメータaの符号(=a1/a2の符号)は、第1パラメータa1の符号と等しい。従って、パラメータaの符号及び大きさは、第1パラメータa1と所定の閾値との比較で導出できる。
 LMパラメータ推定部31041は、例えばa1がTHN未満(ここではTHN=0)である場合に、a1から正則化コストa1costNだけ減算することにより、パラメータaの値を、最小2乗法で導出される値よりも0から遠い方向(ここでは負の方向)に近づけることが可能であることが理解できる。上記、構成により、LMパラメータ推定部31041は、雑音に強い線形予測パラメータを導出することができ、予測画像を生成する際の予測精度を向上させる効果を奏する。
 なお、a1costN、a1costP、a2costN、a2costPは、各々、パラメータaを概略負(Negative)の方向に近づけるa1への正則化コスト、パラメータaを概略負の方向に近づけるa2への正則化コスト、パラメータaを概略正(Positive)の方向に近づけるa1への正則化コスト、パラメータaを概略正の方向に近づけるa2への正則化コストを意味する。これらを区別しない場合には単に、acost、a1cost、a2cost、acostN、acostPなどを用いる。
 なお、0から遠い方向に近づけるという意味では、所定の閾値としてTHN=0が好適である。すなわち、LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較し、第1パラメータa1が0以上の閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを加算する構成が好適である。
 しかしながら、画像によってはTHN=0に近い別の値も好適である。例えば、THN = -a2>>tshift(ここではtshiftは2~8の定数)など。例えばtshift = 4の場合には、a1が、-a2/16未満、つまりa1/a2が-1/16未満の場合に、0から遠い方向(ここでは負の方向)に近づけることが可能である。パラメータaの値が0に近い場合に無理して拘束項をきかせないことが可能である。また、逆に、THN = a2>>tshift(ここではtshiftは2~8の定数)とすることも可能である。例えばtshift = 4の場合には、a1が、a2/16未満、つまりa1/a2が1/16未満の場合に、0から遠い方向(ここでは負の方向)に近づけることが可能である。ここでは、パラメータaが0に非常に近い正の場合にも正則化コストによってパラメータaの値を負の方向に近づけることができる。
 なお、本実施形態では、LMパラメータ推定部31041は、パラメータaが負となる場合において、正則化コストを用いてパラメータaの値をさらに負の方向に近づけることにより、パラメータaを0から通い方向に近づけたが、パラメータaが正となる場合を考慮して、正則化コストを用いてパラメータaの値を正の方向に近づけることにより、パラメータaを0から遠い方向に近づける場合も可能である。この例を、LMパラメータ推定部31041Bとして説明する。さらに、パラメータaが負と正の場合の両方を考慮した構成をLMパラメータ推定部31041Cとして説明する。
 (LMパラメータ推定部31041B)
 以下、LMパラメータ推定部31041一つの構成としてLMパラメータ推定部31041Bを説明する。LMパラメータ推定部31041B(LM正則化コスト加算部310418B)は、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に、第1パラメータa1に0以上の第1パラメータ正則化コストa1costPを加算することを特徴とする。
 LM正則化コスト加算部310418Bの動作を、図22のフローチャートのS1201、S1202を用いて、再度、説明する。
 S1201 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較する。第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上)の場合に、S1202に遷移する。
 S1202 第1パラメータLM正則化コスト加算部3104181は、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。加算後のパラメータa1をa1´とも呼ぶ。
 LM正則化コスト加算部310418Bの動作はここで終了する。
 なお、LM正則化コスト加算部310418Bは、第2パラメータa2に正則化コストa2costPを加算しないが、後述のLM正則化コスト加算部310418B2のように、S1202に続いてS1203を実行し、第2パラメータa2に第2パラメータ正則化コストa2costPを加算しても良い。
 S1203 LM第2パラメータ正則化コスト加算部3104182は、第2パラメータa2に第2パラメータ正則化コストa1costPを加算する。加算後のパラメータa2をa2´とも呼ぶ。
 LM正則化コスト導出部3104180は、正則化コストacostを導出する。上述の式(C-1A)から式(C-1D2)の何れか一項、もしくは、その組み合わせにより導出したacostを、第1パラメータコストの第1コストa1costPとして導出する。
 本実施形態に係るLM正則化コスト加算部310418Bは、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183Bは、第1パラメータa1と0以上の閾値THPを比較し、第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上の)場合に、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。逆に、第1パラメータa1が閾値THP以下(もしくは閾値THP未満)の場合には、第1パラメータ正則化コストa1costPを加算しない。
 a1 = a1 + a1costP
 なお、正則化コストの加算は、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415で行っても良い。導出式は、既に説明した式(BC-7)、式(BC-7´)、式(BC-7´´)の式において、a1costNをa1costPに置き替えた式となる。
 (具体例)
 以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C-1D)参照)。
 a1costP = k * a2 / L
 (a1 + a1costP) / a2 = a1/a2 - k / L。
 k=1、L=32の場合には、k / L = 0.0315であるから、正則化コストは、a1が閾値THPより大きい場合に、パラメータa(a1/a2)を小さな値のオフセット0.0315だけ加算することと等価である。従って、例えばa1がTHPより大きい(ここではTHP=0)である場合に、正則化コストa1costPをa1に加算することにより、パラメータaの値を、最小2乗法で導出される値よりも0から遠い方向(ここでは正の方向)に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。
 なお、LM正則化コスト閾値判定部3104183Bは、閾値THPとして、式(D-2)のように0もしくは、式(D-2´)のようにa2の倍数に設定すると良いことが、発明者らの実験により明らかになっている。
 THP = 0          式(D-2)
 THP = a2 >> tshift2    式(D-2´)
 (LMパラメータ推定部31041C)
 以下、LMパラメータ推定部31041の一つの構成としてLMパラメータ推定部31041Cを説明する。LMパラメータ推定部31041Cは、正則化コストの加算(LM正則化コスト加算部310418)において、LMパラメータ推定部31041AとLMパラメータ推定部31041Bを組み合わせた構成である。LMパラメータ推定部31041Cは、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に、第1パラメータa1に0以上の第1コストa1costNを減算し、さらに、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に、第1パラメータa1に0以上の第2コストa1costPを加算することを特徴とする。
 LMパラメータ推定部31041C(LM正則化コスト加算部310418C)の動作を、図23のフローチャートを用いて、再度、説明する。
 S1301 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較する。第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、S1302に遷移する。
 S1302 第1パラメータLM正則化コスト加算部3104181は、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを加算する。加算後のパラメータa1をa1´とも呼ぶ。
 LM正則化コスト加算部310418Cは、S1303をスキップしてS1304に遷移する。なお、LM正則化コスト加算部310418Cは、S1303の動作を行わないが、後述のLM正則化コスト加算部310418C2のように、S1302に続いてS1303を実行し、第2パラメータa2にa2パラメータ正則化コストa2costNを加算する構成でも良い。
 S1303 LM第2パラメータ正則化コスト加算部3104182は、LM第2パラメータ正則化コスト加算部3104182を用いて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。加算後のパラメータa2をa2´とも呼ぶ。
 S1304 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THPを比較する。第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上)の場合に、S1305に遷移する。
 S1305 第1パラメータLM正則化コスト加算部3104181は、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。加算後のパラメータa1をa1´とも呼ぶ。
 LM正則化コスト加算部310418Cの動作はここで終了する。なお、LM正則化コスト加算部310418Cは、S1306の動作を行わないが、後述のLM正則化コスト加算部310418C2のように、S1305に続いてS1306を実行し、第2パラメータa2に第2パラメータ正則化コストa2costPを加算する構成でも良い。
 S1306 LM第2パラメータ正則化コスト加算部3104182は、第2パラメータLM正則化コスト加算部3104182を用いて、第2パラメータa2に第2パラメータ正則化コストa2costPを加算する。加算後のパラメータa2をa2´とも呼ぶ。
 LM正則化コスト導出部3104180は、正則化コストacostを導出する。例えば、既に説明した式(C-1A)から式(C-1D2)の何れか一項、もしくは、その組み合わせにより導出する。
 本実施形態に係るLM正則化コスト加算部310418Cは、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1及び第2パラメータa2に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183Cは、第1パラメータa1と0以下の閾値THNを比較し、第1パラメータa1が閾値THNより小さい(もしくは第1パラメータa1が閾値THN以下)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1から第1パラメータ正則化コストa1costNを減算する。それ以外の場合、LM正則化コスト閾値判定部3104183Cは、第1パラメータa1と0以上の閾値THPを比較し、第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。逆に、第1パラメータa1が閾値THN以上の場合には、第1パラメータ正則化コストa1costPを加算しない。
 ここで、減算する場合に用いる正則化コストa1costNと加算する場合の正則化コストa1costPとして、全て同じ値を用いても良い(a1costN = a1costP = acost)し、異なる値を用いても良い。例えば、加算する場合の正則化コストa1costPを減算する場合の第1パラメータ正則化コストa1costN以下として以下のように導出しても良い。
 a1costN = (kM*a2)>>kshiftM
 a1costP = (kP*a2)>>kshiftP
 ここでkM>kPまたはkshiftP > kshiftM。例えばkM=kP=1、kshiftM=5、kshiftP=6とすれば良い。
 以上までに説明したLMパラメータ推定部31041A、LMパラメータ推定部31041B、LMパラメータ推定部31041Cは、パラメータaを0から離れる側に近づけると良い、という発明者の知見に基づいていたが、さらに詳細に検討すると、パラメータaの絶対値が十分に大きい場合には、パラメータaをさらに0から遠い側に近づけると、パラメータaの絶対値が本来の最適な値よりも大きくなりすぎる場合がある、ことが分かった。これは、雑音の影響として、基本的にはパラメータaが小さくなる可能性が比較的大きいが、場合によって、雑音の影響でパラメータaが大きくなっていることがあるからであり、特に最小2乗法で求められる正則化コストなしで導出されるパラメータaが十分に大きい場合には、その確率が高くなる。以下に説明するLMパラメータ推定部31041A2、LMパラメータ推定部31041B2、LMパラメータ推定部31041C2では、構成が若干複雑になる代わりに、これらの問題を解決する。
 LMパラメータ推定部31041A、LMパラメータ推定部31041B、LMパラメータ推定部31041Cは、LM正則化コストとして第1パラメータa1に正則化超す音を加算もしくは減算したが、LMパラメータ推定部31041A2、LMパラメータ推定部31041B2、LMパラメータ推定部31041C2は、第1パラメータa1に正則化コストを加算もしくは減算しながら同時に第2パラメータa2に正則化コストを加算する構成になる。
 図20は、LMパラメータ推定部31041が備えるLM正則化コスト加算部310418(LM正則化コスト加算部310418A2、LM正則化コスト加算部310418B2、LM正則化コスト加算部310418C2)の構成を示すブロック図である。LM正則化コスト加算部310418は、LM正則化コスト導出部3104180、LM正則化コスト閾値判定部3104183、LM第1パラメータ正則化コスト加算部3104181、LM第2パラメータ正則化コスト加算部3104182から構成される。
 図20のLMパラメータ推定部31041は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算し、上記第2パラメータa2にコストa2costNを加算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算し上記第2パラメータa2にコストa2costPを加算する手段の少なくとも1つの手段を備えることを特徴とする。
 (LMパラメータ推定部31041A2)
 以下、LMパラメータ推定部31041の一つの構成としてLMパラメータ推定部31041A2を説明する。既に説明したLMパラメータ推定部31041Aでは、第1パラメータa1に第1パラメータ正則化コストa1costNを減算していたが、LMパラメータ推定部31041A2では、第1パラメータa1に正則化コストa1costNを減算するのに加えて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。
 LMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)の動作は、図21のフローチャートの通りである。図21の各ステップの詳細は、既にLM正則化コスト加算部310418Aで説明したので省略する。
 LM正則化コスト加算部310418A2は、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合(S1101)に、第1パラメータa1に0以上の第1コストa1costNを減算(S1102)し、第2パラメータa2に0以上の第2コストa2costNを加算する(S1103)。
 第1パラメータa1にa1costNを減算し、第2パラメータa2にa2costNだけ加算する場合、パラメータaは、-a1costN/a2costNに近づくように補正がかかる。
 LM正則化コスト導出部3104180は、正則化コストacostを導出する。例えば、既に説明した式(C-1A)から式(C-1D2)の何れか一項、もしくは、その組み合わせにより導出する。さらに正則化コストacostから、a1costN及びa2costNを以下の式により導出する。
 a1costN = (acost>>kshift)   
 a2costN = acost        
 上記の場合、パラメータaは、-a1costN/a2costN=-(1>>kshift)に近づくように補正がかかる。具体的には、1、0.5、0.25、0.125に近づくようなkshift=0、1、2、3が適当である。
 なお、シフトにより計算可能な上記正則化項は計算が容易であるが、正則化コストは上記に限定されない。例えば、以下のようにすれば、k>>kshiftに近づくように補正がかかる。
 a1costN = (k*acost)>>kshift   
 a2costN = acost         
 例えば、k=17、kshift=5とすれば、-17/32=-0.53125に近づけるような正則化項が導入できる。
 上記のように、a2costNは、上記コストa1costN以上であることが好適である、すなわち、a1costN / a2costNが1以下となることが好適である。
 本実施形態に係るLMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)は、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1及び第2パラメータa2に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183A2は、第1パラメータa1と0以上の閾値THNを比較し、第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを加算し、第2パラメータa2に第2パラメータ正則化コストa2costを加算する。逆に、第1パラメータa1が閾値THN以上の場合には、第1パラメータa1、第2パラメータa2に正則化コストを加算しない。
 上記構成のLMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)によれば、第1パラメータa1に第1パラメータ正則化コストa1costNを減算し、第2パラメータa2に第2パラメータ正則化コストa2costNを加算することにより、パラメータaの値を、最小2乗法で導出される値よりも-a1costN / a2costNに近い方向に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。LM正則化コスト加算部310418Aは単純にパラメータaの値を、最小2乗法で導出される値よりも0から遠い方向に近づけるだけであったのに対して、LMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)は、第2パラメータa2にも第2パラメータ正則化コストa2costNを加算することにより、-a1costN / a2costNに近づける。輝度色差予測に適した傾きaは、aが負の場合には、0と-1の間であるので、LM正則化コスト加算部310418Bのように、最小2乗法で導出される値が負の値として十分に小さい(-a1costN / a2costNよりも小さい)場合に、さらに小さくすることによる弊害をなくすことができ、LMパラメータ推定部31041A(LM正則化コスト加算部310418A)よりもさらに精度の良い線形予測パラメータを導出することができる効果を奏する。
 (具体例)
 以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C-1D)参照)。
 発明者の実験では、正則化コストとして、例えば、例1から例4の以下の組み合わせが好ましいことが実験で得られている。
 例1:acost=(a2>>4)、kshift = 1
 a1costN = (k*acost)>>kshift= a2>>5
 a2costN = acost = a2>>4
 例2:acost=(a2>>3)、kshift = 1
 a1costN = (k*acost)>>kshift= a2>>4
 a2costN = acost = a2>>3
 例3:acost=(a2>>3)、kshift = 2
 a1costN = (k*acost)>>kshift= a2>>5
 a2costN = acost = a2>>3
 例4:acost=(a2>>2)、kshift = 2
 a1costN = (k*acost)>>kshift= a2>>4
 a2costN = acost= a2>>2
 なお、上記、正則化コストの組み合わせは、好適な効果を上げることが確認されているが、本発明の形態は上記の値に限定されない。
 (LMパラメータ推定部31041B2)
 以下、LMパラメータ推定部31041の一つの構成としてLMパラメータ推定部31041B2を説明する。既に説明したLMパラメータ推定部31041Bでは、第1パラメータa1に第1パラメータ正則化コストa1costNを加算していたが、LMパラメータ推定部31041B2では、第1パラメータa1に第1パラメータ正則化コストa1costNを加算するのに加えて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。
 LM正則化コスト加算部310418B2の動作は、図21のフローチャートの通りである。図21の各ステップの詳細は、既にLM正則化コスト加算部310418Bで説明したので省略する。
 本実施形態に係るLM正則化コスト加算部310418B2は、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に(S1201)、第1パラメータa1に0以上の第1コストa1costPを減算し(S1202)、第2パラメータa2に0以上の第2コストa2costPを加算する(S1203)。
 上記構成のLMパラメータ推定部31041B2(LM正則化コスト加算部310418B2)によれば、第1パラメータa1に第1パラメータ正則化コストa1costPを加算し、第2パラメータa2に第2パラメータ正則化コストa2costPを加算することにより、パラメータaの値を、最小2乗法で導出される値よりもa1costP / a2costPに近い方向に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。LMパラメータ推定部31041B(LM正則化コスト加算部310418B)は単純にパラメータaの値を、最小2乗法で導出される値よりも0から遠い方向に近づけるだけであったのに対して、LMパラメータ推定部31041B2(LM正則化コスト加算部310418B2)は、第2パラメータa2にも第2パラメータ正則化コストa2costPを加算することにより、a1costP / a2costPに近づける。色コンポーネント間予測において、例えば輝度成分から色差成分を予測する場合に適した傾きaは、aが正の場合には、多くの場合0以上1未満の値であるので、LM正則化コスト加算部310418Bのように、最小2乗法で導出される値が十分に大きい(a1costP / a2costPよりも大きい)場合に、さらに大きくすることによる弊害をなくすことができ、LMパラメータ推定部31041Bよりもさらに精度の良い線形予測パラメータを導出することができる効果を奏する。
 (具体例)
 以下、正則化コストa1costPに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C-1D)参照)。
 a1costN = a2>>5
 a2costN = a2>>4
 上記のように、a2costPは、上記コストa1costP以上であることが好適である、すなわち、a1costP / a2costPが1以下となることが好適である。
 (LM正則化コスト加算部310418C2)
 以下、LM正則化コスト加算部310418の一つの構成としてLM正則化コスト加算部310418C2を説明する。既に説明したLM正則化コスト加算部310418Cでは、第1パラメータa1に第1パラメータ正則化コスト(a1costN及びa1costP)を減算もしくは加算していたが、LM正則化コスト加算部310418C2では、第1パラメータa1に第1パラメータ正則化コスト(a1costN及びa1costP)を減算及び加算するのに加えて、第2パラメータa2に第2パラメータ正則化コスト(a2costN及びa2costP)を加算する。
 LM正則化コスト加算部310418C2の動作は、図21のフローチャートの通りである。図21の各ステップの詳細は、既にLM正則化コスト加算部310418Cで説明したので省略する。
 本実施形態に係るLM正則化コスト加算部310418C2は、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に(S1301)、第1パラメータa1に0以上の第1コストa1costNを減算し(S1302)第2パラメータa2に0以上の第2コストa2costNを加算する(S1303)、さらに、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に(S1304)、第1パラメータa1に0以上の第3コストa1costPを加算し(S1305)第2パラメータa2に0以上の第4コストa2costPを加算する(S1306)ことを特徴とする。
 上記構成のLMパラメータ推定部31041C2(LM正則化コスト加算部310418C2)によれば、第1パラメータa1に第1パラメータ正則化コストa1costNを減算もしくはa1costPを加算するだけでなく、第2パラメータa2に第2パラメータ正則化コストa2costNもしくはa2costPを加算することにより、パラメータaの値を、最小2乗法で導出される値よりも絶対値としてa1costN / a2costN(もしくはa1costP/a2costP)に近い方向に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。輝度色差予測に適した傾きaは、aが正の場合には、多くの場合絶対値として0以上1未満の値であるので、LM正則化コスト加算部310418Cのように、最小2乗法で導出される値が絶対値として十分に大きい(a1costP / a2costPよりも大きい)場合に、さらに大きくすることによる弊害をなくすことができ、LMパラメータ推定部31041C(LM正則化コスト加算部310418C)よりもさらに精度の良い線形予測パラメータを導出することができる効果を奏する。
 (LM正則化コスト導出部3104180)
 以下、LMパラメータ推定部31041の備えるLM正則化コスト導出部3104180の詳細を説明する。LM正則化コスト導出部3104180は、例えば、以下の式(C-1A)から式(C-1D2)の何れか一項、もしくは、その組み合わせにより導出しても良い。
 acost = XX >> ashift            式(C-1A)
 acost = XY >> ashift            式(C-1B)
 acost = 1<<(2*bitDepth)*N >> ashift     式(C-1C)
 acost = 1<<(2*bitDepth)<<CountShift >> ashift     式(C-1C2)
 acost = k*a2 >> kshift     式(C-1D)
 acost = min(k*a2 >> kshift, acost0)     式(C-1D2)
 なお、式(C-1A)から式(C-1D)のashiftは例えば発明者らの実験では6~12が好適であることが確認されている。式(C-1C)のNは、入力参照信号の数(1<<iCountShift)を用いても良いし、入力参照信号の数が多くの場合8~16であれば、8から16の数を用いても良い。式(C-1D2)のkとkshiftについては後述する。
 (LM正則化コスト導出部3104180A)
 以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Aを説明する。LM正則化コスト導出部3104180Aは、入力参照信号xと入力参照信号xの積の和XXに基づいて正則化コストを導出する。この値は常に0以上になる。
 acost = XX >> ashift            式(C-1A)
 第2パラメータa2は、既に説明した式a2 = XX - ((aveX * aveX)<<iCountShift) のように入力参照信号xと入力参照信号xの積の和XXから所定の値を減算することにより計算される。従って、入力参照信号xと入力参照信号xの積の和XXにより導出される正則化コストは、第2パラメータa2と、同じレベルの値域であることが期待でき、正則化コストとして適当である。本構成のLM正則化コスト導出部3104180Aは、入力参照画素xと目的参照画素y[]の値域が比較的等しい場合に適当な正則化コストが導出できるという効果を奏する。
 (LM正則化コスト導出部3104180B)
 以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Bを説明する。LM正則化コスト導出部3104180Bは、入力参照信号xと目的参照信号yの積の和XYに基づいて正則化コストを導出する。この値は常に0以上になる。
 acost = XY >> ashift            式(C-1B)
 第1パラメータa1は、既に説明した式XY - ((aveY * aveX)<<iCountShift)のように入力参照信号xと目的参照信号yの積の和XYから所定の値を減算することにより(計算される。従って、XYにより導出される正則化コストは、第1パラメータa1と、同じレベルの値域であることが期待でき、正則化コストとして適当である。入力参照画素x[]と目的参照画素y[]の積の和から導出されるXYは、入力参照画素xの値域や、目的参照画素y[]の値域によらずに適当な正則化コストが導出できるという効果を奏する。
 (LM正則化コスト導出部3104180C)
 以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Cを説明する。LM正則化コスト導出部3104180Cは、bitDepthに基づいて正則化コストを導出する。この値は常に0以上になる。
 acost = 1<<(2*bitDepth)*N >> ashift     式(C-1C)
 例えば、入力参照画素x[]及び目的参照画素y[]のビットデプス(ビット深度)がbitDepthである場合、x及びyはおおよそ1<<(bitDepTHN)周辺の数である場合が多い。具体的にはbitDepth=8の場合、つまり、輝度及び色差が0から255の値である場合には、輝度、色差の値として128の周辺にあることが比較的多い。従って、実際の入力参照画素x[]や目的参照画素y[]を用いずとも、入力参照画素x及び目的参照画素yとしてビット深度に依存する値(x[i]=y[i]=1<<(bitDepTHN))を代入して、既に説明した式(C-1A)、式(C-1B)を用いれば、適当な正則化コストが導出されることが期待される。LM正則化コスト導出部3104180Cは、この考えに基づいて、以下の式で正則化コストを導出する。
 acost = 1<<(2*bitDepth)<<CountShift >> ashift     式(C-1C2)
 LM正則化コスト導出部3104180CのbitDepthに基づく方法では、入力参照画素xや目的参照画素y[]を用いないため、比較的小さい演算数で正則化コストが導出できるという効果を奏する。
 (LM正則化コスト導出部3104180D)
 以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Dを説明する。LM正則化コスト導出部3104180Dは、第2パラメータa2に基づいて正則化コストを導出する。例えば以下の式で導出する。この値は常に0以上になる。
 acost = k*a2 >> kshift     式(C-1D)
 例えば、k=1、kshift = 2。
 第2パラメータa2は、入力参照画素x[]の分散に相当する。正則化コストは第1パラメータa1及び第2パラメータa2に加算もしくは減算されるが、第2パラメータa2が比較的小さい場合に、第2パラメータa2に比べて大きすぎる正則化コストacostをa2に加算する場合、結果として値が大きく変化しすぎる、課題が生じる。本実施形態では、第2パラメータa2に基づいて正則化コストを導出することにより、正則化コストが大きく効きすぎることを抑制する効果を奏する。
 (LM正則化コスト導出部3104180D2)
 さらに、第2パラメータa2に基づいて正則化コストを導出するLM正則化コスト導出部3104180Dは、XX、XY、bitDepthなどで導出された正則化コストacostを、a2から導出される値で上限をクリップすることで、正則化コストacostを導出しても良い(LM正則化コスト導出部3104180D2)。この値は常に0以上になる。
 正則化コストは第1パラメータa1及び第2パラメータa2に加算もしくは減算されるが、第2パラメータa2が比較的小さい場合に、第2パラメータa2に比べて大きすぎる正則化コストacostをa2に加算する場合、結果として値が大きく変化しすぎる、という問題が生じる。従って、正則化コストacost自体を第2パラメータa2の大きさに合わせて導出することが適当である。これにより適した正則化コストが大きく効きすぎることを抑制する効果を奏する。
 acost = min(k*a2 >> kshift, acost0)     式(C-1D2)
 ここでacost0は、上記までに説明した、LM正則化コスト導出部3104180A、LM正則化コスト導出部3104180B、LM正則化コスト導出部3104180Cの何れかで導出される正則化コストacostである。LM正則化コスト導出部3104180Aは、ベースとなるacost0と、上限を定めるa2から導出される値(ここではk*a2 >> kshift)の最大値を導出することで、導出される正則化コストのついてa2の大きさに応じたクリップを行うことができる。一般に、正則化コストは、雑音などによりa1、a2の信頼度が低い場合に、推定パラメータを安定させるために加算もしくは減算するパラメータであるが、xの分散(ΣXX-ΣXX/N)に相当するa2の値が比較的小さい場合に、第2パラメータa2に比べて大きすぎる正則化コストacostをa2に加算する場合、結果として推定される線形予測パラメータに対して正則化コストが効きすぎるという問題が生じる。従って、正則化コストacostが足される項である第2パラメータa2の大きさに合わせることが適当である。これにより正則化項が大きく効きすぎることを抑制する効果を奏する。
 発明者らの実験では、式(C-1D2)が好適な予測精度を有するが、式(C-1D)も近い精度を実現することができる。式(C-1D)の方が正則化項の導出が容易であることから、式(C-1D)を用いることも有効である。
 逆量子化・逆DCT部311は、エントロピー復号部301から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部311は、求めたDCT係数について逆DCT(Inverse Discrete Cosine Transform、逆離散コサイン変換)を行い、復号残差信号を算出する。逆量子化・逆DCT部311は、算出した復号残差信号を加算部312および残差格納部313に出力する。
 加算部312は、インター予測画像生成部309及びイントラ予測画像生成部310から入力された予測ピクチャブロックPと逆量子化・逆DCT部311から入力された復号残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部312は、生成した参照ピクチャブロックを参照ピクチャメモリ306に記憶し、生成した参照ピクチャブロックをピクチャ毎に統合した復号レイヤ画像Tdを外部に出力する。
(インター予測パラメータ復号部の構成)
 次に、インター予測パラメータ復号部303の構成について説明する。
 図6は、本実施形態に係るインター予測パラメータ復号部303の構成を示す概略図である。インター予測パラメータ復号部303は、インター予測パラメータ復号制御部3031、AMVP予測パラメータ導出部3032、加算部3035及びマージ予測パラメータ導出部3036を含んで構成される。
 インター予測パラメータ復号制御部3031は、インター予測に関連する符号(シンタックス要素の復号をエントロピー復号部301に指示し、符号化データに含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを抽出する。
 インター予測パラメータ復号制御部3031が、あるシンタックス要素を抽出すると表現する場合は、あるシンタックス要素の復号をエントロピー復号部301に指示し、該当のシンタックス要素を符号化データから読み出すことを意味する。ここで、マージフラグが示す値が1、すなわち、マージ予測モードを示す場合、インター予測パラメータ復号制御部3031は、マージ予測に係る予測パラメータとして、マージインデックスmerge_idxを抽出する。インター予測パラメータ復号制御部3031は、抽出したマージインデックスmerge_idxをマージ予測パラメータ導出部3036に出力する。
 マージフラグmerge_flagが0、すなわち、AMVP予測モードを示す場合、インター予測パラメータ復号制御部3031は、エントロピー復号部301を用いて符号化データからAMVP予測パラメータを抽出する。AMVP予測パラメータとして、例えば、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。インター予測パラメータ復号制御部3031は、抽出したインター予測フラグinter_pred_idcから導出した予測リスト利用フラグpredFlagLXと、参照ピクチャインデックスrefIdxLXをAMVP予測パラメータ導出部3032及び予測画像生成部308(図5)に出力し、また予測パラメータメモリ307(図5)に記憶する。インター予測パラメータ復号制御部3031は、抽出したベクトルインデックスmvp_LX_idxをAMVP予測パラメータ導出部3032に出力する。インター予測パラメータ復号制御部3031は、抽出した差分ベクトルmvdLXを加算部3035に出力する。
 図7は、本実施形態に係るマージ予測パラメータ導出部3036の構成を示す概略図である。マージ予測パラメータ導出部3036は、マージ候補導出部30361とマージ候補選択部30362を備える。マージ候補格納部303611は、マージ候補導出部30361から入力されたマージ候補を格納する。なお、マージ候補は、予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLXを含んで構成されている。マージ候補格納部303611において、格納されたマージ候補には、所定の規則に従ってインデックスが割り当てられる。マージ候補導出部30361は、空間マージ候補導出部3036131と時間マージ候補導出部3036132と結合マージ候補導出部3036133とゼロマージ候補導出部3036134を含んで構成される。
 空間マージ候補導出部3036131は、所定の規則に従って、予測パラメータメモリ307が記憶している予測パラメータ(予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLX)を読み出し、読み出した予測パラメータをマージ候補として導出する。読み出される予測パラメータは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係る予測パラメータである。導出されたマージ候補はマージ候補格納部303611に格納される。
 時間マージ候補導出部3036132は、復号対象ブロックの右下の座標を含む参照画像中のブロックの予測パラメータを予測パラメータメモリ307から読みだしマージ候補とする。参照画像の指定方法は、例えば、スライスヘッダに置いて指定された参照ピクチャインデックスrefIdxLXでも良いし、復号対象ブロックに隣接するブロックの参照ピクチャインデックスrefIdxLXのうち最小のものを用いて指定しても良い。導出されたマージ候補はマージ候補格納部303611に格納される。
 結合マージ候補導出部3036133は、既に導出されマージ候補格納部303611に格納された2つの異なる導出済マージ候補のベクトルと参照ピクチャインデックスを、それぞれL0、L1のベクトルとして組み合わせることで結合マージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。
 ゼロマージ候補導出部3036134は、参照ピクチャインデックスrefIdxLXが0であり、ベクトルmvLXのX成分、Y成分が共に0であるマージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。
 マージ候補選択部30362は、マージ候補格納部303611に格納されているマージ候補のうち、インター予測パラメータ復号制御部3031から入力されたマージインデックスmerge_idxに対応するインデックスが割り当てられたマージ候補を、対象PUのインター予測パラメータとして選択する。マージ候補選択部30362は選択したマージ候補を予測パラメータメモリ307(図5)に記憶するとともに、予測画像生成部308(図5)に出力する。
 図8は、本実施形態に係るAMVP予測パラメータ導出部3032の構成を示す概略図である。AMVP予測パラメータ導出部3032は、ベクトル候補導出部3033と予測ベクトル選択部3034を備える。ベクトル候補導出部3033は、参照ピクチャインデックスrefIdxに基づいて予測パラメータメモリ307(図5)が記憶するベクトル(動きベクトル又は変位ベクトル)をベクトル候補mvpLXとして読み出す。読み出されるベクトルは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係るベクトルである。
 予測ベクトル選択部3034は、ベクトル候補導出部3033が読み出したベクトル候補のうち、インター予測パラメータ復号制御部3031から入力されたベクトルインデックスmvp_LX_idxが示すベクトル候補を予測ベクトルmvpLXとして選択する。予測ベクトル選択部3034は、選択した予測ベクトルmvpLXを加算部3035に出力する。
 図9は、ベクトル候補の一例を示す概念図である。図9に示す予測ベクトルリスト602は、ベクトル候補導出部3033において導出される複数のベクトル候補からなるリストである。予測ベクトルリスト602において、左右に一列に配列された5個の長方形は、それぞれ予測ベクトルを示す領域を示す。左端から2番目のmvp_LX_idxの真下の下向きの矢印とその下のmvpLXは、ベクトルインデックスmvp_LX_idxが、予測パラメータメモリ307においてベクトルmvpLXを参照するインデックスであることを示す。
 候補ベクトルは、復号処理が完了したブロックであって、復号対象ブロックから予め定めた範囲のブロック(例えば、隣接ブロック)を参照し、参照したブロックに係るベクトルに基づいて生成される。なお、隣接ブロックには、対象ブロックに空間的に隣接するブロック、例えば、左ブロック、上ブロックの他、対象ブロックに時間的に隣接するブロック、例えば、対象ブロックと同じ位置で、表示時刻が異なるブロックから得られたブロックを含む。
 加算部3035は、予測ベクトル選択部3034から入力された予測ベクトルmvpLXとインター予測パラメータ復号制御部から入力された差分ベクトルmvdLXを加算してベクトルmvLXを算出する。加算部3035は、算出したベクトルmvLXを予測画像生成部308(図5)に出力する。
 図10は、インター予測パラメータ復号制御部3031の構成を示す図である。インター予測パラメータ復号制御部3031は、追加予測フラグ復号部30311、マージインデックス復号部30312、ベクトル候補インデックス復号部30313、及び図示しない、分割モード復号部、マージフラグ復号部、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル差分復号部を含んで構成される。分割モード復号部、マージフラグ復号部、マージインデックス復号部、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル候補インデックス復号部30313、ベクトル差分復号部は各々、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを復号する。
 追加予測フラグ復号部30311は、追加予測である照度予測を行うか否かを示すフラグic_enable_flagを復号し、インター予測画像生成部309に出力する。
 変位ベクトル取得部は、対象PUに隣接するブロックが変位ベクトルを持つ場合には、その変位ベクトルを予測パラメータメモリ307から抽出し、予測パラメータメモリ307を参照し、対象PUに隣接するブロックの予測フラグpredFlagLX、参照ピクチャインデックスrefIdxLXとベクトルmvLXを読み出す。
  (インター予測画像生成部309)
 図11は、本実施形態に係るインター予測画像生成部309の構成を示す概略図である。インター予測画像生成部309は、動き補償部3091、照度補償部3093、重み予測部3094を含んで構成される。
  (動き補償)
 動き補償部3091は、インター予測パラメータ復号部303から入力された、予測リスト利用フラグpredFlagLX、参照ピクチャインデックスrefIdxLX、動きベクトルmvLXに基づいて、参照ピクチャメモリ306から、参照ピクチャインデックスrefIdxLXで指定された参照ピクチャの対象ブロックの位置を起点として、ベクトルmvLXだけずれた位置にあるブロックを読み出すことによって動き補償画像を生成する。ここで、ベクトルmvLXが整数ベクトルでない場合には、動き補償フィルタ(もしくは変位補償フィルタ)と呼ばれる小数位置の画素を生成するためのフィルタを施して、動き補償画像を生成する。一般に、ベクトルmvLXが動きベクトルの場合のみ、上記処理を動き補償と呼び、変位ベクトルの場合は変位補償と呼ぶ場合もあるが、本明細書では、ベクトルの種類を区別せず単に動き補償と表現する。以下、L0予測の動き補償画像をpredSamplesL0、L1予測の動き補償画像をpredSamplesL1と呼ぶ。両者を区別しない場合predSamplesLXと呼ぶ。以下、動き補償部3091で得られた動き変位補償画像predSamplesLXに、さらに照度補償が行われる例を説明するが、これらの出力画像もまた、動き補償画像predSamplesLXと呼ぶ。なお、以下の照度補償において、入力画像と出力画像を区別する場合には、入力画像をpredSamplesLX、出力画像をpredSamplesLX´と表現する。
  (照度補償)
 照度補償部3093は、照度補償フラグic_enable_flagが1の場合に、入力された動き変位画像predSamplesLXに対して、照度補償を行う。照度補償フラグic_enable_flagが0の場合には、入力された動き補償画像predSamplesLXをそのまま出力する。照度補償部3093に入力される動き補償画像predSamplesLXは、動き補償部3091の出力画像である。照度補償は、予測画像生成の対象となる対象ブロックに隣接する隣接領域の動き補償画像の画素値と、隣接領域の復号画像の変化が、対象ブロック内の画素値と、対象ブロックの原画との変化に類似しているとの仮定に基づいて行われる。
 照度パラメータ推定部30931は、対象ブロック(対象予測ユニット)の画素を、参照ブロックの画素から推定するための推定パラメータを求める。図13は、照度補償を説明するための図である。図13では、対象ブロックの周囲の画素(目的参照画素)と、対象ブロックからあるベクトルだけずれた位置にある、参照レイヤ画像上の参照ブロックの周囲の画素(入力参照画素)の位置を示している。
 照度パラメータ推定部30931は、上記対象ブロックの周囲の目的参照画素y(y0~yN-1)と上記参照ブロックの周囲の入力参照画素x(x0~xN-1)から、推定パラメータ(照度変化パラメータ)を求める。
 (照度補償部3093)
 図24は、照度補償部3093の構成を示すブロック図である。照度補償部3093は、照度パラメータ推定部30931と、照度補償フィルタ部30932から構成される。照度パラメータ推定部30931は、積算シフト値導出部309311、積算値導出部309312、加算値導出部309313、第1パラメータ導出部309314、第2パラメータ導出部309315、パラメータa導出部309316、パラメータb導出部309317、正則化コスト加算部309318から構成される。
 照度パラメータ推定部30931は、図13に示す参照レイヤ画像上の参照ブロックの周囲の画素Cを入力参照画素x[]、対象ブロックの周囲の画素Lを目的参照画素y[]とし、これら入力参照画素x[]と目的参照画素y[]に基づいて、目的参照画素y[]を入力参照画素xから線形予測する場合のパラメータであるパラメータa、パラメータbを導出する。
 加算値導出部309313は、目的参照画素yの和Yと入力参照画素xの和Xを、以下の式(B-2)式(B-3)により導出する。
 積算値導出部309312は目的参照画素yと入力参照画素xの積の和XYと、入力参照画素の2乗の和XXを、以下の式(B-4)~(B-5)により導出する。この時、積算値導出部309312は、目的参照画素yと入力参照画素xの積の和XYの導出時と、入力参照画素xの2乗の和XXの導出する。以下の和の前にX、Y、XY、XXは0に初期化しておく。
  X = Σx[i*2]                 式(B-2)
  Y = Σy[i*2]                 式(B-3)
  XX = Σ(x[i] * x[i])     式(B-4)
  XY = Σ(x[i] * y[i])     式(B-5)
 ここで、Σは、参照領域に対する和であり、参照領域の画素を特定するインデックスiに対する和を導出する。y[i]は、復号画像のインデックスiにおける画素値。x[i]は、参照画像のインデックスiにおける画素値。カウントシフト値iCountShiftは、参照領域のサイズの2の対数である。
 iCountShift = log2 (参照領域の画素数)      式(B-6)
 第1パラメータ導出部309314は、目的参照画素yと入力参照画素xの積の和XYと、目的参照画素の和Yと入力参照画素の和Xの積の差から第1パラメータa1を以下の式により導出する。
  a1 = ( XY << iCountShift ) - (Y * X)    式(B-7)
 式(B-7)に示すように、XYは、カウントシフト値iCountShiftだけ左シフトしてから差を算出する。
 第2パラメータ導出部309315は、入力参照画素の2乗の和XXと、入力参照画素の和Xの2乗の差から第2パラメータa2を以下の式により導出する。
  a2 = ( XX << iCountShift ) - (X * X);     式(B-8)
 式(B-8)に示すように、XXは、カウントシフト値iCountShiftだけ左シフトしてから差を算出する。
 導出された第1パラメータa1と第2パラメータa2は、パラメータa導出部309316に出力される。
 第1パラメータ導出部309314は、第1パラメータa1を第2パラメータa2の大きさに応じて制限する。例えば以下の式のように、a1を0以上、a2の2倍以下にクリップする。
 a1 = Clip3(0, 2*a2, a1)     式(B-12)
 第1パラメータ導出部309314により、a1 / a2の値は、0から2の間にクリップされる。従って、パラメータaの値であるa1 / a2 << iShiftの値も、0から2<<iShiftにクリップされる。すなわち、iShift=6の場合、パラメータaは0~128となり、8ビット非負整数の範囲に入る。
 第1パラメータ導出部309314は、第2パラメータa2の大きさに応じて、図16のテーブルの導出に用いた所定のビット幅ShiftA2に対して、以下の式により第2正規化シフト値iScaleShiftA2を導出する。導出された第2正規化シフト値iScaleShiftA2は、テーブルベースパラメータa導出部3093163に出力される。
 iScaleShiftA2 = Max( 0, Floor( Log2( Abs( a2 ) ) ) - (ShiftA2-1))    式(B-14)
 第1パラメータ正規化シフト部3093161は、第2正規化シフト値iScaleShiftA2に応じて、以下の式により第1正規化シフト値iScaleShiftA1を導出する。導出された第1正規化シフト値iScaleShiftA1は、テーブルベースパラメータa導出部3093163に出力される。
 iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)    式(B-13)
 なお、offsetA1はここでは10以下を満たす定数とする。
 上記では、第1正規化シフト値を第2正規化シフト値を用いて導出するため、第1正規化パラメータを導出する処理が容易になるという効果を奏する。
 第1パラメータ導出部309314、第2パラメータ導出部309315は、第1パラメータa1を第1正規化シフト値iScaleShiftA1、第2パラメータa2を第2正規化シフト値iScaleShiftA2により右シフトし、正規化第1パラメータa1sと正規化第2パラメータa2sを導出する。
 a1s = a1 >> iScaleShiftA1     式(B-15)
 a2s = a2 >> iScaleShiftA2     式(B-16)
 これにより、正規化第1パラメータa1sと正規化第2パラメータa2sは各々、0から2のiShiftA1乗-1、0から2のShiftA2乗-1の間の値に正規化される。
 パラメータa導出部309316は、第1正規化シフト値iScaleShiftA1と第2正規化シフト値iScaleShiftA2の差に基づいて、以下の式によりパラメータaシフト値iScaleShiftAを導出する。
 ScaleShiftA = ShiftA1 + iScaleShiftA2 - iScaleShiftA1 - iShift     式(B-18)
 ここで、iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)であるから、以下の式が得られる。
 ScaleShiftA <= ShiftA1 + iScaleShiftA2 - (iScaleShiftA2 - offsetA1) - iShift
 ScaleShiftA <= ShiftA1 + offsetA1 - iShift
 offsetA1は0以上、iShiftは5から8ビット、ShiftA1は14ビット~15ビットであるから、ScaleShiftAは常に0以上になる。
 パラメータa導出部309316は、正規化第2パラメータa2sに応じて定まる逆数テーブル値invTableを参照し、正規化第1パラメータa1sとの積をとりテーブルシフト値(ScaleShiftA)で右シフトすることにより、以下の式によりパラメータaを導出する。
 a = (a1s * invTable[a2s]) >> (ScaleShiftA)      式(B-19)
 図16は、本実施形態で用いる逆数テーブル値invTable[]である。既に説明したように図16の逆数invTable[x]は、インデックスxが0の場合に0となり、インデックスxが0以外の場合には、所定の定数(ここでは2の15乗)Mをxで割って整数化した値から導出される。
 導出されたパラメータaは、パラメータb導出部309317と照度補償フィルタ部30932に出力される。
 パラメータb導出部309317は、目的参照画素の和Yから、入力参照画素の和Xにパラメータaをかけて固定シフト値iShiftだけ右シフトした値を引いた値を、参照領域の画素数で割ることにより、以下の式によりパラメータbを導出する。
 b = ( Y - ( ( a * X ) >> iShift ) + ( 1 << ( iCountShift - 1 ) ) ) >> iCountShift     式(B-20)
 なお、iCountShiftの右シフトは、参照領域の画素数で割ることに相当する。
 照度補償フィルタ部30932は、照度パラメータ推定部30931が導出した推定パラメータを用いて、照度補償前の予測画像predSamples []から、照度補償後の予測画像predSamples´[]を導出する。例えば、パラメータbを式(B-20)により導出する場合には以下の式を用いる。
 predSamples´[x][y] = (a * predSamples[x][y] >> iShift)+b      式(B-21)
  (重み予測)
 重み予測部3094は、入力される動き変位画像predSamplesLXに重み係数を乗算することにより予測ピクチャブロックP(予測画像)を生成する。入力される動き変位画像predSamplesLXは、残差予測、照度補償が行われる場合には、それらが施された画像である。参照リスト利用フラグの一方(predFlagL0もしくはpredFlagL1)が1の場合(単予測の場合)で、重み予測を用いない場合には入力された動き変位画像predSamplesLX(LXはL0もしくはL1)を画素ビット数に合わせる以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesLX[ x ][ y ] + offset1 ) >> shift1 )
 ここで、shift1=14-bitDepth、offset1=1<<(shift1-1)である。
 また、参照リスト利用フラグの両者(predFlagL0もしくはpredFlagL1)が1の場合(双予測の場合)で、重み予測を用いない場合には、入力された動き変位画像predSamplesL0、predSamplesL1を平均し画素ビット数に合わせる以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesL0[ x ][ y ] + predSamplesL1[ x ][ y ] + offset2 ) >> shift2 )
ここで、shift2=15-bitDepth、offset2=1<<(shift2-1)である。
 さらに、単予測の場合で、重み予測を行う場合には、重み予測部3094は、重み予測係数w0とオフセットo0を導出し、以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( (predSamplesLX[ x ][ y ] * w0 + 2log2WD - 1) >> log2WD ) + o0 )
 ここで、log2WDは所定のシフト量を示す変数である。
 さらに、双予測の場合で、重み予測を行う場合には、重み予測部3094は、重み予測係数w0、w1、o0、o1を導出し、以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesL0 [ x ][ y ] * w0 + predSamplesL1[ x ][ y ] * w1 + ((o0 + o1 + 1) << log2WD) ) >> (log2WD + 1) )
  (画像符号化装置の構成)
 次に、本実施形態に係る画像符号化装置11の構成について説明する。図14は、本実施形態に係る画像符号化装置11の構成を示すブロック図である。画像符号化装置11は、予測画像生成部101、減算部102、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、加算部106、予測パラメータメモリ(予測パラメータ記憶部、フレームメモリ)108、参照ピクチャメモリ(参照画像記憶部、フレームメモリ)109、符号化パラメータ決定部110、予測パラメータ符号化部111、残差格納部313(残差記録部)を含んで構成される。予測パラメータ符号化部111は、インター予測パラメータ符号化部112及びイントラ予測パラメータ符号化部113を含んで構成される。
 予測画像生成部101は、外部から入力されたレイヤ画像Tの視点毎の各ピクチャについて、そのピクチャを分割した領域であるブロック毎に予測ピクチャブロックPを生成する。ここで、予測画像生成部101は、予測パラメータ符号化部111から入力された予測パラメータに基づいて参照ピクチャメモリ109から参照ピクチャブロックを読み出す。予測パラメータ符号化部111から入力された予測パラメータとは、例えば、動きベクトル又は変位ベクトルである。予測画像生成部101は、符号化対象ブロックを起点として予測された動きベクトル又は変位ベクトルが示す位置にあるブロックの参照ピクチャブロックを読み出す。予測画像生成部101は、読み出した参照ピクチャブロックについて複数の予測方式のうちの1つの予測方式を用いて予測ピクチャブロックPを生成する。予測画像生成部101は、生成した予測ピクチャブロックPを減算部102に出力する。なお、予測画像生成部101は、既に説明した予測画像生成部308と同じ動作であるため予測ピクチャブロックPの生成の詳細は省略する。
 予測画像生成部101は、予測方式を選択するために、例えば、レイヤ画像に含まれるブロックの画素毎の信号値と予測ピクチャブロックPの対応する画素毎の信号値との差分に基づく誤差値を最小にする予測方式を選択する。予測方式を選択する方法は、これには限られない。
 符号化対象のピクチャが他のレイヤに依存しないベースレイヤピクチャ(ベースビューピクチャ)である場合には、複数の予測方式とは、イントラ予測、動き予測及びマージ予測である。動き予測とは、上述のインター予測のうち、表示時刻間の予測である。マージ予測とは、既に符号化されたブロックであって、符号化対象ブロックから予め定めた範囲内にあるブロックと同一の参照ピクチャブロック及び予測パラメータを用いる予測である。符号化対象のピクチャがノンベースビューピクチャである場合には、複数の予測方式とは、イントラ予測、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)とは、上述のインター予測のうち、別レイヤ画像(別視点画像)間の予測である。さらに、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)に対して、追加予測(照度補償)を行う場合と行わない場合の予測がある。
 予測画像生成部101は、イントラ予測を選択した場合、予測ピクチャブロックPを生成する際に用いたイントラ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
 予測画像生成部101は、動き予測を選択した場合、予測ピクチャブロックPを生成する際に用いた動きベクトルmvLXを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。動きベクトルmvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。動きベクトルmvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ピクチャ順序番号POC)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
 予測画像生成部101は、変位予測を選択した場合、予測ピクチャブロックPを生成する際に用いた変位ベクトルを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。変位ベクトルdvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。変位ベクトルdvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ビューIDview_id)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
 予測画像生成部101は、マージ予測を選択した場合、選択した参照ピクチャブロックを示すマージインデックスmerge_idxをインター予測パラメータ符号化部112に出力する。また、予測画像生成部101は、マージ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
 上記の、動き予測、変位予測、マージ予測において、予測画像生成部101は、残差予測フラグres_pred_flagが残差予測を行うことを示す場合には、既に説明したように予測画像生成部101に含まれる残差予測部3092において残差予測を行い、照度補償フラグic_enable_flagが照度補償を行うことを示す場合には、既に説明したように予測画像生成部101に含まれる照度補償部3093において照度補償予測を行う。
 減算部102は、予測画像生成部101から入力された予測ピクチャブロックPの信号値を、外部から入力されたレイヤ画像Tの対応するブロックの信号値から画素毎に減算して、残差信号を生成する。減算部102は、生成した残差信号をDCT・量子化部103と符号化パラメータ決定部110に出力する。
 DCT・量子化部103は、減算部102から入力された残差信号についてDCTを行い、DCT係数を算出する。DCT・量子化部103は、算出したDCT係数を量子化して量子化係数を求める。DCT・量子化部103は、求めた量子化係数をエントロピー符号化部104及び逆量子化・逆DCT部105に出力する。
 エントロピー符号化部104には、DCT・量子化部103から量子化係数が入力され、符号化パラメータ決定部110から符号化パラメータが入力される。入力される符号化パラメータには、例えば、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLX、予測モードpredMode、及びマージインデックスmerge_idx等の符号がある。
 エントロピー符号化部104は、入力された量子化係数と符号化パラメータをエントロピー符号化して符号化ストリームTeを生成し、生成した符号化ストリームTeを外部に出力する。
 逆量子化・逆DCT部105は、DCT・量子化部103から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部105は、求めたDCT係数について逆DCTを行い、復号残差信号を算出する。逆量子化・逆DCT部105は、算出した復号残差信号を加算部106に出力する。
 加算部106は、予測画像生成部101から入力された予測ピクチャブロックPの信号値と逆量子化・逆DCT部105から入力された復号残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部106は、生成した参照ピクチャブロックを参照ピクチャメモリ109に記憶する。
 予測パラメータメモリ108は、予測パラメータ符号化部111が生成した予測パラメータを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
 参照ピクチャメモリ109は、加算部106が生成した参照ピクチャブロックを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
 符号化パラメータ決定部110は、符号化パラメータの複数のセットのうち、1つのセットを選択する。符号化パラメータとは、上述した予測パラメータやこの予測パラメータに関連して生成される符号化の対象となるパラメータである。予測画像生成部101は、これらの符号化パラメータのセットの各々を用いて予測ピクチャブロックPを生成する。
 符号化パラメータ決定部110は、複数のセットの各々について情報量の大きさと符号化誤差を示すコスト値を算出する。コスト値は、例えば、符号量と二乗誤差に係数λを乗じた値との和である。符号量は、量子化誤差と符号化パラメータをエントロピー符号化して得られる符号化ストリームTeの情報量である。二乗誤差は、減算部102において算出された残差信号の残差値の二乗値についての画素間の総和である。係数λは、予め設定されたゼロよりも大きい実数である。符号化パラメータ決定部110は、算出したコスト値が最小となる符号化パラメータのセットを選択する。これにより、エントロピー符号化部104は、選択した符号化パラメータのセットを符号化ストリームTeとして外部に出力し、選択されなかった符号化パラメータのセットを出力しない。
 予測パラメータ符号化部111は、予測画像生成部101から入力されたパラメータに基づいて予測ピクチャを生成する際に用いる予測パラメータを導出し、導出した予測パラメータを符号化して符号化パラメータのセットを生成する。予測パラメータ符号化部111は、生成した符号化パラメータのセットをエントロピー符号化部104に出力する。
 予測パラメータ符号化部111は、生成した符号化パラメータのセットのうち符号化パラメータ決定部110が選択したものに対応する予測パラメータを予測パラメータメモリ108に記憶する。
 予測パラメータ符号化部111は、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、インター予測パラメータ符号化部112を動作させる。予測パラメータ符号化部111は、予測モードpredModeがイントラ予測モードを示す場合、イントラ予測パラメータ符号化部113を動作させる。
 インター予測パラメータ符号化部112は、符号化パラメータ決定部110から入力された予測パラメータに基づいてインター予測パラメータを導出する。インター予測パラメータ符号化部112は、インター予測パラメータを導出する構成として、インター予測パラメータ復号部303(図5等、参照)がインター予測パラメータを導出する構成と同一の構成を含む。インター予測パラメータ符号化部112の構成については、後述する。
 イントラ予測パラメータ符号化部113は、符号化パラメータ決定部110から入力された予測モードpredModeが示すイントラ予測モードIntraPredModeをインター予測パラメータのセットとして定める。
 (LM予測部)
 予測画像生成部101は、予測画像生成部308と同様にLM予測部3104を備える。LM予測部3104は、既に説明したように、LMパラメータ推定部31041を備え、インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積から導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積から導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
 本構成の、予測画像生成部101の含むLMパラメータ推定部31041は、例えばa1がTHN未満(ここではTHN=0)である場合に、a1から正則化コストa1costNだけ減算するように閾値との比較に基づいて正則化コストを減算もしくは加算することで、パラメータaの値を、最小2乗法で導出される値よりも0から遠い方向に近づけることが可能である。上記、構成により、LMパラメータ推定部31041は、雑音に強い線形予測パラメータを導出することができ、予測画像を生成する際の予測精度を向上させる効果を奏する。
  (インター予測パラメータ符号化部の構成)
 次に、インター予測パラメータ符号化部112の構成について説明する。インター予測パラメータ符号化部112は、インター予測パラメータ復号部303に対応する手段である。
 図15は、本実施形態に係るインター予測パラメータ符号化部112の構成を示す概略図である。
 インター予測パラメータ符号化部112は、図示しないインター予測パラメータ符号化制御部1031、マージ予測パラメータ導出部3036、AMVP予測パラメータ導出部3032、減算部1123、及び予測パラメータ統合部1126を含んで構成される。
 マージ予測パラメータ導出部3036は、上述のマージ予測パラメータ導出部3036(図7参照)と同様な構成を有する。
 インター予測パラメータ符号化制御部1031は、インター予測に関連する符号(シンタックス要素の復号をエントロピー符号化部104に指示し、符号化データに含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを符号化する。
 インター予測パラメータ符号化制御部1031は、追加予測フラグ符号化部10311、マージインデックス符号化部10312、ベクトル候補インデックス符号化部10313、及び図示しない、分割モード符号化部、マージフラグ符号化部、インター予測フラグ符号化部、参照ピクチャインデックス符号化部、ベクトル差分符号化部を含んで構成される。分割モード符号化部、マージフラグ符号化部、マージインデックス符号化部、インター予測フラグ符号化部、参照ピクチャインデックス符号化部、ベクトル候補インデックス符号化部10313、ベクトル差分符号化部は各々、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを符号化する。
 追加予測フラグ符号化部10311は、追加予測が行われるか否かを示すために、照度補償フラグic_enable_flagを符号化する。
 マージ予測パラメータ導出部3036には、予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合、符号化パラメータ決定部110からマージインデックスmerge_idxが入力される。マージインデックスmerge_idxは、予測パラメータ統合部1126に出力される。マージ予測パラメータ導出部3036は、マージ候補のうちマージインデックスmerge_idxが示す参照ブロックの参照ピクチャインデックスrefIdxLX、ベクトルmvLXを予測パラメータメモリ108から読み出す。マージ候補とは、符号化対象となる符号化対象ブロックから予め定めた範囲にある参照ブロック(例えば、符号化対象ブロックの左下端、左上端、右上端に接する参照ブロックのうち)であって、符号化処理が完了した参照ブロックである。
 AMVP予測パラメータ導出部3032は、上述のAMVP予測パラメータ導出部3032(図8参照)と同様な構成を有する。
 AMVP予測パラメータ導出部3032には、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、符号化パラメータ決定部110からベクトルmvLXが入力される。AMVP予測パラメータ導出部3032は、入力されたベクトルmvLXに基づいて予測ベクトルmvpLXを導出する。AMVP予測パラメータ導出部3032は、導出した予測ベクトルmvpLXを減算部1123に出力する。なお、参照ピクチャインデックスrefIdx及びベクトルインデックスmvp_LX_idxは、予測パラメータ統合部1126に出力される。
 減算部1123は、符号化パラメータ決定部110から入力されたベクトルmvLXからAMVP予測パラメータ導出部3032から入力された予測ベクトルmvpLXを減算して差分ベクトルmvdLXを生成する。差分ベクトルmvdLXは予測パラメータ統合部1126に出力する。
 予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合には、予測パラメータ統合部1126は、符号化パラメータ決定部110から入力されたマージインデックスmerge_idxをエントロピー符号化部104に出力する。
 予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合には、予測パラメータ統合部1126は、次の処理を行う。
 予測パラメータ統合部1126は、符号化パラメータ決定部110から入力された参照ピクチャインデックスrefIdxLX及びベクトルインデックスmvp_LX_idx、減算部1123から入力された差分ベクトルmvdLXを統合する。予測パラメータ統合部1126は、統合した符号をエントロピー符号化部104に出力する。
 なお、上述した実施形態における画像符号化装置11、画像復号装置31の一部、例えば、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部101、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、符号化パラメータ決定部110、予測パラメータ符号化部111、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部308、逆量子化・逆DCT部311をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、画像符号化装置11-11h、画像復号装置31-31hのいずれかに内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
 また、上述した実施形態における画像符号化装置11、画像復号装置31の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現しても良い。画像符号化装置11、画像復号装置31の各機能ブロックは個別にプロセッサ化しても良いし、一部、または全部を集積してプロセッサ化しても良い。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。
 以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
 本発明の一つの形態は、インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第2パラメータa2にコストa2costを加算する手段をさらに備えることを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算し、上記第2パラメータa2にコストa2costNを加算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算し上記第2パラメータa2にコストa2costPを加算する手段の少なくとも1つの手段を備えることを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第2パラメータa2にコストa2costNを加算する手段を備えることを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算し、上記第2パラメータa2にコストa2costNを加算する手段を備えることを特徴とする。
 本発明の一つの形態は、上記コストa2costは、上記コストa1costN以上であることを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を0とすることを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を、上記第2パラメータa2に基づいて導出することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNを0、上記閾値THPを上記第2パラメータa2に基づいて導出することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNを、上記第2パラメータa2を所定の定数だけ右シフトすることにより導出する、ことを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値xiの積の和XXから導出することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値yiの積の和XYから導出することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、画素のビットデプス値から導出することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2に基づいて導出することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2を所定の定数だけ右シフトすることにより、導出することを特徴とする。
 本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa1を所定の定数だけ右シフトした値と、画素のビットデプス値から導出される値との最小値から、導出することを特徴とする。
(関連出願の相互参照)
 本出願は、2015年10月5日に出願された日本国特許出願:特願2015-197489に対して優先権の利益を主張するものであり、それを参照することにより、その内容の全てが本書に含まれる。
 本発明は、画像データが符号化された符号化データを復号する画像復号装置、および、画像データが符号化された符号化データを生成する画像符号化装置、および、色コンポーネント間予測を行う予測画像生成装置に好適に適用することができる。
1…画像伝送システム
11…画像符号化装置
101…予測画像生成部
102…減算部
103…DCT・量子化部
104…エントロピー符号化部
105…逆量子化・逆DCT部
106…加算部
108…予測パラメータメモリ(フレームメモリ)
109…参照ピクチャメモリ(フレームメモリ)
110…符号化パラメータ決定部
111…予測パラメータ符号化部
112…インター予測パラメータ符号化部
3036…マージ予測パラメータ導出部
3032…AMVP予測パラメータ導出部
1123…減算部
1126…予測パラメータ統合部
113…イントラ予測パラメータ符号化部
21…ネットワーク
31…画像復号装置
301…エントロピー復号部
302…予測パラメータ復号部
303…インター予測パラメータ復号部
30312…マージインデックス復号部
30313…ベクトル候補インデックス復号部
3032…AMVP予測パラメータ導出部
3035…加算部
3036…マージ予測パラメータ導出部
30361…マージ候補導出部
303611…マージ候補格納部
3036131…空間マージ候補導出部
3036132…時間マージ候補導出部
3036133…結合マージ候補導出部
3036134…ゼロマージ候補導出部
30362…マージ候補選択部
304…イントラ予測パラメータ復号部
306…参照ピクチャメモリ(フレームメモリ)
307…予測パラメータメモリ(フレームメモリ)
308…予測画像生成部
309…インター予測画像生成部
3091…動き補償部
3092…残差予測部
3093…照度補償部
30931…照度パラメータ推定部
309312…積算値導出部
309313…加算値導出部
309314…第1パラメータ導出部
309315…第2パラメータ導出部
309316…パラメータa導出部
3093161…第1パラメータ正規化シフト部
3093162…第2パラメータ正規化シフト部
3093163…テーブルベースパラメータa導出部
309317…パラメータb導出部
309318…正則化コスト加算部
30932…照度補償フィルタ部
3094…重み予測部
310…イントラ予測画像生成部
3104…LM予測部
31041、31041A、31041B、31041C、31041A2、31041B2、31041C2…LMパラメータ推定部
31042、31042B…LMフィルタ部
310412…LM積算値導出部
310413…LM加算値導出部
310414…LM第1パラメータ導出部
310415…LM第2パラメータ導出部
310416…LMパラメータa導出部
3104161…LM第1パラメータ正規化シフト部
3104162…LM第2パラメータ正規化シフト部
3104163…LM除算値導出部
310417…LMパラメータb導出部
310418、310418A、310418B、310418C、310418A2、310418B2、310418C2、…LM正則化コスト加算部
3104180…LM正則化コスト導出部
3104181…LM第1パラメータ正則化コスト加算部
3104182…LM第2パラメータ正則化コスト加算部
3104183…LM正則化コスト閾値判定部
311…逆量子化・逆DCT部
312…加算部
41…画像表示装置
 

Claims (19)

  1.  インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする画像予測装置。
  2.  上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算することを特徴とする請求項1に記載の画像予測装置。
  3.  上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする請求項1に記載の画像予測装置。
  4.  上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする請求項1に記載の画像予測装置。
  5.  上記線形予測パラメータ導出部は、上記第2パラメータa2にコストa2costを加算する手段をさらに備えることを特徴とする請求項1に記載の画像予測装置。
  6.  上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算し、上記第2パラメータa2にコストa2costNを加算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算し上記第2パラメータa2にコストa2costPを加算する手段の少なくとも1つの手段を備えることを特徴とする請求項1に記載の画像予測装置。
  7.  上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第2パラメータa2にコストa2costNを加算する手段を備えることを特徴とする請求項6に記載の画像予測装置。
  8.  上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算し、上記第2パラメータa2にコストa2costPを加算する手段を備えることを特徴とする請求項6に記載の画像予測装置。
  9.  上記コストa2costは、上記コストa1costN以上であることを特徴とする請求項5に記載の画像予測装置。
  10.  上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を0とすることを特徴とする請求項1に記載の画像予測装置。
  11.  上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を、上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
  12.  上記線形予測パラメータ導出部は、上記閾値THNを0、上記閾値THPを上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
  13.  上記線形予測パラメータ導出部は、上記閾値THNを、上記第2パラメータa2を所定の定数だけ右シフトすることにより導出する、ことを特徴とする請求項6に記載の画像予測装置。
  14.  上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値xiの積の和XXから導出することを特徴とする請求項1に記載の画像予測装置。
  15.  上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値yiの積の和XYから導出することを特徴とする請求項1に記載の画像予測装置。
  16.  上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、画素のビットデプス値から導出することを特徴とする請求項1に記載の画像予測装置。
  17.  上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
  18.  上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2を所定の定数だけ右シフトすることにより、導出することを特徴とする請求項1に記載の画像予測装置。
  19.  上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa1を所定の定数だけ右シフトした値と、画素のビットデプス値から導出される値との最小値から、導出することを特徴とする請求項1に記載の画像予測装置。
     
PCT/JP2016/075052 2015-10-05 2016-08-26 画像復号装置または画像符号化装置のための画像予測装置 WO2017061189A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017544411A JPWO2017061189A1 (ja) 2015-10-05 2016-08-26 画像復号装置または画像符号化装置のための画像予測装置
US15/765,276 US20180302641A1 (en) 2015-10-05 2016-08-26 Image predicting device for image decoding device or image encoding device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-197489 2015-10-05
JP2015197489 2015-10-05

Publications (1)

Publication Number Publication Date
WO2017061189A1 true WO2017061189A1 (ja) 2017-04-13

Family

ID=58487446

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/075052 WO2017061189A1 (ja) 2015-10-05 2016-08-26 画像復号装置または画像符号化装置のための画像予測装置

Country Status (3)

Country Link
US (1) US20180302641A1 (ja)
JP (1) JPWO2017061189A1 (ja)
WO (1) WO2017061189A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020129990A1 (ja) * 2018-12-20 2020-06-25 シャープ株式会社 予測画像生成装置、動画像復号装置、動画像符号化装置、および、予測画像生成方法
WO2020141599A1 (ja) * 2019-01-02 2020-07-09 シャープ株式会社 予測画像生成装置、動画像復号装置、動画像符号化装置、および予測画像生成方法
CN111886860A (zh) * 2018-06-06 2020-11-03 Kddi 株式会社 图像解码装置、图像编码装置、图像处理系统、图像解码方法和程序

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116847068A (zh) * 2016-10-04 2023-10-03 株式会社Kt 用于处理视频信号的方法和装置
JP7164813B2 (ja) * 2018-11-21 2022-11-02 日本電信電話株式会社 予測装置、予測方法、及びプログラム。
JP7304153B2 (ja) * 2018-12-27 2023-07-06 Kddi株式会社 動画像復号装置、動画像復号方法及びプログラム
JP7448349B2 (ja) * 2019-12-17 2024-03-12 シャープ株式会社 動画像復号装置
CN113962898B (zh) * 2021-11-03 2024-05-03 大连海事大学 基于照度图优化和自适应伽马校正的低照度图像增强方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014500692A (ja) * 2010-12-23 2014-01-09 サムスン エレクトロニクス カンパニー リミテッド 映像予測単位についてのイントラ予測モード符号化方法及び装置、並びに映像予測単位についてのイントラ予測モード復号化方法及び装置
WO2014103606A1 (ja) * 2012-12-26 2014-07-03 シャープ株式会社 画像復号装置
US20160219283A1 (en) * 2015-01-27 2016-07-28 Qualcomm Incorporated Adaptive cross component residual prediction

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212650A (ja) * 1996-02-05 1997-08-15 Sony Corp 動きベクトル検出装置および検出方法
KR100877457B1 (ko) * 2001-02-21 2009-01-07 소니 가부시끼 가이샤 신호 처리 장치 및 방법과 신호 처리 프로그램을 기록한 기록매체
US7499895B2 (en) * 2002-02-21 2009-03-03 Sony Corporation Signal processor
JP4120301B2 (ja) * 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
US9129409B2 (en) * 2009-07-29 2015-09-08 Qualcomm Incorporated System and method of compressing video content
US8805100B2 (en) * 2010-06-03 2014-08-12 Sharp Kabushiki Kaisha Filter device, image decoding device, image encoding device, and filter parameter data structure
JP6345650B2 (ja) * 2013-04-05 2018-06-20 サターン ライセンシング エルエルシーSaturn Licensing LLC 画像処理装置及び画像処理方法
US9894359B2 (en) * 2013-06-18 2018-02-13 Sharp Kabushiki Kaisha Illumination compensation device, LM prediction device, image decoding device, image coding device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014500692A (ja) * 2010-12-23 2014-01-09 サムスン エレクトロニクス カンパニー リミテッド 映像予測単位についてのイントラ予測モード符号化方法及び装置、並びに映像予測単位についてのイントラ予測モード復号化方法及び装置
WO2014103606A1 (ja) * 2012-12-26 2014-07-03 シャープ株式会社 画像復号装置
US20160219283A1 (en) * 2015-01-27 2016-07-28 Qualcomm Incorporated Adaptive cross component residual prediction

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHRISTOPHE GISQUET ET AL.: "Non-CE6a: Luma-based chroma prediction-Model correction", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11, JCTVC-G244-R1, 7TH MEETING, November 2011 (2011-11-01), Geneva, CH, pages 1 - 15 *
JIANLE CHEN ET AL.: "CE6.a.4: Chroma intra prediction by reconstructed luma samples", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11, JCTVC-E266_R1, 5TH MEETING, March 2011 (2011-03-01), Geneva, pages 1 - 10 *
TOMOHIRO IKAI: "3D-CE5.h related: Illumination compensation regression improvement and simplification, Joint Collaborative Team on 3D Video Coding Extensions of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11", JCT3V-D0061, 4TH MEETING, April 2013 (2013-04-01), Incheon, KR, pages 1 - 7 *
XINGYU ZHANG ET AL.: "Chroma Intra Prediction Based on Inter-Channel Correlation for HEVC", IEEE TRANSACTIONS ON IMAGE PROCESSING, vol. 23, no. 1, January 2014 (2014-01-01), pages 274 - 286, XP055148456 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111886860A (zh) * 2018-06-06 2020-11-03 Kddi 株式会社 图像解码装置、图像编码装置、图像处理系统、图像解码方法和程序
WO2020129990A1 (ja) * 2018-12-20 2020-06-25 シャープ株式会社 予測画像生成装置、動画像復号装置、動画像符号化装置、および、予測画像生成方法
CN113196776A (zh) * 2018-12-20 2021-07-30 夏普株式会社 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法
CN113196776B (zh) * 2018-12-20 2023-12-19 夏普株式会社 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法
WO2020141599A1 (ja) * 2019-01-02 2020-07-09 シャープ株式会社 予測画像生成装置、動画像復号装置、動画像符号化装置、および予測画像生成方法

Also Published As

Publication number Publication date
JPWO2017061189A1 (ja) 2018-09-13
US20180302641A1 (en) 2018-10-18

Similar Documents

Publication Publication Date Title
WO2017061189A1 (ja) 画像復号装置または画像符号化装置のための画像予測装置
JP6360053B2 (ja) 照度補償装置、画像復号装置、画像符号化装置
JP6535673B2 (ja) 非対称動き分割を使用するビデオコーディング技法
JP6278900B2 (ja) 画像復号装置
JP6225241B2 (ja) 画像復号装置、画像復号方法、画像符号化装置及び画像符号化方法
KR101600154B1 (ko) 비디오 코딩에서의 모션 벡터 예측
KR101751145B1 (ko) 3d 비디오에 대한 인터-뷰 예측된 모션 벡터
WO2015093565A1 (ja) 画像復号装置、画像符号化装置および残差予測装置
WO2014103529A1 (ja) 画像復号装置、およびデータ構造
KR20150065706A (ko) 3d 비디오에 대한 인터-뷰 예측된 모션 벡터
KR20150052259A (ko) 스케일러블 비디오 코딩을 위한 가중된 예측 모드
KR20150092249A (ko) 3d 비디오에 대한 진보된 병합/스킵 모드 및 진보된 모션 벡터 예측 (amvp) 모드
WO2015056719A1 (ja) 画像復号装置、画像符号化装置
WO2017135151A1 (ja) 予測画像生成装置、動画像復号装置、および動画像符号化装置
CN109547800B (zh) 用于3d-hevc的简化高级残余预测
WO2015056620A1 (ja) 画像復号装置、画像符号化装置
CN114270833A (zh) 用于在视频/图像编译系统中移除重叠信令的方法和装置
CN114145022A (zh) 推导双向预测的权重索引信息的图像解码方法及其装置
CN114631318A (zh) 应用双向预测时推导用于加权平均的权重索引信息的图像解码方法和设备
JP6118199B2 (ja) 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法及びコンピュータ読み取り可能な記録媒体。
WO2014103600A1 (ja) 符号化データ構造、および画像復号装置
US11949874B2 (en) Image encoding/decoding method and device for performing prof, and method for transmitting bitstream
US20160219299A1 (en) Video encoding and decoding by inheritance of a field of motion vectors
CN114365485A (zh) 用于执行bdof的图像编码/解码方法和装置及用于发送比特流的方法
CN114375573A (zh) 使用合并候选推导预测样本的图像解码方法及其装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16853343

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017544411

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15765276

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16853343

Country of ref document: EP

Kind code of ref document: A1