WO2017061189A1 - 画像復号装置または画像符号化装置のための画像予測装置 - Google Patents
画像復号装置または画像符号化装置のための画像予測装置 Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods 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/196—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods 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
Description
以下、図面を参照しながら本発明の実施形態について説明する。
本実施形態に係る画像符号化装置11および画像復号装置31の詳細な説明に先立って、画像符号化装置11によって生成され、画像復号装置31によって復号される符号化ストリームTeのデータ構造について説明する。
シーケンスレイヤでは、処理対象のシーケンス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の符号化データが存在する例を示すが、レイヤの種類およびレイヤの数はこれによらない。
ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。ピクチャPICTは、図2の(b)に示すように、スライスS0~SNS-1を含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。スライスSは、図2の(c)に示すように、スライスヘッダSH、および、スライスデータSDATAを含んでいる。
スライスデータレイヤでは、処理対象のスライスデータ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は、符号化処理の基本的な単位となる。
符号化ユニットレイヤは、図2の(f)に示すように、処理対象の符号化ユニットを復号するために画像復号装置31が参照するデータの集合が規定されている。具体的には、符号化ユニットは、CUヘッダCUH、予測ツリー、変換ツリー、CUヘッダCUFから構成される。CUヘッダCUHでは、符号化ユニットが、イントラ予測を用いるユニットであるか、インター予測を用いるユニットであるかなどが規定される。符号化ユニットは、予測ツリー(prediction tree;PT)および変換ツリー(transform tree;TT)のルートとなる。CUヘッダCUFは、予測ツリーと変換ツリーの間、もしくは、変換ツリーの後に含まれる。
予測ユニットの予測画像は、予測ユニットに付随する予測パラメータによって導出される。予測パラメータには、イントラ予測の予測パラメータもしくはインター予測の予測パラメータがある。以下、インター予測の予測パラメータ(インター予測パラメータ)について説明する。インター予測パラメータは、予測リスト利用フラグ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が用いられる。
次に、参照ピクチャリストの一例について説明する。参照ピクチャリストとは、参照ピクチャメモリ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の関係は以下のように相互に変換可能である。そのため、インター予測パラメータとしては、予測リスト利用フラグを用いても良いし、インター予測フラグを用いてもよい。また、以下、予測リスト利用フラグを用いた判定は、インター予測フラグに置き替えても可能である。逆に、インター予測フラグを用いた判定は、予測リスト利用フラグに置き替えても可能である。
predFlagL0 =インター予測フラグ & 1
predFlagL1 =インター予測フラグ >> 1
ここで、>>は右シフト、<<は左シフトである。
予測パラメータの復号(符号化)方法には、マージ予測(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)として符号化される。
ベクトルmvLXには、動きベクトルと変位ベクトル(disparity vector、視差ベクトル)がある。動きベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、異なる表示時刻(例えば、隣接する離散時刻)における同一のレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。変位ベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、同一の表示時刻における異なるレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。異なるレイヤのピクチャとしては、異なる視点のピクチャである場合、もしくは、異なる解像度のピクチャである場合などがある。特に、異なる視点のピクチャに対応する変位ベクトルを視差ベクトルと呼ぶ。以下の説明では、動きベクトルと変位ベクトルを区別しない場合には、単にベクトルmvLXと呼ぶ。ベクトルmvLXに関する予測ベクトル、差分ベクトルを、それぞれ予測ベクトルmvpLX、差分ベクトルmvdLXと呼ぶ。ベクトルmvLXおよび差分ベクトルmvdLXが、動きベクトルであるか、変位ベクトルであるかは、ベクトルに付随する参照ピクチャインデックスrefIdxLXを用いて行われる。
次に、本実施形態に係る画像復号装置31の構成について説明する。図5は、本実施形態に係る画像復号装置31の構成を示す概略図である。画像復号装置31は、エントロピー復号部301、予測パラメータ復号部302、参照ピクチャメモリ(参照画像記憶部、フレームメモリ)306、予測パラメータメモリ(予測パラメータ記憶部、フレームメモリ)307、予測画像生成部308、逆量子化・逆DCT部311、及び加算部312、残差格納部313(残差記録部)を含んで構成される。
入力参照信号xiと目的参照信号yiからなる2次元の数列(xi, yi)、i=0..N-1(Nは数列の個数)に対して、目的参照信号yiを入力参照信号xiから予測する以下の線形予測式を考える。なお、yiは教師信号とも呼ばれる。
このとき、線形予測の2乗誤差の和Eは以下の式で定義される。
上記2乗誤差Eを最小化する線形予測パラメータa, bは、Eをa、bで偏微分して得られる式を0と置くことから以下のように導出される。
b = (Σy/N - a*Σx/N)
しかしながら、上記最小2乗法によるパラメータ導出では、参照信号xi, yiに雑音成分等が加わっていると、十分な数Nの参照信号を用意しない場合には、精度の高い線形予測パラメータa、bを推定できない場合がある。また、Nが小さい場合や、参照信号に含まれる入力参照画素xiと目的参照画素yiの変化が小さい場合に、オーバーフィッティングになる可能性がある。そのため線形予測パラメータを推定する場合に、誤差Eに適当なパラメータコスト(正則化コスト)を加えたコストを考慮して、線形予測パラメータを導出するような方式ことが知られている。一般には、正則化項として、パラメータの値を0に近くなるような正則化コスト、すなわち、以下の式のようにaとbの2乗項に重みlambda_a、lambda_bをかけた形が知られている(リッジ回帰)。
しかしながら、リッジ回帰の正則化項を画像に適用しても、画素間の線形回帰では、線形予測パラメータaとbが0に近い値である、という仮定自体が成り立たないため、適当な結果が得られない。
2乗誤差の和E´をa、bで偏微分して得られる式を0と置くことで、上記式を、解くことができる。これにより、以下の線形パラメータa、bの推定式が得られる。
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-3)は、以下のように変形される。
上記は、第1パラメータa1の第2パラメータa2による除算で示される線形予測パラメータaの導出において、第1パラメータa1をk*costを加算して更新し、第2パラメータa2をacostを加算して更新することで、正則化項を考慮した線形予測パラメータaが得られることを示す。以下、本特許ではacost、及び、k*acostのような第1パラメータa1、第2パラメータa2の更新に用いられる値を正則化コスト(もしくはパラメータコスト)と呼ぶ。
図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から構成される。
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の対数である。
LM第1パラメータ導出部310414は、目的参照画素yと入力参照画素xの積の和XYと、目的参照画素yの和Yと入力参照画素xの和Xの積の差に基づいて第1パラメータa1を以下の式により導出する。
式(B-7)に示すように、XYは、カウントシフト値iCountShiftだけ左シフト、YとXの積は積算シフト値precShiftだけ右シフトしてから差を算出する。
aveY = Y >> iCountShift
a1 = XY - ((aveY * aveX)<<iCountShift); 式(B-7´)
a2 = XX - ((aveX * aveX)<<iCountShift); 式(B-8´)
このとき、aveX、aveYは、XとYの平均値であり、各々XとYを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だけ右シフトしてから加算しても良い。
XY = Σ(y[i] * y[i])>>precShift 式(B-5´)
なお、積算シフト値precShiftは以下等から導出しても良い。
なお、積算シフト値precShiftを用いる場合には以下に示すように、第1パラメータa1と第2パラメータa2、XY及びXXは、カウントシフト値iCountShiftだけ左シフト、XとXの積及びXとYの積は積算シフト値precShiftだけ右シフトしてから差を算出しても良い。
a2 = ( XX << iCountShift ) - (X * X) >> precShift
一般の小数点精度の最小2乗法であればパラメータaをa1/a2で推定することができるが、本特許では、パラメータの頑健性を向上させるために、場合に応じて正則化コストを加える。また、さらに本特許では、整数演算を行うために、シフト値iShiftを導入し、パラメータaとして、iShiftだけ左シフトした値(a1 << iShift) / a2を導出する。
本実施形態の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つの手段を備えることを特徴とする。
上記により、a1 / a2の値は、-2から127/64の間にクリップされる。従って、パラメータaの値であるa1 / a2 << iShiftの値も、-2<<iShiftから(127/64)<<iShiftにクリップされる。すなわち、iShift=6の場合、パラメータaは-128~127となり、8ビット整数の範囲に入る。
ここでm1、m2は正の整数。例えばm1=2から3、m2=2から3の値などが適当である。さらに整数よりも細かい単位で制限するために、以下の式でもクリップしても良い。
ここで、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正規化シフト部)
以下、a1 << iShift / a2に対応するパラメータaを整数処理により導出する前に、導出時に処理に必要な値域が大きくなりすぎないように、LM第1パラメータ正規化シフト部3104161で、a1の大きさをシフトにより調節しa1sを導出する。また、同様に、a2で除算する場合に参照するテーブルのサイズを制限するために、LM第2パラメータ正規化シフト部3104162によりa2の大きさをシフトにより調節しa2sを導出する。
式(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)により導出することができる。
なお、offsetA1はここでは10以下を満たす定数とする。
ここでShiftA1は、例えば6~14などの固定値を用いても良いし、ビットデプスに依存する値(例えばbitDepth - 2)などの値を用いても良い。
a2s = a2 >> iScaleShiftA2 式(B-16)
なお、正則化コストを用いる場合には、上記式において、a1、a2の代わりに正則化コストを減算もしくは加算後のa1´、a2´を用いる。
ここで、iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)であるから、以下の式が得られる。
ScaleShiftA <= ShiftA1 + offsetA1 - iShift
offsetA1は0以上、iShiftは5から8ビット、ShiftA1は14ビット~15ビットであるから、ScaleShiftAは常に0以上になる。
図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[]を用いることにより、a2sでの除算に相当する演算を、a2sの逆数に相当する逆数テーブル値invTable[a2s]との積と、log2(M)に相当する右シフトにより実現することができる。
なお、iCountShiftの右シフトは、参照領域の画素数Nで割ることに相当する。
LM予測フィルタ部31042は、前述の輝度成分から色差成分を予測するTYPE0や、色差成分から別の色差成分を予測するTYPE1の予測の場合には、LMパラメータ推定部31041が導出した推定パラメータを用いて、LM予測前の入力参照画素における予測ブロックに対応する予測画像predSamples []から、LM予測後の予測画像predSamples´[]を導出する。例えば、パラメータbを式(B-20)により導出する場合には以下の式を用いる。
なお、色コンポーネントが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予測前の予測画像predSamples []から、以下の式により、LM予測後の予測画像predSamples´[]を導出する。
なお、LM予測フィルタ部31042´のようにパラメータbを加算してからシフトする場合には、LMパラメータb導出部310417の代わりに、LMパラメータb導出部310417の別の構成LMパラメータb導出部310417´を用いても良い。この場合、目的参照画素yの和Yを固定シフト値iShiftだけ左シフトした値から、目的参照画素xの和Xにパラメータaをかけた値を引いた値を、参照画素の数で割ることにより、以下の式によりパラメータbを導出しても良い。
(LM予測フィルタ部31042B)
LM予測フィルタ部31042の別の構成として、残差を利用した以下のLM予測フィルタ部31042Bを用いても良い。
分(例えば第1色差成分のCb成分)の残差画像resSamples[x][y]から、目的参照信号に対応するLM予測後の(例えば第2色差成分のCr成分の)予測画像predSamples´[]を導出する。
上記のように、LM予測フィルタ部31042Bの動作は、線形予測を利用して参照色コンポーネントでの残差画像から、対象色コンポーネントでの残差画像を予測し、予測した残差画像を用いて、対象色コンポーネントでの予測画像を更新する。
以下、本実施形態に係るLMパラメータ推定部31041一つの構成としてLMパラメータ推定部31041Aを説明する。LMパラメータ推定部31041A(LM正則化コスト加算部310418A)は、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に、第1パラメータa1に0以上の第1コストa1costNを減算することを特徴とする。
LM正則化コスト加算部310418Aの動作を、図21のS1101、S1102を用いてフローチャートを用いて、再度、説明する。
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は以下の式で導出される。
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と所定の閾値との比較結果を利用する。
以下、LMパラメータ推定部31041一つの構成としてLMパラメータ推定部31041Bを説明する。LMパラメータ推定部31041B(LM正則化コスト加算部310418B)は、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に、第1パラメータa1に0以上の第1パラメータ正則化コストa1costPを加算することを特徴とする。
なお、正則化コストの加算は、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415で行っても良い。導出式は、既に説明した式(BC-7)、式(BC-7´)、式(BC-7´´)の式において、a1costNをa1costPに置き替えた式となる。
以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C-1D)参照)。
(a1 + a1costP) / a2 = a1/a2 - k / L。
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を加算することを特徴とする。
a1costP = (kP*a2)>>kshiftP
ここでkM>kPまたはkshiftP > kshiftM。例えばkM=kP=1、kshiftM=5、kshiftP=6とすれば良い。
以下、LMパラメータ推定部31041の一つの構成としてLMパラメータ推定部31041A2を説明する。既に説明したLMパラメータ推定部31041Aでは、第1パラメータa1に第1パラメータ正則化コストa1costNを減算していたが、LMパラメータ推定部31041A2では、第1パラメータa1に正則化コストa1costNを減算するのに加えて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。
a2costN = acost
上記の場合、パラメータaは、-a1costN/a2costN=-(1>>kshift)に近づくように補正がかかる。具体的には、1、0.5、0.25、0.125に近づくようなkshift=0、1、2、3が適当である。
a2costN = acost
例えば、k=17、kshift=5とすれば、-17/32=-0.53125に近づけるような正則化項が導入できる。
以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C-1D)参照)。
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パラメータ推定部31041の一つの構成としてLMパラメータ推定部31041B2を説明する。既に説明したLMパラメータ推定部31041Bでは、第1パラメータa1に第1パラメータ正則化コストa1costNを加算していたが、LMパラメータ推定部31041B2では、第1パラメータa1に第1パラメータ正則化コストa1costNを加算するのに加えて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。
以下、正則化コストa1costPに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C-1D)参照)。
a2costN = a2>>4
上記のように、a2costPは、上記コストa1costP以上であることが好適である、すなわち、a1costP / a2costPが1以下となることが好適である。
以下、LM正則化コスト加算部310418の一つの構成としてLM正則化コスト加算部310418C2を説明する。既に説明したLM正則化コスト加算部310418Cでは、第1パラメータa1に第1パラメータ正則化コスト(a1costN及びa1costP)を減算もしくは加算していたが、LM正則化コスト加算部310418C2では、第1パラメータa1に第1パラメータ正則化コスト(a1costN及びa1costP)を減算及び加算するのに加えて、第2パラメータa2に第2パラメータ正則化コスト(a2costN及びa2costP)を加算する。
以下、LMパラメータ推定部31041の備えるLM正則化コスト導出部3104180の詳細を説明する。LM正則化コスト導出部3104180は、例えば、以下の式(C-1A)から式(C-1D2)の何れか一項、もしくは、その組み合わせにより導出しても良い。
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正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Aを説明する。LM正則化コスト導出部3104180Aは、入力参照信号xと入力参照信号xの積の和XXに基づいて正則化コストを導出する。この値は常に0以上になる。
第2パラメータa2は、既に説明した式a2 = XX - ((aveX * aveX)<<iCountShift) のように入力参照信号xと入力参照信号xの積の和XXから所定の値を減算することにより計算される。従って、入力参照信号xと入力参照信号xの積の和XXにより導出される正則化コストは、第2パラメータa2と、同じレベルの値域であることが期待でき、正則化コストとして適当である。本構成のLM正則化コスト導出部3104180Aは、入力参照画素xと目的参照画素y[]の値域が比較的等しい場合に適当な正則化コストが導出できるという効果を奏する。
以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Bを説明する。LM正則化コスト導出部3104180Bは、入力参照信号xと目的参照信号yの積の和XYに基づいて正則化コストを導出する。この値は常に0以上になる。
第1パラメータa1は、既に説明した式XY - ((aveY * aveX)<<iCountShift)のように入力参照信号xと目的参照信号yの積の和XYから所定の値を減算することにより(計算される。従って、XYにより導出される正則化コストは、第1パラメータa1と、同じレベルの値域であることが期待でき、正則化コストとして適当である。入力参照画素x[]と目的参照画素y[]の積の和から導出されるXYは、入力参照画素xの値域や、目的参照画素y[]の値域によらずに適当な正則化コストが導出できるという効果を奏する。
以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Cを説明する。LM正則化コスト導出部3104180Cは、bitDepthに基づいて正則化コストを導出する。この値は常に0以上になる。
例えば、入力参照画素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は、この考えに基づいて、以下の式で正則化コストを導出する。
LM正則化コスト導出部3104180CのbitDepthに基づく方法では、入力参照画素xや目的参照画素y[]を用いないため、比較的小さい演算数で正則化コストが導出できるという効果を奏する。
以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Dを説明する。LM正則化コスト導出部3104180Dは、第2パラメータa2に基づいて正則化コストを導出する。例えば以下の式で導出する。この値は常に0以上になる。
例えば、k=1、kshift = 2。
さらに、第2パラメータa2に基づいて正則化コストを導出するLM正則化コスト導出部3104180Dは、XX、XY、bitDepthなどで導出された正則化コストacostを、a2から導出される値で上限をクリップすることで、正則化コストacostを導出しても良い(LM正則化コスト導出部3104180D2)。この値は常に0以上になる。
ここで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の大きさに合わせることが適当である。これにより正則化項が大きく効きすぎることを抑制する効果を奏する。
(インター予測パラメータ復号部の構成)
次に、インター予測パラメータ復号部303の構成について説明する。
図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の出力画像である。照度補償は、予測画像生成の対象となる対象ブロックに隣接する隣接領域の動き補償画像の画素値と、隣接領域の復号画像の変化が、対象ブロック内の画素値と、対象ブロックの原画との変化に類似しているとの仮定に基づいて行われる。
図24は、照度補償部3093の構成を示すブロック図である。照度補償部3093は、照度パラメータ推定部30931と、照度補償フィルタ部30932から構成される。照度パラメータ推定部30931は、積算シフト値導出部309311、積算値導出部309312、加算値導出部309313、第1パラメータ導出部309314、第2パラメータ導出部309315、パラメータa導出部309316、パラメータb導出部309317、正則化コスト加算部309318から構成される。
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の対数である。
第1パラメータ導出部309314は、目的参照画素yと入力参照画素xの積の和XYと、目的参照画素の和Yと入力参照画素の和Xの積の差から第1パラメータa1を以下の式により導出する。
式(B-7)に示すように、XYは、カウントシフト値iCountShiftだけ左シフトしてから差を算出する。
式(B-8)に示すように、XXは、カウントシフト値iCountShiftだけ左シフトしてから差を算出する。
第1パラメータ導出部309314により、a1 / a2の値は、0から2の間にクリップされる。従って、パラメータaの値であるa1 / a2 << iShiftの値も、0から2<<iShiftにクリップされる。すなわち、iShift=6の場合、パラメータaは0~128となり、8ビット非負整数の範囲に入る。
第1パラメータ正規化シフト部3093161は、第2正規化シフト値iScaleShiftA2に応じて、以下の式により第1正規化シフト値iScaleShiftA1を導出する。導出された第1正規化シフト値iScaleShiftA1は、テーブルベースパラメータa導出部3093163に出力される。
なお、offsetA1はここでは10以下を満たす定数とする。
a2s = a2 >> iScaleShiftA2 式(B-16)
これにより、正規化第1パラメータa1sと正規化第2パラメータa2sは各々、0から2のiShiftA1乗-1、0から2のShiftA2乗-1の間の値に正規化される。
ここで、iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)であるから、以下の式が得られる。
ScaleShiftA <= ShiftA1 + offsetA1 - iShift
offsetA1は0以上、iShiftは5から8ビット、ShiftA1は14ビット~15ビットであるから、ScaleShiftAは常に0以上になる。
図16は、本実施形態で用いる逆数テーブル値invTable[]である。既に説明したように図16の逆数invTable[x]は、インデックスxが0の場合に0となり、インデックスxが0以外の場合には、所定の定数(ここでは2の15乗)Mをxで割って整数化した値から導出される。
なお、iCountShiftの右シフトは、参照領域の画素数で割ることに相当する。
(重み予測)
重み予測部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)である。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesL0[ x ][ y ] + predSamplesL1[ x ][ y ] + offset2 ) >> shift2 )
ここで、shift2=15-bitDepth、offset2=1<<(shift2-1)である。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( (predSamplesLX[ x ][ y ] * w0 + 2log2WD - 1) >> log2WD ) + o0 )
ここで、log2WDは所定のシフト量を示す変数である。
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は、予測画像生成部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つの手段を備えることを特徴とする。
次に、インター予測パラメータ符号化部112の構成について説明する。インター予測パラメータ符号化部112は、インター予測パラメータ復号部303に対応する手段である。
(関連出願の相互参照)
本出願は、2015年10月5日に出願された日本国特許出願:特願2015-197489に対して優先権の利益を主張するものであり、それを参照することにより、その内容の全てが本書に含まれる。
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)
- インデックス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に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第2パラメータa2にコストa2costを加算する手段をさらに備えることを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第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に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第2パラメータa2にコストa2costNを加算する手段を備えることを特徴とする請求項6に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算し、上記第2パラメータa2にコストa2costPを加算する手段を備えることを特徴とする請求項6に記載の画像予測装置。
- 上記コストa2costは、上記コストa1costN以上であることを特徴とする請求項5に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を0とすることを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を、上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記閾値THNを0、上記閾値THPを上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記閾値THNを、上記第2パラメータa2を所定の定数だけ右シフトすることにより導出する、ことを特徴とする請求項6に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値xiの積の和XXから導出することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値yiの積の和XYから導出することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、画素のビットデプス値から導出することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2を所定の定数だけ右シフトすることにより、導出することを特徴とする請求項1に記載の画像予測装置。
- 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa1を所定の定数だけ右シフトした値と、画素のビットデプス値から導出される値との最小値から、導出することを特徴とする請求項1に記載の画像予測装置。
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)
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)
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)
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)
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 |
-
2016
- 2016-08-26 US US15/765,276 patent/US20180302641A1/en not_active Abandoned
- 2016-08-26 JP JP2017544411A patent/JPWO2017061189A1/ja active Pending
- 2016-08-26 WO PCT/JP2016/075052 patent/WO2017061189A1/ja active Application Filing
Patent Citations (3)
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)
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)
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 |