WO2013065301A1 - Video coding device, video coding method, video coding program, transmission device, transmission method, and transmission program, as well as video decoding device, video decoding method, video decoding program, reception device, reception method, and reception program - Google Patents
Video coding device, video coding method, video coding program, transmission device, transmission method, and transmission program, as well as video decoding device, video decoding method, video decoding program, reception device, reception method, and reception program Download PDFInfo
- Publication number
- WO2013065301A1 WO2013065301A1 PCT/JP2012/006981 JP2012006981W WO2013065301A1 WO 2013065301 A1 WO2013065301 A1 WO 2013065301A1 JP 2012006981 W JP2012006981 W JP 2012006981W WO 2013065301 A1 WO2013065301 A1 WO 2013065301A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- inter prediction
- prediction information
- candidates
- encoded
- prediction
- 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/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
-
- 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/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/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
Definitions
- the present invention relates to a moving image encoding and decoding technique, and more particularly to a moving image encoding and decoding technique using motion compensated prediction.
- MPEG-4 AVC / H.3 is a typical video compression encoding system.
- H.264 Motion compensation is used in which a picture is divided into a plurality of rectangular blocks, a picture that has already been encoded / decoded is used as a reference picture, and motion from the reference picture is predicted. This method of predicting motion by motion compensation is called inter prediction or motion compensated prediction.
- MPEG-4 AVC / H. In the inter prediction in H.264, a plurality of pictures can be used as reference pictures, and the most suitable reference picture is selected for each block from the plurality of reference pictures to perform motion compensation. Therefore, a reference index is assigned to each reference picture, and the reference picture is specified by this reference index.
- L0 prediction mainly used as forward prediction
- L1 prediction list 1 prediction
- bi-prediction using two inter predictions of L0 prediction and L1 prediction at the same time is also defined.
- bi-directional prediction is performed, the inter-predicted signals of L0 prediction and L1 prediction are multiplied by a weighting coefficient, an offset value is added and superimposed, and a final inter-predicted image signal is obtained.
- weighting coefficients and offset values used for weighted prediction representative values are set for each reference picture in each list and encoded.
- the encoding information related to inter prediction includes, for each block, a prediction mode for distinguishing between L0 prediction and L1 prediction and bi-prediction, a reference index for specifying a reference picture for each reference list for each block, and a moving direction and a moving amount of the block.
- MPEG-4 AVC / H. H.264 defines a direct mode for generating inter prediction information of a block to be encoded or decoded from inter prediction information of an encoded or decoded block.
- the direct mode encoding of inter prediction information is not necessary, so that encoding efficiency is improved.
- a picture in which the reference index of L1 is registered as 0 is defined as a reference picture colPic.
- a block in the same position as the block to be encoded or decoded in the reference picture colPic is set as a reference block.
- the L0 motion vector of the reference block is set as the reference motion vector mvCol, and the reference block is not encoded using the L0 prediction and is encoded using the L1 prediction. If this is the case, the L1 motion vector of the reference block is set as the reference motion vector mvCol.
- the picture referred to by the reference motion vector mvCol is the L0 reference picture in the temporal direct mode
- the reference picture colPic is the L1 reference picture in the temporal direct mode.
- the L0 motion vector mvL0 and the L1 motion vector mvL1 in the temporal direct mode are derived from the reference motion vector mvCol by scaling calculation processing.
- the inter-picture distance td is derived by subtracting the POC of the L0 reference picture in the temporal direct mode from the POC of the base picture colPic.
- POC is a variable associated with the picture to be encoded, and is set to a value that increases by 1 in the picture output order. The difference in POC between two pictures indicates the inter-picture distance in the time axis direction.
- td POC of base picture colPic-POC of L0 reference picture in temporal direct mode
- the inter-picture distance tb is derived by subtracting the POC of the L0 reference picture in the temporal direct mode from the POC of the picture to be encoded or decoded.
- tb POC of picture to be encoded or decoded-POC of L0 reference picture in temporal direct mode
- the motion vector mvL0 of L0 in the temporal direct mode is derived from the reference motion vector mvCol by scaling calculation processing.
- mvL0 tb / td * mvCol
- the motion vector mvL1 of L1 is derived by subtracting the reference motion vector mvCol from the motion vector mvL0 of L0 in the temporal direct mode.
- mvL1 mvL0-mvCol
- the present inventors have come to recognize the necessity of further compressing the encoded information and reducing the overall code amount in the moving image encoding method using motion compensated prediction.
- the present invention has been made in view of such a situation, and an object of the present invention is to calculate a moving picture coding that reduces coding amount of coding information and improves coding efficiency by calculating coding information candidates. And providing a decoding technique.
- a video encoding device is a video encoding device that encodes a video using inter prediction in units of blocks obtained by dividing each picture.
- Prediction information deriving unit (104) for deriving inter prediction information candidates from the inter prediction information, and inter prediction information used for inter prediction of the prediction block to be encoded from the derived inter prediction information candidates
- a first encoding unit that encodes a syntax element indicating the number of candidates for the inter prediction information. Includes a (110), an index indicating a candidate for the inter prediction information determined by the determination unit, a second encoding unit for encoding based on a number of candidates of the inter prediction information and (110).
- This apparatus is a moving picture encoding apparatus that encodes the moving picture using motion compensated prediction in units of blocks obtained by dividing each picture of a moving picture, and a prediction block adjacent to a prediction block to be encoded, or Prediction for deriving a candidate for inter prediction information from inter prediction information of a prediction block existing at the same position or in the vicinity of the prediction block of the encoding target in a coded picture that is temporally different from the prediction block of the encoding target
- Still another aspect of the present invention is a video encoding method.
- This method is a moving picture coding method for coding a moving picture using inter prediction in units of blocks obtained by dividing each picture, and the coding target prediction block in the same picture as the coding target prediction block
- Prediction information for deriving a candidate for inter prediction information from inter prediction information of an encoded prediction block close to the image and inter prediction information of a prediction block in a coded picture different from the prediction block to be encoded
- a derivation step a determination step for determining inter prediction information candidates to be used for inter prediction of the prediction block to be encoded from the derived inter prediction information candidates, and a syntax indicating the number of candidates for the inter prediction information
- Still another aspect of the present invention is a transmission device.
- This apparatus includes a packet processing unit that packetizes an encoded bit sequence encoded by a moving image encoding method that encodes a moving image using inter prediction in units of blocks obtained by dividing each picture, and obtains encoded data; A transmission unit that transmits the packetized encoded data.
- the moving picture encoding method is different from the prediction block of the encoding target and the inter prediction information of the encoded prediction block adjacent to the prediction block of the encoding target in the same picture as the prediction block to be encoded.
- a prediction information deriving step for deriving a candidate of inter prediction information from inter prediction information of a prediction block in a coded picture, and an inter prediction information of the prediction block to be encoded from the derived candidate of inter prediction information.
- a determination step for determining candidates for inter prediction information used for prediction; a first encoding step for encoding a syntax element indicating the number of candidates for inter prediction information; and the inter prediction information determined by the determination step.
- Still another aspect of the present invention is a transmission method.
- This method includes a packet processing step of packetizing an encoded bit string encoded by a moving image encoding method that encodes a moving image using inter prediction in units of blocks obtained by dividing each picture to obtain encoded data; Transmitting the packetized encoded data.
- the moving picture encoding method is different from the prediction block of the encoding target and the inter prediction information of the encoded prediction block adjacent to the prediction block of the encoding target in the same picture as the prediction block to be encoded.
- a prediction information deriving step for deriving a candidate of inter prediction information from inter prediction information of a prediction block in a coded picture, and an inter prediction information of the prediction block to be encoded from the derived candidate of inter prediction information.
- a moving picture decoding apparatus is a moving picture decoding apparatus that decodes a coded bit sequence in which a moving picture is encoded using inter prediction in units of blocks obtained by dividing each picture, and the prediction of a decoding target Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded
- a prediction information deriving unit (205) for deriving prediction information candidates; a first decoding unit (202) for decoding a syntax element indicating the number of inter prediction information candidates and acquiring the number of inter prediction information candidates; , Based on the number of candidates for the inter prediction information acquired by the first decoding unit, used for inter prediction of the prediction block to be decoded
- a second decoding unit (202) that decodes an index indicating a candidate for inter prediction information and a candidate for inter prediction information indicated by the index are selected from the inter prediction information candidates derived by the prediction information deriving
- This apparatus is a moving picture decoding apparatus that decodes a coded bit sequence in which the moving picture is coded using motion compensated prediction in units of blocks obtained by dividing each picture of a moving picture, and is adjacent to a prediction block to be decoded.
- a candidate for inter prediction information is derived from inter prediction information of a prediction block existing at the same position or in the vicinity of the prediction block to be decoded in a decoded picture temporally different from the prediction block to be decoded or the prediction block to be decoded
- a prediction information deriving unit (205) a first decoding unit (202) for decoding a syntax element indicating the number of inter prediction information candidates, and obtaining the number of inter prediction information candidates, and the first decoding
- a candidate number limiting unit (23) that limits the number of candidate inter prediction information using the number of inter prediction information candidates acquired by )
- a second index that decodes an index indicating the candidate of inter prediction information that becomes inter prediction information of the prediction block to be decoded, based on the number of candidates of inter prediction information acquired by the first decoding unit.
- the decoding unit (202) selects the inter prediction information candidate indicated by the decoded index from the inter prediction information candidates with a limited number of candidates, and the decoding is performed according to the selected inter prediction information candidate.
- a motion compensation prediction unit (206) that performs inter prediction on the target prediction block.
- Still another aspect of the present invention is a moving picture decoding method.
- This method is a moving picture decoding method for decoding a coded bit string in which a moving picture is encoded using inter prediction in units of blocks obtained by dividing each picture, and the decoding in the same picture as a prediction block to be decoded Prediction for deriving a candidate of inter prediction information from inter prediction information of a decoded prediction block close to the target prediction block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded
- An information deriving step a first decoding step of decoding a syntax element indicating the number of inter prediction information candidates; and obtaining the number of inter prediction information candidates; and the inter prediction information acquired in the first decoding step.
- a second decoding step of decoding the index, from the candidate of the said inter-prediction information derived by the prediction information deriving step includes a selection step of selecting the candidate of the inter prediction information the index shown.
- Still another aspect of the present invention is a receiving device.
- This apparatus is a receiving apparatus that receives and decodes an encoded bit string in which a moving image is encoded, and an encoded bit sequence in which the moving image is encoded using inter prediction in units of blocks obtained by dividing each picture.
- a receiving unit that receives packetized encoded data, a restoration unit that performs packet processing on the received encoded data and restores an original encoded bit string, and the decoding in the same picture as a prediction block to be decoded Prediction for deriving a candidate of inter prediction information from inter prediction information of a decoded prediction block close to the target prediction block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded
- An information deriving unit (205) and decoding a syntax element indicating the number of inter prediction information candidates from the restored encoded bit string
- the first decoding unit (202) that acquires the number of candidates for inter prediction information and the inter prediction of the prediction block to be decoded based on the number of candidates for the inter prediction information acquired by the first decoding unit.
- An index indicating a candidate for inter prediction information is indicated by the index from a second decoding unit (202) that decodes the decoded encoded bit string from the restored encoded bit sequence and the candidate for inter prediction information derived by the prediction information deriving unit. And a selection unit (205) that selects a candidate for inter prediction information.
- Still another aspect of the present invention is a receiving method.
- This method is a receiving method for receiving and decoding an encoded bit string in which a moving image is encoded, and an encoded bit sequence in which a moving image is encoded using inter prediction in units of blocks obtained by dividing each picture.
- Prediction for deriving a candidate of inter prediction information from inter prediction information of a decoded prediction block close to the target prediction block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded
- a syntax element indicating the number of inter prediction information candidates is decoded from the information derivation step and the restored encoded bit string.
- a second decoding step for decoding an index indicating a prediction information candidate from the restored encoded bit string, and an inter prediction information indicated by the index from the inter prediction information candidate derived by the prediction information deriving step.
- FIG. 10 is a flowchart illustrating a setting process procedure of a final merge candidate number finalNumMergeCand that is common on the encoding side and the decoding side according to the method of Embodiment 1.
- FIG. 10 It is a figure explaining the syntax of the bit stream of the slice header regarding merge mode. 10 is a flowchart for explaining a setting process procedure of a final merge candidate number finalNumMergeCand on the encoding side according to the method of the second embodiment.
- FIG. 10 is a flowchart for explaining a setting process procedure of a final merge candidate number finalNumMergeCand on the decoding side according to the method of the second embodiment.
- the present embodiment with regard to moving picture coding, in particular, to improve coding efficiency in moving picture coding in which a picture is divided into rectangular blocks of an arbitrary size and shape and motion compensation is performed in units of blocks between pictures.
- a plurality of predicted motion vectors are derived from the motion vectors of the block adjacent to the encoding target block or the block of the encoded picture, and the difference vector between the motion vector of the encoding target block and the selected prediction motion vector
- the amount of code is reduced by calculating and encoding.
- the coding amount is reduced by deriving the coding information of the coding target block by using the coding information of the block adjacent to the coding target block or the block of the coded picture.
- a plurality of predicted motion vectors are calculated from the motion vectors of a block adjacent to the decoding target block or a decoded picture block, and selected from the difference vector decoded from the encoded stream
- the motion vector of the decoding target block is calculated from the predicted motion vector and decoded.
- the encoding information of the decoding target block is derived by using the encoding information of the block adjacent to the decoding target block or the block of the decoded picture.
- a slice obtained by dividing a picture into one or more is a basic unit of encoding, and a slice type, which is information indicating a slice type, is set for each slice.
- the slice is equally divided into square units of any same size.
- This unit is defined as a tree block, and is a block to be encoded or decoded in a slice (a block to be encoded in the encoding process and a block to be decoded in the decoding process. It is used as a basic unit of address management for specifying. Except for monochrome, the tree block is composed of one luminance signal and two color difference signals.
- the size of the tree block can be freely set to a power of 2 depending on the picture size and the texture in the picture.
- the tree block divides the luminance signal and chrominance signal in the tree block hierarchically into four parts (two parts vertically and horizontally) as necessary, The block can be made smaller in block size.
- Each block is defined as a coding block, and is a basic unit of processing when performing coding and decoding. Except for monochrome, the coding block is also composed of one luminance signal and two color difference signals.
- the maximum size of the coding block is the same as the size of the tree block.
- An encoded block having the minimum size of the encoded block is called a minimum encoded block, and can be freely set to a power of 2.
- the coding block A is a single coding block without dividing the tree block.
- the encoding block B is an encoding block formed by dividing a tree block into four.
- the coding block C is a coding block obtained by further dividing the block obtained by dividing the tree block into four.
- the coding block D is a coding block obtained by further dividing the block obtained by dividing the tree block into four parts and further dividing the block into four twice hierarchically, and is a coding block of the minimum size.
- a mode for identifying the intra prediction (MODE_INTRA) and the inter prediction (MODE_INTER) is defined as a prediction mode (PredMode).
- the prediction mode (PredMode) has intra prediction (MODE_INTRA) or inter prediction (MODE_INTER) as a value, and can be selected and encoded.
- PartMode A mode for identifying the division method of the luminance signal and the color difference signal of the coding block is defined as a division mode (PartMode). Furthermore, this divided block is defined as a prediction block. As shown in FIG. 4, four types of partition modes (PartMode) are defined according to the method of dividing the luminance signal of the coding block. The division mode (PartMode) of what is regarded as one prediction block without dividing the luminance signal of the coding block (FIG.
- the division mode (PartMode) of the two prediction blocks (FIG. 4B) is divided into 2N ⁇ N divisions (PART_2NxN), the luminance signal of the encoded block is divided in the vertical direction, and the encoded block is
- the partition mode (PartMode) of the two prediction blocks (FIG. 4 (c)) is N ⁇ 2N partition (PART_Nx2N), and the luminance signal of the encoded block is divided into four prediction blocks by horizontal and vertical equal partitioning.
- the division mode (PartMode) of (FIG. 4D) is defined as N ⁇ N division (PART_NxN), respectively. Except for N ⁇ N division (PART_NxN) of intra prediction (MODE_INTRA), the color difference signal is also divided for each division mode (PartMode) in the same manner as the vertical / horizontal division ratio of the luminance signal.
- a number starting from 0 is assigned to the prediction block existing inside the coding block in the coding order. This number is defined as a split index PartIdx.
- a number described in each prediction block of the encoded block in FIG. 4 represents a partition index PartIdx of the prediction block.
- the division index PartIdx of the upper prediction block is set to 0, and the division index PartIdx of the lower prediction block is set to 1.
- the division index PartIdx of the left prediction block is set to 0, and the division index PartIdx of the right prediction block is set to 1.
- the partition index PartIdx of the upper left prediction block is 0, the partition index PartIdx of the upper right prediction block is 1, and the partition index PartIdx of the lower left prediction block is 2.
- the division index PartIdx of the prediction block at the lower right is set to 3.
- the partition mode (PartMode) is 2N ⁇ 2N partition (PART_2Nx2N), 2N ⁇ N partition (PART_2NxN), and N ⁇ 2N partition (PART_Nx2N) is defined, and only the coding block D which is the smallest coding block, the partition mode (PartMode) is 2N ⁇ 2N partition (PART_2Nx2N), 2N ⁇ N partition (PART_2NxN), and N ⁇ 2N
- N ⁇ N division (PART_NxN) is defined.
- the reason why N ⁇ N division (PART_NxN) is not defined other than the smallest coding block is that, except for the smallest coding block, the coding block can be divided into four to represent a small coding block.
- the position of each block including the tree block, the encoding block, the prediction block, and the transform block according to the present embodiment has the position of the pixel of the luminance signal at the upper left of the luminance signal screen as the origin (0, 0).
- the pixel position of the upper left luminance signal included in each block area is represented by two-dimensional coordinates (x, y).
- the direction of the coordinate axis is a right direction in the horizontal direction and a downward direction in the vertical direction, respectively, and the unit is one pixel unit of the luminance signal.
- the luminance signal and the color difference signal have the same image size (number of pixels) and the color difference format is 4: 4: 4.
- the luminance signal and the color difference signal have a different color size format of 4: 4.
- the position of each block of the color difference signal is represented by the coordinates of the pixel of the luminance signal included in the block area, and the unit is one pixel of the luminance signal. In this way, not only can the position of each block of the color difference signal be specified, but also the relationship between the positions of the luminance signal block and the color difference signal block can be clarified only by comparing the coordinate values.
- Inter prediction mode in which prediction is performed from an image signal of a decoded picture, a plurality of decoded pictures can be used as reference pictures.
- a reference index is attached to each prediction block. Any two reference pictures can be selected for each prediction block and inter prediction can be performed, and there are L0 prediction (Pred_L0), L1 prediction (Pred_L1), and bi-prediction (Pred_BI) as inter prediction modes.
- the reference picture is managed by L0 (reference list 0) and L1 (reference list 1) of the list structure, and the reference picture can be specified by specifying the reference index of L0 or L1.
- L0 prediction is inter prediction that refers to a reference picture managed in L0
- L1 prediction is inter prediction that refers to a reference picture managed in L1
- bi-prediction is This is inter prediction in which both L0 prediction and L1 prediction are performed and one reference picture managed by each of L0 and L1 is referred to. Only L0 prediction can be used for inter prediction with a slice type of P slice, and L0 prediction, L1 prediction, and bi-prediction (Pred_BI) that averages or weights and adds L0 prediction and L1 prediction can be used for inter prediction with a slice type of B slice. . In the subsequent processing, it is assumed that the constants and variables with the subscript LX in the output are processed for each of L0 and L1.
- merge mode In the merge mode, the prediction mode of the prediction block to be encoded or decoded, the inter prediction information such as the reference index and the motion vector is not encoded or decoded, but within the same picture as the prediction block to be encoded or decoded.
- inter prediction is performed by deriving inter prediction information of a prediction block to be encoded or decoded from inter prediction information of a prediction block existing in the vicinity (neighboring position).
- the prediction block adjacent to the prediction block to be encoded or decoded in the same picture as the prediction block to be encoded or decoded and the inter prediction information of the prediction block are spatial merge candidates, the prediction block and time to be encoded or decoded Prediction information derived from a prediction block existing at the same position as or near (previously near) a prediction block to be encoded or decoded of a differently encoded or decoded picture and inter prediction information of the prediction block Are time merge candidates.
- Each merge candidate is registered in the merge candidate list, and the merge candidate used in the inter prediction is specified by the merge index.
- FIGS. 5, 6, 7 and 8 are diagrams for explaining a prediction block adjacent to a prediction block to be encoded or decoded in the same picture as the prediction block to be encoded or decoded.
- FIG. 9 shows an already encoded or decoded prediction existing in the same position as or near the prediction block to be encoded or decoded in a picture that has been encoded or decoded that is temporally different from the prediction block to be encoded or decoded. It is a figure explaining a block. A prediction block adjacent in the spatial direction of a prediction block to be encoded or decoded and a prediction block at the same position at different times will be described with reference to FIGS. 5, 6, 7, 8, and 9.
- this embodiment when the size of the prediction block adjacent to the left side of the prediction block to be encoded or decoded is smaller than the prediction block to be encoded or decoded and there are a plurality of prediction blocks, this embodiment In the embodiment, only the lowest prediction block A10 among the prediction blocks adjacent to the left side is set as the prediction block A adjacent to the left side.
- the left side in this embodiment Only the rightmost prediction block B10 among the prediction blocks adjacent to is set as the prediction block B adjacent to the upper side.
- the prediction block F adjacent to the left side of the prediction block to be encoded or decoded is larger than the prediction block to be encoded or decoded, it is adjacent to the left side according to the above condition. If the prediction block F is adjacent to the left side of the prediction block to be encoded or decoded, the prediction block A is determined. If the prediction block F is adjacent to the lower left vertex of the prediction block to be encoded or decoded, the prediction block D is determined. If it is adjacent to the upper left vertex of the prediction block to be encoded or decoded, it is determined as a prediction block E. In the example of FIG. 7, the prediction block A, the prediction block D, and the prediction block E are the same prediction block.
- the prediction block G adjacent to the upper side of the prediction block to be encoded or decoded is larger than the prediction block to be encoded or decoded, it is adjacent to the upper side according to the above condition.
- the prediction block B is determined.
- the prediction block G is adjacent to the upper right vertex of the prediction block to be encoded or decoded, the prediction block C is determined.
- the prediction block B, the prediction block C, and the prediction block E are the same prediction block.
- the decoded prediction blocks T0 and T1 are defined as prediction blocks at the same position at different times.
- (About POC) POC is a variable associated with the picture to be encoded, and is set to a value that increases by 1 in the picture output order. Based on the POC value, it is possible to determine whether they are the same picture, to determine the anteroposterior relationship between pictures in the output order, or to derive the distance between pictures. For example, if the POCs of two pictures have the same value, it can be determined that they are the same picture. When the POCs of two pictures have different values, it can be determined that the picture with the smaller POC value is the picture output first, and the difference between the POCs of the two pictures indicates the inter-picture distance in the time axis direction. Show.
- FIG. 1 is a block diagram showing a configuration of a moving picture coding apparatus according to an embodiment of the present invention.
- the moving image encoding apparatus includes an image memory 101, a header information setting unit 117, a motion vector detection unit 102, a difference motion vector calculation unit 103, an inter prediction information derivation unit 104, a motion compensation prediction unit 105, and an intra prediction unit.
- a multiplexing unit 112 an inverse quantization / inverse orthogonal transform unit 113, a decoded image signal superimposing unit 114, an encoded information storage memory 115, and a decoded image memory 116 are provided.
- the header information setting unit 117 sets information in units of sequences, pictures, and slices.
- the set sequence, picture, and slice unit information is supplied to the inter prediction information deriving unit 104 and the first encoded bit string generating unit 118, and is also supplied to all blocks (not shown).
- the image memory 101 temporarily stores the image signal of the encoding target picture supplied in the order of shooting / display time.
- the image memory 101 supplies the stored image signal of the picture to be encoded to the motion vector detection unit 102, the prediction method determination unit 107, and the residual signal generation unit 108 in units of predetermined pixel blocks.
- the image signals of the pictures stored in the order of shooting / display time are rearranged in the encoding order and output from the image memory 101 in units of pixel blocks.
- the motion vector detection unit 102 uses the motion vector for each prediction block size and each prediction mode by block matching between the image signal supplied from the image memory 101 and the reference picture supplied from the decoded image memory 116 for each prediction block. Detection is performed in units, and the detected motion vector is supplied to the motion compensation prediction unit 105, the difference motion vector calculation unit 103, and the prediction method determination unit 107.
- the difference motion vector calculation unit 103 calculates a plurality of motion vector predictor candidates by using the encoded information of the already encoded image signal stored in the encoded information storage memory 115, and generates a prediction motion vector list.
- the optimum motion vector predictor is selected from a plurality of motion vector predictor candidates registered and registered in the motion vector predictor list, and a motion vector difference is calculated from the motion vector detected by the motion vector detector 102 and the motion vector predictor. Then, the calculated difference motion vector is supplied to the prediction method determination unit 107.
- a prediction motion vector index that identifies a prediction motion vector selected from prediction motion vector candidates registered in the prediction motion vector list is supplied to the prediction method determination unit 107.
- the inter prediction information deriving unit 104 derives merge candidates in the merge mode.
- a plurality of merge candidates are derived using the encoding information of the already encoded prediction block stored in the encoding information storage memory 115 and registered in a merge candidate list described later, and registered in the merge candidate list Flags predFlagL0 [xP] [yP], predFlagL1 [xP indicating whether or not to use the L0 prediction and L1 prediction of each prediction block of the selected merge candidate from among a plurality of merge candidates ] [yP], reference index refIdxL0 [xP] [yP], refIdxL1 [xP] [yP], motion vector mvL0 [xP] [yP], mvL1 [xP] [yP], etc.
- a merge index for specifying the selected merge candidate is supplied to the prediction method determination unit 107.
- xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture. The detailed configuration and operation of the inter prediction information deriving unit 104 will be described later.
- the motion compensated prediction unit 105 generates a predicted image signal by inter prediction (motion compensated prediction) from the reference picture using the motion vectors detected by the motion vector detection unit 102 and the inter prediction information deriving unit 104, and generates the predicted image signal. This is supplied to the prediction method determination unit 107.
- inter prediction motion compensated prediction
- L0 prediction and L1 prediction one-way prediction is performed.
- Pred_BI bi-prediction
- bi-directional prediction is performed, the inter-predicted signals of L0 prediction and L1 prediction are adaptively multiplied by weighting factors, offset values are added and superimposed, and finally A predicted image signal is generated.
- the intra prediction unit 106 performs intra prediction for each intra prediction mode.
- a prediction image signal is generated by intra prediction from the decoded image signal stored in the decoded image memory 116, a suitable intra prediction mode is selected from a plurality of intra prediction modes, the selected intra prediction mode, and A prediction image signal corresponding to the selected intra prediction mode is supplied to the prediction method determination unit 107.
- the prediction method determination unit 107 stores information indicating the determined prediction method and encoded information including a motion vector corresponding to the determined prediction method in the encoded information storage memory 115.
- the encoding information stored here is a flag predFlagL0 [xP] [yP], predFlagL1 [that indicates whether to use the prediction mode PredMode, the partition mode PartMode, the L0 prediction of each prediction block, and the L1 prediction of each prediction block.
- xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture.
- PredMode is inter prediction (MODE_INTER)
- a flag predFlagL0 [xP] [yP] indicating whether to use L0 prediction and a flag predFlagL1 [xP] [yP] indicating whether to use L1 prediction are Both are zero.
- the flag predFlagL0 [xP] [yP] indicating whether or not to use L0 prediction uses 1, L1 prediction.
- the flag predFlagL1 [xP] [yP] indicating whether or not is zero.
- the flag predFlagL0 [xP] [yP] indicating whether to use L0 prediction is 0, and the flag predFlagL1 [xP] [yP] indicating whether to use L1 prediction is 1.
- the prediction method determination unit 107 supplies a prediction image signal corresponding to the determined prediction mode to the residual signal generation unit 108 and the decoded image signal superimposition unit 114.
- the residual signal generation unit 108 generates a residual signal by performing subtraction between the image signal to be encoded and the predicted image signal, and supplies the residual signal to the orthogonal transform / quantization unit 109.
- the orthogonal transform / quantization unit 109 performs orthogonal transform and quantization on the residual signal according to the quantization parameter to generate an orthogonal transform / quantized residual signal, and a third encoded bit string generation unit 111 And supplied to the inverse quantization / inverse orthogonal transform unit 113. Further, the orthogonal transform / quantization unit 109 stores the quantization parameter in the encoded information storage memory 115.
- the first encoded bit string generation unit 118 encodes the sequence, picture, and slice unit information set by the header information setting unit 117. A first encoded bit string is generated and supplied to the multiplexing unit 112.
- the second encoded bit string generation unit 110 encodes encoding information corresponding to the prediction method determined by the prediction method determination unit 107 for each encoded block and prediction block. Specifically, in the prediction mode PredMode, partition mode PartMode, and inter prediction (PRED_INTER) for each coding block, a flag that determines whether or not the mode is merge mode, merge index in the case of merge mode, and inter prediction in the case of not in merge mode Encoding information such as information on the mode, the predicted motion vector index, and the difference motion vector is encoded according to a prescribed syntax rule described later to generate a second encoded bit string, which is supplied to the multiplexing unit 112.
- PredMode partition mode PartMode
- PRED_INTER inter prediction
- the third encoded bit string generation unit 111 entropy-encodes the residual signal that has been orthogonally transformed and quantized according to a specified syntax rule to generate a third encoded bit string, and supplies the third encoded bit string to the multiplexing unit 112.
- the multiplexing unit 112 multiplexes the first encoded bit string, the second encoded bit string, and the third encoded bit string in accordance with a specified syntax rule, and outputs a bit stream.
- the inverse quantization / inverse orthogonal transform unit 113 performs inverse quantization and inverse orthogonal transform on the orthogonal transform / quantized residual signal supplied from the orthogonal transform / quantization unit 109 to calculate a residual signal, and performs decoding. This is supplied to the image signal superimposing unit 114.
- the decoded image signal superimposing unit 114 superimposes the predicted image signal according to the determination by the prediction method determining unit 107 and the residual signal subjected to inverse quantization and inverse orthogonal transform by the inverse quantization / inverse orthogonal transform unit 113 to decode the decoded image. Is generated and stored in the decoded image memory 116. Note that the decoded image may be stored in the decoded image memory 116 after filtering processing for reducing distortion such as block distortion due to encoding.
- FIG. 2 is a block diagram showing the configuration of the moving picture decoding apparatus according to the embodiment of the present invention corresponding to the moving picture encoding apparatus of FIG.
- the moving picture decoding apparatus includes a separation unit 201, a first encoded bit string decoding unit 212, a second encoded bit string decoding unit 202, a third encoded bit string decoding unit 203, a motion vector calculation unit 204, and inter prediction information.
- a derivation unit 205, a motion compensation prediction unit 206, an intra prediction unit 207, an inverse quantization / inverse orthogonal transform unit 208, a decoded image signal superimposing unit 209, an encoded information storage memory 210, and a decoded image memory 211 are provided.
- the decoding process of the moving picture decoding apparatus in FIG. 2 corresponds to the decoding process provided in the moving picture encoding apparatus in FIG. 1, so the motion compensation prediction unit 206 in FIG.
- the configuration of the inverse orthogonal transform unit 208, the decoded image signal superimposing unit 209, the encoded information storage memory 210, and the decoded image memory 211 is the same as that of the motion compensation prediction unit 105, the inverse quantization / inverse of the moving image encoding device in FIG.
- the orthogonal transform unit 113, the decoded image signal superimposing unit 114, the encoded information storage memory 115, and the decoded image memory 116 have functions corresponding to the respective configurations.
- the bit stream supplied to the separation unit 201 is separated according to a rule of a prescribed syntax, and the separated encoded bit string is a first encoded bit string decoding unit 212, a second encoded bit string decoding unit 202, and a third encoded bit string.
- the data is supplied to the decoding unit 203.
- the first encoded bit string decoding unit 212 decodes the supplied encoded bit string to obtain information in units of sequences, pictures, and slices. Although the obtained sequence, picture, and slice unit information is not shown, it is supplied to all blocks.
- the second encoded bit string decoding unit 202 decodes the supplied encoded bit string to obtain encoded block unit information and predicted block unit encoded information. Specifically, in the prediction mode PredMode for determining whether the prediction is inter prediction (PRED_INTER) or intra prediction (PRED_INTRA) for each coding block, split mode PartMode, and inter prediction (PRED_INTER), a flag for determining whether the mode is merge mode, When the merge mode is selected, the merge index is decoded.
- PredMode for determining whether the prediction is inter prediction (PRED_INTER) or intra prediction (PRED_INTRA) for each coding block
- PRED_INTER inter prediction
- a flag for determining whether the mode is merge mode When the merge mode is selected, the merge index is decoded.
- the encoded information related to the inter prediction mode, the predicted motion vector index, the difference motion vector, and the like is decoded according to a predetermined syntax rule to be described later, and the encoded information is a motion vector calculation unit 204, supplied to the inter prediction information deriving unit 205 or the intra prediction unit 207.
- the third encoded bit string decoding unit 203 calculates a residual signal that has been orthogonally transformed / quantized by decoding the supplied encoded bit string, and dequantized / inverted the residual signal that has been orthogonally transformed / quantized. This is supplied to the orthogonal transform unit 208.
- the motion vector calculation unit 204 stores the encoded information of the already decoded image signal stored in the encoded information storage memory 210.
- the encoding information of the prediction block supplied / stored here includes flags predFlagL0 [xP] [yP], predFlagL1 [xP] [yP indicating whether to use the prediction mode PredMode, the partition mode PartMode, the L0 prediction, and the L1 prediction. ], L0, L1 reference indices refIdxL0 [xP] [yP], refIdxL1 [xP] [yP], L0, L1 motion vectors mvL0 [xP] [yP], mvL1 [xP] [yP], and the like.
- xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture.
- the flag predFlagL0 indicating whether to use L0 prediction is 1, and the flag predFlagL1 indicating whether to use L1 prediction is 0 It is.
- the inter prediction mode is L1 prediction (Pred_L1)
- the flag predFlagL0 indicating whether to use L0 prediction is 0, and the flag predFlagL1 indicating whether to use L1 prediction is 1.
- the inter prediction mode is bi-prediction (Pred_BI)
- a flag predFlagL0 indicating whether to use L0 prediction and a flag predFlagL1 indicating whether to use L1 prediction are both 1.
- the inter prediction information deriving unit 205 derives merge candidates when the prediction mode PredMode of the prediction block to be decoded is inter prediction (PRED_INTER) and in the merge mode.
- a plurality of merge candidates are derived and registered in a merge candidate list, which will be described later, using the encoded information of already decoded prediction blocks stored in the encoded information storage memory 115, and registered in the merge candidate list Whether a merge candidate corresponding to a merge index decoded and supplied by the second encoded bit string decoding unit 202 is selected from among a plurality of merge candidates, and whether to use the L0 prediction and the L1 prediction of the selected merge candidate Flags predFlagL0 [xP] [yP], predFlagL1 [xP] [yP], L0, L1 reference indices refIdxL0 [xP] [yP], refIdxL1 [xP] [yP], L0, L1 motion vectors mvL0 [xP] Inter prediction information such as [y
- the motion compensation prediction unit 206 performs prediction by inter prediction (motion compensation prediction) from the reference picture stored in the decoded image memory 211 using the inter prediction information calculated by the motion vector calculation unit 204 or the inter prediction information deriving unit 205. An image signal is generated, and the predicted image signal is supplied to the decoded image signal superimposing unit 209.
- Pred_BI bi-prediction
- a weighted coefficient is adaptively multiplied and superimposed on the two motion-compensated predicted image signals of L0 prediction and L1 prediction to generate a final predicted image signal.
- the intra prediction unit 207 performs intra prediction when the prediction mode PredMode of the prediction block to be decoded is intra prediction (PRED_INTRA).
- the encoded information decoded by the first encoded bit string decoding unit includes an intra prediction mode, and by intra prediction from a decoded image signal stored in the decoded image memory 211 according to the intra prediction mode. A predicted image signal is generated, and the predicted image signal is supplied to the decoded image signal superimposing unit 209.
- Flags predFlagL0 [xP] [yP] and predFlagL1 [xP] [yP] indicating whether to use L0 prediction and L1 prediction are both set to 0 and stored in the encoded information storage memory 210.
- xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture.
- the inverse quantization / inverse orthogonal transform unit 208 performs inverse orthogonal transform and inverse quantization on the orthogonal transform / quantized residual signal decoded by the second encoded bit string decoding unit 202, and performs inverse orthogonal transform / An inverse quantized residual signal is obtained.
- the decoded image signal superimposing unit 209 performs the prediction image signal inter-predicted by the motion compensation prediction unit 206 or the prediction image signal intra-predicted by the intra prediction unit 207 and the inverse orthogonal transform by the inverse quantization / inverse orthogonal transform unit 208.
- the decoded image signal is decoded by superimposing the dequantized residual signal, and stored in the decoded image memory 211.
- the decoded image may be stored in the decoded image memory 211 after filtering processing that reduces block distortion or the like due to encoding is performed on the decoded image.
- FIG. 10 shows syntax rules described in units of prediction blocks.
- PredMode of the prediction block is inter prediction (MODE_INTER)
- merge_flag [x0] [y0] indicating whether the mode is the merge mode is set.
- x0 and y0 are indices indicating the position of the upper left pixel of the prediction block in the picture of the luminance signal
- merge_flag [x0] [y0] is the prediction block located at (x0, y0) in the picture It is a flag indicating whether or not merge mode.
- merge_flag [x0] [y0] indicates merge mode
- a merge list index syntax element merge_idx [x0] [y0] is set, which is a list of merge candidates to be referred to.
- x0 and y0 are indices indicating the position of the upper left pixel of the prediction block in the picture
- merge_idx [x0] [y0] is the merge index of the prediction block located at (x0, y0) in the picture is there.
- 11 shows an example of the entropy code (code) of the merge index syntax element merge_idx [x0] [y0].
- code the merge index syntax element merge_idx [x0] [y0].
- the number of merge candidates is 3, by setting the maximum value of the merge index to the merge candidate number minus 1, that is, 2, the merge index becomes 0, 1, 2, and the merge index syntax element merge_idx [x0] [y0]
- the codes are “0”, “10”, and “11”, respectively.
- the maximum value of the merge index is set to the maximum number of merge candidates minus 1, that is, 3, so that the merge index becomes 0, 1, 2, 3, and the merge index syntax element merge_idx [x0]
- the signs of [y0] are “0”, “10”, “110”, and “111”, respectively.
- the maximum value of the merge index is set to the maximum number of merge candidates minus 1, that is, 4.
- the merge index syntax element merge_idx The signs of [x0] [y0] are “0”, “10”, “110”, “1110”, and “1111”, respectively.
- the merge index when the merge index is 2, when the number of merge candidates is 3, it becomes “11”, and when the number of merge candidates is 4 and 5, it becomes “110”. That is, when the maximum number of merge candidates can be limited, the merge index can be expressed with a short code length by limiting the maximum value of the merge index to the number of merge candidates-1.
- the merge index can be expressed with a smaller code amount by limiting the maximum value of the merge index to the maximum number of merge candidates ⁇ 1.
- the code amount is reduced by switching the code indicating each value of the merge index according to the number of merge candidates.
- merge_flag [x0] [y0] when merge_flag [x0] [y0] is 0, it indicates that the mode is not merge mode.
- the slice type is B slice
- a syntax element inter_pred_flag [x0] [y0] for identifying the inter prediction mode is installed.
- the syntax element identifies L0 prediction (Pred_L0), L1 prediction (Pred_L1), and bi-prediction (Pred_BI).
- syntax elements ref_idx_l0 [x0] [y0] and ref_idx_l1 [x0] [y0] of the reference index for specifying the reference picture, the motion vector and prediction of the prediction block obtained by motion vector detection The differential motion vector syntax elements mvd_l0 [x0] [y0] [j] and mvd_l1 [x0] [y0] [j], which are the differences from the motion vector, are provided.
- x0 and y0 are indexes indicating the position of the upper left pixel of the prediction block in the picture
- ref_idx_l0 [x0] [y0] and mvd_l0 [x0] [y0] [j] are respectively (x0 , Y0) is the reference index of L0 of the prediction block and the differential motion vector
- ref_idx_l1 [x0] [y0] and mvd_l1 [x0] [y0] [j] are respectively (x0, y0) in the picture It is the reference index of L1 of the prediction block located, and a difference motion vector.
- j represents a differential motion vector component
- j represents 0 as an x component
- j represents 1 as a y component.
- syntax elements mvp_idx_l0 [x0] [y0] and mvp_idx_l1 [x0] [y0] of an index of a predicted motion vector list that is a list of predicted motion vector candidates to be referred to are set.
- x0 and y0 are indices indicating the position of the upper left pixel of the prediction block in the picture
- mvp_idx_l0 [x0] [y0] and mvp_idx_l1 [x0] [y0] are (x0, y0) in the picture It is the prediction motion vector index of L0 and L1 of the prediction block located.
- the value of the number of candidates is set to 2.
- the inter prediction information deriving method according to the embodiment is implemented in the inter prediction information deriving unit 104 of the video encoding device in FIG. 1 and the inter prediction information deriving unit 205 of the video decoding device in FIG.
- the inter-prediction information derivation method is performed in any of the encoding and decoding processes for each prediction block constituting the encoding block.
- the prediction mode PredMode of the prediction block is inter prediction (MODE_INTER) and in the merge mode
- the prediction mode, the reference index, and the motion vector are derived, in the case of decoding, the prediction mode, the reference index, and the motion vector of the prediction block to be decoded using the prediction mode, the reference index, and the motion vector of the decoded prediction block It is carried out when deriving.
- the merge mode includes the prediction block A adjacent to the left, the prediction block B adjacent to the upper side, the prediction block C adjacent to the upper right, and the prediction block D adjacent to the lower left described with reference to FIGS. 5, 6, 7, and 8.
- the prediction block Col any one of T0 and T1 existing at or near the same position at different times described with reference to FIG.
- the inter prediction information deriving unit 104 of the moving image encoding device and the inter prediction information deriving unit 205 of the moving image decoding device register these candidates in the merge candidate list in a common order on the encoding side and the decoding side,
- the inter prediction information deriving unit 104 of the video encoding device determines a merge index for specifying an element of the merge candidate list, encodes it via the second encoded bit string generation unit 110, and performs inter prediction information of the video decoding device.
- the derivation unit 205 is supplied with the merge index decoded by the second encoded bit string decoding unit 202, selects a prediction block corresponding to the merge index from the merge candidate list, and refers to the prediction mode and reference of the selected merge candidate Motion compensation prediction is performed using inter prediction information such as an index and a motion vector.
- FIG. 12 is a diagram illustrating a detailed configuration of the inter prediction information deriving unit 104 of the video encoding device in FIG.
- FIG. 13 is a diagram illustrating a detailed configuration of the inter prediction information deriving unit 205 of the video decoding device in FIG.
- the portions surrounded by the thick frame lines in FIGS. 12 and 13 indicate the inter prediction information deriving unit 104 and the inter prediction information deriving unit 205, respectively.
- the part enclosed by the thick dotted line inside shows the operation
- the inter prediction information deriving unit 104 includes a spatial merge candidate generating unit 130, a temporal merge candidate reference index deriving unit 131, a temporal merge candidate generating unit 132, a merge candidate registering unit 133, a merge candidate identical determining unit 134, and a merge candidate number limiting unit. 135, a merge candidate supplementing unit 136, and an encoding information selecting unit 137.
- the inter prediction information deriving unit 205 includes a spatial merge candidate generating unit 230, a temporal merge candidate reference index deriving unit 231, a temporal merge candidate generating unit 232, a merge candidate registering unit 233, a merge candidate identical determining unit 234, and a merge candidate number limiting unit. 235, a merge candidate supplementing unit 236, and an encoded information selecting unit 237.
- FIG. 14 is a merge candidate derivation process and a merge candidate list having functions common to the inter prediction information deriving unit 104 of the video encoding device and the inter prediction information deriving unit 205 of the video decoding device according to the embodiment of the present invention. It is a flowchart explaining the procedure of this construction process. Hereinafter, the processes will be described in order. In the following description, a case where the slice type slice_type is a B slice will be described unless otherwise specified, but the present invention can also be applied to a P slice.
- the slice type slice_type is a P slice
- the L0 prediction (Pred_L0) is provided as the inter prediction mode, and there is no L1 prediction (Pred_L1) and bi-prediction (Pred_BI). Therefore, the processing related to L1 can be omitted.
- Spatial merge candidates A, B, C, D, and E are derived from the prediction blocks A, B, C, D, and E.
- N indicating any of A, B, C, D, E, or Col is defined.
- the L1 prediction flag predFlagL1N indicating whether or not to be performed, the L0 motion vector mvL0N, and the L1 motion vector mvL1N are output (step S101). The detailed processing procedure of step S101 will be described later in detail using the flowchart of FIG.
- a reference index of a temporal merge candidate is derived from a prediction block adjacent to the block to be converted or decoded (step S102).
- the inter prediction is performed using the inter prediction information of the temporal merge candidate when the slice type slice_type is P slice, only the L0 reference index is derived in order to perform the L0 prediction (Pred_L0), and the slice type slice_type is the B slice.
- step S103 the temporal merge candidate generating unit 132 of the inter prediction information deriving unit 104 of the video encoding device and the temporal merge candidate generating unit 232 of the inter prediction information deriving unit 205 of the video decoding device.
- step S104 the merge candidate registration unit 133 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate registration unit 233 of the inter prediction information deriving unit 205 of the video decoding device create a merge candidate list mergeCandList and perform prediction.
- Vector candidates A, B, C, D, E, and Col are added (step S104). The detailed processing procedure of step S104 will be described later in detail using the flowchart of FIG.
- step S105 the merge candidate identity determination unit 134 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate identity determination unit 234 of the inter prediction information deriving unit 205 of the video decoding device.
- the merge candidate number limiting unit 135 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate number limiting unit 235 of the inter prediction information deriving unit 205 of the video decoding device are registered in the merge candidate list mergeCandList. If the number of merge candidates registered in the merge candidate list mergeCandList is greater than the final merge candidate number finalNumMergeCand (YES in step S106), the index i in the merge candidate list mergeCandList is counted.
- the merge candidates are limited to the final merge candidate number finalNumMergeCand by deleting all merge candidates that are greater than (finalNumMergeCand-1), and the value of the merge candidate number numMergeCand registered in the merge candidate list mergeCandList is set as the final merge candidate The number is updated to finalNumMergeCand (step S107).
- the merge candidate supplementing unit 136 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate supplementing unit 236 of the inter prediction information deriving unit 205 of the video decoding device are registered in the merge candidate list mergeCandList. If the number of merge candidates numMergeCand is smaller than the final merge candidate number finalNumMergeCand (YES in step S108), the merge candidate number numMergeCand registered in the merge candidate list mergeCandList supplements the merge candidates with the final merge candidate number finalNumMergeCand as the upper limit.
- the value of the merge candidate number numMergeCand registered in the merge candidate list mergeCandList is updated to the final merge candidate number finalNumMergeCand (step S109).
- the prediction mode in which the combination of L0 prediction and L1 prediction between already registered merge candidates is changed is a bi-prediction (Pred_BI) merge candidate or a motion vector is predicted with a different reference index (0, 0). Add merge candidates whose mode is bi-prediction (Pred_BI).
- the final merge candidate number finalNumMergeCand is set to a fixed number for each slice.
- the reason for fixing the final merge candidate number finalNumMergeCand is that if the final merge candidate number finalNumMergeCand fluctuates depending on the build status of the merge candidate list, there will be a dependency relationship between the entropy decoding and the build of the merge candidate list. This is because the merge index cannot be entropy-decoded unless the candidate list is constructed and the final merge candidate number finalNumMergeCand is derived, resulting in delay in merge index decoding and complicated entropy decoding.
- the current picture when an error occurs when decoding the encoded bit string of another picture
- the encoded bit string of the above is also affected by the error, so that the normal final merge candidate number finalNumMergeCand cannot be derived and the entropy decoding cannot be continued normally.
- the final merge candidate number finalNumMergeCand is set to a fixed number in slice units as in this embodiment, derivation of the final merge candidate number finalNumMergeCand in prediction block units is not required, and merge is performed independently of the merge candidate list construction.
- the index can be entropy-decoded, and entropy decoding of the encoded bit string of the current picture can be continued without being affected by an error when an encoded bit string of another picture is decoded.
- FIG. 15 is a flowchart for explaining the spatial merge candidate derivation processing procedure in step S101 of FIG.
- N A (left side), B (upper side), C (upper right), D (lower left), or E (upper left) representing an area of an adjacent prediction block is entered.
- the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is set to 4, and a maximum of four spatial merge candidates are derived from five adjacent prediction blocks.
- an upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates registered in the merge candidate list mergeCandList in slice units. Setting a large value for the maximum number of spatial merge candidates maxNumSpatialMergeCand increases the selection efficiency of merge candidates and improves the coding efficiency, but increases the number of merge candidates that are subject to the same merge candidate determination. The amount of processing for the same determination increases. Therefore, in order to reduce the processing amount, an upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates may be set in units of slices, and the processing amount for spatial merge candidate derivation and the merge candidate identity determination may be controlled.
- the slice type is P slice
- the final merge candidate number finalNumMergeCand is set to 3 in this embodiment
- the amount of merge candidate identity determination processing in the merge candidate identity determination unit 234 of the inter prediction information deriving unit 205 of the apparatus can be reduced.
- the encoding information of the prediction block A adjacent to the left side of the prediction block to be encoded or decoded is examined with the variable N as A to derive the merge candidate A, and the prediction block adjacent to the upper side with the variable N as B
- the encoding information of B is examined to derive a merge candidate B, the variable N is set as C, the encoding information of the prediction block C adjacent on the upper right side is checked, the merge candidate C is derived, and the variable N is set as D to the lower left side.
- the encoding information of the adjacent prediction block D is checked to derive the merge candidate D, and the variable N is set as E to check the encoding information of the prediction block E adjacent to the upper left to derive the merge candidate E (step S1101 to step S1101). S1112).
- the flag availableFlagN of the merge candidate N is set to 0 (step S1105), the values of the motion vectors mvL0N and mvL1N of the merge candidate N are set to (0, 0) (step S1106), and the flag predFlagL0N of the merge candidate N is set. Both values of predFlagL1N are set to 0 (step S1107), and this space merge candidate derivation process is terminated.
- four merge candidates are derived from adjacent prediction blocks. Therefore, when four spatial merge candidates are already derived, it is not necessary to perform further spatial merge candidate derivation processing.
- the prediction block N is specified, and when each prediction block N can be used, the encoding information of the prediction block N is acquired from the encoding information storage memory 115 or 210 (step S1103).
- the value of the flag availableFlagN of the merge candidate N is set to 0 (step S1105).
- the values of the motion vectors mvL0N and mvL1N of the merge candidate N are both set to (0, 0) (step S1106), and the values of the flags predFlagL0N and predFlagL1N of the merge candidate N are both set to 0 (step S1107).
- the inter prediction information of the prediction block N is used as the inter prediction information of the merge candidate N.
- the value of the flag availableFlagN of the merge candidate N is set to 1 (step S1108), and the motion vectors mvL0N and mvL1N of the merge candidate N are respectively used as the motion vectors mvL0N [xN] [yN] and mvL1N [xN] [yN] of the prediction block N.
- Step S1109) the reference indexes refIdxL0N and refIdxL1N of the merge candidate N are set to the same values as the reference indexes refIdxL0 [xN] [yN] and refIdxL1 [xN] [yN] of the prediction block N, respectively (
- step S1110) the flags predFlagL0N and predFlagL1N of the merge candidate N are set to the flags predFlagL0 [xN] [yN] and predFlagL1 [xN] [yN] of the prediction block N, respectively (step S1111).
- xN and yN are indexes indicating the position of the upper left pixel of the prediction block N in the picture.
- the reference index of the temporal merge candidate is derived using the reference index of the spatial merge candidate, that is, the reference index used in the prediction block adjacent to the block to be encoded or decoded. This is because when the temporal merge candidate is selected, the reference index of the prediction block to be encoded or decoded has high correlation with the reference index of the prediction block adjacent to the encoding or decoding target block to be the spatial merge candidate. It is. In particular, in the present embodiment, only the reference indexes of the prediction block A adjacent to the left side of the prediction block to be encoded or decoded and the prediction block B adjacent to the upper side are used.
- the prediction blocks A and B that are in contact with the sides of the prediction block to be encoded or decoded among the adjacent prediction blocks A, B, C, D, and E that are also spatial merge candidates are predicted to be encoded or decoded. This is because the correlation is higher than prediction blocks C, D, and E that are in contact with only the vertices of the block.
- both the prediction block A and the prediction block B are LX predictions (L0 or L1, the list from which reference indexes of temporal merge candidates are derived is LX, and prediction using LX is LX prediction.
- LX prediction the smaller LX reference index value of the prediction block A and the prediction block B is adopted as the LX reference index value of the temporal merge candidate.
- the LX reference index value of the prediction block on which LX prediction is performed is adopted as the LX reference index value of the temporal merge candidate.
- the value of the reference index of the LX that is a temporal merge candidate is set to 0 as the default value.
- the default value of the reference index of the LX that is a temporal merge candidate is set to 0 because the reference picture corresponding to the reference index value of 0 is the most in inter prediction. This is because the probability of being selected is high.
- the present invention is not limited to this, and the default value of the reference index may be a value other than 0 (1, 2, etc.), and the default value of the reference index may be set in the encoded stream in sequence units, picture units, or slice units.
- the syntax element shown may be installed and transmitted so that it can be selected on the encoding side.
- FIG. 16 is a flow chart for explaining the procedure for deriving the reference index of the time merge candidate in step S102 of FIG. 14 of the present embodiment.
- the encoding information of the prediction block A adjacent to the left and the encoding information of the prediction block B are acquired from the encoding information storage memory 115 or 210 (steps S2101 and S2102).
- the subsequent processing from step S2104 to step S2110 is performed in each of L0 and L1 (steps S2103 to S2111).
- LX is set to L0 when deriving the L0 reference index of the temporal merge candidate
- LX is set to L1 when deriving the L1 reference index.
- the slice type slice_type is a P slice
- the L0 prediction (Pred_L0) is provided as the inter prediction mode, and there is no L1 prediction (Pred_L1) and bi-prediction (Pred_BI). Therefore, the processing related to L1 can be omitted.
- the LX reference index refIdxLXCol of the temporal merge candidate is the smaller of the LX reference index refIdxLX [xA] [yA] of the prediction block A and the LX reference index refIdxLX [xB] [yB] of the prediction block B
- xA and yA are indexes indicating the position of the upper left pixel of the prediction block A in the picture.
- xB and yB are indexes indicating the position of the upper left pixel of the prediction block B in the picture.
- the prediction block N when the prediction block N cannot be used outside the slice to be encoded or decoded, the prediction block N is encoded or encoded in the decoding order.
- xN and yN are indexes indicating the position of the upper left pixel of the prediction block N in the picture.
- PredMode of the prediction block N is inter prediction (MODE_INTER) and the inter prediction mode is L0 prediction (Pred_L0)
- the flag predFlagL0 [xN] [yN] indicating whether to use the L0 prediction of the prediction block N is 1
- Flag predFlagL1 [xN] [yN] indicating whether to use L1 prediction is zero.
- a flag predFlagL0 [xN] [yN] indicating whether to use the L0 prediction of the prediction block N, and a flag predFlagL1 [indicating whether to use the L1 prediction xN] [yN] are both 1.
- the LX reference index refIdxLXCol of the temporal merge candidate is set to the same value as the LX reference index refIdxLX [xA] [yA] of the prediction block A (step S2107).
- xA and yA are indexes indicating the position of the upper left pixel of the prediction block A in the picture
- xB and yB are indexes indicating the position of the upper left pixel of the prediction block B in the picture.
- the LX reference index refIdxLXCol of the temporal merge candidate is set to the same value as the LX reference index predFlagLX [xB] [yB] of the prediction block B ( Step S2109).
- the reference index refIdxLXCol of the LX that is a candidate for time merge is set to a default value of 0 (step S2110).
- step S2104 to step S2110 performed in each of L0 and L1 is performed (steps S2103 to S2111), and this reference index derivation processing is terminated.
- FIG. 17 is a flowchart illustrating the time merge candidate derivation processing procedure in step S103 of FIG.
- pictures colPic at different times are derived (step S3101).
- FIG. 18 is a flowchart for explaining the procedure for deriving the picture colPic at different times in step S3101 of FIG.
- the slice type slice_type is a B slice and the flag collocated_from_l0_flag is 0 (YES in step S3201 and YES in step S3202)
- RefPicList1 [0] that is, the picture colPic of the reference list L1 with a reference index of 0 is a different time.
- RefPicList0 [0] that is, the picture colPic of the reference list L0 with the reference index 0 is a different time (step S3205).
- a prediction block colPU at a different time is derived, and encoded information is acquired (step S3102).
- FIG. 19 is a flowchart for explaining the procedure for deriving the prediction block colPU of the picture colPic at different times in step S3102 of FIG.
- a prediction block located in the lower right (outside) of the same position as the processing target prediction block in the picture colPic at different times is set as a prediction block colPU at different times (step S3301).
- This prediction block corresponds to the prediction block T0 in FIG.
- step S3302 the encoding information of the prediction block colPU at different times is acquired (step S3302).
- PredMode of a prediction block colPU at a different time cannot be used, or when the prediction mode PredMode of a prediction block colPU at a different time is intra prediction (MODE_INTRA) (YES in step S3303, YES in step S3304)
- the picture colPic in a different time The prediction block located in the upper left center of the same position as the processing target prediction block is set as a prediction block colPU at a different time (step S3305). This prediction block corresponds to the prediction block T1 in FIG.
- a flag availableFlagL1Col indicating whether the prediction motion vector mvL1Col of L1 and the temporal merge candidate Col are valid is derived (step S3104). Further, when the flag availableFlagL0Col or the flag availableFlagL1Col is 1, the flag availableFlagCol indicating whether or not the time merge candidate Col is valid is set to 1.
- FIG. 20 is a flowchart for explaining the process of deriving inter prediction information of the temporal merge candidate in step S3103 and step S3104 in FIG.
- L0 or L1 the list of time merge candidate derivation targets is LX
- the prediction using LX is LX prediction.
- LX becomes L0 when called as step S3103, which is a time merge candidate L0 derivation process
- LX becomes L1, when called as step S3104, which is a time merge candidate L1 derivation process.
- both the flag availableFlagLXCol and the flag predFlagLXCol are set to 0 (step S3403), and the motion vector mvLXCol Is set to (0, 0) (step S3404), and the process of deriving inter prediction information of the current time merge candidate ends.
- mvCol, refIdxCol, and availableFlagCol are derived by the following procedure.
- the prediction mode of the prediction block colPU is Pred_L1, and therefore the motion vector mvCol is predicted.
- MvL1 [xPCol] [yPCol] that is the L1 motion vector of the block colPU is set (step S3406), and the reference index refIdxCol is set to the same value as the reference index RefIdxL1 [xPCol] [yPCol] of L1 (step S3406).
- the list ListCol is set to L1 (step S3408).
- xPCol and yPCol are indexes indicating the position of the upper left pixel of the prediction block colPU in the picture colPic at different times.
- the L0 prediction flag PredFlagL0 [xPCol] [yPCol] of the prediction block colPU is not 0 (NO in step S3405 in FIG. 20)
- the motion vector mvCol becomes the same value as MvL0 [xPCol] [yPCol], which is the L0 motion vector of the prediction block colPU.
- the reference index refIdxCol is set to the same value as the reference index RefIdxL0 [xPCol] [yPCol] of L0 (step S3411), and the list ListCol is set to L0 (step S3412).
- FIG. 21 is a flowchart showing a procedure for deriving inter prediction information of temporal merge candidates when the inter prediction mode of the prediction block colPU is bi-prediction (Pred_BI).
- step S3501 it is determined whether the POCs of all the pictures registered in all the reference lists are smaller than the POC of the current encoding or decoding target picture (step S3501), and L0, which is all the reference lists of the prediction block colPU.
- LX is L0, that is, the motion vector of L0 of the encoding or decoding target picture
- the prediction vector candidate is derived (YES in step S3502)
- the L0 inter prediction information of the prediction block colPU is selected, and LX is L1, that is, the prediction of the motion vector of the encoding or decoding target picture L1.
- the prediction block Inter prediction information for L1 of the lock colPU is selected.
- the flag collocated_from_l0_flag is 0. (YES in step S3503), the L0 inter prediction information of the prediction block colPU is selected. If the flag collocated_from_l0_flag is 1 (NO in step S3503), the L1 inter prediction information of the prediction block colPU is selected. To do.
- the motion vector mvCol is set to the same value as MvL0 [xPCol] [yPCol] (step S3504), and the reference index refIdxCol is set to the same value as RefIdxL0 [xPCol] [yPCol] (step S3505), and the list ListCol is set to L0 (step S3506).
- the motion vector mvCol is set to the same value as MvL1 [xPCol] [yPCol] (step S3507), see The index refIdxCol is set to the same value as RefIdxL1 [xPCol] [yPCol] (step S3508), and the list ListCol is set to L1 (step S3509).
- both the flag availableFlagLXCol and the flag predFlagLXCol are set to 1 (step S3414).
- the motion vector mvCol is scaled to be a time merge candidate LX motion vector mvLXCol (step S3415).
- the motion vector scaling calculation processing procedure will be described with reference to FIGS.
- FIG. 22 is a flowchart showing the motion vector scaling calculation processing procedure in step S3415 of FIG.
- the inter-picture distance tb is derived by subtracting the POC of the reference picture corresponding to the LX reference index of the temporal merge candidate derived in step S102 of FIG. 14 from the current encoding or decoding target picture POC (step S3602). . If the reference picture referenced in the list LX of the current encoding or decoding target picture is earlier than the current encoding or decoding target picture in the display order, the inter-picture distance tb is a positive value. When the reference picture referred to in the encoding or decoding target picture list LX is later in the display order, the inter-picture distance tb is a negative value.
- tb POC of current encoding or decoding target picture—POC of reference picture corresponding to LX reference index of temporal merge candidate
- step S3603 the inter-picture distances td and tb are compared. If the inter-picture distances td and tb are equal (YES in step S3603), the LX motion vector mvLXCol as a temporal merge candidate is set to the same value as the motion vector mvCol. After setting (step S3604), the scaling calculation process is terminated.
- mvLXCol mvCol
- step S3603 scaling calculation processing is performed by multiplying mvCol by the scaling coefficient tb / td according to the following equation (step S3605), and the scaled time merge candidate Obtain the motion vector mvLXCol of LX.
- mvLXCol tb / td * mvCol
- FIG. 23 shows an example in which the scaling operation in step S3605 is performed with an integer precision operation.
- the processing from step S3606 to step S3608 in FIG. 23 corresponds to the processing in step S3605 in FIG.
- an inter-picture distance td and an inter-picture distance tb are derived (steps S3601 and S3602).
- step S3603 the inter-picture distances td and tb are compared. If the inter-picture distances td and tb are equal (YES in step S3603), the LX motion vector mvLXCol as a temporal merge candidate is obtained, as in the flowchart of FIG. Is set to the same value as the motion vector mvCol (step S3604), and this scaling calculation process is terminated.
- mvLXCol mvCol
- tx (16384 + Abs (td / 2)) / td
- DistScaleFactor (tb * tx + 32) >> 6
- mvLXCol ClipMv (Sign (DistScaleFactor * mvCol) * ((Abs (DistScaleFactor * mvCol) + 127) >> 8)
- FIG. 24 is a flowchart showing the procedure for registering merge candidates in the merge candidate list.
- priorities are assigned and the motion vector candidates are registered in the merge candidate list mergeCandList in descending order of priority, thereby reducing the code amount of the merge index merge_idx [x0] [y0].
- the amount of codes is reduced by placing elements with higher priorities in front of the merge candidate list.
- the index 0 of the merge candidate list is “0”, the index 1 is “10”, the index 2 is “110”, the index 3 is “1110”, and the index 4 is “ By setting “11110”, the code amount representing the index 0 becomes 1 bit, and the code amount is reduced by registering an element considered to have a high occurrence frequency in the index 0.
- the merge candidate list mergeCandList has a list structure, and is provided with a merge index indicating the location in the merge candidate list and a storage area for storing merge candidates corresponding to the index as elements.
- the number of the merge index starts from 0, and merge candidates are stored in the storage area of the merge candidate list mergeCandList.
- a prediction block that is a merge candidate of the merge index i registered in the merge candidate list mergeCandList is represented by mergeCandList [i], and is distinguished from the merge candidate list mergeCandList by array notation. To do.
- step S4101 when availableFlagA is 1 (YES in step S4101), merge candidate A is registered at the head of the merge candidate list mergeCandList (step S4102). Subsequently, when availableFlagB is 1 (YES in step S4103), merge candidate B is registered at the end of the merge candidate list mergeCandList (step S4104). Subsequently, when availableFlagC is 1 (YES in step S4105), the merge candidate C is registered at the end of the merge candidate list mergeCandList (step S4106). Subsequently, when availableFlagD is 1 (YES in step S4107), the merge candidate D is registered at the end of the merge candidate list mergeCandList (step S4108).
- step S4109 when availableFlagE is 1 (YES in step S4109), the merge candidate E is registered at the end of the merge candidate list mergeCandList (step S4110). Subsequently, when availableFlagCol is 1 (YES in step S4111), the merge candidate Col is registered at the end of the merge candidate list mergeCandList (step S4112).
- the prediction block A adjacent to the left and the prediction block B adjacent to the upper side often move together with the prediction block to be encoded or decoded, so inter prediction of the prediction blocks A and B is performed.
- the merge candidates A and B are registered ahead of the merge candidate list in preference to the other merge candidates C, D, E, and Col.
- the encoding information selection unit 137 of the inter prediction information deriving unit 104 of the moving image encoding apparatus selects merge candidates from the merge candidates registered in the merge candidate list, and merge indexes and merge indexes.
- the inter prediction information of the merge candidate corresponding to is supplied to the motion compensation prediction unit 105.
- merge candidates the same method as the prediction method determination unit 107 can be used.
- the coding information and the coding amount of the residual signal and the coding distortion between the predicted image signal and the image signal are derived, and the merge candidate that produces the least generated code amount and coding distortion is determined.
- entropy coding is performed on the merge index syntax element merge_idx, which is coding information in the merge mode, and the code amount of the coding information is calculated.
- each merge candidate a predicted image signal motion-compensated according to the inter prediction information of each merge candidate by the same method as the motion compensation prediction unit 105, and an encoding target image signal supplied from the image memory 101, The amount of code of the prediction residual signal obtained by encoding the prediction residual signal is calculated. Coding information, that is, the total generated code amount obtained by adding the code amount of the merge index and the code amount of the prediction residual signal is calculated as an evaluation value.
- the encoding distortion is calculated as a ratio representing an error from the original image signal caused by the encoding.
- encoding information with a small generated code amount and encoding distortion is determined.
- a merge index corresponding to the determined encoding information is encoded as a flag merge_idx represented by a second syntax pattern in units of prediction blocks.
- the generated code amount calculated here is preferably a simulation of the encoding process, but can be approximated or approximated easily.
- the encoding information selection unit 237 of the inter prediction information deriving unit 205 of the moving image encoding device performs a merge corresponding to the supplied merge index from among the merge candidates registered in the merge candidate list. A candidate is selected, and the inter prediction information of the merge candidate is supplied to the motion compensation prediction unit 206 and stored in the encoded information storage memory 210.
- Example 1 of the present embodiment a final merge candidate number finalNumMergeCand that is common between the encoding side and the decoding side is defined for each slice type.
- the apparatus, software, or bitstream conforming to the present embodiment is a processing load mainly related to a profile representing a set of processing functions defined by purpose and application, and an image size and a frame rate.
- a level representing processing capability such as the amount of memory used can be defined, and the profile and level indicate the performance of the device or software, or the performance required to decode the bitstream.
- the number of final merge candidates finalNumMergeCand may be specified for each slice type according to either profile or level, or the combination of profile and level, and the final merge candidate number for each slice type regardless of profile or level You may specify the value of finalNumMergeCand. For example, in a profile configured with a simple function of encoding or decoding using only I slices and P slices, the final merge candidate number finalNumMergeCand of P slices is defined as 3.
- the same number of final merge candidates finalNumMergeCand for P slices and B slices In a profile configured with a complicated and efficient coding function that uses B slices in addition to I slices and P slices, the same number of final merge candidates finalNumMergeCand for P slices and B slices. However, by defining the final merge candidate number finalNumMergeCand of the P slice to 3 which is smaller than the final merge candidate number finalNumMergeCand of the B slice, the code amount of the merge index of the P slice can be reduced. It is possible to reduce the amount of processing involved in encoding or decoding the merge index.
- the slice type is a P slice that can use only L0 prediction
- inter prediction is less likely to be selected than a B slice that can use L0 prediction, L1 prediction, and bi-prediction, so a merge candidate registered in the merge candidate list is obtained.
- the inter prediction information of the merge candidates is likely to be the same, the number of merge candidates registered in the merge candidate list is likely to be small. Therefore, in the P slice, even if the final number of merge candidates is set smaller than that in the B slice, the encoding efficiency does not decrease as in the B slice, the code amount of the merge index is suppressed, and the merge index is encoded or decoded. The amount of processing involved can be reduced.
- FIG. 25 is a flowchart for explaining the procedure for setting the final merge candidate number finalNumMergeCand which is common on the encoding side and the decoding side according to the method of Example 1 of the present embodiment.
- the final merge candidate number finalNumMergeCand is set by the header information setting unit 117 in the encoding device, and is set by the first encoded bit string decoding unit 212 in the decoding device.
- the slice type slice_type is a P slice (YES in step S201 in FIG. 25)
- the final merge candidate number finalNumMergeCand is set to the specified number of P slices (3 in the present embodiment) (step S203 in FIG. 25).
- the slice type slice_type is a B slice (NO in step S201 in FIG.
- the final merge candidate number finalNumMergeCand is set to the prescribed number of B slices (5 in this embodiment) (step in FIG. 25).
- the slice type slice_type is an I slice (NO in step S201 in FIG. 25, NO in step S202)
- the final merge candidate number finalNumMergeCand is set to 0 (step S205 in FIG. 25).
- the value of the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates may be specified for each slice type according to either the profile or the level, or the combination of the profile and the level, Regardless of the profile or level, the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates may be defined for each slice type.
- the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified as a large value, and in cases where processing amount is important.
- the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified as a small value.
- Example 2 of the present embodiment the final merge candidate number finalNumMergeCand is shown in the slice header in units of slices, as shown in an example of a syntax rule that is a common rule for encoding and decoding a bitstream in FIG. Set the syntax element num_merge_cand.
- the upper limit value of the number of final merge candidates is defined for each slice type. Depending on the combination of profile and level, an upper limit value for the number of final merge candidates may be defined for each slice type, or an upper limit value for the number of final merge candidates may be defined for each slice type regardless of the profile or level. .
- the upper limit value of the number of final merge candidates for P slices is defined as 3.
- the upper limit of the number of final merge candidates for P slices and B slices Both may be defined as the same number 5, or the upper limit value of the final merge candidate number of P slices may be defined as a number smaller than the upper limit value of the final merge candidate number of B slices.
- FIG. 27 is a flowchart for explaining the setting process procedure of the final merge candidate number finalNumMergeCand on the encoding side according to the method of Example 2 of the present embodiment
- FIG. 28 shows decoding by the method of Example 2 of the present embodiment
- 10 is a flowchart for explaining a setting process procedure of a final merge candidate number finalNumMergeCand on the side.
- the final merge candidate number finalNumMergeCand is set by the header information setting unit 117 in the encoding device, and is set by the first encoded bit string decoding unit 212 in the decoding device.
- the slice type slice_type is a P slice (YES in step S201 in FIG.
- the final merge candidate number finalNumMergeCand is the same value as the upper limit value of the specified P slice or a value not exceeding the upper limit value (this embodiment In the form, it is set to 3) (step S206 in FIG. 27).
- the slice type slice_type is B slice (NO in step S201 in FIG. 27, YES in step S202), the final merge candidate number finalNumMergeCand is the same value as the upper limit value of the specified B slice or a value not exceeding the upper limit value (this embodiment) Is set to 5) (step S207 in FIG. 27).
- the slice type slice_type is an I slice (NO in step S201 in FIG.
- the final merge candidate number finalNumMergeCand is set to 0 (step S205 in FIG. 27). Further, the syntax element numMergeCand indicating the final merge candidate number finalNumMergeCand set in slice units is entropy-coded (step S208 in FIG. 27). The decoding side decodes the bitstream and derives the final merge candidate number finalNumMergeCand from the syntax element numMergeCand (S209 in FIG. 28).
- the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates can be defined together with the final merge candidate number finalNumMergeCand according to the value of the syntax element max_num_spatial_merge_cand.
- the final merge candidate number finalNumMergeCand and the upper limit value maxNumSpatialMergeCand of the spatial merge candidate number may define the same value or different values.
- the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified as a large value, and processing amount is emphasized In the case, the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified to a small value.
- a syntax element max_num_spatial_merge_cand indicating the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates can be set in the slice header in units of slices.
- the encoding side encodes the syntax element max_num_spatial_merge_cand, and the decoding side performs a decoding process based on the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates according to the value of the syntax element max_num_spatial_merge_cand obtained by decoding the bitstream.
- the processing amount for spatial merge candidate derivation and merge candidate identity determination can be controlled. Can do.
- the moving image encoded stream output from the moving image encoding apparatus of the embodiment described above has a specific data format so that it can be decoded according to the encoding method used in the embodiment. Therefore, the moving picture decoding apparatus corresponding to the moving picture encoding apparatus can decode the encoded stream of this specific data format.
- the encoded stream When a wired or wireless network is used to exchange an encoded stream between a moving image encoding device and a moving image decoding device, the encoded stream is converted into a data format suitable for the transmission form of the communication path. It may be transmitted.
- a video transmission apparatus that converts the encoded stream output from the video encoding apparatus into encoded data in a data format suitable for the transmission form of the communication channel and transmits the encoded data to the network, and receives the encoded data from the network Then, a moving image receiving apparatus that restores the encoded stream and supplies the encoded stream to the moving image decoding apparatus is provided.
- the moving image transmitting apparatus is a memory that buffers the encoded stream output from the moving image encoding apparatus, a packet processing unit that packetizes the encoded stream, and transmission that transmits the packetized encoded data via the network.
- the moving image receiving apparatus generates a coded stream by packetizing the received data, a receiving unit that receives the packetized coded data via a network, a memory that buffers the received coded data, and packet processing. And a packet processing unit provided to the video decoding device.
- the above processing relating to encoding and decoding can be realized as a transmission, storage, and reception device using hardware, and is stored in a ROM (Read Only Memory), a flash memory, or the like. It can also be realized by firmware or software such as a computer.
- the firmware program and software program can be recorded on a computer-readable recording medium, provided from a server through a wired or wireless network, or provided as a data broadcast of terrestrial or satellite digital broadcasting Is also possible.
- the present invention can be used for a moving picture coding technique using motion compensation prediction.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
An inter-prediction information derivation unit (104) derives inter-prediction information candidates from inter-prediction information pertaining to a prediction block to be coded and coded prediction blocks which are contiguous to the prediction block to be coded within the same picture, and inter-prediction information pertaining to prediction blocks in a coded picture which is different from that of the prediction block to be coded. The inter-prediction information derivation unit (104) determines, among the derived inter-prediction information candidates, an inter-prediction information candidate to be used for the inter-prediction of the prediction block to be coded. A second coded bit sequence generation unit (110) encodes indices of the inter-prediction information candidates on the basis of the number of the inter-prediction information candidates.
Description
本発明は、動画像符号化及び復号技術に関し、特に動き補償予測を利用した動画像符号化及び復号技術に関する。
The present invention relates to a moving image encoding and decoding technique, and more particularly to a moving image encoding and decoding technique using motion compensated prediction.
動画像の圧縮符号化方式の代表的なものとして、MPEG-4 AVC/H.264の規格がある。MPEG-4 AVC/H.264では、ピクチャを複数の矩形ブロックに分割し、すでに符号化・復号したピクチャを参照ピクチャとし、参照ピクチャからの動きを予測する動き補償が用いられている。この動き補償により動きを予測する手法をインター予測または動き補償予測と呼ぶ。MPEG-4 AVC/H.264でのインター予測では、複数のピクチャを参照ピクチャとして用いることができ、これらの複数の参照ピクチャから最も適した参照ピクチャをブロック毎に選択して動き補償を行う。そこで、それぞれの参照ピクチャには参照インデックスが割り当てられ、この参照インデックスにより、参照ピクチャを特定する。なお、Bピクチャでは、符号化・復号済みの参照ピクチャから最大で2枚を選択してインター予測に用いることができる。それらの2枚の参照ピクチャからの予測をそれぞれ主に前方向の予測として使われるL0予測(リスト0予測)、主に後方向の予測として使われるL1予測(リスト1予測)として区別している。
MPEG-4 AVC / H.3 is a typical video compression encoding system. There are H.264 standards. MPEG-4 AVC / H. In H.264, motion compensation is used in which a picture is divided into a plurality of rectangular blocks, a picture that has already been encoded / decoded is used as a reference picture, and motion from the reference picture is predicted. This method of predicting motion by motion compensation is called inter prediction or motion compensated prediction. MPEG-4 AVC / H. In the inter prediction in H.264, a plurality of pictures can be used as reference pictures, and the most suitable reference picture is selected for each block from the plurality of reference pictures to perform motion compensation. Therefore, a reference index is assigned to each reference picture, and the reference picture is specified by this reference index. Note that, for B pictures, a maximum of two reference pictures that have been encoded and decoded can be selected and used for inter prediction. The predictions from these two reference pictures are distinguished as L0 prediction (list 0 prediction) mainly used as forward prediction and L1 prediction (list 1 prediction) mainly used as backward prediction.
さらに、L0予測とL1予測の2つのインター予測を同時に用いる双予測も定義されている。双予測の場合は、双方向の予測を行い、L0予測、L1予測のそれぞれのインター予測された信号に重み付け係数を掛け算し、オフセット値を加算して重畳し、最終的なインター予測画像信号を生成する。重み付け予測に用いる重み付け係数及びオフセット値はピクチャ単位で各リストの参照ピクチャ毎に代表的な値が設定され、符号化される。インター予測に関する符号化情報には、ブロック毎に、L0予測とL1予測、双予測を区別する予測モード、ブロック毎の参照リスト毎に、参照ピクチャを特定する参照インデックス、ブロックの移動方向・移動量を表す動きベクトルがあり、これらの符号化情報を符号化・復号する。
Furthermore, bi-prediction using two inter predictions of L0 prediction and L1 prediction at the same time is also defined. In the case of bi-prediction, bi-directional prediction is performed, the inter-predicted signals of L0 prediction and L1 prediction are multiplied by a weighting coefficient, an offset value is added and superimposed, and a final inter-predicted image signal is obtained. Generate. As weighting coefficients and offset values used for weighted prediction, representative values are set for each reference picture in each list and encoded. The encoding information related to inter prediction includes, for each block, a prediction mode for distinguishing between L0 prediction and L1 prediction and bi-prediction, a reference index for specifying a reference picture for each reference list for each block, and a moving direction and a moving amount of the block. There is a motion vector that expresses and encodes and decodes the encoded information.
さらに、MPEG-4 AVC/H.264では、符号化または復号済みのブロックのインター予測情報から符号化または復号対象のブロックのインター予測情報を生成するダイレクトモードが定義されている。ダイレクトモードはインター予測情報の符号化が不要となるので、符号化効率が向上する。
Furthermore, MPEG-4 AVC / H. H.264 defines a direct mode for generating inter prediction information of a block to be encoded or decoded from inter prediction information of an encoded or decoded block. In the direct mode, encoding of inter prediction information is not necessary, so that encoding efficiency is improved.
時間方向のインター予測情報の相関を利用する時間ダイレクトモードについて図29を用いて説明する。L1の参照インデックスが0に登録されているピクチャを基準ピクチャcolPicとする。基準ピクチャcolPic内で符号化または復号対象ブロックと同じ位置のブロックを基準ブロックとする。
The temporal direct mode using the correlation of inter prediction information in the time direction will be described with reference to FIG. A picture in which the reference index of L1 is registered as 0 is defined as a reference picture colPic. A block in the same position as the block to be encoded or decoded in the reference picture colPic is set as a reference block.
基準ブロックがL0予測を用いて符号化されていれば、基準ブロックのL0の動きベクトルを基準動きベクトルmvColとし、基準ブロックがL0予測を用いて符号化されておらず、L1予測を用いて符号化されていれば、基準ブロックのL1の動きベクトルを基準動きベクトルmvColとする。基準動きベクトルmvColが参照するピクチャを時間ダイレクトモードのL0の参照ピクチャとし、基準ピクチャcolPicを時間ダイレクトモードのL1の参照ピクチャとする。
If the reference block is encoded using the L0 prediction, the L0 motion vector of the reference block is set as the reference motion vector mvCol, and the reference block is not encoded using the L0 prediction and is encoded using the L1 prediction. If this is the case, the L1 motion vector of the reference block is set as the reference motion vector mvCol. The picture referred to by the reference motion vector mvCol is the L0 reference picture in the temporal direct mode, and the reference picture colPic is the L1 reference picture in the temporal direct mode.
基準動きベクトルmvColからスケーリング演算処理により時間ダイレクトモードのL0の動きベクトルmvL0とL1の動きベクトルmvL1を導出する。
The L0 motion vector mvL0 and the L1 motion vector mvL1 in the temporal direct mode are derived from the reference motion vector mvCol by scaling calculation processing.
基準ピクチャcolPicのPOCから、時間ダイレクトモードのL0の参照ピクチャのPOCを減算してピクチャ間距離tdを導出する。なお、POCは符号化されるピクチャに関連付けられる変数とし、ピクチャの出力順序で1ずつ増加する値が設定される。2つのピクチャのPOCの差が時間軸方向でのピクチャ間距離を示す。
td=基準ピクチャcolPicのPOC-時間ダイレクトモードのL0の参照ピクチャのPOC The inter-picture distance td is derived by subtracting the POC of the L0 reference picture in the temporal direct mode from the POC of the base picture colPic. Note that POC is a variable associated with the picture to be encoded, and is set to a value that increases by 1 in the picture output order. The difference in POC between two pictures indicates the inter-picture distance in the time axis direction.
td = POC of base picture colPic-POC of L0 reference picture in temporal direct mode
td=基準ピクチャcolPicのPOC-時間ダイレクトモードのL0の参照ピクチャのPOC The inter-picture distance td is derived by subtracting the POC of the L0 reference picture in the temporal direct mode from the POC of the base picture colPic. Note that POC is a variable associated with the picture to be encoded, and is set to a value that increases by 1 in the picture output order. The difference in POC between two pictures indicates the inter-picture distance in the time axis direction.
td = POC of base picture colPic-POC of L0 reference picture in temporal direct mode
符号化または復号対象ピクチャのPOCから時間ダイレクトモードのL0の参照ピクチャのPOCを減算してピクチャ間距離tbを導出する。
tb=符号化または復号対象ピクチャのPOC-時間ダイレクトモードのL0の参照ピクチャのPOC The inter-picture distance tb is derived by subtracting the POC of the L0 reference picture in the temporal direct mode from the POC of the picture to be encoded or decoded.
tb = POC of picture to be encoded or decoded-POC of L0 reference picture in temporal direct mode
tb=符号化または復号対象ピクチャのPOC-時間ダイレクトモードのL0の参照ピクチャのPOC The inter-picture distance tb is derived by subtracting the POC of the L0 reference picture in the temporal direct mode from the POC of the picture to be encoded or decoded.
tb = POC of picture to be encoded or decoded-POC of L0 reference picture in temporal direct mode
基準動きベクトルmvColからスケーリング演算処理により時間ダイレクトモードのL0の動きベクトルmvL0を導出する。
mvL0=tb / td * mvCol The motion vector mvL0 of L0 in the temporal direct mode is derived from the reference motion vector mvCol by scaling calculation processing.
mvL0 = tb / td * mvCol
mvL0=tb / td * mvCol The motion vector mvL0 of L0 in the temporal direct mode is derived from the reference motion vector mvCol by scaling calculation processing.
mvL0 = tb / td * mvCol
時間ダイレクトモードのL0の動きベクトルmvL0から基準動きベクトルmvColを減算しL1の動きベクトルmvL1を導出する。
mvL1=mvL0 - mvCol The motion vector mvL1 of L1 is derived by subtracting the reference motion vector mvCol from the motion vector mvL0 of L0 in the temporal direct mode.
mvL1 = mvL0-mvCol
mvL1=mvL0 - mvCol The motion vector mvL1 of L1 is derived by subtracting the reference motion vector mvCol from the motion vector mvL0 of L0 in the temporal direct mode.
mvL1 = mvL0-mvCol
従来の方法では、動き補償でブロック毎に参照する動き情報の候補の数が従来は固定されていたため、符号化効率が上がらないことがあった。
In the conventional method, since the number of motion information candidates to be referred to for each block in motion compensation is conventionally fixed, the encoding efficiency may not be improved.
このような状況下、本発明者らは、動き補償予測を使用する動画像符号化方式において、符号化情報をより一層圧縮し、全体の符号量を削減する必要性を認識するに至った。
Under such circumstances, the present inventors have come to recognize the necessity of further compressing the encoded information and reducing the overall code amount in the moving image encoding method using motion compensated prediction.
本発明はこうした状況に鑑みてなされたものであり、その目的は、符号化情報の候補を算出することにより、符号化情報の符号量の削減を図って符号化効率を向上させる動画像符号化及び復号技術を提供することにある。
The present invention has been made in view of such a situation, and an object of the present invention is to calculate a moving picture coding that reduces coding amount of coding information and improves coding efficiency by calculating coding information candidates. And providing a decoding technique.
上記課題を解決するために、本発明のある態様の動画像符号化装置は、各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化装置であって、符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出部(104)と、導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定部(104)と、前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化部(110)と、前記決定部により決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化部(110)とを備える。
In order to solve the above-described problem, a video encoding device according to an aspect of the present invention is a video encoding device that encodes a video using inter prediction in units of blocks obtained by dividing each picture. Inter prediction information of an encoded prediction block adjacent to the encoding target prediction block in the same picture as the encoding target prediction block, and a prediction block in an encoded picture different from the encoding target prediction block Prediction information deriving unit (104) for deriving inter prediction information candidates from the inter prediction information, and inter prediction information used for inter prediction of the prediction block to be encoded from the derived inter prediction information candidates And a first encoding unit that encodes a syntax element indicating the number of candidates for the inter prediction information. Includes a (110), an index indicating a candidate for the inter prediction information determined by the determination unit, a second encoding unit for encoding based on a number of candidates of the inter prediction information and (110).
本発明の別の態様もまた、動画像符号化装置である。この装置は、動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像を符号化する動画像符号化装置であって、符号化対象の予測ブロックに隣接する予測ブロック、または符号化対象の予測ブロックと時間的に異なる符号化済みのピクチャにおける前記符号化対象の予測ブロックと同一位置あるいはその付近に存在する予測ブロックのインター予測情報から、インター予測情報の候補を導出する予測情報導出部(104)と、処理機能の集合を示すプロファイルおよびデコード処理能力を示すレベルの少なくとも一方に応じて前記インター予測情報の候補の候補数を制限する候補数制限部(135)と、候補数の制限された前記インター予測情報の候補から1つのインター予測情報の候補を選択して、その選択したインター予測情報の候補により前記符号化対象の予測ブロックのインター予測を行う動き補償予測部(105)と、前記候補数の制限に用いたインター予測情報の候補数を示すシンタックス要素を符号化する符号化部(110)とを備える。
Another aspect of the present invention is also a moving picture coding apparatus. This apparatus is a moving picture encoding apparatus that encodes the moving picture using motion compensated prediction in units of blocks obtained by dividing each picture of a moving picture, and a prediction block adjacent to a prediction block to be encoded, or Prediction for deriving a candidate for inter prediction information from inter prediction information of a prediction block existing at the same position or in the vicinity of the prediction block of the encoding target in a coded picture that is temporally different from the prediction block of the encoding target An information deriving unit (104), a candidate number limiting unit (135) for limiting the number of candidate inter prediction information according to at least one of a profile indicating a set of processing functions and a level indicating decoding processing capability, and a candidate One inter prediction information candidate is selected from the limited number of inter prediction information candidates, and the selected A motion-compensated prediction unit (105) that performs inter prediction of the prediction block to be encoded by a candidate of prediction information, and a syntax element indicating the number of inter prediction information candidates used to limit the number of candidates. And an encoding unit (110).
本発明のさらに別の態様は、動画像符号化方法である。この方法は、各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化方法であって、符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとを備える。
Still another aspect of the present invention is a video encoding method. This method is a moving picture coding method for coding a moving picture using inter prediction in units of blocks obtained by dividing each picture, and the coding target prediction block in the same picture as the coding target prediction block Prediction information for deriving a candidate for inter prediction information from inter prediction information of an encoded prediction block close to the image and inter prediction information of a prediction block in a coded picture different from the prediction block to be encoded A derivation step, a determination step for determining inter prediction information candidates to be used for inter prediction of the prediction block to be encoded from the derived inter prediction information candidates, and a syntax indicating the number of candidates for the inter prediction information A first encoding step for encoding an element, and inter prediction information determined by the determination step. An index indicating the complement, and a second coding step of coding on the basis of the number of candidates of the inter prediction information.
本発明のさらに別の態様は、送信装置である。この装置は、各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化方法により符号化された符号化ビット列をパケット化して符号化データを得るパケット処理部と、パケット化された前記符号化データを送信する送信部とを備える。前記動画像符号化方法は、符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとを有する。
Still another aspect of the present invention is a transmission device. This apparatus includes a packet processing unit that packetizes an encoded bit sequence encoded by a moving image encoding method that encodes a moving image using inter prediction in units of blocks obtained by dividing each picture, and obtains encoded data; A transmission unit that transmits the packetized encoded data. The moving picture encoding method is different from the prediction block of the encoding target and the inter prediction information of the encoded prediction block adjacent to the prediction block of the encoding target in the same picture as the prediction block to be encoded. A prediction information deriving step for deriving a candidate of inter prediction information from inter prediction information of a prediction block in a coded picture, and an inter prediction information of the prediction block to be encoded from the derived candidate of inter prediction information. A determination step for determining candidates for inter prediction information used for prediction; a first encoding step for encoding a syntax element indicating the number of candidates for inter prediction information; and the inter prediction information determined by the determination step. Second encoding for encoding an index indicating a candidate based on the number of candidates of the inter prediction information And a step.
本発明のさらに別の態様は、送信方法である。この方法は、各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化方法により符号化された符号化ビット列をパケット化して符号化データを得るパケット処理ステップと、パケット化された前記符号化データを送信する送信ステップとを備える。前記動画像符号化方法は、符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとを有する。
Still another aspect of the present invention is a transmission method. This method includes a packet processing step of packetizing an encoded bit string encoded by a moving image encoding method that encodes a moving image using inter prediction in units of blocks obtained by dividing each picture to obtain encoded data; Transmitting the packetized encoded data. The moving picture encoding method is different from the prediction block of the encoding target and the inter prediction information of the encoded prediction block adjacent to the prediction block of the encoding target in the same picture as the prediction block to be encoded. A prediction information deriving step for deriving a candidate of inter prediction information from inter prediction information of a prediction block in a coded picture, and an inter prediction information of the prediction block to be encoded from the derived candidate of inter prediction information. A determination step for determining candidates for inter prediction information used for prediction; a first encoding step for encoding a syntax element indicating the number of candidates for inter prediction information; and the inter prediction information determined by the determination step. Second encoding for encoding an index indicating a candidate based on the number of candidates of the inter prediction information And a step.
本発明のある態様の動画像復号装置は、各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列を復号する動画像復号装置であって、復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出部(205)と、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号部(202)と、前記第1の復号部で取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを復号する第2の復号部(202)と、前記予測情報導出部により導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択部(205)とを備える。
A moving picture decoding apparatus according to an aspect of the present invention is a moving picture decoding apparatus that decodes a coded bit sequence in which a moving picture is encoded using inter prediction in units of blocks obtained by dividing each picture, and the prediction of a decoding target Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A prediction information deriving unit (205) for deriving prediction information candidates; a first decoding unit (202) for decoding a syntax element indicating the number of inter prediction information candidates and acquiring the number of inter prediction information candidates; , Based on the number of candidates for the inter prediction information acquired by the first decoding unit, used for inter prediction of the prediction block to be decoded A second decoding unit (202) that decodes an index indicating a candidate for inter prediction information and a candidate for inter prediction information indicated by the index are selected from the inter prediction information candidates derived by the prediction information deriving unit. And a selection unit (205).
本発明の別の態様もまた、動画像復号装置である。この装置は、動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像が符号化された符号化ビット列を復号する動画像復号装置であって、復号対象の予測ブロックに隣接する予測ブロック、または復号対象の予測ブロックと時間的に異なる復号済みのピクチャにおける前記復号対象の予測ブロックと同一位置あるいはその付近に存在する予測ブロックのインター予測情報から、インター予測情報の候補を導出する予測情報導出部(205)と、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号部(202)と、前記第1の復号部で取得した前記インター予測情報の候補数を用いて、前記インター予測情報の候補の候補数を制限する候補数制限部(235)と、前記第1の復号部で取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測情報となる前記インター予測情報の候補を示すインデックスを復号する第2の復号部(202)と、復号された前記インデックスが示す前記インター予測情報の候補を、候補数の制限された前記インター予測情報の候補から選択して、その選択したインター予測情報の候補により前記復号対象の予測ブロックのインター予測を行う動き補償予測部(206)とを備える。
Another aspect of the present invention is also a video decoding device. This apparatus is a moving picture decoding apparatus that decodes a coded bit sequence in which the moving picture is coded using motion compensated prediction in units of blocks obtained by dividing each picture of a moving picture, and is adjacent to a prediction block to be decoded. A candidate for inter prediction information is derived from inter prediction information of a prediction block existing at the same position or in the vicinity of the prediction block to be decoded in a decoded picture temporally different from the prediction block to be decoded or the prediction block to be decoded A prediction information deriving unit (205), a first decoding unit (202) for decoding a syntax element indicating the number of inter prediction information candidates, and obtaining the number of inter prediction information candidates, and the first decoding A candidate number limiting unit (23) that limits the number of candidate inter prediction information using the number of inter prediction information candidates acquired by ) And a second index that decodes an index indicating the candidate of inter prediction information that becomes inter prediction information of the prediction block to be decoded, based on the number of candidates of inter prediction information acquired by the first decoding unit. The decoding unit (202) selects the inter prediction information candidate indicated by the decoded index from the inter prediction information candidates with a limited number of candidates, and the decoding is performed according to the selected inter prediction information candidate. A motion compensation prediction unit (206) that performs inter prediction on the target prediction block.
本発明のさらに別の態様は、動画像復号方法である。この方法は、各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列を復号する動画像復号方法であって、復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号ステップと、前記第1の復号ステップで取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを復号する第2の復号ステップと、前記予測情報導出ステップにより導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択ステップとを備える。
Still another aspect of the present invention is a moving picture decoding method. This method is a moving picture decoding method for decoding a coded bit string in which a moving picture is encoded using inter prediction in units of blocks obtained by dividing each picture, and the decoding in the same picture as a prediction block to be decoded Prediction for deriving a candidate of inter prediction information from inter prediction information of a decoded prediction block close to the target prediction block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded An information deriving step; a first decoding step of decoding a syntax element indicating the number of inter prediction information candidates; and obtaining the number of inter prediction information candidates; and the inter prediction information acquired in the first decoding step. Based on the number of candidates for the inter prediction information used for inter prediction of the prediction block to be decoded. A second decoding step of decoding the index, from the candidate of the said inter-prediction information derived by the prediction information deriving step includes a selection step of selecting the candidate of the inter prediction information the index shown.
本発明のさらに別の態様は、受信装置である。この装置は、動画像が符号化された符号化ビット列を受信して復号する受信装置であって、各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列がパケット化された符号化データを受信する受信部と、受信された前記符号化データをパケット処理して元の符号化ビット列を復元する復元部と、復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出部(205)と、復元された符号化ビット列から、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号部(202)と、前記第1の復号部で取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを、復元された符号化ビット列から復号する第2の復号部(202)と、前記予測情報導出部により導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択部(205)とを備える。
Still another aspect of the present invention is a receiving device. This apparatus is a receiving apparatus that receives and decodes an encoded bit string in which a moving image is encoded, and an encoded bit sequence in which the moving image is encoded using inter prediction in units of blocks obtained by dividing each picture. A receiving unit that receives packetized encoded data, a restoration unit that performs packet processing on the received encoded data and restores an original encoded bit string, and the decoding in the same picture as a prediction block to be decoded Prediction for deriving a candidate of inter prediction information from inter prediction information of a decoded prediction block close to the target prediction block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded An information deriving unit (205), and decoding a syntax element indicating the number of inter prediction information candidates from the restored encoded bit string, The first decoding unit (202) that acquires the number of candidates for inter prediction information and the inter prediction of the prediction block to be decoded based on the number of candidates for the inter prediction information acquired by the first decoding unit. An index indicating a candidate for inter prediction information is indicated by the index from a second decoding unit (202) that decodes the decoded encoded bit string from the restored encoded bit sequence and the candidate for inter prediction information derived by the prediction information deriving unit. And a selection unit (205) that selects a candidate for inter prediction information.
本発明のさらに別の態様は、受信方法である。この方法は、動画像が符号化された符号化ビット列を受信して復号する受信方法であって、各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列がパケット化された符号化データを受信する受信ステップと、受信された前記符号化データをパケット処理して元の符号化ビット列を復元する復元ステップと、復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、復元された符号化ビット列から、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号ステップと、前記第1の復号ステップで取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを、復元された符号化ビット列から復号する第2の復号ステップと、前記予測情報導出ステップにより導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択ステップとを備える。
Still another aspect of the present invention is a receiving method. This method is a receiving method for receiving and decoding an encoded bit string in which a moving image is encoded, and an encoded bit sequence in which a moving image is encoded using inter prediction in units of blocks obtained by dividing each picture. A receiving step for receiving packetized encoded data; a restoring step for packetizing the received encoded data to restore the original encoded bit string; and the decoding in the same picture as the prediction block to be decoded Prediction for deriving a candidate of inter prediction information from inter prediction information of a decoded prediction block close to the target prediction block and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A syntax element indicating the number of inter prediction information candidates is decoded from the information derivation step and the restored encoded bit string. A first decoding step for obtaining the number of inter prediction information candidates, and an inter prediction used for inter prediction of the prediction block to be decoded based on the number of inter prediction information candidates obtained in the first decoding step. A second decoding step for decoding an index indicating a prediction information candidate from the restored encoded bit string, and an inter prediction information indicated by the index from the inter prediction information candidate derived by the prediction information deriving step. A selection step of selecting candidates.
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
It should be noted that an arbitrary combination of the above-described components and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, etc. are also effective as an aspect of the present invention.
本発明によれば、伝送する符号化情報の発生符号量を削減させて、符号化効率を向上させることができる。
According to the present invention, it is possible to reduce the amount of generated code of encoded information to be transmitted and improve the encoding efficiency.
本実施の形態では、動画像の符号化に関し、特にピクチャを任意のサイズ、形状の矩形ブロックに分割し、ピクチャ間でブロック単位に動き補償を行う動画像符号化における符号化効率を向上させる為に、符号化対象ブロックに隣接するブロックまたは符号化済みのピクチャのブロックの動きベクトルから複数の予測動きベクトルを導出し、符号化対象のブロックの動きベクトルと選択された予測動きベクトルとの差分ベクトルを算出して符号化することによって符号量を削減する。あるいは、符号化対象ブロックに隣接するブロックまたは符号化済みのピクチャのブロックの符号化情報を利用することにより、符号化対象ブロックの符号化情報を導出することによって符号量を削減する。また、動画像の復号の場合は、復号対象ブロックに隣接するブロックまたは復号済みのピクチャのブロックの動きベクトルから複数の予測動きベクトルを算出し、符号化ストリームから復号された差分ベクトルと選択された予測動きベクトルとから復号対象のブロックの動きベクトルを算出して復号する。あるいは、復号対象ブロックに隣接するブロックまたは復号済みのピクチャのブロックの符号化情報を利用することにより、復号対象ブロックの符号化情報を導出する。
In the present embodiment, with regard to moving picture coding, in particular, to improve coding efficiency in moving picture coding in which a picture is divided into rectangular blocks of an arbitrary size and shape and motion compensation is performed in units of blocks between pictures. Next, a plurality of predicted motion vectors are derived from the motion vectors of the block adjacent to the encoding target block or the block of the encoded picture, and the difference vector between the motion vector of the encoding target block and the selected prediction motion vector The amount of code is reduced by calculating and encoding. Alternatively, the coding amount is reduced by deriving the coding information of the coding target block by using the coding information of the block adjacent to the coding target block or the block of the coded picture. Also, in the case of decoding a moving image, a plurality of predicted motion vectors are calculated from the motion vectors of a block adjacent to the decoding target block or a decoded picture block, and selected from the difference vector decoded from the encoded stream The motion vector of the decoding target block is calculated from the predicted motion vector and decoded. Alternatively, the encoding information of the decoding target block is derived by using the encoding information of the block adjacent to the decoding target block or the block of the decoded picture.
まず、本実施の形態において使用する技術、及び技術用語を定義する。
First, technologies and technical terms used in the present embodiment are defined.
(ツリーブロック、符号化ブロックについて)
実施の形態では、ピクチャを1つまたは複数分割したスライスが符号化の基本単位となっており、スライス毎にスライスの種類を示す情報であるスライスタイプが設定される。図3に示されるように、スライス内を任意の同一サイズの正方の矩形の単位にて均等分割する。この単位をツリーブロックと定義し、スライス内での符号化または復号対象ブロック(符号化処理においては符号化対象ブロック、復号処理においては復号対象ブロックのことである。以下、断りのない限り、この意味で用いる。)を特定するためのアドレス管理の基本単位とする。モノクロを除きツリーブロックは1つの輝度信号と2つの色差信号で構成される。ツリーブロックのサイズはピクチャサイズやピクチャ内のテクスチャに応じて、2のべき乗のサイズで自由に設定することができる。ツリーブロックはピクチャ内のテクスチャに応じて、符号化処理を最適にすべく、必要に応じてツリーブロック内の輝度信号、及び色差信号を階層的に4分割(縦横に2分割ずつ)して、ブロックサイズの小さいブロックにすることができる。このブロックをそれぞれ符号化ブロックと定義し、符号化及び復号を行う際の処理の基本単位とする。モノクロを除き符号化ブロックも1つの輝度信号と2つの色差信号で構成される。符号化ブロックの最大サイズはツリーブロックのサイズと同一である。符号化ブロックの最小のサイズとなる符号化ブロックを最小符号化ブロックと呼び、2のべき乗のサイズで自由に設定することができる。 (About tree blocks and coding blocks)
In the embodiment, a slice obtained by dividing a picture into one or more is a basic unit of encoding, and a slice type, which is information indicating a slice type, is set for each slice. As shown in FIG. 3, the slice is equally divided into square units of any same size. This unit is defined as a tree block, and is a block to be encoded or decoded in a slice (a block to be encoded in the encoding process and a block to be decoded in the decoding process. It is used as a basic unit of address management for specifying. Except for monochrome, the tree block is composed of one luminance signal and two color difference signals. The size of the tree block can be freely set to a power of 2 depending on the picture size and the texture in the picture. In order to optimize the encoding process according to the texture in the picture, the tree block divides the luminance signal and chrominance signal in the tree block hierarchically into four parts (two parts vertically and horizontally) as necessary, The block can be made smaller in block size. Each block is defined as a coding block, and is a basic unit of processing when performing coding and decoding. Except for monochrome, the coding block is also composed of one luminance signal and two color difference signals. The maximum size of the coding block is the same as the size of the tree block. An encoded block having the minimum size of the encoded block is called a minimum encoded block, and can be freely set to a power of 2.
実施の形態では、ピクチャを1つまたは複数分割したスライスが符号化の基本単位となっており、スライス毎にスライスの種類を示す情報であるスライスタイプが設定される。図3に示されるように、スライス内を任意の同一サイズの正方の矩形の単位にて均等分割する。この単位をツリーブロックと定義し、スライス内での符号化または復号対象ブロック(符号化処理においては符号化対象ブロック、復号処理においては復号対象ブロックのことである。以下、断りのない限り、この意味で用いる。)を特定するためのアドレス管理の基本単位とする。モノクロを除きツリーブロックは1つの輝度信号と2つの色差信号で構成される。ツリーブロックのサイズはピクチャサイズやピクチャ内のテクスチャに応じて、2のべき乗のサイズで自由に設定することができる。ツリーブロックはピクチャ内のテクスチャに応じて、符号化処理を最適にすべく、必要に応じてツリーブロック内の輝度信号、及び色差信号を階層的に4分割(縦横に2分割ずつ)して、ブロックサイズの小さいブロックにすることができる。このブロックをそれぞれ符号化ブロックと定義し、符号化及び復号を行う際の処理の基本単位とする。モノクロを除き符号化ブロックも1つの輝度信号と2つの色差信号で構成される。符号化ブロックの最大サイズはツリーブロックのサイズと同一である。符号化ブロックの最小のサイズとなる符号化ブロックを最小符号化ブロックと呼び、2のべき乗のサイズで自由に設定することができる。 (About tree blocks and coding blocks)
In the embodiment, a slice obtained by dividing a picture into one or more is a basic unit of encoding, and a slice type, which is information indicating a slice type, is set for each slice. As shown in FIG. 3, the slice is equally divided into square units of any same size. This unit is defined as a tree block, and is a block to be encoded or decoded in a slice (a block to be encoded in the encoding process and a block to be decoded in the decoding process. It is used as a basic unit of address management for specifying. Except for monochrome, the tree block is composed of one luminance signal and two color difference signals. The size of the tree block can be freely set to a power of 2 depending on the picture size and the texture in the picture. In order to optimize the encoding process according to the texture in the picture, the tree block divides the luminance signal and chrominance signal in the tree block hierarchically into four parts (two parts vertically and horizontally) as necessary, The block can be made smaller in block size. Each block is defined as a coding block, and is a basic unit of processing when performing coding and decoding. Except for monochrome, the coding block is also composed of one luminance signal and two color difference signals. The maximum size of the coding block is the same as the size of the tree block. An encoded block having the minimum size of the encoded block is called a minimum encoded block, and can be freely set to a power of 2.
図3においては、符号化ブロックAは、ツリーブロックを分割せず、1つの符号化ブロックとしたものである。符号化ブロックBは、ツリーブロックを4分割してできた符号化ブロックである。符号化ブロックCは、ツリーブロックを4分割してできたブロックをさらに4分割してできた符号化ブロックである。符号化ブロックDは、ツリーブロックを4分割してできたブロックをさらに階層的に2度4分割してできた符号化ブロックであり、最小サイズの符号化ブロックである。
In FIG. 3, the coding block A is a single coding block without dividing the tree block. The encoding block B is an encoding block formed by dividing a tree block into four. The coding block C is a coding block obtained by further dividing the block obtained by dividing the tree block into four. The coding block D is a coding block obtained by further dividing the block obtained by dividing the tree block into four parts and further dividing the block into four twice hierarchically, and is a coding block of the minimum size.
(予測モードについて)
符号化ブロック単位で、復号済みの周囲の画像信号から予測を行うイントラ予測(MODE_INTRA)、及び復号済みのピクチャの画像信号から予測を行うインター予測(MODE_INTER)を切り替える。このイントラ予測(MODE_INTRA)とインター予測(MODE_INTER)を識別するモードを予測モード(PredMode)と定義する。予測モード(PredMode)はイントラ予測(MODE_INTRA)、またはインター予測(MODE_INTER)を値として持ち、選択して符号化できる。 (About prediction mode)
For each coding block, switching is performed between intra prediction (MODE_INTRA) in which prediction is performed from a decoded surrounding image signal and inter prediction (MODE_INTER) in which prediction is performed from an image signal of a decoded picture. A mode for identifying the intra prediction (MODE_INTRA) and the inter prediction (MODE_INTER) is defined as a prediction mode (PredMode). The prediction mode (PredMode) has intra prediction (MODE_INTRA) or inter prediction (MODE_INTER) as a value, and can be selected and encoded.
符号化ブロック単位で、復号済みの周囲の画像信号から予測を行うイントラ予測(MODE_INTRA)、及び復号済みのピクチャの画像信号から予測を行うインター予測(MODE_INTER)を切り替える。このイントラ予測(MODE_INTRA)とインター予測(MODE_INTER)を識別するモードを予測モード(PredMode)と定義する。予測モード(PredMode)はイントラ予測(MODE_INTRA)、またはインター予測(MODE_INTER)を値として持ち、選択して符号化できる。 (About prediction mode)
For each coding block, switching is performed between intra prediction (MODE_INTRA) in which prediction is performed from a decoded surrounding image signal and inter prediction (MODE_INTER) in which prediction is performed from an image signal of a decoded picture. A mode for identifying the intra prediction (MODE_INTRA) and the inter prediction (MODE_INTER) is defined as a prediction mode (PredMode). The prediction mode (PredMode) has intra prediction (MODE_INTRA) or inter prediction (MODE_INTER) as a value, and can be selected and encoded.
(分割モード、予測ブロック、予測ユニットについて)
ピクチャ内をブロックに分割してイントラ予測(MODE_INTRA)及びインター予測(MODE_INTER)を行う場合、イントラ予測及びインター予測の方法を切り替える単位をより小さくするために、必要に応じて符号化ブロックを分割して予測を行う。この符号化ブロックの輝度信号と色差信号の分割方法を識別するモードを分割モード(PartMode)と定義する。さらに、この分割されたブロックを予測ブロックと定義する。図4に示すように、符号化ブロックの輝度信号の分割方法に応じて4種類の分割モード(PartMode)を定義する。
符号化ブロックの輝度信号を分割せず1つの予測ブロックとみなしたもの(図4(a))の分割モード(PartMode)を2N×2N分割(PART_2Nx2N)、符号化ブロックの輝度信号を水平方向に2分割し、2つの予測ブロックとしたもの(図4(b))の分割モード(PartMode)を2N×N分割(PART_2NxN)、符号化ブロックの輝度信号を垂直方向に分割し、符号化ブロックを2つの予測ブロックとしたもの(図4(c))の分割モード(PartMode)をN×2N分割(PART_Nx2N)、符号化ブロックの輝度信号を水平と垂直の均等分割により4つの予測ブロックとしたもの(図4(d))の分割モード(PartMode)をN×N分割(PART_NxN)とそれぞれ定義する。なお、イントラ予測(MODE_INTRA)のN×N分割(PART_NxN)を除き、各分割モード(PartMode)毎に輝度信号の縦横の分割比率と同様に色差信号も分割する。 (About split mode, prediction block, prediction unit)
When performing intra prediction (MODE_INTRA) and inter prediction (MODE_INTER) by dividing the picture into blocks, the coded block is divided as necessary to reduce the unit for switching the intra prediction and inter prediction methods. Make predictions. A mode for identifying the division method of the luminance signal and the color difference signal of the coding block is defined as a division mode (PartMode). Furthermore, this divided block is defined as a prediction block. As shown in FIG. 4, four types of partition modes (PartMode) are defined according to the method of dividing the luminance signal of the coding block.
The division mode (PartMode) of what is regarded as one prediction block without dividing the luminance signal of the coding block (FIG. 4A) is 2N × 2N division (PART_2Nx2N), and the luminance signal of the coding block is horizontally The division mode (PartMode) of the two prediction blocks (FIG. 4B) is divided into 2N × N divisions (PART_2NxN), the luminance signal of the encoded block is divided in the vertical direction, and the encoded block is The partition mode (PartMode) of the two prediction blocks (FIG. 4 (c)) is N × 2N partition (PART_Nx2N), and the luminance signal of the encoded block is divided into four prediction blocks by horizontal and vertical equal partitioning. The division mode (PartMode) of (FIG. 4D) is defined as N × N division (PART_NxN), respectively. Except for N × N division (PART_NxN) of intra prediction (MODE_INTRA), the color difference signal is also divided for each division mode (PartMode) in the same manner as the vertical / horizontal division ratio of the luminance signal.
ピクチャ内をブロックに分割してイントラ予測(MODE_INTRA)及びインター予測(MODE_INTER)を行う場合、イントラ予測及びインター予測の方法を切り替える単位をより小さくするために、必要に応じて符号化ブロックを分割して予測を行う。この符号化ブロックの輝度信号と色差信号の分割方法を識別するモードを分割モード(PartMode)と定義する。さらに、この分割されたブロックを予測ブロックと定義する。図4に示すように、符号化ブロックの輝度信号の分割方法に応じて4種類の分割モード(PartMode)を定義する。
符号化ブロックの輝度信号を分割せず1つの予測ブロックとみなしたもの(図4(a))の分割モード(PartMode)を2N×2N分割(PART_2Nx2N)、符号化ブロックの輝度信号を水平方向に2分割し、2つの予測ブロックとしたもの(図4(b))の分割モード(PartMode)を2N×N分割(PART_2NxN)、符号化ブロックの輝度信号を垂直方向に分割し、符号化ブロックを2つの予測ブロックとしたもの(図4(c))の分割モード(PartMode)をN×2N分割(PART_Nx2N)、符号化ブロックの輝度信号を水平と垂直の均等分割により4つの予測ブロックとしたもの(図4(d))の分割モード(PartMode)をN×N分割(PART_NxN)とそれぞれ定義する。なお、イントラ予測(MODE_INTRA)のN×N分割(PART_NxN)を除き、各分割モード(PartMode)毎に輝度信号の縦横の分割比率と同様に色差信号も分割する。 (About split mode, prediction block, prediction unit)
When performing intra prediction (MODE_INTRA) and inter prediction (MODE_INTER) by dividing the picture into blocks, the coded block is divided as necessary to reduce the unit for switching the intra prediction and inter prediction methods. Make predictions. A mode for identifying the division method of the luminance signal and the color difference signal of the coding block is defined as a division mode (PartMode). Furthermore, this divided block is defined as a prediction block. As shown in FIG. 4, four types of partition modes (PartMode) are defined according to the method of dividing the luminance signal of the coding block.
The division mode (PartMode) of what is regarded as one prediction block without dividing the luminance signal of the coding block (FIG. 4A) is 2N × 2N division (PART_2Nx2N), and the luminance signal of the coding block is horizontally The division mode (PartMode) of the two prediction blocks (FIG. 4B) is divided into 2N × N divisions (PART_2NxN), the luminance signal of the encoded block is divided in the vertical direction, and the encoded block is The partition mode (PartMode) of the two prediction blocks (FIG. 4 (c)) is N × 2N partition (PART_Nx2N), and the luminance signal of the encoded block is divided into four prediction blocks by horizontal and vertical equal partitioning. The division mode (PartMode) of (FIG. 4D) is defined as N × N division (PART_NxN), respectively. Except for N × N division (PART_NxN) of intra prediction (MODE_INTRA), the color difference signal is also divided for each division mode (PartMode) in the same manner as the vertical / horizontal division ratio of the luminance signal.
符号化ブロック内部において、各予測ブロックを特定する為に、0から開始する番号を、符号化順序で、符号化ブロック内部に存在する予測ブロックに対して割り当てる。この番号を分割インデックスPartIdxと定義する。図4の符号化ブロックの各予測ブロックの中に記述された数字は、その予測ブロックの分割インデックスPartIdxを表す。図4(b)に示す2N×N分割(PART_2NxN)では上の予測ブロックの分割インデックスPartIdxを0とし、下の予測ブロックの分割インデックスPartIdxを1とする。図4(c)に示すN×2N分割(PART_Nx2N)では左の予測ブロックの分割インデックスPartIdxを0とし、右の予測ブロックの分割インデックスPartIdxを1とする。図4(d)に示すN×N分割(PART_NxN)では、左上の予測ブロックの分割インデックスPartIdxを0とし、右上の予測ブロックの分割インデックスPartIdxを1とし、左下の予測ブロックの分割インデックスPartIdxを2とし、右下の予測ブロックの分割インデックスPartIdxを3とする。
In order to identify each prediction block within the coding block, a number starting from 0 is assigned to the prediction block existing inside the coding block in the coding order. This number is defined as a split index PartIdx. A number described in each prediction block of the encoded block in FIG. 4 represents a partition index PartIdx of the prediction block. In the 2N × N division (PART_2NxN) shown in FIG. 4B, the division index PartIdx of the upper prediction block is set to 0, and the division index PartIdx of the lower prediction block is set to 1. In the N × 2N division (PART_Nx2N) shown in FIG. 4C, the division index PartIdx of the left prediction block is set to 0, and the division index PartIdx of the right prediction block is set to 1. In the N × N partition (PART_NxN) shown in FIG. 4D, the partition index PartIdx of the upper left prediction block is 0, the partition index PartIdx of the upper right prediction block is 1, and the partition index PartIdx of the lower left prediction block is 2. And the division index PartIdx of the prediction block at the lower right is set to 3.
予測モード(PredMode)がインター予測(MODE_INTER)では、最小の符号化ブロックである符号化ブロックD以外では、分割モード(PartMode)は2N×2N分割(PART_2Nx2N)、2N×N分割(PART_2NxN)、及びN×2N分割(PART_Nx2N)を定義し、最小の符号化ブロックである符号化ブロックDのみ、分割モード(PartMode)は2N×2N分割(PART_2Nx2N)、2N×N分割(PART_2NxN)、及びN×2N分割(PART_Nx2N)に加えてN×N分割(PART_NxN)を定義する。なお、最小の符号化ブロック以外にN×N分割(PART_NxN)を定義しない理由は最小の符号化ブロック以外では、符号化ブロックを4分割して小さな符号化ブロックを表現できるからである。
When the prediction mode (PredMode) is inter prediction (MODE_INTER), except for the coding block D which is the smallest coding block, the partition mode (PartMode) is 2N × 2N partition (PART_2Nx2N), 2N × N partition (PART_2NxN), and N × 2N partition (PART_Nx2N) is defined, and only the coding block D which is the smallest coding block, the partition mode (PartMode) is 2N × 2N partition (PART_2Nx2N), 2N × N partition (PART_2NxN), and N × 2N In addition to the division (PART_Nx2N), N × N division (PART_NxN) is defined. The reason why N × N division (PART_NxN) is not defined other than the smallest coding block is that, except for the smallest coding block, the coding block can be divided into four to represent a small coding block.
(ツリーブロック、符号化ブロック、予測ブロック、変換ブロックの位置)
本実施の形態のツリーブロック、符号化ブロック、予測ブロック、変換ブロックを始めとする各ブロックの位置は、輝度信号の画面の一番左上の輝度信号の画素の位置を原点(0,0)とし、それぞれのブロックの領域に含まれる一番左上の輝度信号の画素の位置を(x,y)の二次元座標で表す。座標軸の向きは水平方向に右の方向、垂直方向に下の方向をそれぞれ正の向きとし、単位は輝度信号の1画素単位である。輝度信号と色差信号で画像サイズ(画素数)が同じである色差フォーマットが4:4:4の場合ではもちろんのこと、輝度信号と色差信号で画像サイズ(画素数)が異なる色差フォーマットが4:2:0、4:2:2の場合でも色差信号の各ブロックの位置をそのブロックの領域に含まれる輝度信号の画素の座標で表し、単位は輝度信号の1画素である。この様にすることで、色差信号の各ブロックの位置が特定できるのはもちろんのこと、座標の値を比較するだけで、輝度信号のブロックと色差信号のブロックの位置の関係も明確となる。 (Position of tree block, coding block, prediction block, transform block)
The position of each block including the tree block, the encoding block, the prediction block, and the transform block according to the present embodiment has the position of the pixel of the luminance signal at the upper left of the luminance signal screen as the origin (0, 0). The pixel position of the upper left luminance signal included in each block area is represented by two-dimensional coordinates (x, y). The direction of the coordinate axis is a right direction in the horizontal direction and a downward direction in the vertical direction, respectively, and the unit is one pixel unit of the luminance signal. Of course, the luminance signal and the color difference signal have the same image size (number of pixels) and the color difference format is 4: 4: 4. Of course, the luminance signal and the color difference signal have a different color size format of 4: 4. Even in the case of 2: 0, 4: 2: 2, the position of each block of the color difference signal is represented by the coordinates of the pixel of the luminance signal included in the block area, and the unit is one pixel of the luminance signal. In this way, not only can the position of each block of the color difference signal be specified, but also the relationship between the positions of the luminance signal block and the color difference signal block can be clarified only by comparing the coordinate values.
本実施の形態のツリーブロック、符号化ブロック、予測ブロック、変換ブロックを始めとする各ブロックの位置は、輝度信号の画面の一番左上の輝度信号の画素の位置を原点(0,0)とし、それぞれのブロックの領域に含まれる一番左上の輝度信号の画素の位置を(x,y)の二次元座標で表す。座標軸の向きは水平方向に右の方向、垂直方向に下の方向をそれぞれ正の向きとし、単位は輝度信号の1画素単位である。輝度信号と色差信号で画像サイズ(画素数)が同じである色差フォーマットが4:4:4の場合ではもちろんのこと、輝度信号と色差信号で画像サイズ(画素数)が異なる色差フォーマットが4:2:0、4:2:2の場合でも色差信号の各ブロックの位置をそのブロックの領域に含まれる輝度信号の画素の座標で表し、単位は輝度信号の1画素である。この様にすることで、色差信号の各ブロックの位置が特定できるのはもちろんのこと、座標の値を比較するだけで、輝度信号のブロックと色差信号のブロックの位置の関係も明確となる。 (Position of tree block, coding block, prediction block, transform block)
The position of each block including the tree block, the encoding block, the prediction block, and the transform block according to the present embodiment has the position of the pixel of the luminance signal at the upper left of the luminance signal screen as the origin (0, 0). The pixel position of the upper left luminance signal included in each block area is represented by two-dimensional coordinates (x, y). The direction of the coordinate axis is a right direction in the horizontal direction and a downward direction in the vertical direction, respectively, and the unit is one pixel unit of the luminance signal. Of course, the luminance signal and the color difference signal have the same image size (number of pixels) and the color difference format is 4: 4: 4. Of course, the luminance signal and the color difference signal have a different color size format of 4: 4. Even in the case of 2: 0, 4: 2: 2, the position of each block of the color difference signal is represented by the coordinates of the pixel of the luminance signal included in the block area, and the unit is one pixel of the luminance signal. In this way, not only can the position of each block of the color difference signal be specified, but also the relationship between the positions of the luminance signal block and the color difference signal block can be clarified only by comparing the coordinate values.
(インター予測モード、参照リストについて)
本発明の実施の形態においては、復号済みのピクチャの画像信号から予測を行うインター予測では、複数の復号済みのピクチャを参照ピクチャとして用いることができる。複数の参照ピクチャから選択された参照ピクチャを特定するため、予測ブロック毎に参照インデックスを付ける。予測ブロック毎に任意の2枚の参照ピクチャを選択してインター予測ことができ、インター予測モードとしてL0予測(Pred_L0)、L1予測(Pred_L1)、双予測(Pred_BI)がある。参照ピクチャはリスト構造のL0(参照リスト0)とL1(参照リスト1)で管理され、L0またはL1の参照インデックスを指定することにより参照ピクチャを特定することができる。L0予測(Pred_L0)はL0で管理されている参照ピクチャを参照するインター予測であり、L1予測(Pred_L1)はL1で管理されている参照ピクチャを参照するインター予測であり、双予測(Pred_BI)はL0予測とL1予測が共に行われ、L0とL1のそれぞれで管理されている1つずつの参照ピクチャを参照するインター予測である。スライスタイプがPスライスのインター予測ではL0予測のみが利用でき、スライスタイプがBスライスのインター予測ではL0予測、L1予測、L0予測とL1予測を平均または重み付け加算する双予測(Pred_BI)が利用できる。以降の処理において出力に添え字LXが付いている定数、変数に関しては、L0、L1ごとに処理が行われることを前提とする。 (Inter prediction mode, reference list)
In the embodiment of the present invention, in inter prediction in which prediction is performed from an image signal of a decoded picture, a plurality of decoded pictures can be used as reference pictures. In order to identify a reference picture selected from a plurality of reference pictures, a reference index is attached to each prediction block. Any two reference pictures can be selected for each prediction block and inter prediction can be performed, and there are L0 prediction (Pred_L0), L1 prediction (Pred_L1), and bi-prediction (Pred_BI) as inter prediction modes. The reference picture is managed by L0 (reference list 0) and L1 (reference list 1) of the list structure, and the reference picture can be specified by specifying the reference index of L0 or L1. L0 prediction (Pred_L0) is inter prediction that refers to a reference picture managed in L0, L1 prediction (Pred_L1) is inter prediction that refers to a reference picture managed in L1, and bi-prediction (Pred_BI) is This is inter prediction in which both L0 prediction and L1 prediction are performed and one reference picture managed by each of L0 and L1 is referred to. Only L0 prediction can be used for inter prediction with a slice type of P slice, and L0 prediction, L1 prediction, and bi-prediction (Pred_BI) that averages or weights and adds L0 prediction and L1 prediction can be used for inter prediction with a slice type of B slice. . In the subsequent processing, it is assumed that the constants and variables with the subscript LX in the output are processed for each of L0 and L1.
本発明の実施の形態においては、復号済みのピクチャの画像信号から予測を行うインター予測では、複数の復号済みのピクチャを参照ピクチャとして用いることができる。複数の参照ピクチャから選択された参照ピクチャを特定するため、予測ブロック毎に参照インデックスを付ける。予測ブロック毎に任意の2枚の参照ピクチャを選択してインター予測ことができ、インター予測モードとしてL0予測(Pred_L0)、L1予測(Pred_L1)、双予測(Pred_BI)がある。参照ピクチャはリスト構造のL0(参照リスト0)とL1(参照リスト1)で管理され、L0またはL1の参照インデックスを指定することにより参照ピクチャを特定することができる。L0予測(Pred_L0)はL0で管理されている参照ピクチャを参照するインター予測であり、L1予測(Pred_L1)はL1で管理されている参照ピクチャを参照するインター予測であり、双予測(Pred_BI)はL0予測とL1予測が共に行われ、L0とL1のそれぞれで管理されている1つずつの参照ピクチャを参照するインター予測である。スライスタイプがPスライスのインター予測ではL0予測のみが利用でき、スライスタイプがBスライスのインター予測ではL0予測、L1予測、L0予測とL1予測を平均または重み付け加算する双予測(Pred_BI)が利用できる。以降の処理において出力に添え字LXが付いている定数、変数に関しては、L0、L1ごとに処理が行われることを前提とする。 (Inter prediction mode, reference list)
In the embodiment of the present invention, in inter prediction in which prediction is performed from an image signal of a decoded picture, a plurality of decoded pictures can be used as reference pictures. In order to identify a reference picture selected from a plurality of reference pictures, a reference index is attached to each prediction block. Any two reference pictures can be selected for each prediction block and inter prediction can be performed, and there are L0 prediction (Pred_L0), L1 prediction (Pred_L1), and bi-prediction (Pred_BI) as inter prediction modes. The reference picture is managed by L0 (reference list 0) and L1 (reference list 1) of the list structure, and the reference picture can be specified by specifying the reference index of L0 or L1. L0 prediction (Pred_L0) is inter prediction that refers to a reference picture managed in L0, L1 prediction (Pred_L1) is inter prediction that refers to a reference picture managed in L1, and bi-prediction (Pred_BI) is This is inter prediction in which both L0 prediction and L1 prediction are performed and one reference picture managed by each of L0 and L1 is referred to. Only L0 prediction can be used for inter prediction with a slice type of P slice, and L0 prediction, L1 prediction, and bi-prediction (Pred_BI) that averages or weights and adds L0 prediction and L1 prediction can be used for inter prediction with a slice type of B slice. . In the subsequent processing, it is assumed that the constants and variables with the subscript LX in the output are processed for each of L0 and L1.
(マージモード、マージ候補)
マージモードとは、符号化または復号対象の予測ブロックの予測モード、参照インデックス、動きベクトル等のインター予測情報を符号化または復号するのではなく、符号化または復号対象の予測ブロックと同一ピクチャ内でその符号化または復号対象の予測ブロックに隣接する予測ブロック、あるいは符号化または復号対象の予測ブロックと時間的に異なる符号化または復号済みのピクチャの符号化または復号対象の予測ブロックと同一位置あるいはその付近(近傍の位置)に存在する予測ブロックのインター予測情報から符号化または復号対象の予測ブロックのインター予測情報を導出することによりインター予測を行うモードである。符号化または復号対象の予測ブロックと同一ピクチャ内でその符号化または復号対象の予測ブロックに隣接する予測ブロック及びその予測ブロックのインター予測情報を空間マージ候補、符号化または復号対象の予測ブロックと時間的に異なる符号化または復号済みのピクチャの符号化または復号対象の予測ブロックと同一位置あるいはその付近(近傍の位置)に存在する予測ブロック及びその予測ブロックのインター予測情報から導出されるインター予測情報を時間マージ候補とする。それぞれのマージ候補はマージ候補リストに登録され、マージインデックスによりインター予測で用いるマージ候補を特定する。 (Merge mode, merge candidate)
In the merge mode, the prediction mode of the prediction block to be encoded or decoded, the inter prediction information such as the reference index and the motion vector is not encoded or decoded, but within the same picture as the prediction block to be encoded or decoded. The prediction block adjacent to the prediction block to be encoded or decoded or the same position as the prediction block to be encoded or decoded of a picture that has been encoded or decoded that is temporally different from the prediction block to be encoded or decoded. In this mode, inter prediction is performed by deriving inter prediction information of a prediction block to be encoded or decoded from inter prediction information of a prediction block existing in the vicinity (neighboring position). The prediction block adjacent to the prediction block to be encoded or decoded in the same picture as the prediction block to be encoded or decoded and the inter prediction information of the prediction block are spatial merge candidates, the prediction block and time to be encoded or decoded Prediction information derived from a prediction block existing at the same position as or near (previously near) a prediction block to be encoded or decoded of a differently encoded or decoded picture and inter prediction information of the prediction block Are time merge candidates. Each merge candidate is registered in the merge candidate list, and the merge candidate used in the inter prediction is specified by the merge index.
マージモードとは、符号化または復号対象の予測ブロックの予測モード、参照インデックス、動きベクトル等のインター予測情報を符号化または復号するのではなく、符号化または復号対象の予測ブロックと同一ピクチャ内でその符号化または復号対象の予測ブロックに隣接する予測ブロック、あるいは符号化または復号対象の予測ブロックと時間的に異なる符号化または復号済みのピクチャの符号化または復号対象の予測ブロックと同一位置あるいはその付近(近傍の位置)に存在する予測ブロックのインター予測情報から符号化または復号対象の予測ブロックのインター予測情報を導出することによりインター予測を行うモードである。符号化または復号対象の予測ブロックと同一ピクチャ内でその符号化または復号対象の予測ブロックに隣接する予測ブロック及びその予測ブロックのインター予測情報を空間マージ候補、符号化または復号対象の予測ブロックと時間的に異なる符号化または復号済みのピクチャの符号化または復号対象の予測ブロックと同一位置あるいはその付近(近傍の位置)に存在する予測ブロック及びその予測ブロックのインター予測情報から導出されるインター予測情報を時間マージ候補とする。それぞれのマージ候補はマージ候補リストに登録され、マージインデックスによりインター予測で用いるマージ候補を特定する。 (Merge mode, merge candidate)
In the merge mode, the prediction mode of the prediction block to be encoded or decoded, the inter prediction information such as the reference index and the motion vector is not encoded or decoded, but within the same picture as the prediction block to be encoded or decoded. The prediction block adjacent to the prediction block to be encoded or decoded or the same position as the prediction block to be encoded or decoded of a picture that has been encoded or decoded that is temporally different from the prediction block to be encoded or decoded. In this mode, inter prediction is performed by deriving inter prediction information of a prediction block to be encoded or decoded from inter prediction information of a prediction block existing in the vicinity (neighboring position). The prediction block adjacent to the prediction block to be encoded or decoded in the same picture as the prediction block to be encoded or decoded and the inter prediction information of the prediction block are spatial merge candidates, the prediction block and time to be encoded or decoded Prediction information derived from a prediction block existing at the same position as or near (previously near) a prediction block to be encoded or decoded of a differently encoded or decoded picture and inter prediction information of the prediction block Are time merge candidates. Each merge candidate is registered in the merge candidate list, and the merge candidate used in the inter prediction is specified by the merge index.
(隣接する予測ブロックについて)
図5、図6、図7及び図8は符号化または復号対象の予測ブロックと同一ピクチャ内でその符号化または復号対象の予測ブロックに隣接する予測ブロックを説明する図である。図9は符号化または復号対象の予測ブロックと時間的に異なる符号化または復号済みのピクチャにおいて、符号化または復号対象の予測ブロックと同一位置あるいはその付近に存在する既に符号化または復号済みの予測ブロックを説明する図である。図5、図6、図7、図8及び図9を用いて符号化または復号対象の予測ブロックの空間方向に隣接する予測ブロック、及び異なる時間の同一位置の予測ブロックについて説明する。 (About adjacent prediction blocks)
5, 6, 7 and 8 are diagrams for explaining a prediction block adjacent to a prediction block to be encoded or decoded in the same picture as the prediction block to be encoded or decoded. FIG. 9 shows an already encoded or decoded prediction existing in the same position as or near the prediction block to be encoded or decoded in a picture that has been encoded or decoded that is temporally different from the prediction block to be encoded or decoded. It is a figure explaining a block. A prediction block adjacent in the spatial direction of a prediction block to be encoded or decoded and a prediction block at the same position at different times will be described with reference to FIGS. 5, 6, 7, 8, and 9.
図5、図6、図7及び図8は符号化または復号対象の予測ブロックと同一ピクチャ内でその符号化または復号対象の予測ブロックに隣接する予測ブロックを説明する図である。図9は符号化または復号対象の予測ブロックと時間的に異なる符号化または復号済みのピクチャにおいて、符号化または復号対象の予測ブロックと同一位置あるいはその付近に存在する既に符号化または復号済みの予測ブロックを説明する図である。図5、図6、図7、図8及び図9を用いて符号化または復号対象の予測ブロックの空間方向に隣接する予測ブロック、及び異なる時間の同一位置の予測ブロックについて説明する。 (About adjacent prediction blocks)
5, 6, 7 and 8 are diagrams for explaining a prediction block adjacent to a prediction block to be encoded or decoded in the same picture as the prediction block to be encoded or decoded. FIG. 9 shows an already encoded or decoded prediction existing in the same position as or near the prediction block to be encoded or decoded in a picture that has been encoded or decoded that is temporally different from the prediction block to be encoded or decoded. It is a figure explaining a block. A prediction block adjacent in the spatial direction of a prediction block to be encoded or decoded and a prediction block at the same position at different times will be described with reference to FIGS. 5, 6, 7, 8, and 9.
図5に示すように、符号化または復号対象の予測ブロックと同一ピクチャ内でその符号化または復号対象の予測ブロックの左側の辺に隣接する予測ブロックA、上側の辺に隣接する予測ブロックB、右上の頂点に隣接する予測ブロックC、左下の頂点に隣接する予測ブロックD、および左上の頂点に隣接する予測ブロックEを空間方向に隣接する予測ブロックと定義する。
As shown in FIG. 5, a prediction block A adjacent to the left side of the prediction block to be encoded or decoded in the same picture as the prediction block to be encoded or decoded, and a prediction block B adjacent to the upper side, A prediction block C adjacent to the upper right vertex, a prediction block D adjacent to the lower left vertex, and a prediction block E adjacent to the upper left vertex are defined as prediction blocks adjacent in the spatial direction.
なお、図6に示すように、符号化または復号対象の予測ブロックの左側の辺に隣接する予測ブロックのサイズが符号化または復号対象の予測ブロックより小さく、複数存在する場合には、本実施の形態においては左側の辺に隣接する予測ブロックの中で最も下の予測ブロックA10だけを左側の辺に隣接する予測ブロックAとする。
In addition, as shown in FIG. 6, when the size of the prediction block adjacent to the left side of the prediction block to be encoded or decoded is smaller than the prediction block to be encoded or decoded and there are a plurality of prediction blocks, this embodiment In the embodiment, only the lowest prediction block A10 among the prediction blocks adjacent to the left side is set as the prediction block A adjacent to the left side.
同様に、符号化または復号対象の予測ブロックの上側の辺に隣接する予測ブロックのサイズが符号化または復号対象の予測ブロックより小さく、複数存在する場合には、本実施の形態においては左側の辺に隣接する予測ブロックの中で最も右の予測ブロックB10だけを上側の辺に隣接する予測ブロックBとする。
Similarly, when the size of the prediction block adjacent to the upper side of the prediction block to be encoded or decoded is smaller than the prediction block to be encoded or decoded and there are a plurality of prediction blocks, the left side in this embodiment Only the rightmost prediction block B10 among the prediction blocks adjacent to is set as the prediction block B adjacent to the upper side.
なお、図7に示すように、符号化または復号対象の予測ブロックの左側に隣接する予測ブロックFのサイズが符号化または復号対象の予測ブロックより大きい場合にも、前記条件に従い、左側に隣接する予測ブロックFがその符号化または復号対象の予測ブロックの左側の辺に隣接していれば予測ブロックAとし、符号化または復号対象の予測ブロックの左下の頂点に隣接していれば予測ブロックDとし、符号化または復号対象の予測ブロックの左上の頂点に隣接していれば予測ブロックEとする。図7の例では、予測ブロックA、予測ブロックD及び予測ブロックEは同一の予測ブロックとなる。
In addition, as shown in FIG. 7, even when the size of the prediction block F adjacent to the left side of the prediction block to be encoded or decoded is larger than the prediction block to be encoded or decoded, it is adjacent to the left side according to the above condition. If the prediction block F is adjacent to the left side of the prediction block to be encoded or decoded, the prediction block A is determined. If the prediction block F is adjacent to the lower left vertex of the prediction block to be encoded or decoded, the prediction block D is determined. If it is adjacent to the upper left vertex of the prediction block to be encoded or decoded, it is determined as a prediction block E. In the example of FIG. 7, the prediction block A, the prediction block D, and the prediction block E are the same prediction block.
なお、図8に示すように、符号化または復号対象の予測ブロックの上側に隣接する予測ブロックGのサイズが符号化または復号対象の予測ブロックより大きい場合にも、前記条件に従い、上側に隣接する予測ブロックGがその符号化または復号対象の予測ブロックの上側の辺に隣接していれば予測ブロックBとし、符号化または復号対象の予測ブロックの右上の頂点に隣接していれば予測ブロックCとし、符号化または復号対象の予測ブロックの左上の頂点に隣接していれば予測ブロックEとする。図8の例では、予測ブロックB、予測ブロックC及び予測ブロックEは同一の予測ブロックとなる。
In addition, as shown in FIG. 8, even when the size of the prediction block G adjacent to the upper side of the prediction block to be encoded or decoded is larger than the prediction block to be encoded or decoded, it is adjacent to the upper side according to the above condition. If the prediction block G is adjacent to the upper side of the prediction block to be encoded or decoded, the prediction block B is determined. If the prediction block G is adjacent to the upper right vertex of the prediction block to be encoded or decoded, the prediction block C is determined. If it is adjacent to the upper left vertex of the prediction block to be encoded or decoded, it is determined as a prediction block E. In the example of FIG. 8, the prediction block B, the prediction block C, and the prediction block E are the same prediction block.
図9に示すように、符号化または復号対象の予測ブロックと時間的に異なる符号化または復号済みのピクチャにおいて、符号化または復号対象の予測ブロックと同一位置あるいはその付近に存在する既に符号化または復号済みの予測ブロックT0およびT1を異なる時間の同一位置の予測ブロックと定義する。
As shown in FIG. 9, in a picture that has been encoded or decoded that is temporally different from the prediction block to be encoded or decoded, already encoded or existing at the same position as or near the prediction block to be encoded or decoded. The decoded prediction blocks T0 and T1 are defined as prediction blocks at the same position at different times.
(POCについて)
POCは符号化されるピクチャに関連付けられる変数とし、ピクチャの出力順序で1ずつ増加する値が設定される。POCの値によって、同じピクチャであるかを判別したり、出力順序でのピクチャ間の前後関係を判別したり、ピクチャ間の距離を導出したりすることができる。例えば、2つのピクチャのPOCが同じ値を持つ場合、同一のピクチャであると判断できる。2つのピクチャのPOCが違う値を持つ場合、POCの値が小さいピクチャのほうが、先に出力されるピクチャであると判断でき、2つのピクチャのPOCの差が時間軸方向でのピクチャ間距離を示す。 (About POC)
POC is a variable associated with the picture to be encoded, and is set to a value that increases by 1 in the picture output order. Based on the POC value, it is possible to determine whether they are the same picture, to determine the anteroposterior relationship between pictures in the output order, or to derive the distance between pictures. For example, if the POCs of two pictures have the same value, it can be determined that they are the same picture. When the POCs of two pictures have different values, it can be determined that the picture with the smaller POC value is the picture output first, and the difference between the POCs of the two pictures indicates the inter-picture distance in the time axis direction. Show.
POCは符号化されるピクチャに関連付けられる変数とし、ピクチャの出力順序で1ずつ増加する値が設定される。POCの値によって、同じピクチャであるかを判別したり、出力順序でのピクチャ間の前後関係を判別したり、ピクチャ間の距離を導出したりすることができる。例えば、2つのピクチャのPOCが同じ値を持つ場合、同一のピクチャであると判断できる。2つのピクチャのPOCが違う値を持つ場合、POCの値が小さいピクチャのほうが、先に出力されるピクチャであると判断でき、2つのピクチャのPOCの差が時間軸方向でのピクチャ間距離を示す。 (About POC)
POC is a variable associated with the picture to be encoded, and is set to a value that increases by 1 in the picture output order. Based on the POC value, it is possible to determine whether they are the same picture, to determine the anteroposterior relationship between pictures in the output order, or to derive the distance between pictures. For example, if the POCs of two pictures have the same value, it can be determined that they are the same picture. When the POCs of two pictures have different values, it can be determined that the picture with the smaller POC value is the picture output first, and the difference between the POCs of the two pictures indicates the inter-picture distance in the time axis direction. Show.
以下、図面と共に本発明の実施の形態を説明する。図1は本発明の実施の形態に係る動画像符号化装置の構成を示すブロック図である。実施の形態の動画像符号化装置は、画像メモリ101、ヘッダ情報設定部117、動きベクトル検出部102、差分動きベクトル算出部103、インター予測情報導出部104、動き補償予測部105、イントラ予測部106、予測方法決定部107、残差信号生成部108、直交変換・量子化部109、第1符号化ビット列生成部118、第2符号化ビット列生成部110、第3符号化ビット列生成部111、多重化部112、逆量子化・逆直交変換部113、復号画像信号重畳部114、符号化情報格納メモリ115、および復号画像メモリ116を備える。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a moving picture coding apparatus according to an embodiment of the present invention. The moving image encoding apparatus according to the embodiment includes an image memory 101, a header information setting unit 117, a motion vector detection unit 102, a difference motion vector calculation unit 103, an inter prediction information derivation unit 104, a motion compensation prediction unit 105, and an intra prediction unit. 106, prediction method determination unit 107, residual signal generation unit 108, orthogonal transform / quantization unit 109, first encoded bit sequence generation unit 118, second encoded bit sequence generation unit 110, third encoded bit sequence generation unit 111, A multiplexing unit 112, an inverse quantization / inverse orthogonal transform unit 113, a decoded image signal superimposing unit 114, an encoded information storage memory 115, and a decoded image memory 116 are provided.
ヘッダ情報設定部117は、シーケンス、ピクチャ、スライス単位の情報を設定する。設定されたシーケンス、ピクチャ、スライス単位の情報はインター予測情報導出部104、第1符号化ビット列生成部118に供給するとともに、図示していないがすべてのブロックに供給する。
The header information setting unit 117 sets information in units of sequences, pictures, and slices. The set sequence, picture, and slice unit information is supplied to the inter prediction information deriving unit 104 and the first encoded bit string generating unit 118, and is also supplied to all blocks (not shown).
画像メモリ101は、撮影/表示時間順に供給された符号化対象のピクチャの画像信号を一時格納する。画像メモリ101は、格納された符号化対象のピクチャの画像信号を、所定の画素ブロック単位で、動きベクトル検出部102、予測方法決定部107、および残差信号生成部108に供給する。その際、撮影/表示時間順に格納されたピクチャの画像信号は、符号化順序に並べ替えられて、画素ブロック単位で、画像メモリ101から出力される。
The image memory 101 temporarily stores the image signal of the encoding target picture supplied in the order of shooting / display time. The image memory 101 supplies the stored image signal of the picture to be encoded to the motion vector detection unit 102, the prediction method determination unit 107, and the residual signal generation unit 108 in units of predetermined pixel blocks. At this time, the image signals of the pictures stored in the order of shooting / display time are rearranged in the encoding order and output from the image memory 101 in units of pixel blocks.
動きベクトル検出部102は、画像メモリ101から供給される画像信号と復号画像メモリ116から供給される参照ピクチャ間でブロックマッチング等により各予測ブロックサイズ、各予測モードのそれぞれの動きベクトルを各予測ブロック単位で検出し、検出された動きベクトルを動き補償予測部105、差分動きベクトル算出部103、および予測方法決定部107に供給する。
The motion vector detection unit 102 uses the motion vector for each prediction block size and each prediction mode by block matching between the image signal supplied from the image memory 101 and the reference picture supplied from the decoded image memory 116 for each prediction block. Detection is performed in units, and the detected motion vector is supplied to the motion compensation prediction unit 105, the difference motion vector calculation unit 103, and the prediction method determination unit 107.
差分動きベクトル算出部103は、符号化情報格納メモリ115に記憶されている既に符号化された画像信号の符号化情報を用いて、複数の予測動きベクトルの候補を算出して予測動きベクトルリストに登録し、予測動きベクトルリストに登録された複数の予測動きベクトルの候補の中から最適な予測動きベクトルを選択し、動きベクトル検出部102が検出した動きベクトルと予測動きベクトルから差分動きベクトルを算出し、算出された差分動きベクトルを予測方法決定部107に供給する。さらに、予測動きベクトルリストに登録された予測動きベクトルの候補から選択された予測動きベクトルを特定する予測動きベクトルインデックスを予測方法決定部107に供給する。
The difference motion vector calculation unit 103 calculates a plurality of motion vector predictor candidates by using the encoded information of the already encoded image signal stored in the encoded information storage memory 115, and generates a prediction motion vector list. The optimum motion vector predictor is selected from a plurality of motion vector predictor candidates registered and registered in the motion vector predictor list, and a motion vector difference is calculated from the motion vector detected by the motion vector detector 102 and the motion vector predictor. Then, the calculated difference motion vector is supplied to the prediction method determination unit 107. Furthermore, a prediction motion vector index that identifies a prediction motion vector selected from prediction motion vector candidates registered in the prediction motion vector list is supplied to the prediction method determination unit 107.
インター予測情報導出部104は、マージモードでのマージ候補を導出する。符号化情報格納メモリ115に記憶されている既に符号化された予測ブロックの符号化情報を用いて、複数のマージ候補を導出して後述するマージ候補リストに登録し、マージ候補リストに登録された複数のマージ候補の中から適したマージ候補を選択し、選択されたマージ候補の各予測ブロックのL0予測、及びL1予測を利用するかどうかを示すフラグpredFlagL0[xP][yP], predFlagL1[xP][yP]、参照インデックスrefIdxL0[xP][yP], refIdxL1[xP][yP]、動きベクトルmvL0[xP][yP], mvL1[xP][yP]等のインター予測情報を動き補償予測部105に供給するとともに、選択されたマージ候補を特定するマージインデックスを予測方法決定部107に供給する。ここで、xP、yPはピクチャ内での予測ブロックの左上の画素の位置を示すインデックスである。インター予測情報導出部104の詳細な構成と動作は後述する。
The inter prediction information deriving unit 104 derives merge candidates in the merge mode. A plurality of merge candidates are derived using the encoding information of the already encoded prediction block stored in the encoding information storage memory 115 and registered in a merge candidate list described later, and registered in the merge candidate list Flags predFlagL0 [xP] [yP], predFlagL1 [xP indicating whether or not to use the L0 prediction and L1 prediction of each prediction block of the selected merge candidate from among a plurality of merge candidates ] [yP], reference index refIdxL0 [xP] [yP], refIdxL1 [xP] [yP], motion vector mvL0 [xP] [yP], mvL1 [xP] [yP], etc. And a merge index for specifying the selected merge candidate is supplied to the prediction method determination unit 107. Here, xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture. The detailed configuration and operation of the inter prediction information deriving unit 104 will be described later.
動き補償予測部105は、動きベクトル検出部102およびインター予測情報導出部104により検出された動きベクトルを用いて参照ピクチャからインター予測(動き補償予測)により予測画像信号を生成し、予測画像信号を予測方法決定部107に供給する。なお、L0予測、及びL1予測では、片方向の予測を行う。双予測(Pred_BI)の場合は、双方向の予測を行い、L0予測、L1予測のそれぞれのインター予測された信号に適応的に重み係数を掛け算し、オフセット値を加算して重畳し、最終的な予測画像信号を生成する。
The motion compensated prediction unit 105 generates a predicted image signal by inter prediction (motion compensated prediction) from the reference picture using the motion vectors detected by the motion vector detection unit 102 and the inter prediction information deriving unit 104, and generates the predicted image signal. This is supplied to the prediction method determination unit 107. In L0 prediction and L1 prediction, one-way prediction is performed. In the case of bi-prediction (Pred_BI), bi-directional prediction is performed, the inter-predicted signals of L0 prediction and L1 prediction are adaptively multiplied by weighting factors, offset values are added and superimposed, and finally A predicted image signal is generated.
イントラ予測部106は、各イントラ予測モードについてイントラ予測を行う。復号画像メモリ116に格納されている復号済みの画像信号からイントラ予測により予測画像信号を生成し、複数のイントラ予測モードの中から適したイントラ予測モードを選択し、選択されたイントラ予測モード、及び選択されたイントラ予測モードに応じた予測画像信号を予測方法決定部107に供給する。
The intra prediction unit 106 performs intra prediction for each intra prediction mode. A prediction image signal is generated by intra prediction from the decoded image signal stored in the decoded image memory 116, a suitable intra prediction mode is selected from a plurality of intra prediction modes, the selected intra prediction mode, and A prediction image signal corresponding to the selected intra prediction mode is supplied to the prediction method determination unit 107.
予測方法決定部107は符号化情報及び残差信号の符号量、予測画像信号と画像信号との間の歪量等を評価することにより、複数の予測方法の中から、最適な符号化ブロック単位でインター予測(PRED_INTER)かイントラ予測(PRED_INTRA)かを判別する予測モードPredMode、分割モードPartModeを決定し、インター予測(PRED_INTER)では予測ブロック単位でマージモードか否かを決定し、マージモードの場合はマージインデックス、マージモードでない場合はインター予測モード、予測動きベクトルインデックス、L0、L1の参照インデックス、差分動きベクトル等を決定して、決定に応じた符号化情報を第2符号化ビット列生成部110に供給する。
The prediction method determination unit 107 evaluates the encoding information and the code amount of the residual signal, the distortion amount between the prediction image signal and the image signal, and the like, so that the optimum coding block unit can be selected from a plurality of prediction methods. In prediction mode PredMode to determine whether it is inter prediction (PRED_INTER) or intra prediction (PRED_INTRA), and split mode PartMode are determined. In inter prediction (PRED_INTER), it is determined whether or not it is merge mode for each prediction block. Determines the merge index, and when not in the merge mode, the inter prediction mode, the prediction motion vector index, the reference index of L0 and L1, the difference motion vector, etc. are determined, and the encoded information corresponding to the determination is determined as the second encoded bit string generation unit 110. To supply.
さらに、予測方法決定部107は、決定された予測方法を示す情報、及び決定された予測方法に応じた動きベクトル等を含む符号化情報を符号化情報格納メモリ115に格納する。ここで格納する符号化情報は、各符号化ブロックの予測モードPredMode、分割モードPartMode、各予測ブロックのL0予測、及びL1予測を利用するかどうかを示すフラグpredFlagL0[xP][yP], predFlagL1[xP][yP]、L0、L1の参照インデックスrefIdxL0[xP][yP], refIdxL1[xP][yP]、L0、L1の動きベクトルmvL0[xP][yP], mvL1[xP][yP]等である。ここで、xP、yPはピクチャ内での予測ブロックの左上の画素の位置を示すインデックスである。なお、予測モードPredModeがインター予測(MODE_INTER)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0[xP][yP]、L1予測を利用するかどうかを示すフラグpredFlagL1[xP][yP]は共に0である。一方、予測モードPredModeがインター予測(MODE_INTER)で、インター予測モードがL0予測(Pred_L0)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0[xP][yP]は1, L1予測を利用するかどうかを示すフラグpredFlagL1[xP][yP]は0である。インター予測モードがL1予測(Pred_L1)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0[xP][yP]は0, L1予測を利用するかどうかを示すフラグpredFlagL1[xP][yP]は1である。インター予測モードが双予測(Pred_BI)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0[xP][yP]、L1予測を利用するかどうかを示すフラグpredFlagL1[xP][yP]は共に1である。予測方法決定部107は、決定された予測モードに応じた予測画像信号を残差信号生成部108と復号画像信号重畳部114に供給する。
Furthermore, the prediction method determination unit 107 stores information indicating the determined prediction method and encoded information including a motion vector corresponding to the determined prediction method in the encoded information storage memory 115. The encoding information stored here is a flag predFlagL0 [xP] [yP], predFlagL1 [that indicates whether to use the prediction mode PredMode, the partition mode PartMode, the L0 prediction of each prediction block, and the L1 prediction of each prediction block. xP] [yP], L0, L1 reference indices refIdxL0 [xP] [yP], refIdxL1 [xP] [yP], L0, L1 motion vectors mvL0 [xP] [yP], mvL1 [xP] [yP], etc. It is. Here, xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture. When the prediction mode PredMode is inter prediction (MODE_INTER), a flag predFlagL0 [xP] [yP] indicating whether to use L0 prediction and a flag predFlagL1 [xP] [yP] indicating whether to use L1 prediction are Both are zero. On the other hand, when the prediction mode PredMode is inter prediction (MODE_INTER) and the inter prediction mode is L0 prediction (Pred_L0), the flag predFlagL0 [xP] [yP] indicating whether or not to use L0 prediction uses 1, L1 prediction. The flag predFlagL1 [xP] [yP] indicating whether or not is zero. When the inter prediction mode is L1 prediction (Pred_L1), the flag predFlagL0 [xP] [yP] indicating whether to use L0 prediction is 0, and the flag predFlagL1 [xP] [yP] indicating whether to use L1 prediction is 1. When the inter prediction mode is bi-prediction (Pred_BI), a flag predFlagL0 [xP] [yP] indicating whether to use L0 prediction and a flag predFlagL1 [xP] [yP] indicating whether to use L1 prediction are both 1. It is. The prediction method determination unit 107 supplies a prediction image signal corresponding to the determined prediction mode to the residual signal generation unit 108 and the decoded image signal superimposition unit 114.
残差信号生成部108は、符号化する画像信号と予測画像信号との減算を行うことにより残差信号を生成し、直交変換・量子化部109に供給する。
直交変換・量子化部109は、残差信号に対して量子化パラメータに応じて直交変換及び量子化を行い直交変換・量子化された残差信号を生成し、第3符号化ビット列生成部111と逆量子化・逆直交変換部113に供給する。さらに、直交変換・量子化部109は、量子化パラメータを符号化情報格納メモリ115に格納する。 The residualsignal generation unit 108 generates a residual signal by performing subtraction between the image signal to be encoded and the predicted image signal, and supplies the residual signal to the orthogonal transform / quantization unit 109.
The orthogonal transform /quantization unit 109 performs orthogonal transform and quantization on the residual signal according to the quantization parameter to generate an orthogonal transform / quantized residual signal, and a third encoded bit string generation unit 111 And supplied to the inverse quantization / inverse orthogonal transform unit 113. Further, the orthogonal transform / quantization unit 109 stores the quantization parameter in the encoded information storage memory 115.
直交変換・量子化部109は、残差信号に対して量子化パラメータに応じて直交変換及び量子化を行い直交変換・量子化された残差信号を生成し、第3符号化ビット列生成部111と逆量子化・逆直交変換部113に供給する。さらに、直交変換・量子化部109は、量子化パラメータを符号化情報格納メモリ115に格納する。 The residual
The orthogonal transform /
第1符号化ビット列生成部118は、ヘッダ情報設定部117で設定されたシーケンス、ピクチャ、スライス単位の情報を符号化する。第1の符号化ビット列を生成し、多重化部112に供給する。
The first encoded bit string generation unit 118 encodes the sequence, picture, and slice unit information set by the header information setting unit 117. A first encoded bit string is generated and supplied to the multiplexing unit 112.
第2符号化ビット列生成部110は、符号化ブロック及び予測ブロック毎に予測方法決定部107によって決定された予測方法に応じた符号化情報を符号化する。具体的には、符号化ブロック毎の予測モードPredMode、分割モードPartMode、インター予測(PRED_INTER)の場合、マージモードかどうかを判別するフラグ、マージモードの場合はマージインデックス、マージモードでない場合はインター予測モード、予測動きベクトルインデックス、差分動きベクトルに関する情報等の符号化情報を後述する規定のシンタックス規則に従って符号化して第2の符号化ビット列を生成し、多重化部112に供給する。
The second encoded bit string generation unit 110 encodes encoding information corresponding to the prediction method determined by the prediction method determination unit 107 for each encoded block and prediction block. Specifically, in the prediction mode PredMode, partition mode PartMode, and inter prediction (PRED_INTER) for each coding block, a flag that determines whether or not the mode is merge mode, merge index in the case of merge mode, and inter prediction in the case of not in merge mode Encoding information such as information on the mode, the predicted motion vector index, and the difference motion vector is encoded according to a prescribed syntax rule described later to generate a second encoded bit string, which is supplied to the multiplexing unit 112.
第3符号化ビット列生成部111は、直交変換及び量子化された残差信号を規定のシンタックス規則に従ってエントロピー符号化して第3の符号化ビット列を生成し、多重化部112に供給する。多重化部112で、第1の符号化ビット列、第2の符号化ビット列および第3の符号化ビット列を規定のシンタックス規則に従って多重化し、ビットストリームを出力する。
The third encoded bit string generation unit 111 entropy-encodes the residual signal that has been orthogonally transformed and quantized according to a specified syntax rule to generate a third encoded bit string, and supplies the third encoded bit string to the multiplexing unit 112. The multiplexing unit 112 multiplexes the first encoded bit string, the second encoded bit string, and the third encoded bit string in accordance with a specified syntax rule, and outputs a bit stream.
逆量子化・逆直交変換部113は、直交変換・量子化部109から供給された直交変換・量子化された残差信号を逆量子化及び逆直交変換して残差信号を算出し、復号画像信号重畳部114に供給する。復号画像信号重畳部114は、予測方法決定部107による決定に応じた予測画像信号と逆量子化・逆直交変換部113で逆量子化及び逆直交変換された残差信号を重畳して復号画像を生成し、復号画像メモリ116に格納する。なお、復号画像に対して符号化によるブロック歪等の歪を減少させるフィルタリング処理を施して、復号画像メモリ116に格納されることもある。
The inverse quantization / inverse orthogonal transform unit 113 performs inverse quantization and inverse orthogonal transform on the orthogonal transform / quantized residual signal supplied from the orthogonal transform / quantization unit 109 to calculate a residual signal, and performs decoding. This is supplied to the image signal superimposing unit 114. The decoded image signal superimposing unit 114 superimposes the predicted image signal according to the determination by the prediction method determining unit 107 and the residual signal subjected to inverse quantization and inverse orthogonal transform by the inverse quantization / inverse orthogonal transform unit 113 to decode the decoded image. Is generated and stored in the decoded image memory 116. Note that the decoded image may be stored in the decoded image memory 116 after filtering processing for reducing distortion such as block distortion due to encoding.
図2は図1の動画像符号化装置に対応した本発明の実施の形態に係る動画像復号装置の構成を示すブロックである。実施の形態の動画像復号装置は、分離部201、第1符号化ビット列復号部212、第2符号化ビット列復号部202、第3符号化ビット列復号部203、動きベクトル算出部204、インター予測情報導出部205、動き補償予測部206、イントラ予測部207、逆量子化・逆直交変換部208、復号画像信号重畳部209、符号化情報格納メモリ210、および復号画像メモリ211を備える。
FIG. 2 is a block diagram showing the configuration of the moving picture decoding apparatus according to the embodiment of the present invention corresponding to the moving picture encoding apparatus of FIG. The moving picture decoding apparatus according to the embodiment includes a separation unit 201, a first encoded bit string decoding unit 212, a second encoded bit string decoding unit 202, a third encoded bit string decoding unit 203, a motion vector calculation unit 204, and inter prediction information. A derivation unit 205, a motion compensation prediction unit 206, an intra prediction unit 207, an inverse quantization / inverse orthogonal transform unit 208, a decoded image signal superimposing unit 209, an encoded information storage memory 210, and a decoded image memory 211 are provided.
図2の動画像復号装置の復号処理は、図1の動画像符号化装置の内部に設けられている復号処理に対応するものであるから、図2の動き補償予測部206、逆量子化・逆直交変換部208、復号画像信号重畳部209、符号化情報格納メモリ210、および復号画像メモリ211の各構成は、図1の動画像符号化装置の動き補償予測部105、逆量子化・逆直交変換部113、復号画像信号重畳部114、符号化情報格納メモリ115、および復号画像メモリ116の各構成とそれぞれ対応する機能を有する。
The decoding process of the moving picture decoding apparatus in FIG. 2 corresponds to the decoding process provided in the moving picture encoding apparatus in FIG. 1, so the motion compensation prediction unit 206 in FIG. The configuration of the inverse orthogonal transform unit 208, the decoded image signal superimposing unit 209, the encoded information storage memory 210, and the decoded image memory 211 is the same as that of the motion compensation prediction unit 105, the inverse quantization / inverse of the moving image encoding device in FIG. The orthogonal transform unit 113, the decoded image signal superimposing unit 114, the encoded information storage memory 115, and the decoded image memory 116 have functions corresponding to the respective configurations.
分離部201に供給されるビットストリームは規定のシンタックスの規則に従って分離し、分離された符号化ビット列が第1符号化ビット列復号部212、第2符号化ビット列復号部202、第3符号化ビット列復号部203に供給される。
The bit stream supplied to the separation unit 201 is separated according to a rule of a prescribed syntax, and the separated encoded bit string is a first encoded bit string decoding unit 212, a second encoded bit string decoding unit 202, and a third encoded bit string. The data is supplied to the decoding unit 203.
第1符号化ビット列復号部212は、供給された符号化ビット列を復号して、シーケンス、ピクチャ、スライス単位の情報を得る。得られたシーケンス、ピクチャ、スライス単位の情報は図示していないがすべてのブロックに供給する。
The first encoded bit string decoding unit 212 decodes the supplied encoded bit string to obtain information in units of sequences, pictures, and slices. Although the obtained sequence, picture, and slice unit information is not shown, it is supplied to all blocks.
第2符号化ビット列復号部202は、供給された符号化ビット列を復号して、符号化ブロック単位の情報、及び、予測ブロック単位の符号化情報を得る。具体的には、符号化ブロック単位でインター予測(PRED_INTER)かイントラ予測(PRED_INTRA)かを判別する予測モードPredMode、分割モードPartMode、インター予測(PRED_INTER)の場合、マージモードかどうかを判別するフラグ、マージモードの場合はマージインデックス、マージモードでない場合はインター予測モード、予測動きベクトルインデックス、差分動きベクトル等に関する符号化情報を後述する規定のシンタックス規則に従って復号し、符号化情報を動きベクトル算出部204、インター予測情報導出部205またはイントラ予測部207に供給する。
The second encoded bit string decoding unit 202 decodes the supplied encoded bit string to obtain encoded block unit information and predicted block unit encoded information. Specifically, in the prediction mode PredMode for determining whether the prediction is inter prediction (PRED_INTER) or intra prediction (PRED_INTRA) for each coding block, split mode PartMode, and inter prediction (PRED_INTER), a flag for determining whether the mode is merge mode, When the merge mode is selected, the merge index is decoded. When the merge mode is not selected, the encoded information related to the inter prediction mode, the predicted motion vector index, the difference motion vector, and the like is decoded according to a predetermined syntax rule to be described later, and the encoded information is a motion vector calculation unit 204, supplied to the inter prediction information deriving unit 205 or the intra prediction unit 207.
第3符号化ビット列復号部203は、供給された符号化ビット列を復号して直交変換・量子化された残差信号を算出し、直交変換・量子化された残差信号を逆量子化・逆直交変換部208に供給する。
The third encoded bit string decoding unit 203 calculates a residual signal that has been orthogonally transformed / quantized by decoding the supplied encoded bit string, and dequantized / inverted the residual signal that has been orthogonally transformed / quantized. This is supplied to the orthogonal transform unit 208.
動きベクトル算出部204は、復号対象の予測ブロックの予測モードPredModeがインター予測(PRED_INTER)でマージモードでない時に、符号化情報格納メモリ210に記憶されている既に復号された画像信号の符号化情報を用いて、複数の予測動きベクトルの候補を導出して後述する予測動きベクトルリストに登録し、予測動きベクトルリストに登録された複数の予測動きベクトルの候補の中から、第2符号化ビット列復号部202で復号され供給される予測動きベクトルインデックスに応じた予測動きベクトルを選択し、第2符号化ビット列復号部202で復号された差分ベクトルと選択された予測動きベクトルから動きベクトルを算出し、他の符号化情報とともに動き補償予測部206に供給するとともに、符号化情報格納メモリ210に格納する。ここで供給・格納する予測ブロックの符号化情報は、予測モードPredMode、分割モードPartMode、L0予測、及びL1予測を利用するかどうかを示すフラグpredFlagL0[xP][yP], predFlagL1[xP][yP]、L0、L1の参照インデックスrefIdxL0[xP][yP], refIdxL1[xP][yP]、L0、L1の動きベクトルmvL0[xP][yP], mvL1[xP][yP]等である。ここで、xP、yPはピクチャ内での予測ブロックの左上の画素の位置を示すインデックスである。予測モードPredModeがインター予測(MODE_INTER)で、インター予測モードがL0予測(Pred_L0)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0は1, L1予測を利用するかどうかを示すフラグpredFlagL1は0である。インター予測モードがL1予測(Pred_L1)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0は0, L1予測を利用するかどうかを示すフラグpredFlagL1は1である。インター予測モードが双予測(Pred_BI)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0、L1予測を利用するかどうかを示すフラグpredFlagL1は共に1である。
When the prediction mode PredMode of the prediction block to be decoded is inter prediction (PRED_INTER) and not the merge mode, the motion vector calculation unit 204 stores the encoded information of the already decoded image signal stored in the encoded information storage memory 210. A plurality of motion vector predictor candidates derived and registered in a motion vector predictor list, which will be described later, and a second encoded bit string decoding unit out of the motion vector predictor candidates registered in the motion vector predictor list 202, a prediction motion vector corresponding to the prediction motion vector index decoded and supplied is selected, a motion vector is calculated from the difference vector decoded by the second encoded bit string decoding unit 202 and the selected prediction motion vector, Is supplied to the motion compensation prediction unit 206 together with the encoded information of To pay. The encoding information of the prediction block supplied / stored here includes flags predFlagL0 [xP] [yP], predFlagL1 [xP] [yP indicating whether to use the prediction mode PredMode, the partition mode PartMode, the L0 prediction, and the L1 prediction. ], L0, L1 reference indices refIdxL0 [xP] [yP], refIdxL1 [xP] [yP], L0, L1 motion vectors mvL0 [xP] [yP], mvL1 [xP] [yP], and the like. Here, xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture. When the prediction mode PredMode is inter prediction (MODE_INTER) and the inter prediction mode is L0 prediction (Pred_L0), the flag predFlagL0 indicating whether to use L0 prediction is 1, and the flag predFlagL1 indicating whether to use L1 prediction is 0 It is. When the inter prediction mode is L1 prediction (Pred_L1), the flag predFlagL0 indicating whether to use L0 prediction is 0, and the flag predFlagL1 indicating whether to use L1 prediction is 1. When the inter prediction mode is bi-prediction (Pred_BI), a flag predFlagL0 indicating whether to use L0 prediction and a flag predFlagL1 indicating whether to use L1 prediction are both 1.
インター予測情報導出部205は、復号対象の予測ブロックの予測モードPredModeがインター予測(PRED_INTER)でマージモードの時に、マージ候補を導出する。符号化情報格納メモリ115に記憶されている既に復号された予測ブロックの符号化情報を用いて、複数のマージの候補を導出して後述するマージ候補リストに登録し、マージ候補リストに登録された複数のマージ候補の中から第2符号化ビット列復号部202で復号され供給されるマージインデックスに対応したマージ候補を選択し、選択されたマージ候補のL0予測、及びL1予測を利用するかどうかを示すフラグpredFlagL0[xP][yP], predFlagL1[xP][yP]、L0、L1の参照インデックスrefIdxL0[xP][yP], refIdxL1[xP][yP]、L0、L1の動きベクトルmvL0[xP][yP], mvL1[xP][yP]等のインター予測情報を動き補償予測部206に供給するとともに、符号化情報格納メモリ210に格納する。ここで、xP、yPはピクチャ内での予測ブロックの左上の画素の位置を示すインデックスである。インター予測情報導出部205の詳細な構成と動作は後述する。
The inter prediction information deriving unit 205 derives merge candidates when the prediction mode PredMode of the prediction block to be decoded is inter prediction (PRED_INTER) and in the merge mode. A plurality of merge candidates are derived and registered in a merge candidate list, which will be described later, using the encoded information of already decoded prediction blocks stored in the encoded information storage memory 115, and registered in the merge candidate list Whether a merge candidate corresponding to a merge index decoded and supplied by the second encoded bit string decoding unit 202 is selected from among a plurality of merge candidates, and whether to use the L0 prediction and the L1 prediction of the selected merge candidate Flags predFlagL0 [xP] [yP], predFlagL1 [xP] [yP], L0, L1 reference indices refIdxL0 [xP] [yP], refIdxL1 [xP] [yP], L0, L1 motion vectors mvL0 [xP] Inter prediction information such as [yP] and mvL1 [xP] [yP] is supplied to the motion compensation prediction unit 206 and stored in the encoded information storage memory 210. Here, xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture. The detailed configuration and operation of the inter prediction information deriving unit 205 will be described later.
動き補償予測部206は、動きベクトル算出部204またはインター予測情報導出部205で算出されたインター予測情報を用いて復号画像メモリ211に格納されている参照ピクチャからインター予測(動き補償予測)により予測画像信号を生成し、予測画像信号を復号画像信号重畳部209に供給する。なお、双予測(Pred_BI)の場合は、L0予測、L1予測の2つの動き補償予測画像信号に適応的に重み係数を掛け算して重畳し、最終的な予測画像信号を生成する。
The motion compensation prediction unit 206 performs prediction by inter prediction (motion compensation prediction) from the reference picture stored in the decoded image memory 211 using the inter prediction information calculated by the motion vector calculation unit 204 or the inter prediction information deriving unit 205. An image signal is generated, and the predicted image signal is supplied to the decoded image signal superimposing unit 209. In the case of bi-prediction (Pred_BI), a weighted coefficient is adaptively multiplied and superimposed on the two motion-compensated predicted image signals of L0 prediction and L1 prediction to generate a final predicted image signal.
イントラ予測部207は、復号対象の予測ブロックの予測モードPredModeがイントラ予測(PRED_INTRA)の時に、イントラ予測を行う。第1符号化ビット列復号部で復号された符号化情報にはイントラ予測モードが含まれており、イントラ予測モードに応じて、復号画像メモリ211に格納されている復号済みの画像信号からイントラ予測により予測画像信号を生成し、予測画像信号を復号画像信号重畳部209に供給する。L0予測、及びL1予測を利用するかどうかを示すフラグpredFlagL0[xP][yP], predFlagL1[xP][yP]を共に0に設定し、符号化情報格納メモリ210に格納する。ここで、xP、yPはピクチャ内での予測ブロックの左上の画素の位置を示すインデックスである。
The intra prediction unit 207 performs intra prediction when the prediction mode PredMode of the prediction block to be decoded is intra prediction (PRED_INTRA). The encoded information decoded by the first encoded bit string decoding unit includes an intra prediction mode, and by intra prediction from a decoded image signal stored in the decoded image memory 211 according to the intra prediction mode. A predicted image signal is generated, and the predicted image signal is supplied to the decoded image signal superimposing unit 209. Flags predFlagL0 [xP] [yP] and predFlagL1 [xP] [yP] indicating whether to use L0 prediction and L1 prediction are both set to 0 and stored in the encoded information storage memory 210. Here, xP and yP are indexes indicating the position of the upper left pixel of the prediction block in the picture.
逆量子化・逆直交変換部208は、第2符号化ビット列復号部202で復号された直交変換・量子化された残差信号に対して逆直交変換及び逆量子化を行い、逆直交変換・逆量子化された残差信号を得る。
The inverse quantization / inverse orthogonal transform unit 208 performs inverse orthogonal transform and inverse quantization on the orthogonal transform / quantized residual signal decoded by the second encoded bit string decoding unit 202, and performs inverse orthogonal transform / An inverse quantized residual signal is obtained.
復号画像信号重畳部209は、動き補償予測部206でインター予測された予測画像信号、またはイントラ予測部207でイントラ予測された予測画像信号と、逆量子化・逆直交変換部208により逆直交変換・逆量子化された残差信号とを重畳することにより、復号画像信号を復号し、復号画像メモリ211に格納する。復号画像メモリ211に格納する際には、復号画像に対して符号化によるブロック歪等を減少させるフィルタリング処理を施して、復号画像メモリ211に格納されることもある。
The decoded image signal superimposing unit 209 performs the prediction image signal inter-predicted by the motion compensation prediction unit 206 or the prediction image signal intra-predicted by the intra prediction unit 207 and the inverse orthogonal transform by the inverse quantization / inverse orthogonal transform unit 208. The decoded image signal is decoded by superimposing the dequantized residual signal, and stored in the decoded image memory 211. When stored in the decoded image memory 211, the decoded image may be stored in the decoded image memory 211 after filtering processing that reduces block distortion or the like due to encoding is performed on the decoded image.
次に、本実施の形態に係る動きベクトルの予測方法を備える動画像符号化装置により符号化され、復号装置により復号される動画像のビットストリームの符号化および復号の共通規則であるシンタックスについて説明する。
Next, a syntax that is a common rule for encoding and decoding a bit stream of a moving image that is encoded by a moving image encoding device including the motion vector prediction method according to the present embodiment and decoded by the decoding device explain.
図10は予測ブロック単位に記述されるシンタックス規則を示す。予測ブロックの予測モードPredModeの値がインター予測(MODE_INTER)の場合、マージモードかどうかを示すmerge_flag[x0][y0]が設置される。ここで、x0、y0は輝度信号のピクチャ内での予測ブロックの左上の画素の位置を示すインデックスであり、merge_flag[x0][y0]はピクチャ内の(x0, y0)に位置する予測ブロックのマージモードかどうかを示すフラグである。
FIG. 10 shows syntax rules described in units of prediction blocks. When the value of the prediction mode PredMode of the prediction block is inter prediction (MODE_INTER), merge_flag [x0] [y0] indicating whether the mode is the merge mode is set. Here, x0 and y0 are indices indicating the position of the upper left pixel of the prediction block in the picture of the luminance signal, and merge_flag [x0] [y0] is the prediction block located at (x0, y0) in the picture It is a flag indicating whether or not merge mode.
次に、merge_flag[x0][y0]が1の場合、マージモードであることを示し、参照するマージ候補のリストであるマージリストのインデックスのシンタックス要素merge_idx[x0][y0]が設置される。ここで、x0、y0はピクチャ内での予測ブロックの左上の画素の位置を示すインデックスであり、merge_idx[x0][y0]はピクチャ内の(x0, y0)に位置する予測ブロックのマージインデックスである。マージインデックスをエントロピー符号化または復号する場合、マージ候補数が小さい程、小さい符号量で符号化または復号することができ、少ない処理量で符号化または復号することができる。図11はマージインデックスのシンタックス要素merge_idx[x0][y0]のエントロピー符号(コード)の一例である。マージ候補数が3の場合、マージインデックスの最大値をマージ候補数-1、すなわち2とすることで、マージインデックスが0, 1, 2となり、マージインデックスのシンタックス要素merge_idx[x0][y0]の符号はそれぞれ'0'、'10'、'11'となる。マージ候補数が4の場合、マージインデックスの最大値は最大マージ候補数-1、すなわち3とすることで、マージインデックスが0, 1, 2, 3となり、マージインデックスのシンタックス要素merge_idx[x0][y0]の符号はそれぞれ'0'、'10'、'110'、'111'となる。マージ候補数が5の場合、マージインデックスの最大値は最大マージ候補数-1、すなわち4とすることで、マージインデックスが0, 1, 2, 3, 4の時、マージインデックスのシンタックス要素merge_idx[x0][y0]の符号はそれぞれ'0'、'10'、'110'、'1110'、'1111'となる。例えば、マージインデックスが2の場合、マージ候補数が3では、'11'となり、マージ候補数が4および5では、'110'となる。すなわち、最大のマージ候補数を制限することができる場合、マージインデックスの最大値をマージ候補数-1に制限することで、短い符号長でマージインデックスを表現することができる。つまり、マージ候補数を制限する場合、マージインデックスの最大値を最大マージ候補数-1に制限する方がマージインデックスを小さい符号量で表現可能である。本実施例においては、図11に示すようにマージ候補数に応じて、マージインデックスのそれぞれの値を示す符号を切り替えることで符号量を削減する。
Next, when merge_flag [x0] [y0] is 1, it indicates merge mode, and a merge list index syntax element merge_idx [x0] [y0] is set, which is a list of merge candidates to be referred to. . Here, x0 and y0 are indices indicating the position of the upper left pixel of the prediction block in the picture, and merge_idx [x0] [y0] is the merge index of the prediction block located at (x0, y0) in the picture is there. When entropy encoding or decoding a merge index, the smaller the number of merge candidates, the smaller the amount of code that can be encoded or decoded, and the smaller the amount of processing that can be encoded or decoded. FIG. 11 shows an example of the entropy code (code) of the merge index syntax element merge_idx [x0] [y0]. When the number of merge candidates is 3, by setting the maximum value of the merge index to the merge candidate number minus 1, that is, 2, the merge index becomes 0, 1, 2, and the merge index syntax element merge_idx [x0] [y0] The codes are “0”, “10”, and “11”, respectively. When the number of merge candidates is 4, the maximum value of the merge index is set to the maximum number of merge candidates minus 1, that is, 3, so that the merge index becomes 0, 1, 2, 3, and the merge index syntax element merge_idx [x0] The signs of [y0] are “0”, “10”, “110”, and “111”, respectively. When the number of merge candidates is 5, the maximum value of the merge index is set to the maximum number of merge candidates minus 1, that is, 4. When the merge index is 0, 1, 2, 3, 4, the merge index syntax element merge_idx The signs of [x0] [y0] are “0”, “10”, “110”, “1110”, and “1111”, respectively. For example, when the merge index is 2, when the number of merge candidates is 3, it becomes “11”, and when the number of merge candidates is 4 and 5, it becomes “110”. That is, when the maximum number of merge candidates can be limited, the merge index can be expressed with a short code length by limiting the maximum value of the merge index to the number of merge candidates-1. That is, when the number of merge candidates is limited, the merge index can be expressed with a smaller code amount by limiting the maximum value of the merge index to the maximum number of merge candidates−1. In the present embodiment, as shown in FIG. 11, the code amount is reduced by switching the code indicating each value of the merge index according to the number of merge candidates.
一方、merge_flag[x0][y0]が0の場合、マージモードでないことを示し、スライスタイプがBスライスの場合、インター予測モードを識別するシンタックス要素inter_pred_flag[x0][y0]が設置され、このシンタックス要素でL0予測(Pred_L0)、L1予測(Pred_L1)、双予測(Pred_BI)を識別する。L0、L1ごとに、参照ピクチャを特定するための参照インデックスのシンタックス要素ref_idx_l0[x0][y0]、ref_idx_l1[x0][y0]、動きベクトル検出にて求められた予測ブロックの動きベクトルと予測動きベクトルとの差分である差分動きベクトルのシンタックス要素mvd_l0[x0][y0][j]、mvd_l1[x0][y0][j]が設置される。ここで、x0、y0はピクチャ内での予測ブロックの左上の画素の位置を示すインデックスであり、ref_idx_l0[x0][y0]、mvd_l0[x0][y0][j]はそれぞれピクチャ内の(x0, y0)に位置する予測ブロックのL0の参照インデックス、及び差分動きベクトルであり、ref_idx_l1[x0][y0]、mvd_l1[x0][y0][j]はそれぞれピクチャ内の(x0, y0)に位置する予測ブロックのL1の参照インデックス、及び差分動きベクトルである。また、jは差分動きベクトルの成分を表し、jが0はx成分を、jが1はy成分を表す。次に、参照する予測動きベクトルの候補のリストである予測動きベクトルリストのインデックスのシンタックス要素mvp_idx_l0[x0][y0]、mvp_idx_l1[x0][y0]が設置される。ここで、x0、y0はピクチャ内での予測ブロックの左上の画素の位置を示すインデックスであり、mvp_idx_l0[x0][y0]、mvp_idx_l1[x0][y0]はピクチャ内の(x0, y0)に位置する予測ブロックのL0、L1の予測動きベクトルインデックスである。本発明の本実施の形態においてはこれらの候補数の値を2と設定する。
On the other hand, when merge_flag [x0] [y0] is 0, it indicates that the mode is not merge mode. When the slice type is B slice, a syntax element inter_pred_flag [x0] [y0] for identifying the inter prediction mode is installed. The syntax element identifies L0 prediction (Pred_L0), L1 prediction (Pred_L1), and bi-prediction (Pred_BI). For each of L0 and L1, syntax elements ref_idx_l0 [x0] [y0] and ref_idx_l1 [x0] [y0] of the reference index for specifying the reference picture, the motion vector and prediction of the prediction block obtained by motion vector detection The differential motion vector syntax elements mvd_l0 [x0] [y0] [j] and mvd_l1 [x0] [y0] [j], which are the differences from the motion vector, are provided. Here, x0 and y0 are indexes indicating the position of the upper left pixel of the prediction block in the picture, and ref_idx_l0 [x0] [y0] and mvd_l0 [x0] [y0] [j] are respectively (x0 , Y0) is the reference index of L0 of the prediction block and the differential motion vector, and ref_idx_l1 [x0] [y0] and mvd_l1 [x0] [y0] [j] are respectively (x0, y0) in the picture It is the reference index of L1 of the prediction block located, and a difference motion vector. Further, j represents a differential motion vector component, j represents 0 as an x component, and j represents 1 as a y component. Next, syntax elements mvp_idx_l0 [x0] [y0] and mvp_idx_l1 [x0] [y0] of an index of a predicted motion vector list that is a list of predicted motion vector candidates to be referred to are set. Here, x0 and y0 are indices indicating the position of the upper left pixel of the prediction block in the picture, and mvp_idx_l0 [x0] [y0] and mvp_idx_l1 [x0] [y0] are (x0, y0) in the picture It is the prediction motion vector index of L0 and L1 of the prediction block located. In the present embodiment of the present invention, the value of the number of candidates is set to 2.
実施の形態に係るインター予測情報導出方法は、図1の動画像符号化装置のインター予測情報導出部104及び図2の動画像復号装置のインター予測情報導出部205において実施される。
The inter prediction information deriving method according to the embodiment is implemented in the inter prediction information deriving unit 104 of the video encoding device in FIG. 1 and the inter prediction information deriving unit 205 of the video decoding device in FIG.
実施の形態に係るインター予測情報導出方法は、符号化ブロックを構成する予測ブロック単位に、符号化及び復号の処理の何れでも実施される。予測ブロックの予測モードPredModeがインター予測(MODE_INTER)で、マージモードの場合に、符号化の場合、符号化済みの予測ブロックの予測モード、参照インデックス、動きベクトルを利用して符号化対象の予測ブロックの予測モード、参照インデックス、動きベクトルを導出する際、復号の場合、復号済みの予測ブロックの予測モード、参照インデックス、動きベクトルを利用して復号対象の予測ブロックの予測モード、参照インデックス、動きベクトルを導出する際に実施される。
The inter-prediction information derivation method according to the embodiment is performed in any of the encoding and decoding processes for each prediction block constituting the encoding block. When the prediction mode PredMode of the prediction block is inter prediction (MODE_INTER) and in the merge mode, in the case of encoding, the prediction block to be encoded using the prediction mode, reference index, and motion vector of the encoded prediction block When the prediction mode, the reference index, and the motion vector are derived, in the case of decoding, the prediction mode, the reference index, and the motion vector of the prediction block to be decoded using the prediction mode, the reference index, and the motion vector of the decoded prediction block It is carried out when deriving.
マージモードは図5、図6、図7及び図8を用いて説明した左に隣接する予測ブロックA、上に隣接する予測ブロックB、右上に隣接する予測ブロックC、左下に隣接する予測ブロックD、左上に隣接する予測ブロックEに加えて、図9を用いて説明した異なる時間の同一位置あるいはその付近に存在する予測ブロックCol(T0、T1のいずれか)の予測ブロックを候補とする。動画像符号化装置のインター予測情報導出部104、及び動画像復号装置のインター予測情報導出部205はそれらの候補を符号化側と復号側で共通の規定の順序でマージ候補リストに登録し、動画像符号化装置のインター予測情報導出部104がマージ候補リストの要素を特定するマージインデックスを決定して第2符号化ビット列生成部110を経由して符号化し、動画像復号装置のインター予測情報導出部205は第2符号化ビット列復号部202で復号されたマージインデックスが供給されて、そのマージインデックスに応じた予測ブロックをマージ候補リストから選択し、その選択されたマージ候補の予測モード、参照インデックス、動きベクトル等のインター予測情報を用いて、動き補償予測を行う。
The merge mode includes the prediction block A adjacent to the left, the prediction block B adjacent to the upper side, the prediction block C adjacent to the upper right, and the prediction block D adjacent to the lower left described with reference to FIGS. 5, 6, 7, and 8. In addition to the prediction block E adjacent to the upper left, the prediction block Col (any one of T0 and T1) existing at or near the same position at different times described with reference to FIG. The inter prediction information deriving unit 104 of the moving image encoding device and the inter prediction information deriving unit 205 of the moving image decoding device register these candidates in the merge candidate list in a common order on the encoding side and the decoding side, The inter prediction information deriving unit 104 of the video encoding device determines a merge index for specifying an element of the merge candidate list, encodes it via the second encoded bit string generation unit 110, and performs inter prediction information of the video decoding device. The derivation unit 205 is supplied with the merge index decoded by the second encoded bit string decoding unit 202, selects a prediction block corresponding to the merge index from the merge candidate list, and refers to the prediction mode and reference of the selected merge candidate Motion compensation prediction is performed using inter prediction information such as an index and a motion vector.
スライス単位でマージ候補リストmergeCandListに登録される最終的なマージ候補数finalNumMergeCandを設定する。本実施の形態においては、スライスタイプがPスライスの場合、最終マージ候補数finalNumMergeCandを後者よりも小さい数に設定し、スライスタイプがBスライスの場合、最終マージ候補数finalNumMergeCandを前者よりも大きい数に設定する。スライスタイプがPスライスの場合は、最終マージ候補数finalNumMergeCandを3に設定し、スライスタイプがBスライスの場合は、最終マージ候補数finalNumMergeCandを5に設定する。
最終 Set the final number of merge candidates finalNumMergeCand registered in the merge candidate list mergeCandList in slice units. In this embodiment, when the slice type is P slice, the final merge candidate number finalNumMergeCand is set to a smaller number than the latter, and when the slice type is B slice, the final merge candidate number finalNumMergeCand is set to a larger number than the former. Set. When the slice type is P slice, the final merge candidate number finalNumMergeCand is set to 3, and when the slice type is B slice, the final merge candidate number finalNumMergeCand is set to 5.
実施の形態に係るインター予測情報導出方法を図面を用いて説明する。図12は、図1の動画像符号化装置のインター予測情報導出部104の詳細な構成を示す図である。また、図13は、図2の動画像復号装置のインター予測情報導出部205の詳細な構成を示す図である。
The inter prediction information deriving method according to the embodiment will be described with reference to the drawings. FIG. 12 is a diagram illustrating a detailed configuration of the inter prediction information deriving unit 104 of the video encoding device in FIG. FIG. 13 is a diagram illustrating a detailed configuration of the inter prediction information deriving unit 205 of the video decoding device in FIG.
図12及び図13の太枠線で囲まれる部分はそれぞれ、インター予測情報導出部104及びインター予測情報導出部205を示している。
The portions surrounded by the thick frame lines in FIGS. 12 and 13 indicate the inter prediction information deriving unit 104 and the inter prediction information deriving unit 205, respectively.
更に、それらの内部の太点線で囲まれる部分は後述するインター予測情報導出方法の動作部を示しており、実施の形態の動画像符号化装置と対応する動画像復号装置にも同様に設置され、符号化と復号で矛盾しない同一の導出結果を得られるようにしている。
Furthermore, the part enclosed by the thick dotted line inside shows the operation | movement part of the inter prediction information derivation method mentioned later, and is similarly installed in the moving image decoding apparatus corresponding to the moving image encoding apparatus of embodiment. Thus, the same derivation result consistent with encoding and decoding can be obtained.
インター予測情報導出部104は、空間マージ候補生成部130、時間マージ候補の参照インデックス導出部131、時間マージ候補生成部132、マージ候補登録部133、マージ候補同一判定部134、マージ候補数制限部135、マージ候補補充部136、および符号化情報選択部137を含む。
The inter prediction information deriving unit 104 includes a spatial merge candidate generating unit 130, a temporal merge candidate reference index deriving unit 131, a temporal merge candidate generating unit 132, a merge candidate registering unit 133, a merge candidate identical determining unit 134, and a merge candidate number limiting unit. 135, a merge candidate supplementing unit 136, and an encoding information selecting unit 137.
インター予測情報導出部205は、空間マージ候補生成部230、時間マージ候補の参照インデックス導出部231、時間マージ候補生成部232、マージ候補登録部233、マージ候補同一判定部234、マージ候補数制限部235、マージ候補補充部236、および符号化情報選択部237を含む。
The inter prediction information deriving unit 205 includes a spatial merge candidate generating unit 230, a temporal merge candidate reference index deriving unit 231, a temporal merge candidate generating unit 232, a merge candidate registering unit 233, a merge candidate identical determining unit 234, and a merge candidate number limiting unit. 235, a merge candidate supplementing unit 236, and an encoded information selecting unit 237.
図14は本発明の実施の形態による動画像符号化装置のインター予測情報導出部104及び動画像復号装置のインター予測情報導出部205とで共通する機能を有するマージ候補の導出処理及びマージ候補リストの構築処理の手順を説明するフローチャートである。
以下、諸過程を順を追って説明する。なお、以下の説明においては特に断りのない限りスライスタイプslice_typeがBスライスの場合について説明するが、Pスライスの場合にも適用できる。ただし、スライスタイプslice_typeがPスライスの場合、インター予測モードとしてL0予測(Pred_L0)だけがあり、L1予測(Pred_L1)、双予測(Pred_BI)がないので、L1に纏わる処理を省略することができる。 FIG. 14 is a merge candidate derivation process and a merge candidate list having functions common to the inter predictioninformation deriving unit 104 of the video encoding device and the inter prediction information deriving unit 205 of the video decoding device according to the embodiment of the present invention. It is a flowchart explaining the procedure of this construction process.
Hereinafter, the processes will be described in order. In the following description, a case where the slice type slice_type is a B slice will be described unless otherwise specified, but the present invention can also be applied to a P slice. However, when the slice type slice_type is a P slice, only the L0 prediction (Pred_L0) is provided as the inter prediction mode, and there is no L1 prediction (Pred_L1) and bi-prediction (Pred_BI). Therefore, the processing related to L1 can be omitted.
以下、諸過程を順を追って説明する。なお、以下の説明においては特に断りのない限りスライスタイプslice_typeがBスライスの場合について説明するが、Pスライスの場合にも適用できる。ただし、スライスタイプslice_typeがPスライスの場合、インター予測モードとしてL0予測(Pred_L0)だけがあり、L1予測(Pred_L1)、双予測(Pred_BI)がないので、L1に纏わる処理を省略することができる。 FIG. 14 is a merge candidate derivation process and a merge candidate list having functions common to the inter prediction
Hereinafter, the processes will be described in order. In the following description, a case where the slice type slice_type is a B slice will be described unless otherwise specified, but the present invention can also be applied to a P slice. However, when the slice type slice_type is a P slice, only the L0 prediction (Pred_L0) is provided as the inter prediction mode, and there is no L1 prediction (Pred_L1) and bi-prediction (Pred_BI). Therefore, the processing related to L1 can be omitted.
動画像符号化装置のインター予測情報導出部104の空間マージ候補生成部130及び動画像復号装置のインター予測情報導出部205の空間マージ候補生成部230では、符号化または復号対象ブロックに隣接するそれぞれの予測ブロックA,B,C,D,Eからの空間マージ候補A,B,C,D,Eを導出する。ここで、A,B,C,D,EまたはColのいずれかを示すNを定義する。予測ブロックNのインター予測情報がマージ候補Nとして利用できるかどうかを示すフラグavailableFlagN、L0の参照インデックスrefIdxL0N及びL1の参照インデックスrefIdxL1N、L0予測が行われるかどうかを示すL0予測フラグpredFlagL0NおよびL1予測が行われるかどうかを示すL1予測フラグpredFlagL1N、L0の動きベクトルmvL0N、L1の動きベクトルmvL1Nを出力する(ステップS101)。
ステップS101の詳細な処理手順については図15のフローチャートを用いて後ほど詳細に説明する。 In the spatial mergecandidate generation unit 130 of the inter prediction information deriving unit 104 of the moving image encoding device and the spatial merge candidate generation unit 230 of the inter prediction information deriving unit 205 of the moving image decoding device, each adjacent to the block to be encoded or decoded. Spatial merge candidates A, B, C, D, and E are derived from the prediction blocks A, B, C, D, and E. Here, N indicating any of A, B, C, D, E, or Col is defined. A flag availableFlagN indicating whether the inter prediction information of the prediction block N can be used as a merge candidate N, a reference index refIdxL0N of L0 and a reference index refIdxL1N of L1, and an L0 prediction flag predFlagL0N and L1 prediction indicating whether L0 prediction is performed. The L1 prediction flag predFlagL1N indicating whether or not to be performed, the L0 motion vector mvL0N, and the L1 motion vector mvL1N are output (step S101).
The detailed processing procedure of step S101 will be described later in detail using the flowchart of FIG.
ステップS101の詳細な処理手順については図15のフローチャートを用いて後ほど詳細に説明する。 In the spatial merge
The detailed processing procedure of step S101 will be described later in detail using the flowchart of FIG.
続いて、動画像符号化装置のインター予測情報導出部104の時間マージ候補の参照インデックス導出部131及び動画像復号装置のインター予測情報導出部205の時間マージ候補の参照インデックス導出部231では、符号化または復号対象ブロックに隣接する予測ブロックから時間マージ候補の参照インデックスを導出する(ステップS102)。スライスタイプslice_typeがPスライスで時間マージ候補のインター予測情報を用いてインター予測を行う場合は、L0予測(Pred_L0)を行うために、L0の参照インデックスだけを導出し、スライスタイプslice_typeがBスライスで時間マージ候補のインター予測情報を用いてインター予測を行う場合は、双予測(Pred_BI)を行うために、L0とL1のそれぞれの参照インデックスを導出する。ステップS102の詳細な処理手順については図16のフローチャートを用いて後ほど詳細に説明する。
Subsequently, the temporal merge candidate reference index deriving unit 131 of the inter prediction information deriving unit 104 of the video encoding device and the temporal merge candidate reference index deriving unit 231 of the inter prediction information deriving unit 205 of the video decoding device A reference index of a temporal merge candidate is derived from a prediction block adjacent to the block to be converted or decoded (step S102). When the inter prediction is performed using the inter prediction information of the temporal merge candidate when the slice type slice_type is P slice, only the L0 reference index is derived in order to perform the L0 prediction (Pred_L0), and the slice type slice_type is the B slice. When performing inter prediction using inter prediction information of temporal merge candidates, in order to perform bi-prediction (Pred_BI), respective reference indexes of L0 and L1 are derived. The detailed processing procedure of step S102 will be described later in detail using the flowchart of FIG.
続いて、動画像符号化装置のインター予測情報導出部104の時間マージ候補生成部132及び動画像復号装置のインター予測情報導出部205の時間マージ候補生成部232では、異なる時間のピクチャからの時間マージ候補を導出し、利用できるかどうかを示すフラグavailableFlagCol、L0予測が行われるかどうかを示すL0予測フラグpredFlagL0ColおよびL1予測が行われるかどうかを示すL1予測フラグpredFlagL1Col、及びL0の動きベクトルmvL0N、L1の動きベクトルmvL1Nを出力する(ステップS103)。ステップS103の詳細な処理手順については図17のフローチャートを用いて後ほど詳細に説明する。
Subsequently, in the temporal merge candidate generating unit 132 of the inter prediction information deriving unit 104 of the video encoding device and the temporal merge candidate generating unit 232 of the inter prediction information deriving unit 205 of the video decoding device, time from pictures at different times A flag availableFlagCol indicating whether merge candidates can be derived and used, an L0 prediction flag predFlagL0Col indicating whether L0 prediction is performed, an L1 prediction flag predFlagL1Col indicating whether L1 prediction is performed, and a motion vector mvL0N of L0 The motion vector mvL1N of L1 is output (step S103). The detailed processing procedure of step S103 will be described later in detail using the flowchart of FIG.
続いて、動画像符号化装置のインター予測情報導出部104のマージ候補登録部133及び動画像復号装置のインター予測情報導出部205のマージ候補登録部233では、マージ候補リストmergeCandListを作成し、予測ベクトルの候補A,B,C,D,E,Colを追加する(ステップS104)。ステップS104の詳細な処理手順については図24のフローチャートを用いて後ほど詳細に説明する。
Subsequently, the merge candidate registration unit 133 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate registration unit 233 of the inter prediction information deriving unit 205 of the video decoding device create a merge candidate list mergeCandList and perform prediction. Vector candidates A, B, C, D, E, and Col are added (step S104). The detailed processing procedure of step S104 will be described later in detail using the flowchart of FIG.
続いて、動画像符号化装置のインター予測情報導出部104のマージ候補同一判定部134及び動画像復号装置のインター予測情報導出部205のマージ候補同一判定部234では、マージ候補リストmergeCandList内で、マージ候補が同じ参照インデックスの動きベクトルが同じ値を持っている場合に、最も小さい順番のマージ候補を除いてそのマージ候補を取り除く(ステップS105)。
Subsequently, in the merge candidate identity determination unit 134 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate identity determination unit 234 of the inter prediction information deriving unit 205 of the video decoding device, in the merge candidate list mergeCandList, When the motion vectors of the same reference index have the same value, the merge candidate is removed except for the merge candidate in the smallest order (step S105).
続いて、動画像符号化装置のインター予測情報導出部104のマージ候補数制限部135及び動画像復号装置のインター予測情報導出部205のマージ候補数制限部235では、マージ候補リストmergeCandList内に登録されているマージ候補の数をカウントし、マージ候補リストmergeCandList内に登録されているマージ候補数numMergeCandが、最終マージ候補数finalNumMergeCandより大きい場合(ステップS106のYES)、マージ候補リストmergeCandList内のインデックスiが(finalNumMergeCand-1)よりも大きいすべてのマージ候補を削除することでマージ候補を最終マージ候補数finalNumMergeCandに制限し、マージ候補リストmergeCandList内に登録されているマージ候補数numMergeCandの値を最終マージ候補数finalNumMergeCandに更新する(ステップS107)。
Subsequently, the merge candidate number limiting unit 135 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate number limiting unit 235 of the inter prediction information deriving unit 205 of the video decoding device are registered in the merge candidate list mergeCandList. If the number of merge candidates registered in the merge candidate list mergeCandList is greater than the final merge candidate number finalNumMergeCand (YES in step S106), the index i in the merge candidate list mergeCandList is counted. The merge candidates are limited to the final merge candidate number finalNumMergeCand by deleting all merge candidates that are greater than (finalNumMergeCand-1), and the value of the merge candidate number numMergeCand registered in the merge candidate list mergeCandList is set as the final merge candidate The number is updated to finalNumMergeCand (step S107).
続いて、動画像符号化装置のインター予測情報導出部104のマージ候補補充部136及び動画像復号装置のインター予測情報導出部205のマージ候補補充部236では、マージ候補リストmergeCandList内に登録されているマージ候補数numMergeCandが、最終マージ候補数finalNumMergeCandより小さい場合(ステップS108のYES)、マージ候補リストmergeCandList内に登録されているマージ候補数numMergeCandが最終マージ候補数finalNumMergeCandを上限としてマージ候補を補充し、マージ候補リストmergeCandList内に登録されているマージ候補数numMergeCandの値を最終マージ候補数finalNumMergeCandに更新する(ステップS109)。最終マージ候補数finalNumMergeCandを上限として、Pスライスでは、異なる参照インデックスで動きベクトルが(0,0)(水平および垂直成分がともに0)で予測モードがL0予測(Pred_L0)のマージ候補を追加する。Bスライスでは、すでに登録されているマージ候補同士のL0予測とL1予測の組み合わせを変更した予測モードが双予測(Pred_BI)のマージ候補や、異なる参照インデックスで動きベクトルが(0,0)で予測モードが双予測(Pred_BI)のマージ候補を追加する。
Subsequently, the merge candidate supplementing unit 136 of the inter prediction information deriving unit 104 of the video encoding device and the merge candidate supplementing unit 236 of the inter prediction information deriving unit 205 of the video decoding device are registered in the merge candidate list mergeCandList. If the number of merge candidates numMergeCand is smaller than the final merge candidate number finalNumMergeCand (YES in step S108), the merge candidate number numMergeCand registered in the merge candidate list mergeCandList supplements the merge candidates with the final merge candidate number finalNumMergeCand as the upper limit. Then, the value of the merge candidate number numMergeCand registered in the merge candidate list mergeCandList is updated to the final merge candidate number finalNumMergeCand (step S109). With the final merge candidate number finalNumMergeCand as the upper limit, in the P slice, merge candidates having a motion vector of (0, 0) (both horizontal and vertical components are 0) and a prediction mode of L0 prediction (Pred_L0) are added at different reference indexes. In the B slice, the prediction mode in which the combination of L0 prediction and L1 prediction between already registered merge candidates is changed is a bi-prediction (Pred_BI) merge candidate or a motion vector is predicted with a different reference index (0, 0). Add merge candidates whose mode is bi-prediction (Pred_BI).
本実施の形態においては、スライス単位で最終マージ候補数finalNumMergeCandを固定した数に設定している。最終マージ候補数finalNumMergeCandを固定する理由は最終マージ候補数finalNumMergeCandがマージ候補リストの構築状態に応じて変動すると、エントロピー復号とマージ候補リストの構築に依存関係が生じ、復号側では予測ブロック毎にマージ候補リストを構築し最終マージ候補数finalNumMergeCandを導出してからでないと、マージインデックスをエントロピー復号することができず、マージインデックスの復号に遅延が生じるとともにエントロピー復号が複雑になるためである。さらに、エントロピー復号が異なる時間のピクチャの予測ブロックから導出されたマージ候補Colを含むマージ候補リストの構築状態に依存すると、別のピクチャの符号化ビット列の復号時にエラーが発生した際に現在のピクチャの符号化ビット列もそのエラーの影響を受けて正常な最終マージ候補数finalNumMergeCandを導出することができず正常にエントロピー復号を続けることができない問題がある。本実施の形態の様にスライス単位で最終マージ候補数finalNumMergeCandを固定した数に設定すると、予測ブロック単位での最終マージ候補数finalNumMergeCandの導出が不要となり、マージ候補リストの構築と独立して、マージインデックスをエントロピー復号することができるとともに、別のピクチャの符号化ビット列の復号時にエラーが発生してもその影響を受けずに現在のピクチャの符号化ビット列のエントロピー復号を続けることができる。
In the present embodiment, the final merge candidate number finalNumMergeCand is set to a fixed number for each slice. The reason for fixing the final merge candidate number finalNumMergeCand is that if the final merge candidate number finalNumMergeCand fluctuates depending on the build status of the merge candidate list, there will be a dependency relationship between the entropy decoding and the build of the merge candidate list. This is because the merge index cannot be entropy-decoded unless the candidate list is constructed and the final merge candidate number finalNumMergeCand is derived, resulting in delay in merge index decoding and complicated entropy decoding. Furthermore, if entropy decoding depends on the construction state of the merge candidate list including the merge candidate Col derived from the prediction block of the picture at different times, the current picture when an error occurs when decoding the encoded bit string of another picture The encoded bit string of the above is also affected by the error, so that the normal final merge candidate number finalNumMergeCand cannot be derived and the entropy decoding cannot be continued normally. If the final merge candidate number finalNumMergeCand is set to a fixed number in slice units as in this embodiment, derivation of the final merge candidate number finalNumMergeCand in prediction block units is not required, and merge is performed independently of the merge candidate list construction. The index can be entropy-decoded, and entropy decoding of the encoded bit string of the current picture can be continued without being affected by an error when an encoded bit string of another picture is decoded.
次に、図14のステップS101の処理手順である符号化または復号対象ブロックに隣接する予測ブロックNからのマージ候補Nの導出方法について詳細に説明する。図15は図14のステップS101の空間マージ候補導出処理手順を説明するフローチャートである。Nには隣接する予測ブロックの領域を表すA(左側)、B(上側)、C(右上)、D(左下)またはE(左上)が入る。なお、本実施の形態においては、空間マージ候補数の上限値maxNumSpatialMergeCandを4とし、隣接する5つの予測ブロックから最大4つの空間マージ候補を導出する。なお、スライス単位でマージ候補リストmergeCandListに登録される空間マージ候補数の上限値maxNumSpatialMergeCandを設定することもできる。空間マージ候補数の上限値maxNumSpatialMergeCandに大きな値を設定するとマージ候補の選択の幅が広がるため符号化効率が向上するが、マージ候補の同一判定の対象となるマージ候補数が増加するためマージ候補の同一判定の処理量が増大する。そこで、処理量を削減するために、スライス単位で空間マージ候補数の上限値maxNumSpatialMergeCandを設定し、空間マージ候補導出の処理量やマージ候補同一判定の処理量を制御してもよい。例えば、スライスタイプがPスライスの場合、本実施の形態では最終マージ候補数finalNumMergeCandを3としているので、4つの空間マージ候補を導出しても図14のステップS107の処理で削除される可能性が高くなるため、空間マージ候補数の上限値maxNumSpatialMergeCandを3または2としても符号化効率の低下を小さく抑えて動画像符号化装置のインター予測情報導出部104のマージ候補同一判定部134及び動画像復号装置のインター予測情報導出部205のマージ候補同一判定部234でのマージ候補同一判定処理の処理量を削減することができる。
Next, a method for deriving the merge candidate N from the prediction block N adjacent to the encoding or decoding target block, which is the processing procedure of step S101 in FIG. 14, will be described in detail. FIG. 15 is a flowchart for explaining the spatial merge candidate derivation processing procedure in step S101 of FIG. In N, A (left side), B (upper side), C (upper right), D (lower left), or E (upper left) representing an area of an adjacent prediction block is entered. In this embodiment, the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is set to 4, and a maximum of four spatial merge candidates are derived from five adjacent prediction blocks. It is also possible to set an upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates registered in the merge candidate list mergeCandList in slice units. Setting a large value for the maximum number of spatial merge candidates maxNumSpatialMergeCand increases the selection efficiency of merge candidates and improves the coding efficiency, but increases the number of merge candidates that are subject to the same merge candidate determination. The amount of processing for the same determination increases. Therefore, in order to reduce the processing amount, an upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates may be set in units of slices, and the processing amount for spatial merge candidate derivation and the merge candidate identity determination may be controlled. For example, when the slice type is P slice, since the final merge candidate number finalNumMergeCand is set to 3 in this embodiment, there is a possibility that even if four spatial merge candidates are derived, they are deleted in the process of step S107 in FIG. Therefore, even if the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is set to 3 or 2, a decrease in encoding efficiency is suppressed to be small, and the merge candidate identity determination unit 134 and the video decoding in the inter prediction information deriving unit 104 of the video encoding device The amount of merge candidate identity determination processing in the merge candidate identity determination unit 234 of the inter prediction information deriving unit 205 of the apparatus can be reduced.
図15で、変数NをAとして符号化または復号対象の予測ブロックの左側に隣接する予測ブロックAの符号化情報を調べてマージ候補Aを導出し、変数NをBとして上側に隣接する予測ブロックBの符号化情報を調べてマージ候補Bを導出し、変数NをCとして右上側に隣接する予測ブロックCの符号化情報を調べてマージ候補Cを導出し、変数NをDとして左下側に隣接する予測ブロックDの符号化情報を調べてマージ候補Dを導出し、変数NをEとして左上側に隣接する予測ブロックEの符号化情報を調べてマージ候補Eを導出する(ステップS1101~ステップS1112)。
In FIG. 15, the encoding information of the prediction block A adjacent to the left side of the prediction block to be encoded or decoded is examined with the variable N as A to derive the merge candidate A, and the prediction block adjacent to the upper side with the variable N as B The encoding information of B is examined to derive a merge candidate B, the variable N is set as C, the encoding information of the prediction block C adjacent on the upper right side is checked, the merge candidate C is derived, and the variable N is set as D to the lower left side. The encoding information of the adjacent prediction block D is checked to derive the merge candidate D, and the variable N is set as E to check the encoding information of the prediction block E adjacent to the upper left to derive the merge candidate E (step S1101 to step S1101). S1112).
まず、これまでに導出できた(availableFlagが1となった)空間マージ候補の合計が空間マージ候補数の上限値maxNumSpatialMergeCandの場合(ステップS1102のYES)、すなわち4つの空間マージ候補が導出された場合、マージ候補NのフラグavailableFlagNを0に設定し(ステップS1105)、マージ候補Nの動きベクトルmvL0N, mvL1Nの値を共に(0,0)に設定し(ステップS1106)、マージ候補NのフラグpredFlagL0N、predFlagL1Nの値を共に0に設定し(ステップS1107)、本空間マージ候補導出処理を終了する。
本実施の形態においては、隣接する予測ブロックから4つのマージ候補を導出するので、既に4つの空間マージ候補が導出された場合はそれ以上の空間マージ候補の導出処理を行う必要がない。 First, when the total number of spatial merge candidates that can be derived so far (availableFlag is 1) is the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates (YES in step S1102), that is, when four spatial merge candidates are derived The flag availableFlagN of the merge candidate N is set to 0 (step S1105), the values of the motion vectors mvL0N and mvL1N of the merge candidate N are set to (0, 0) (step S1106), and the flag predFlagL0N of the merge candidate N is set. Both values of predFlagL1N are set to 0 (step S1107), and this space merge candidate derivation process is terminated.
In the present embodiment, four merge candidates are derived from adjacent prediction blocks. Therefore, when four spatial merge candidates are already derived, it is not necessary to perform further spatial merge candidate derivation processing.
本実施の形態においては、隣接する予測ブロックから4つのマージ候補を導出するので、既に4つの空間マージ候補が導出された場合はそれ以上の空間マージ候補の導出処理を行う必要がない。 First, when the total number of spatial merge candidates that can be derived so far (availableFlag is 1) is the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates (YES in step S1102), that is, when four spatial merge candidates are derived The flag availableFlagN of the merge candidate N is set to 0 (step S1105), the values of the motion vectors mvL0N and mvL1N of the merge candidate N are set to (0, 0) (step S1106), and the flag predFlagL0N of the merge candidate N is set. Both values of predFlagL1N are set to 0 (step S1107), and this space merge candidate derivation process is terminated.
In the present embodiment, four merge candidates are derived from adjacent prediction blocks. Therefore, when four spatial merge candidates are already derived, it is not necessary to perform further spatial merge candidate derivation processing.
一方、これまでに導出できた(availableFlagが1となった)空間マージ候補の合計が空間マージ候補数の上限値maxNumSpatialMergeCandでない場合(ステップS1102のNO)、符号化または復号対象の予測ブロックに隣接する予測ブロックNを特定し、それぞれの予測ブロックNが利用できる場合は符号化情報格納メモリ115または210から予測ブロックNの符号化情報を取得する(ステップS1103)。
On the other hand, when the sum of spatial merge candidates that can be derived so far (availableFlag is 1) is not the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates (NO in step S1102), it is adjacent to the prediction block to be encoded or decoded The prediction block N is specified, and when each prediction block N can be used, the encoding information of the prediction block N is acquired from the encoding information storage memory 115 or 210 (step S1103).
隣接する予測ブロックNが利用できないか、予測ブロックNの予測モードPredModeがイントラ予測(MODE_INTRA)である場合(ステップS1104のNO)、マージ候補NのフラグavailableFlagNの値を0に設定し(ステップS1105)、マージ候補Nの動きベクトルmvL0N, mvL1Nの値を共に(0,0)に設定し(ステップS1106)、マージ候補NのフラグpredFlagL0N、predFlagL1Nの値を共に0に設定する(ステップS1107)。
When the adjacent prediction block N cannot be used or the prediction mode PredMode of the prediction block N is intra prediction (MODE_INTRA) (NO in step S1104), the value of the flag availableFlagN of the merge candidate N is set to 0 (step S1105). The values of the motion vectors mvL0N and mvL1N of the merge candidate N are both set to (0, 0) (step S1106), and the values of the flags predFlagL0N and predFlagL1N of the merge candidate N are both set to 0 (step S1107).
一方、隣接する予測ブロックNが利用でき、予測ブロックNの予測モードPredModeがイントラ予測(MODE_INTRA)でない場合(ステップS1104のYES)、予測ブロックNのインター予測情報をマージ候補Nのインター予測情報とする。マージ候補NのフラグavailableFlagNの値を1に設定し(ステップS1108)、マージ候補Nの動きベクトルmvL0N, mvL1Nをそれぞれ予測ブロックNの動きベクトルmvL0N[xN][yN], mvL1N[xN][yN]と同じ値に設定し(ステップS1109)、マージ候補Nの参照インデックスrefIdxL0N, refIdxL1Nをそれぞれ予測ブロックNの参照インデックスrefIdxL0[xN][yN], refIdxL1[xN][yN]と同じ値に設定し(ステップS1110)、マージ候補NのフラグpredFlagL0N, predFlagL1Nをそれぞれ予測ブロックNのフラグpredFlagL0[xN][yN], predFlagL1[xN][yN]に設定する(ステップS1111)。ここで、xN、yNはピクチャ内での予測ブロックNの左上の画素の位置を示すインデックスである。
On the other hand, when the adjacent prediction block N can be used and the prediction mode PredMode of the prediction block N is not intra prediction (MODE_INTRA) (YES in step S1104), the inter prediction information of the prediction block N is used as the inter prediction information of the merge candidate N. . The value of the flag availableFlagN of the merge candidate N is set to 1 (step S1108), and the motion vectors mvL0N and mvL1N of the merge candidate N are respectively used as the motion vectors mvL0N [xN] [yN] and mvL1N [xN] [yN] of the prediction block N. (Step S1109), the reference indexes refIdxL0N and refIdxL1N of the merge candidate N are set to the same values as the reference indexes refIdxL0 [xN] [yN] and refIdxL1 [xN] [yN] of the prediction block N, respectively ( In step S1110), the flags predFlagL0N and predFlagL1N of the merge candidate N are set to the flags predFlagL0 [xN] [yN] and predFlagL1 [xN] [yN] of the prediction block N, respectively (step S1111). Here, xN and yN are indexes indicating the position of the upper left pixel of the prediction block N in the picture.
以上のステップS1102~ステップS1111の処理をN=A,B,C,D,Eについてそれぞれ繰り返す(ステップS1101~ステップS1112)。
The processes in steps S1102 to S1111 are repeated for N = A, B, C, D, and E (steps S1101 to S1112).
次に、図14のS102の時間マージ候補の参照インデックスを導出する方法について詳細に説明する。時間マージ候補のL0とL1のそれぞれの参照インデックスを導出する。
Next, a method for deriving the reference index of the time merge candidate in S102 of FIG. 14 will be described in detail. The reference indices of L0 and L1 as temporal merge candidates are derived.
本実施の形態においては、空間マージ候補の参照インデックス、即ち符号化または復号対象ブロックに隣接する予測ブロックで利用された参照インデックスを利用して時間マージ候補の参照インデックスを導出する。これは、時間マージ候補が選択される場合において、符号化または復号対象の予測ブロックの参照インデックスは空間マージ候補となる符号化または復号対象ブロックに隣接する予測ブロックの参照インデックスと高い相関を持つからである。特に、本実施の形態においては、符号化または復号対象の予測ブロックの左の辺に隣接する予測ブロックA、及び上の辺に隣接する予測ブロックBの参照インデックスだけを利用する。なぜなら、空間マージ候補でもある隣接する予測ブロックA,B,C,D,Eの中でも符号化または復号対象の予測ブロックの辺に接している予測ブロックA,Bは、符号化または復号対象の予測ブロックの頂点のみに接している予測ブロックC,D,Eよりも相関が高いからである。相対的に相関の低い予測ブロックC,D,Eを利用せずに、利用する予測ブロックを予測ブロックA,Bに限定することで、時間マージ候補の参照インデックスの導出による符号化効率の改善効果を得るとともに、時間マージ候補の参照インデックス導出処理に関する演算量及びメモリアクセス量を削減する。
In the present embodiment, the reference index of the temporal merge candidate is derived using the reference index of the spatial merge candidate, that is, the reference index used in the prediction block adjacent to the block to be encoded or decoded. This is because when the temporal merge candidate is selected, the reference index of the prediction block to be encoded or decoded has high correlation with the reference index of the prediction block adjacent to the encoding or decoding target block to be the spatial merge candidate. It is. In particular, in the present embodiment, only the reference indexes of the prediction block A adjacent to the left side of the prediction block to be encoded or decoded and the prediction block B adjacent to the upper side are used. This is because the prediction blocks A and B that are in contact with the sides of the prediction block to be encoded or decoded among the adjacent prediction blocks A, B, C, D, and E that are also spatial merge candidates are predicted to be encoded or decoded. This is because the correlation is higher than prediction blocks C, D, and E that are in contact with only the vertices of the block. By limiting the prediction blocks to be used to the prediction blocks A and B without using the prediction blocks C, D, and E having relatively low correlation, the effect of improving the coding efficiency by deriving the reference index of the temporal merge candidate In addition, the amount of computation and the amount of memory access related to the reference index derivation process of the temporal merge candidate are reduced.
本実施の形態では、予測ブロックA、予測ブロックBが共にLX予測(L0またはL1で、時間マージ候補の参照インデックスの導出対象のリストをLXとし、LXを用いた予測をLX予測とする。以下、断りのない限り、この意味で用いる。)を行う場合は予測ブロックA、予測ブロックBのLXの参照インデックスの値の小さい方を時間マージ候補のLXの参照インデックスの値として採用する。ただし、予測ブロックA、予測ブロックBのいずれか一方しかLX予測を行わない場合はLX予測を行う方の予測ブロックのLXの参照インデックスの値を時間マージ候補のLXの参照インデックスの値として採用し、予測ブロックA、予測ブロックBが共にLX予測を行わない場合は時間マージ候補のLXの参照インデックスの値をデフォルト値の0とする。
In the present embodiment, both the prediction block A and the prediction block B are LX predictions (L0 or L1, the list from which reference indexes of temporal merge candidates are derived is LX, and prediction using LX is LX prediction. In this case, the smaller LX reference index value of the prediction block A and the prediction block B is adopted as the LX reference index value of the temporal merge candidate. However, when only one of the prediction block A and the prediction block B is subjected to LX prediction, the LX reference index value of the prediction block on which LX prediction is performed is adopted as the LX reference index value of the temporal merge candidate. When both the prediction block A and the prediction block B do not perform LX prediction, the value of the reference index of the LX that is a temporal merge candidate is set to 0 as the default value.
予測ブロックA、予測ブロックBが共にLX予測を行わない場合に時間マージ候補のLXの参照インデックスのデフォルト値を0とする理由は、インター予測において参照インデックスの値が0に対応する参照ピクチャが最も選択される確率が高いからである。ただし、これに限定されず、参照インデックスのデフォルト値を0以外の値(1、2など)としても良いし、シーケンス単位、ピクチャ単位、またはスライス単位で符号化ストリーム内に参照インデックスのデフォルト値を示すシンタックス要素を設置し伝送できるようにして、符号化側で選択できるようにしても良い。
When both the prediction block A and the prediction block B do not perform LX prediction, the default value of the reference index of the LX that is a temporal merge candidate is set to 0 because the reference picture corresponding to the reference index value of 0 is the most in inter prediction. This is because the probability of being selected is high. However, the present invention is not limited to this, and the default value of the reference index may be a value other than 0 (1, 2, etc.), and the default value of the reference index may be set in the encoded stream in sequence units, picture units, or slice units. The syntax element shown may be installed and transmitted so that it can be selected on the encoding side.
図16は本実施の形態の図14のステップS102の時間マージ候補の参照インデックスの導出処理手順を説明するフローチャートである。まず、符号化情報格納メモリ115または210から左に隣接する予測ブロックAの符号化情報、及び予測ブロックBの符号化情報を取得する(ステップS2101、ステップS2102)。
続くステップS2104からステップS2110までの処理をL0,L1それぞれにおいて行う(ステップS2103~S2111)。なお、時間マージ候補のL0の参照インデックスを導出する際にはLXはL0に設定され、L1の参照インデックスを導出する際にはLXはL1に設定される。ただし、スライスタイプslice_typeがPスライスの場合、インター予測モードとしてL0予測(Pred_L0)だけがあり、L1予測(Pred_L1)、双予測(Pred_BI)がないので、L1に纏わる処理を省略することができる。 FIG. 16 is a flow chart for explaining the procedure for deriving the reference index of the time merge candidate in step S102 of FIG. 14 of the present embodiment. First, the encoding information of the prediction block A adjacent to the left and the encoding information of the prediction block B are acquired from the encodinginformation storage memory 115 or 210 (steps S2101 and S2102).
The subsequent processing from step S2104 to step S2110 is performed in each of L0 and L1 (steps S2103 to S2111). Note that LX is set to L0 when deriving the L0 reference index of the temporal merge candidate, and LX is set to L1 when deriving the L1 reference index. However, when the slice type slice_type is a P slice, only the L0 prediction (Pred_L0) is provided as the inter prediction mode, and there is no L1 prediction (Pred_L1) and bi-prediction (Pred_BI). Therefore, the processing related to L1 can be omitted.
続くステップS2104からステップS2110までの処理をL0,L1それぞれにおいて行う(ステップS2103~S2111)。なお、時間マージ候補のL0の参照インデックスを導出する際にはLXはL0に設定され、L1の参照インデックスを導出する際にはLXはL1に設定される。ただし、スライスタイプslice_typeがPスライスの場合、インター予測モードとしてL0予測(Pred_L0)だけがあり、L1予測(Pred_L1)、双予測(Pred_BI)がないので、L1に纏わる処理を省略することができる。 FIG. 16 is a flow chart for explaining the procedure for deriving the reference index of the time merge candidate in step S102 of FIG. 14 of the present embodiment. First, the encoding information of the prediction block A adjacent to the left and the encoding information of the prediction block B are acquired from the encoding
The subsequent processing from step S2104 to step S2110 is performed in each of L0 and L1 (steps S2103 to S2111). Note that LX is set to L0 when deriving the L0 reference index of the temporal merge candidate, and LX is set to L1 when deriving the L1 reference index. However, when the slice type slice_type is a P slice, only the L0 prediction (Pred_L0) is provided as the inter prediction mode, and there is no L1 prediction (Pred_L1) and bi-prediction (Pred_BI). Therefore, the processing related to L1 can be omitted.
予測ブロックAのLX予測を行うかどうかを示すフラグpredFlagLX[xA][yA]と予測ブロックBのLX予測を行うかどうかを示すフラグpredFlagLX[xB][yB]が共に0でない場合(ステップS2104のYES)、時間マージ候補のLXの参照インデックスrefIdxLXColを予測ブロックAのLXの参照インデックスrefIdxLX[xA][yA]と予測ブロックBのLXの参照インデックスrefIdxLX[xB][yB]の値の小さい方と同じ値に設定する(ステップS2105)。ここで、xA、yAはピクチャ内での予測ブロックAの左上の画素の位置を示すインデックスである。ここで、xB、yBはピクチャ内での予測ブロックBの左上の画素の位置を示すインデックスである。
When both the flag predFlagLX [xA] [yA] indicating whether to perform LX prediction of the prediction block A and the flag predFlagLX [xB] [yB] indicating whether to perform LX prediction of the prediction block B are not 0 (in step S2104) YES), the LX reference index refIdxLXCol of the temporal merge candidate is the smaller of the LX reference index refIdxLX [xA] [yA] of the prediction block A and the LX reference index refIdxLX [xB] [yB] of the prediction block B The same value is set (step S2105). Here, xA and yA are indexes indicating the position of the upper left pixel of the prediction block A in the picture. Here, xB and yB are indexes indicating the position of the upper left pixel of the prediction block B in the picture.
なお、本実施の形態においては、予測ブロックN(N=A,B)において、予測ブロックNが符号化または復号対象のスライス外で利用できない場合や予測ブロックNが符号化または復号順序で符号化または復号対象の予測ブロックよりも後のために符号化または復号されておらず利用できない場合や予測ブロックNの予測モードPredModeがインター予測(MODE_INTER)の場合、L0予測を利用するかどうかを示すフラグpredFlagL0[xN][yN]、予測ブロックNのL1予測を利用するかどうかを示すフラグpredFlagL1[xN][yN]は共に0である。ここで、xN、yNはピクチャ内での予測ブロックNの左上の画素の位置を示すインデックスである。
予測ブロックNの予測モードPredModeがインター予測(MODE_INTER)で、インター予測モードがL0予測(Pred_L0)の場合、予測ブロックNのL0予測を利用するかどうかを示すフラグpredFlagL0[xN][yN]は1, L1予測を利用するかどうかを示すフラグpredFlagL1[xN][yN]は0である。予測ブロックNのインター予測モードがL1予測(Pred_L1)の場合、予測ブロックNのL0予測を利用するかどうかを示すフラグpredFlagL0[xN][yN]は0, L1予測を利用するかどうかを示すフラグpredFlagL1[xN][yN]は1である。予測ブロックNのインター予測モードが双予測(Pred_BI)の場合、予測ブロックNのL0予測を利用するかどうかを示すフラグpredFlagL0[xN][yN]、L1予測を利用するかどうかを示すフラグpredFlagL1[xN][yN]は共に1である。 In the present embodiment, in the prediction block N (N = A, B), when the prediction block N cannot be used outside the slice to be encoded or decoded, the prediction block N is encoded or encoded in the decoding order. Alternatively, a flag indicating whether or not to use L0 prediction when it is not encoded and decoded after the prediction block to be decoded and cannot be used, or when the prediction mode PredMode of the prediction block N is inter prediction (MODE_INTER). Both predFlagL0 [xN] [yN] and the flag predFlagL1 [xN] [yN] indicating whether to use the L1 prediction of the prediction block N are 0. Here, xN and yN are indexes indicating the position of the upper left pixel of the prediction block N in the picture.
When the prediction mode PredMode of the prediction block N is inter prediction (MODE_INTER) and the inter prediction mode is L0 prediction (Pred_L0), the flag predFlagL0 [xN] [yN] indicating whether to use the L0 prediction of the prediction block N is 1 , Flag predFlagL1 [xN] [yN] indicating whether to use L1 prediction is zero. When the inter prediction mode of the prediction block N is L1 prediction (Pred_L1), a flag predFlagL0 [xN] [yN] indicating whether or not to use the L0 prediction of the prediction block N is 0 and a flag indicating whether or not to use the L1 prediction predFlagL1 [xN] [yN] is 1. When the inter prediction mode of the prediction block N is bi-prediction (Pred_BI), a flag predFlagL0 [xN] [yN] indicating whether to use the L0 prediction of the prediction block N, and a flag predFlagL1 [indicating whether to use the L1 prediction xN] [yN] are both 1.
予測ブロックNの予測モードPredModeがインター予測(MODE_INTER)で、インター予測モードがL0予測(Pred_L0)の場合、予測ブロックNのL0予測を利用するかどうかを示すフラグpredFlagL0[xN][yN]は1, L1予測を利用するかどうかを示すフラグpredFlagL1[xN][yN]は0である。予測ブロックNのインター予測モードがL1予測(Pred_L1)の場合、予測ブロックNのL0予測を利用するかどうかを示すフラグpredFlagL0[xN][yN]は0, L1予測を利用するかどうかを示すフラグpredFlagL1[xN][yN]は1である。予測ブロックNのインター予測モードが双予測(Pred_BI)の場合、予測ブロックNのL0予測を利用するかどうかを示すフラグpredFlagL0[xN][yN]、L1予測を利用するかどうかを示すフラグpredFlagL1[xN][yN]は共に1である。 In the present embodiment, in the prediction block N (N = A, B), when the prediction block N cannot be used outside the slice to be encoded or decoded, the prediction block N is encoded or encoded in the decoding order. Alternatively, a flag indicating whether or not to use L0 prediction when it is not encoded and decoded after the prediction block to be decoded and cannot be used, or when the prediction mode PredMode of the prediction block N is inter prediction (MODE_INTER). Both predFlagL0 [xN] [yN] and the flag predFlagL1 [xN] [yN] indicating whether to use the L1 prediction of the prediction block N are 0. Here, xN and yN are indexes indicating the position of the upper left pixel of the prediction block N in the picture.
When the prediction mode PredMode of the prediction block N is inter prediction (MODE_INTER) and the inter prediction mode is L0 prediction (Pred_L0), the flag predFlagL0 [xN] [yN] indicating whether to use the L0 prediction of the prediction block N is 1 , Flag predFlagL1 [xN] [yN] indicating whether to use L1 prediction is zero. When the inter prediction mode of the prediction block N is L1 prediction (Pred_L1), a flag predFlagL0 [xN] [yN] indicating whether or not to use the L0 prediction of the prediction block N is 0 and a flag indicating whether or not to use the L1 prediction predFlagL1 [xN] [yN] is 1. When the inter prediction mode of the prediction block N is bi-prediction (Pred_BI), a flag predFlagL0 [xN] [yN] indicating whether to use the L0 prediction of the prediction block N, and a flag predFlagL1 [indicating whether to use the L1 prediction xN] [yN] are both 1.
予測ブロックAのLX予測を行うかどうかを示すフラグpredFlagLX[xA][yA]が0でなく、予測ブロックBのLX予測を行うかどうかを示すフラグpredFlagLX[xB][yB]が0である場合(ステップS2104のNOで、ステップS2106のYES)、時間マージ候補のLXの参照インデックスrefIdxLXColを予測ブロックAのLXの参照インデックスrefIdxLX[xA][yA]と同じ値に設定する(ステップS2107)。ここで、xA、yAはピクチャ内での予測ブロックAの左上の画素の位置を示すインデックスであり、xB、yBはピクチャ内での予測ブロックBの左上の画素の位置を示すインデックスである。
When the flag predFlagLX [xA] [yA] indicating whether to perform LX prediction of the prediction block A is not 0 and the flag predFlagLX [xB] [yB] indicating whether to perform LX prediction of the prediction block B is 0 (NO in step S2104, YES in step S2106), the LX reference index refIdxLXCol of the temporal merge candidate is set to the same value as the LX reference index refIdxLX [xA] [yA] of the prediction block A (step S2107). Here, xA and yA are indexes indicating the position of the upper left pixel of the prediction block A in the picture, and xB and yB are indexes indicating the position of the upper left pixel of the prediction block B in the picture.
予測ブロックAのLX予測を行うかどうかを示すフラグpredFlagLX[xA][yA]が0であり、予測ブロックBのLX予測を行うかどうかを示すフラグpredFlagLX[xB][yB]が0でない場合(ステップS2104のNOで、ステップS2106のNOで、ステップS2108のYES)、時間マージ候補のLXの参照インデックスrefIdxLXColを予測ブロックBのLXの参照インデックスpredFlagLX[xB][yB]と同じ値に設定する(ステップS2109)。
When the flag predFlagLX [xA] [yA] indicating whether to perform LX prediction of the prediction block A is 0 and the flag predFlagLX [xB] [yB] indicating whether to perform LX prediction of the prediction block B is not 0 ( In step S2104 NO, step S2106 NO, step S2108 YES), the LX reference index refIdxLXCol of the temporal merge candidate is set to the same value as the LX reference index predFlagLX [xB] [yB] of the prediction block B ( Step S2109).
予測ブロックAのLX予測を行うかどうかを示すフラグpredFlagLX[xA][yA]と予測ブロックBのLX予測を行うかどうかを示すフラグpredFlagLX[xB][yB]が共に0である場合(ステップS2104のNOで、ステップS2106のNOで、ステップS2108のNO)、時間マージ候補のLXの参照インデックスrefIdxLXColをデフォルト値の0に設定する(ステップS2110)。
When the flag predFlagLX [xA] [yA] indicating whether to perform LX prediction of the prediction block A and the flag predFlagLX [xB] [yB] indicating whether to perform LX prediction of the prediction block B are both 0 (step S2104) NO in step S2106 and NO in step S2108), the reference index refIdxLXCol of the LX that is a candidate for time merge is set to a default value of 0 (step S2110).
L0,L1それぞれにおいて行うステップS2104からステップS2110までの処理を行い(ステップS2103~S2111)、本参照インデックス導出処理を終了する。
The processing from step S2104 to step S2110 performed in each of L0 and L1 is performed (steps S2103 to S2111), and this reference index derivation processing is terminated.
次に、図14のS103の異なる時間のマージ候補の導出方法について詳細に説明する。図17は図14のステップS103の時間マージ候補導出処理手順を説明するフローチャートである。
Next, the method for deriving merge candidates at different times in S103 of FIG. 14 will be described in detail. FIG. 17 is a flowchart illustrating the time merge candidate derivation processing procedure in step S103 of FIG.
まず、図26のビットストリームの符号化および復号の共通規則であるシンタックス規則の一例に示すように、スライス単位でスライスヘッダに記述されるスライスタイプslice_typeと時間方向の予測動きベクトルの候補、またはマージ候補を導出する際に用いる異なる時間のピクチャcolPicが処理対象の予測ブロックが含まれるピクチャのL0の参照リスト或いはL1の参照リストのどちらに登録されている参照ピクチャを使用するかを示すフラグcollocated_from_l0_flagにより、異なる時間のピクチャcolPicを導出する(ステップS3101)。
First, as shown in an example of a syntax rule that is a common rule for encoding and decoding a bitstream in FIG. 26, a slice type slice_type described in a slice header in units of slices and a candidate for a predicted motion vector in the time direction, or Flag collocated_from_l0_flag indicating whether a picture colPic at a different time used when deriving merge candidates uses a reference picture registered in the L0 reference list or the L1 reference list of the picture including the prediction block to be processed Thus, pictures colPic at different times are derived (step S3101).
図18は図17のステップS3101の異なる時間のピクチャcolPicの導出処理手順を説明するフローチャートである。スライスタイプslice_typeがBスライスで、フラグcollocated_from_l0_flagが0の場合(ステップS3201のYES、ステップS3202のYES)、RefPicList1[0]、すなわち参照リストL1の参照インデックスが0のピクチャが異なる時間のピクチャcolPicとなる(ステップS3203)。そうでない場合、すなわちスライスタイプslice_typeがBスライスで前述のフラグcollocated_from_l0_flagが1の場合(ステップS3201のYES、ステップS3202のNO)、またはスライスタイプslice_typeがPスライスの場合(ステップS3201のNO、S3204のYES)、RefPicList0[0]、すなわち参照リストL0の参照インデックスが0のピクチャが異なる時間のピクチャcolPicとなる(ステップS3205)。
FIG. 18 is a flowchart for explaining the procedure for deriving the picture colPic at different times in step S3101 of FIG. When the slice type slice_type is a B slice and the flag collocated_from_l0_flag is 0 (YES in step S3201 and YES in step S3202), RefPicList1 [0], that is, the picture colPic of the reference list L1 with a reference index of 0 is a different time. (Step S3203). Otherwise, that is, when the slice type slice_type is B slice and the aforementioned flag collocated_from_l0_flag is 1 (YES in step S3201, NO in step S3202), or when the slice type slice_type is P slice (NO in step S3201 and YES in S3204) ), RefPicList0 [0], that is, the picture colPic of the reference list L0 with the reference index 0 is a different time (step S3205).
次に、図17のフローチャートに戻り、異なる時間の予測ブロックcolPUを導出し、符号化情報を取得する(ステップS3102)。
Next, returning to the flowchart of FIG. 17, a prediction block colPU at a different time is derived, and encoded information is acquired (step S3102).
図19は図17のステップS3102の異なる時間のピクチャcolPicの予測ブロックcolPUの導出処理手順を説明するフローチャートである。
FIG. 19 is a flowchart for explaining the procedure for deriving the prediction block colPU of the picture colPic at different times in step S3102 of FIG.
まず、異なる時間のピクチャcolPic内で処理対象の予測ブロックと同一位置の右下(外側)に位置する予測ブロックを異なる時間の予測ブロックcolPUとする(ステップS3301)。この予測ブロックは図9の予測ブロックT0に相当する。
First, a prediction block located in the lower right (outside) of the same position as the processing target prediction block in the picture colPic at different times is set as a prediction block colPU at different times (step S3301). This prediction block corresponds to the prediction block T0 in FIG.
次に、異なる時間の予測ブロックcolPUの符号化情報を取得する(ステップS3302)。異なる時間の予測ブロックcolPUのPredModeが利用できないか、異なる時間の予測ブロックcolPUの予測モードPredModeがイントラ予測(MODE_INTRA)である場合(ステップS3303のYES、ステップS3304のYES)、異なる時間のピクチャcolPic内で処理対象の予測ブロックと同一位置の中央左上に位置する予測ブロックを異なる時間の予測ブロックcolPUとする(ステップS3305)。この予測ブロックは図9の予測ブロックT1に相当する。
Next, the encoding information of the prediction block colPU at different times is acquired (step S3302). When PredMode of a prediction block colPU at a different time cannot be used, or when the prediction mode PredMode of a prediction block colPU at a different time is intra prediction (MODE_INTRA) (YES in step S3303, YES in step S3304), the picture colPic in a different time The prediction block located in the upper left center of the same position as the processing target prediction block is set as a prediction block colPU at a different time (step S3305). This prediction block corresponds to the prediction block T1 in FIG.
次に、図17のフローチャートに戻り、符号化または復号対象の予測ブロックと同位置の他ピクチャの予測ブロックから導出されるL0の予測動きベクトルmvL0Colと時間マージ候補Colが有効か否かを示すフラグavailableFlagL0Colを導出するとともに(ステップS3103)、L1の予測動きベクトルmvL1Colと時間マージ候補Colが有効か否かを示すフラグavailableFlagL1Colを導出する(ステップS3104)。さらに、フラグavailableFlagL0Col またはフラグavailableFlagL1Colが1の場合に、時間マージ候補Colが有効か否かを示すフラグavailableFlagColを1に設定する。
Next, returning to the flowchart of FIG. 17, a flag indicating whether or not the L0 motion vector predictor mvL0Col and the temporal merge candidate Col derived from the prediction block of another picture at the same position as the prediction block to be encoded or decoded are valid. In addition to deriving availableFlagL0Col (step S3103), a flag availableFlagL1Col indicating whether the prediction motion vector mvL1Col of L1 and the temporal merge candidate Col are valid is derived (step S3104). Further, when the flag availableFlagL0Col or the flag availableFlagL1Col is 1, the flag availableFlagCol indicating whether or not the time merge candidate Col is valid is set to 1.
図20は図17のステップS3103、ステップS3104の時間マージ候補のインター予測情報の導出処理手順を説明するフローチャートである。L0またはL1で、時間マージ候補の導出対象のリストをLXとし、LXを用いた予測をLX予測とする。以下、断りのない限り、この意味で用いる。時間マージ候補のL0の導出処理であるステップS3103として呼び出される際には、LXがL0となり、時間マージ候補のL1の導出処理であるステップS3104として呼び出される際には、LXがL1となる。
FIG. 20 is a flowchart for explaining the process of deriving inter prediction information of the temporal merge candidate in step S3103 and step S3104 in FIG. In L0 or L1, the list of time merge candidate derivation targets is LX, and the prediction using LX is LX prediction. Hereinafter, unless otherwise noted, this meaning is used. LX becomes L0 when called as step S3103, which is a time merge candidate L0 derivation process, and LX becomes L1, when called as step S3104, which is a time merge candidate L1 derivation process.
異なる時間の予測ブロックcolPUの予測モードPredModeがイントラ予測(MODE_INTRA)か、利用できない場合(ステップS3401のNO、ステップS3402のNO)、フラグavailableFlagLXColとフラグpredFlagLXColを共に0とし(ステップS3403)、動きベクトルmvLXColを(0,0)として(ステップS3404)、本時間マージ候補のインター予測情報の導出処理を終了する。
When the prediction mode PredMode of the prediction block colPU at different times is intra prediction (MODE_INTRA) or cannot be used (NO in step S3401 and NO in step S3402), both the flag availableFlagLXCol and the flag predFlagLXCol are set to 0 (step S3403), and the motion vector mvLXCol Is set to (0, 0) (step S3404), and the process of deriving inter prediction information of the current time merge candidate ends.
予測ブロックcolPUが利用できて予測モードPredModeがイントラ予測(MODE_INTRA)でない場合(ステップS3401のYES、ステップS3402のYES)、以下の手順でmvColとrefIdxColとavailableFlagColを導出する。
When the prediction block colPU is available and the prediction mode PredMode is not intra prediction (MODE_INTRA) (YES in step S3401 and YES in step S3402), mvCol, refIdxCol, and availableFlagCol are derived by the following procedure.
予測ブロックcolPUのL0予測が利用されているかどうかを示すフラグPredFlagL0[xPCol][yPCol]が0の場合(ステップS3405のYES)、予測ブロックcolPUの予測モードはPred_L1であるので、動きベクトルmvColが予測ブロックcolPUのL1の動きベクトルであるMvL1[xPCol][yPCol]と同じ値に設定され(ステップS3406)、参照インデックスrefIdxColがL1の参照インデックスRefIdxL1[xPCol][yPCol]と同じ値に設定され(ステップS3407)、リストListColがL1に設定される(ステップS3408)。ここで、xPCol、yPColは異なる時間のピクチャcolPic内での予測ブロックcolPUの左上の画素の位置を示すインデックスである。
When the flag PredFlagL0 [xPCol] [yPCol] indicating whether or not the L0 prediction of the prediction block colPU is used (YES in step S3405), the prediction mode of the prediction block colPU is Pred_L1, and therefore the motion vector mvCol is predicted. The same value as MvL1 [xPCol] [yPCol] that is the L1 motion vector of the block colPU is set (step S3406), and the reference index refIdxCol is set to the same value as the reference index RefIdxL1 [xPCol] [yPCol] of L1 (step S3406). In step S3407, the list ListCol is set to L1 (step S3408). Here, xPCol and yPCol are indexes indicating the position of the upper left pixel of the prediction block colPU in the picture colPic at different times.
一方、予測ブロックcolPUのL0予測フラグPredFlagL0[xPCol][yPCol]が0でない場合(図20のステップS3405のNO)、予測ブロックcolPUのL1予測フラグPredFlagL1[xPCol][yPCol]が0かどうかを判定する。予測ブロックcolPUのL1予測フラグPredFlagL1[xPCol][yPCol]が0の場合(ステップS3409のYES)、動きベクトルmvColが予測ブロックcolPUのL0の動きベクトルであるMvL0[xPCol][yPCol]と同じ値に設定され(ステップS3410)、参照インデックスrefIdxColがL0の参照インデックスRefIdxL0[xPCol][yPCol]と同じ値に設定され(ステップS3411)、リストListColがL0に設定される(ステップS3412)。
On the other hand, when the L0 prediction flag PredFlagL0 [xPCol] [yPCol] of the prediction block colPU is not 0 (NO in step S3405 in FIG. 20), it is determined whether the L1 prediction flag PredFlagL1 [xPCol] [yPCol] of the prediction block colPU is 0. To do. When the L1 prediction flag PredFlagL1 [xPCol] [yPCol] of the prediction block colPU is 0 (YES in step S3409), the motion vector mvCol becomes the same value as MvL0 [xPCol] [yPCol], which is the L0 motion vector of the prediction block colPU. It is set (step S3410), the reference index refIdxCol is set to the same value as the reference index RefIdxL0 [xPCol] [yPCol] of L0 (step S3411), and the list ListCol is set to L0 (step S3412).
予測ブロックcolPUのL0予測フラグPredFlagL0[xPCol][yPCol]と予測ブロックcolPUのL1予測フラグPredFlagL1[xPCol][yPCol]が共に0でない場合(ステップS3405のNO、ステップS3409のNO)、予測ブロックcolPUのインター予測モードは双予測(Pred_BI)であるので、L0、L1の2つの動きベクトルから、一方を選択する(ステップS3413)。
When the L0 prediction flag PredFlagL0 [xPCol] [yPCol] of the prediction block colPU and the L1 prediction flag PredFlagL1 [xPCol] [yPCol] of the prediction block colPU are not 0 (NO in step S3405, NO in step S3409), the prediction block colPU Since the inter prediction mode is bi-prediction (Pred_BI), one of the two motion vectors L0 and L1 is selected (step S3413).
図21は予測ブロックcolPUのインター予測モードが双予測(Pred_BI)のときの時間マージ候補のインター予測情報の導出処理手順を示すフローチャートである。
FIG. 21 is a flowchart showing a procedure for deriving inter prediction information of temporal merge candidates when the inter prediction mode of the prediction block colPU is bi-prediction (Pred_BI).
まず、すべての参照リストに登録されているすべてのピクチャのPOCが現在の符号化または復号対象ピクチャのPOCより小さいかどうかを判定し(ステップS3501)、予測ブロックcolPUのすべての参照リストであるL0及びL1に登録されているすべてのピクチャのPOCが現在の符号化または復号対象ピクチャのPOCより小さい場合で(ステップS3501のYES)、LXがL0、即ち符号化または復号対象ピクチャのL0の動きベクトルの予測ベクトル候補を導出している場合(ステップS3502のYES)、予測ブロックcolPUのL0の方のインター予測情報を選択し、LXがL1、即ち符号化または復号対象ピクチャのL1の動きベクトルの予測ベクトル候補を導出している場合(ステップS3502のNO)、予測ブロックcolPUのL1の方のインター予測情報を選択する。一方、予測ブロックcolPUのすべての参照リストL0及びL1に登録されているピクチャのPOCの少なくとも1つが現在の符号化または復号対象ピクチャのPOCより大きい場合で(ステップS3501のNO)、フラグcollocated_from_l0_flagが0の場合(ステップS3503のYES)、予測ブロックcolPUのL0の方のインター予測情報を選択し、フラグcollocated_from_l0_flagが1の場合(ステップS3503のNO)、予測ブロックcolPUのL1の方のインター予測情報を選択する。
First, it is determined whether the POCs of all the pictures registered in all the reference lists are smaller than the POC of the current encoding or decoding target picture (step S3501), and L0, which is all the reference lists of the prediction block colPU. When the POC of all the pictures registered in L1 is smaller than the POC of the current encoding or decoding target picture (YES in step S3501), LX is L0, that is, the motion vector of L0 of the encoding or decoding target picture When the prediction vector candidate is derived (YES in step S3502), the L0 inter prediction information of the prediction block colPU is selected, and LX is L1, that is, the prediction of the motion vector of the encoding or decoding target picture L1. When the vector candidate is derived (NO in step S3502), the prediction block Inter prediction information for L1 of the lock colPU is selected. On the other hand, when at least one of the POCs of pictures registered in all the reference lists L0 and L1 of the prediction block colPU is larger than the POC of the current encoding or decoding target picture (NO in step S3501), the flag collocated_from_l0_flag is 0. (YES in step S3503), the L0 inter prediction information of the prediction block colPU is selected. If the flag collocated_from_l0_flag is 1 (NO in step S3503), the L1 inter prediction information of the prediction block colPU is selected. To do.
予測ブロックcolPUのL0の方のインター予測情報を選択する場合(ステップのYES、ステップS3503のYES)、動きベクトルmvColがMvL0[xPCol][yPCol]と同じ値に設定され(ステップS3504)、参照インデックスrefIdxColがRefIdxL0[xPCol][yPCol]と同じ値に設定され(ステップS3505)、リストListColがL0に設定される(ステップS3506)。
When the inter prediction information of L0 of the prediction block colPU is selected (YES in step, YES in step S3503), the motion vector mvCol is set to the same value as MvL0 [xPCol] [yPCol] (step S3504), and the reference index refIdxCol is set to the same value as RefIdxL0 [xPCol] [yPCol] (step S3505), and the list ListCol is set to L0 (step S3506).
予測ブロックcolPUのL1の方のインター予測情報を選択する場合(ステップS2502のNO、ステップS3503のNO)、動きベクトルmvColがMvL1[xPCol][yPCol]と同じ値に設定され(ステップS3507)、参照インデックスrefIdxColがRefIdxL1[xPCol][yPCol]と同じ値に設定され(ステップS3508)、リストListColがL1に設定される(ステップS3509)。
When the inter prediction information of L1 of the prediction block colPU is selected (NO in step S2502 and NO in step S3503), the motion vector mvCol is set to the same value as MvL1 [xPCol] [yPCol] (step S3507), see The index refIdxCol is set to the same value as RefIdxL1 [xPCol] [yPCol] (step S3508), and the list ListCol is set to L1 (step S3509).
図20に戻り、予測ブロックcolPUからインター予測情報が取得できたらフラグavailableFlagLXColとフラグpredFlagLXColを共に1とする(ステップS3414)。
Referring back to FIG. 20, if inter prediction information can be acquired from the prediction block colPU, both the flag availableFlagLXCol and the flag predFlagLXCol are set to 1 (step S3414).
続いて、動きベクトルmvColをスケーリングして時間マージ候補のLXの動きベクトルmvLXColとする(ステップS3415)。この動きベクトルのスケーリング演算処理手順を図22及び図23を用いて説明する。
Subsequently, the motion vector mvCol is scaled to be a time merge candidate LX motion vector mvLXCol (step S3415). The motion vector scaling calculation processing procedure will be described with reference to FIGS.
図22は図20のステップS3415の動きベクトルのスケーリング演算処理手順を示すフローチャートである。
FIG. 22 is a flowchart showing the motion vector scaling calculation processing procedure in step S3415 of FIG.
異なる時間のピクチャcolPicのPOCから、予測ブロックcolPUのリストListColで参照する参照インデックスrefIdxColに対応する参照ピクチャのPOCを減算してピクチャ間距離tdを導出する(ステップS3601)。なお、異なる時間のピクチャcolPicよりも予測ブロックcolPUのリストListColで参照する参照ピクチャのPOCの方が表示順序で前の場合、ピクチャ間距離tdは正の値となり、異なる時間のピクチャcolPicよりも予測ブロックcolPUのリストListColで参照する参照ピクチャのPOCの方が表示順序で後の場合、ピクチャ間距離tdは負の値となる。
td=異なる時間のピクチャcolPicのPOC-予測ブロックcolPUのリストListColで参照する参照ピクチャのPOC The inter-picture distance td is derived by subtracting the POC of the reference picture corresponding to the reference index refIdxCol referenced in the list ListCol of the prediction block colPU from the POC of the picture colPic at different times (step S3601). Note that when the POC of the reference picture referenced in the list Col of the prediction block colPU is earlier in the display order than the picture colPic at a different time, the inter-picture distance td is a positive value, and the prediction is more accurate than the picture colPic at a different time. When the POC of the reference picture referenced in the list ListCol of the block colPU is later in the display order, the inter-picture distance td is a negative value.
td = POC of picture colPic at different time-POC of reference picture referenced by list ListCol of prediction block colPU
td=異なる時間のピクチャcolPicのPOC-予測ブロックcolPUのリストListColで参照する参照ピクチャのPOC The inter-picture distance td is derived by subtracting the POC of the reference picture corresponding to the reference index refIdxCol referenced in the list ListCol of the prediction block colPU from the POC of the picture colPic at different times (step S3601). Note that when the POC of the reference picture referenced in the list Col of the prediction block colPU is earlier in the display order than the picture colPic at a different time, the inter-picture distance td is a positive value, and the prediction is more accurate than the picture colPic at a different time. When the POC of the reference picture referenced in the list ListCol of the block colPU is later in the display order, the inter-picture distance td is a negative value.
td = POC of picture colPic at different time-POC of reference picture referenced by list ListCol of prediction block colPU
現在の符号化または復号対象ピクチャのPOCから図14のステップS102で導出された時間マージ候補のLXの参照インデックスに対応する参照ピクチャのPOCを減算してピクチャ間距離tbを導出する(ステップS3602)。なお、現在の符号化または復号対象ピクチャよりも現在の符号化または復号対象ピクチャのリストLXで参照する参照ピクチャの方が表示順序で前の場合、ピクチャ間距離tbは正の値となり、現在の符号化または復号対象ピクチャのリストLXで参照する参照ピクチャの方が表示順序で後の場合、ピクチャ間距離tbは負の値となる。
tb=現在の符号化または復号対象ピクチャのPOC-時間マージ候補のLXの参照インデックスに対応する参照ピクチャのPOC The inter-picture distance tb is derived by subtracting the POC of the reference picture corresponding to the LX reference index of the temporal merge candidate derived in step S102 of FIG. 14 from the current encoding or decoding target picture POC (step S3602). . If the reference picture referenced in the list LX of the current encoding or decoding target picture is earlier than the current encoding or decoding target picture in the display order, the inter-picture distance tb is a positive value. When the reference picture referred to in the encoding or decoding target picture list LX is later in the display order, the inter-picture distance tb is a negative value.
tb = POC of current encoding or decoding target picture—POC of reference picture corresponding to LX reference index of temporal merge candidate
tb=現在の符号化または復号対象ピクチャのPOC-時間マージ候補のLXの参照インデックスに対応する参照ピクチャのPOC The inter-picture distance tb is derived by subtracting the POC of the reference picture corresponding to the LX reference index of the temporal merge candidate derived in step S102 of FIG. 14 from the current encoding or decoding target picture POC (step S3602). . If the reference picture referenced in the list LX of the current encoding or decoding target picture is earlier than the current encoding or decoding target picture in the display order, the inter-picture distance tb is a positive value. When the reference picture referred to in the encoding or decoding target picture list LX is later in the display order, the inter-picture distance tb is a negative value.
tb = POC of current encoding or decoding target picture—POC of reference picture corresponding to LX reference index of temporal merge candidate
続いて、ピクチャ間距離tdとtbを比較し(ステップS3603)、ピクチャ間距離tdとtbが等しい場合(ステップS3603のYES)、時間マージ候補のLXの動きベクトルmvLXColを動きベクトルmvColと同じ値に設定して(ステップS3604)、本スケーリング演算処理を終了する。
mvLXCol=mvCol Subsequently, the inter-picture distances td and tb are compared (step S3603). If the inter-picture distances td and tb are equal (YES in step S3603), the LX motion vector mvLXCol as a temporal merge candidate is set to the same value as the motion vector mvCol. After setting (step S3604), the scaling calculation process is terminated.
mvLXCol = mvCol
mvLXCol=mvCol Subsequently, the inter-picture distances td and tb are compared (step S3603). If the inter-picture distances td and tb are equal (YES in step S3603), the LX motion vector mvLXCol as a temporal merge candidate is set to the same value as the motion vector mvCol. After setting (step S3604), the scaling calculation process is terminated.
mvLXCol = mvCol
一方、ピクチャ間距離tdとtbが等しくない場合(ステップS3603のNO)、次式によりmvColにスケーリング係数tb/tdを乗じることでスケーリング演算処理を行い(ステップS3605)、スケーリングされた時間マージ候補のLXの動きベクトルmvLXColを得る。
mvLXCol=tb / td * mvCol On the other hand, when the inter-picture distances td and tb are not equal (NO in step S3603), scaling calculation processing is performed by multiplying mvCol by the scaling coefficient tb / td according to the following equation (step S3605), and the scaled time merge candidate Obtain the motion vector mvLXCol of LX.
mvLXCol = tb / td * mvCol
mvLXCol=tb / td * mvCol On the other hand, when the inter-picture distances td and tb are not equal (NO in step S3603), scaling calculation processing is performed by multiplying mvCol by the scaling coefficient tb / td according to the following equation (step S3605), and the scaled time merge candidate Obtain the motion vector mvLXCol of LX.
mvLXCol = tb / td * mvCol
また、ステップS3605のスケーリング演算を整数精度の演算で行う場合の例を図23に示す。図23のステップS3606~ステップS3608の処理が、図22のステップS3605の処理に相当する。
Further, FIG. 23 shows an example in which the scaling operation in step S3605 is performed with an integer precision operation. The processing from step S3606 to step S3608 in FIG. 23 corresponds to the processing in step S3605 in FIG.
まず、図22のフローチャートと同様に、ピクチャ間距離tdとピクチャ間距離tbを導出する(ステップS3601、ステップS3602)。
First, similarly to the flowchart of FIG. 22, an inter-picture distance td and an inter-picture distance tb are derived (steps S3601 and S3602).
続いて、ピクチャ間距離tdとtbを比較し(ステップS3603)、ピクチャ間距離tdとtbが等しい場合(ステップS3603のYES)、図22のフローチャートと同様に、時間マージ候補のLXの動きベクトルmvLXColを動きベクトルmvColと同じ値に設定して(ステップS3604)、本スケーリング演算処理を終了する。
mvLXCol=mvCol Subsequently, the inter-picture distances td and tb are compared (step S3603). If the inter-picture distances td and tb are equal (YES in step S3603), the LX motion vector mvLXCol as a temporal merge candidate is obtained, as in the flowchart of FIG. Is set to the same value as the motion vector mvCol (step S3604), and this scaling calculation process is terminated.
mvLXCol = mvCol
mvLXCol=mvCol Subsequently, the inter-picture distances td and tb are compared (step S3603). If the inter-picture distances td and tb are equal (YES in step S3603), the LX motion vector mvLXCol as a temporal merge candidate is obtained, as in the flowchart of FIG. Is set to the same value as the motion vector mvCol (step S3604), and this scaling calculation process is terminated.
mvLXCol = mvCol
一方、ピクチャ間距離tdとtbが等しくない場合(ステップS3603のNO)、次式により変数txを導出する(ステップS3606)。
tx = ( 16384 + Abs( td / 2 ) ) / td On the other hand, if the inter-picture distances td and tb are not equal (NO in step S3603), a variable tx is derived from the following equation (step S3606).
tx = (16384 + Abs (td / 2)) / td
tx = ( 16384 + Abs( td / 2 ) ) / td On the other hand, if the inter-picture distances td and tb are not equal (NO in step S3603), a variable tx is derived from the following equation (step S3606).
tx = (16384 + Abs (td / 2)) / td
続いて、次式によりスケーリング係数DistScaleFactorを導出する(ステップS3607)。
DistScaleFactor = ( tb * tx + 32 ) >> 6 Subsequently, the scaling coefficient DistScaleFactor is derived by the following equation (step S3607).
DistScaleFactor = (tb * tx + 32) >> 6
DistScaleFactor = ( tb * tx + 32 ) >> 6 Subsequently, the scaling coefficient DistScaleFactor is derived by the following equation (step S3607).
DistScaleFactor = (tb * tx + 32) >> 6
続いて、次式により、スケーリングされた時間マージ候補のLXの動きベクトルmvLXColを得る(ステップS3608)。
mvLXCol = ClipMv( Sign( DistScaleFactor * mvCol ) * ( (Abs( DistScaleFactor * mvCol ) + 127 ) >> 8 ) ) Subsequently, a scaled temporal merge candidate LX motion vector mvLXCol is obtained by the following equation (step S3608).
mvLXCol = ClipMv (Sign (DistScaleFactor * mvCol) * ((Abs (DistScaleFactor * mvCol) + 127) >> 8))
mvLXCol = ClipMv( Sign( DistScaleFactor * mvCol ) * ( (Abs( DistScaleFactor * mvCol ) + 127 ) >> 8 ) ) Subsequently, a scaled temporal merge candidate LX motion vector mvLXCol is obtained by the following equation (step S3608).
mvLXCol = ClipMv (Sign (DistScaleFactor * mvCol) * ((Abs (DistScaleFactor * mvCol) + 127) >> 8))
次に、図14のステップS104のマージ候補をマージ候補リストに登録する方法について詳細に説明する。図24はマージ候補リストへのマージ候補の登録処理手順を示すフローチャートである。本方式では、優先順位をつけて、優先順位の高いものからマージ候補リストmergeCandListに予測動きベクトルの候補を登録することで、マージインデックスmerge_idx[x0][y0]の符号量を削減する。優先順位の高い要素をマージ候補リストの前方に配置することで、符号量を削減する。例えば、マージ候補リストmergeCandListの要素が5個の場合、マージ候補リストのインデックス0を「0」、インデックス1を「10」、インデックス2を「110」、インデックス3を「1110」、インデックス4を「11110」とすることで、インデックス0を表す符号量が1ビットとなり、インデックス0に発生頻度が高いと考えられる要素を登録することで、符号量を削減する。
Next, a method for registering the merge candidate in step S104 of FIG. 14 in the merge candidate list will be described in detail. FIG. 24 is a flowchart showing the procedure for registering merge candidates in the merge candidate list. In this method, priorities are assigned and the motion vector candidates are registered in the merge candidate list mergeCandList in descending order of priority, thereby reducing the code amount of the merge index merge_idx [x0] [y0]. The amount of codes is reduced by placing elements with higher priorities in front of the merge candidate list. For example, when there are five elements in the merge candidate list mergeCandList, the index 0 of the merge candidate list is “0”, the index 1 is “10”, the index 2 is “110”, the index 3 is “1110”, and the index 4 is “ By setting “11110”, the code amount representing the index 0 becomes 1 bit, and the code amount is reduced by registering an element considered to have a high occurrence frequency in the index 0.
マージ候補リストmergeCandListはリスト構造を成し、マージ候補リスト内部の所在を示すマージインデックスと、インデックスに対応するマージ候補を要素として格納する記憶領域が設けられている。マージインデックスの数字は0から開始され、マージ候補リストmergeCandListの記憶領域に、マージ候補が格納される。以降の処理では、マージ候補リストmergeCandListに登録されたマージインデックスiのマージ候補となる予測ブロックは、mergeCandList[i]で表すこととし、マージ候補リストmergeCandListとは配列表記をすることで区別することとする。
The merge candidate list mergeCandList has a list structure, and is provided with a merge index indicating the location in the merge candidate list and a storage area for storing merge candidates corresponding to the index as elements. The number of the merge index starts from 0, and merge candidates are stored in the storage area of the merge candidate list mergeCandList. In the subsequent processing, a prediction block that is a merge candidate of the merge index i registered in the merge candidate list mergeCandList is represented by mergeCandList [i], and is distinguished from the merge candidate list mergeCandList by array notation. To do.
まず、availableFlagAが1の場合(ステップS4101のYES)、マージ候補リストmergeCandListの先頭にマージ候補Aを登録する(ステップS4102)。
続いて、availableFlagBが1の場合(ステップS4103のYES)、マージ候補リストmergeCandListの最後にマージ候補Bを登録する(ステップS4104)。
続いて、availableFlagCが1の場合(ステップS4105のYES)、マージ候補リストmergeCandListの最後にマージ候補Cを登録する(ステップS4106)。
続いて、availableFlagDが1の場合(ステップS4107のYES)、マージ候補リストmergeCandListの最後にマージ候補Dを登録する(ステップS4108)。
続いて、availableFlagEが1の場合(ステップS4109のYES)、マージ候補リストmergeCandListの最後にマージ候補Eを登録する(ステップS4110)。
続いて、availableFlagColが1の場合(ステップS4111のYES)、マージ候補リストmergeCandListの最後にマージ候補Colを登録する(ステップS4112)。 First, when availableFlagA is 1 (YES in step S4101), merge candidate A is registered at the head of the merge candidate list mergeCandList (step S4102).
Subsequently, when availableFlagB is 1 (YES in step S4103), merge candidate B is registered at the end of the merge candidate list mergeCandList (step S4104).
Subsequently, when availableFlagC is 1 (YES in step S4105), the merge candidate C is registered at the end of the merge candidate list mergeCandList (step S4106).
Subsequently, when availableFlagD is 1 (YES in step S4107), the merge candidate D is registered at the end of the merge candidate list mergeCandList (step S4108).
Subsequently, when availableFlagE is 1 (YES in step S4109), the merge candidate E is registered at the end of the merge candidate list mergeCandList (step S4110).
Subsequently, when availableFlagCol is 1 (YES in step S4111), the merge candidate Col is registered at the end of the merge candidate list mergeCandList (step S4112).
続いて、availableFlagBが1の場合(ステップS4103のYES)、マージ候補リストmergeCandListの最後にマージ候補Bを登録する(ステップS4104)。
続いて、availableFlagCが1の場合(ステップS4105のYES)、マージ候補リストmergeCandListの最後にマージ候補Cを登録する(ステップS4106)。
続いて、availableFlagDが1の場合(ステップS4107のYES)、マージ候補リストmergeCandListの最後にマージ候補Dを登録する(ステップS4108)。
続いて、availableFlagEが1の場合(ステップS4109のYES)、マージ候補リストmergeCandListの最後にマージ候補Eを登録する(ステップS4110)。
続いて、availableFlagColが1の場合(ステップS4111のYES)、マージ候補リストmergeCandListの最後にマージ候補Colを登録する(ステップS4112)。 First, when availableFlagA is 1 (YES in step S4101), merge candidate A is registered at the head of the merge candidate list mergeCandList (step S4102).
Subsequently, when availableFlagB is 1 (YES in step S4103), merge candidate B is registered at the end of the merge candidate list mergeCandList (step S4104).
Subsequently, when availableFlagC is 1 (YES in step S4105), the merge candidate C is registered at the end of the merge candidate list mergeCandList (step S4106).
Subsequently, when availableFlagD is 1 (YES in step S4107), the merge candidate D is registered at the end of the merge candidate list mergeCandList (step S4108).
Subsequently, when availableFlagE is 1 (YES in step S4109), the merge candidate E is registered at the end of the merge candidate list mergeCandList (step S4110).
Subsequently, when availableFlagCol is 1 (YES in step S4111), the merge candidate Col is registered at the end of the merge candidate list mergeCandList (step S4112).
なお、マージモードにおいて、左に隣接する予測ブロックA及び上に隣接する予測ブロックBは符号化または復号対象の予測ブロックと一体となる動きになることが多いので、予測ブロックA、Bのインター予測情報が取得できる場合には、マージ候補A、Bを他のマージ候補C,D,E,Colよりも優先的にマージ候補リストの前方に登録する。
In the merge mode, the prediction block A adjacent to the left and the prediction block B adjacent to the upper side often move together with the prediction block to be encoded or decoded, so inter prediction of the prediction blocks A and B is performed. When the information can be acquired, the merge candidates A and B are registered ahead of the merge candidate list in preference to the other merge candidates C, D, E, and Col.
図12において、動画像符号化装置のインター予測情報導出部104の符号化情報選択部137では、マージ候補リストに登録されているマージ候補の中から、マージ候補を選択し、マージインデックスおよびマージインデックスに対応するマージ候補のインター予測情報を動き補償予測部105に供給する。
In FIG. 12, the encoding information selection unit 137 of the inter prediction information deriving unit 104 of the moving image encoding apparatus selects merge candidates from the merge candidates registered in the merge candidate list, and merge indexes and merge indexes. The inter prediction information of the merge candidate corresponding to is supplied to the motion compensation prediction unit 105.
マージ候補の選択においては、予測方法決定部107と同様の方法を用いることができる。それぞれのマージ候補ごとに符号化情報及び残差信号の符号量と予測画像信号と画像信号との間の符号化歪を導出し、最も少ない発生符号量と符号化歪となるマージ候補が決定される。それぞれのマージ候補毎にマージモードの符号化情報であるマージインデックスのシンタックス要素merge_idxのエントロピー符号化を行い、符号化情報の符号量を算出する。さらに、それぞれのマージ候補毎に動き補償予測部105と同様の方法で各マージ候補のインター予測情報に応じて動き補償した予測画像信号と、画像メモリ101から供給される符号化対象の画像信号との予測残差信号を符号化した予測残差信号の符号量を算出する。符号化情報、即ちマージインデックスの符号量と予測残差信号の符号量とが加算された総発生符号量を算出し評価値とする。
In the selection of merge candidates, the same method as the prediction method determination unit 107 can be used. For each merge candidate, the coding information and the coding amount of the residual signal and the coding distortion between the predicted image signal and the image signal are derived, and the merge candidate that produces the least generated code amount and coding distortion is determined. The For each merge candidate, entropy coding is performed on the merge index syntax element merge_idx, which is coding information in the merge mode, and the code amount of the coding information is calculated. Further, for each merge candidate, a predicted image signal motion-compensated according to the inter prediction information of each merge candidate by the same method as the motion compensation prediction unit 105, and an encoding target image signal supplied from the image memory 101, The amount of code of the prediction residual signal obtained by encoding the prediction residual signal is calculated. Coding information, that is, the total generated code amount obtained by adding the code amount of the merge index and the code amount of the prediction residual signal is calculated as an evaluation value.
また、こうした予測残差信号を符号化後に、歪量評価の為に復号し、符号化により生じる元の画像信号との誤差を表す比率として符号化歪が算出される。これら総発生符号量と符号化歪とをマージ候補毎に比較することで、少ない発生符号量と符号化歪となる符号化情報が決定される。決定された符号化情報に対応するマージインデックスが、予測ブロック単位の第2のシンタックスパターンで表されるフラグmerge_idxとして符号化される。
尚、ここで算出される発生符号量は、符号化過程をシミュレートしたものであることが望ましいが、簡便に近似したり、概算することも可能である。 Further, after encoding such a prediction residual signal, it is decoded for distortion amount evaluation, and the encoding distortion is calculated as a ratio representing an error from the original image signal caused by the encoding. By comparing the total generated code amount and the encoding distortion for each merge candidate, encoding information with a small generated code amount and encoding distortion is determined. A merge index corresponding to the determined encoding information is encoded as a flag merge_idx represented by a second syntax pattern in units of prediction blocks.
The generated code amount calculated here is preferably a simulation of the encoding process, but can be approximated or approximated easily.
尚、ここで算出される発生符号量は、符号化過程をシミュレートしたものであることが望ましいが、簡便に近似したり、概算することも可能である。 Further, after encoding such a prediction residual signal, it is decoded for distortion amount evaluation, and the encoding distortion is calculated as a ratio representing an error from the original image signal caused by the encoding. By comparing the total generated code amount and the encoding distortion for each merge candidate, encoding information with a small generated code amount and encoding distortion is determined. A merge index corresponding to the determined encoding information is encoded as a flag merge_idx represented by a second syntax pattern in units of prediction blocks.
The generated code amount calculated here is preferably a simulation of the encoding process, but can be approximated or approximated easily.
一方、図13において、動画像符号化装置のインター予測情報導出部205の符号化情報選択部237では、マージ候補リストに登録されているマージ候補の中から、供給されたマージインデックスに対応するマージ候補を選択し、マージ候補のインター予測情報を動き補償予測部206に供給するとともに、符号化情報格納メモリ210に格納する。
On the other hand, in FIG. 13, the encoding information selection unit 237 of the inter prediction information deriving unit 205 of the moving image encoding device performs a merge corresponding to the supplied merge index from among the merge candidates registered in the merge candidate list. A candidate is selected, and the inter prediction information of the merge candidate is supplied to the motion compensation prediction unit 206 and stored in the encoded information storage memory 210.
以上に述べた本実施の形態においては、スライス単位でマージ候補リストmergeCandListに登録される最終的なマージ候補数finalNumMergeCandを設定する。以下、本実施の形態をいくつかの実施例に分けて説明する。まず、本実施の形態の実施例1について説明する。本実施の形態の実施例1においては、スライスタイプ毎に符号化側と復号側で共通の最終マージ候補数finalNumMergeCandを規定する。MPEG-4 AVC/H.264等と同様に、本実施の形態に準拠する装置、ソフトウェアまたはビットストリームは、主に目的や用途別に定義された処理機能の集合を表すプロファイルと画像サイズやフレームレートにも関係する処理の負荷や使用メモリ量等の処理能力を表すレベルを定義することができ、プロファイルとレベルによって、装置やソフトウェアの性能、またはビットストリームをデコードするのに必要な性能を示す。プロファイルまたはレベルのいずれか一方、またはプロファイルとレベルの組み合わせに応じてスライスタイプ毎に最終マージ候補数finalNumMergeCandの値を規定してもよいし、プロファイルやレベルに係わらずスライスタイプ毎に最終マージ候補数finalNumMergeCandの値を規定してもよい。例えば、IスライスとPスライスのみを利用して符号化または復号するシンプルな機能で構成されるプロファイルにおいては、Pスライスの最終マージ候補数finalNumMergeCandを3に規定する。Iスライス、Pスライスに加えてBスライスも利用して符号化または復号する複雑で符号化効率のよい機能で構成されるプロファイルにおいては、Pスライス、及びBスライスの最終マージ候補数finalNumMergeCandを共に同数の5に規定してもよいが、Pスライスの最終マージ候補数finalNumMergeCandをBスライスの最終マージ候補数finalNumMergeCandよりも小さい数である3に規定することで、Pスライスのマージインデックスの符号量を小さく抑えるとともに、マージインデックスの符号化または復号に係わる処理量を削減することができる。
In the present embodiment described above, the final number of merge candidates finalNumMergeCand registered in the merge candidate list mergeCandList is set for each slice. Hereinafter, this embodiment will be described by dividing it into several examples. First, Example 1 of the present embodiment will be described. In Example 1 of this embodiment, a final merge candidate number finalNumMergeCand that is common between the encoding side and the decoding side is defined for each slice type. MPEG-4 AVC / H. Similarly to H.264, the apparatus, software, or bitstream conforming to the present embodiment is a processing load mainly related to a profile representing a set of processing functions defined by purpose and application, and an image size and a frame rate. And a level representing processing capability such as the amount of memory used can be defined, and the profile and level indicate the performance of the device or software, or the performance required to decode the bitstream. The number of final merge candidates finalNumMergeCand may be specified for each slice type according to either profile or level, or the combination of profile and level, and the final merge candidate number for each slice type regardless of profile or level You may specify the value of finalNumMergeCand. For example, in a profile configured with a simple function of encoding or decoding using only I slices and P slices, the final merge candidate number finalNumMergeCand of P slices is defined as 3. In a profile configured with a complicated and efficient coding function that uses B slices in addition to I slices and P slices, the same number of final merge candidates finalNumMergeCand for P slices and B slices. However, by defining the final merge candidate number finalNumMergeCand of the P slice to 3 which is smaller than the final merge candidate number finalNumMergeCand of the B slice, the code amount of the merge index of the P slice can be reduced. It is possible to reduce the amount of processing involved in encoding or decoding the merge index.
スライスタイプがL0予測のみを利用できるPスライスの場合、L0予測、L1予測、双予測を利用できるBスライスに比べて、インター予測が選択されにくいのでマージ候補リストに登録されるマージ候補が得られにくく、またマージ候補同士のインター予測情報が同一になりやすいので、マージ候補リストに登録されるマージ候補数は小さくなりやすい。したがって、PスライスではBスライスよりも最終的なマージ候補数を小さく設定してもBスライスほど符号化効率が低下せず、マージインデックスの符号量を小さく抑えるとともに、マージインデックスの符号化または復号に係わる処理量を削減することができる。
符号化効率の高いBスライスではなく、Pスライスにより符号化または復号することの理由の一つとして、Pスライスの方が処理量が少ないことがあげられる。特に、IスライスとPスライスのみを利用して符号化または復号するシンプルな機能で構成されるプロファイルは、少ない処理量で符号化または復号するために設定されるので、Pスライスの最終マージ候補数finalNumMergeCandを小さい数に設定してマージインデックスの符号化または復号に係わる処理量を削減することの効果は大きい。 When the slice type is a P slice that can use only L0 prediction, inter prediction is less likely to be selected than a B slice that can use L0 prediction, L1 prediction, and bi-prediction, so a merge candidate registered in the merge candidate list is obtained. In addition, since the inter prediction information of the merge candidates is likely to be the same, the number of merge candidates registered in the merge candidate list is likely to be small. Therefore, in the P slice, even if the final number of merge candidates is set smaller than that in the B slice, the encoding efficiency does not decrease as in the B slice, the code amount of the merge index is suppressed, and the merge index is encoded or decoded. The amount of processing involved can be reduced.
One reason for encoding or decoding with P slices rather than B slices with high encoding efficiency is that P slices require less processing. In particular, since a profile configured with a simple function of encoding or decoding using only I slices and P slices is set for encoding or decoding with a small amount of processing, the final merge candidate number of P slices The effect of reducing the amount of processing related to encoding or decoding of the merge index by setting finalNumMergeCand to a small number is great.
符号化効率の高いBスライスではなく、Pスライスにより符号化または復号することの理由の一つとして、Pスライスの方が処理量が少ないことがあげられる。特に、IスライスとPスライスのみを利用して符号化または復号するシンプルな機能で構成されるプロファイルは、少ない処理量で符号化または復号するために設定されるので、Pスライスの最終マージ候補数finalNumMergeCandを小さい数に設定してマージインデックスの符号化または復号に係わる処理量を削減することの効果は大きい。 When the slice type is a P slice that can use only L0 prediction, inter prediction is less likely to be selected than a B slice that can use L0 prediction, L1 prediction, and bi-prediction, so a merge candidate registered in the merge candidate list is obtained. In addition, since the inter prediction information of the merge candidates is likely to be the same, the number of merge candidates registered in the merge candidate list is likely to be small. Therefore, in the P slice, even if the final number of merge candidates is set smaller than that in the B slice, the encoding efficiency does not decrease as in the B slice, the code amount of the merge index is suppressed, and the merge index is encoded or decoded. The amount of processing involved can be reduced.
One reason for encoding or decoding with P slices rather than B slices with high encoding efficiency is that P slices require less processing. In particular, since a profile configured with a simple function of encoding or decoding using only I slices and P slices is set for encoding or decoding with a small amount of processing, the final merge candidate number of P slices The effect of reducing the amount of processing related to encoding or decoding of the merge index by setting finalNumMergeCand to a small number is great.
図25は本実施の形態の実施例1の方法による符号化側および復号側で共通の最終マージ候補数finalNumMergeCandの設定処理手順を説明するフローチャートである。最終マージ候補数finalNumMergeCandは符号化装置ではヘッダ情報設定部117で設定され、復号装置では第1符号化ビット列復号部212で設定される。スライスタイプslice_typeがPスライスの場合(図25のステップS201のYES)、最終マージ候補数finalNumMergeCandをPスライスの規定数(本実施の形態では3)に設定する(図25のステップS203)。スライスタイプslice_typeがBスライスの場合(図25のステップS201のNO、ステップS202のYES)、最終マージ候補数finalNumMergeCandをBスライスの規定数(本実施の形態では5)に設定する(図25のステップS204)。スライスタイプslice_typeがIスライスの場合(図25のステップS201のNO、ステップS202のNO)、最終マージ候補数finalNumMergeCandを0に設定する(図25のステップS205)。
FIG. 25 is a flowchart for explaining the procedure for setting the final merge candidate number finalNumMergeCand which is common on the encoding side and the decoding side according to the method of Example 1 of the present embodiment. The final merge candidate number finalNumMergeCand is set by the header information setting unit 117 in the encoding device, and is set by the first encoded bit string decoding unit 212 in the decoding device. When the slice type slice_type is a P slice (YES in step S201 in FIG. 25), the final merge candidate number finalNumMergeCand is set to the specified number of P slices (3 in the present embodiment) (step S203 in FIG. 25). When the slice type slice_type is a B slice (NO in step S201 in FIG. 25, YES in step S202), the final merge candidate number finalNumMergeCand is set to the prescribed number of B slices (5 in this embodiment) (step in FIG. 25). S204). When the slice type slice_type is an I slice (NO in step S201 in FIG. 25, NO in step S202), the final merge candidate number finalNumMergeCand is set to 0 (step S205 in FIG. 25).
なお、最終マージ候補数finalNumMergeCandと同様に、プロファイルまたはレベルのいずれか一方、またはプロファイルとレベルの組み合わせに応じてスライスタイプ毎に空間マージ候補数の上限値maxNumSpatialMergeCandの値を規定してもよいし、プロファイルやレベルに係わらずスライスタイプ毎に空間マージ候補数の上限値maxNumSpatialMergeCandの値を規定してもよい。符号化効率と処理量を考慮して、符号化効率を重視するケース(プロファイル、レベル、またはスライスタイプ)では空間マージ候補数の上限値maxNumSpatialMergeCandを大きな値に規定し、処理量を重視するケースでは空間マージ候補数の上限値maxNumSpatialMergeCandを小さな値に規定する。
Like the final merge candidate number finalNumMergeCand, the value of the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates may be specified for each slice type according to either the profile or the level, or the combination of the profile and the level, Regardless of the profile or level, the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates may be defined for each slice type. In cases where coding efficiency is considered in consideration of coding efficiency and processing amount (profile, level, or slice type), the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified as a large value, and in cases where processing amount is important The upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified as a small value.
次に本実施の形態の実施例2について説明する。本実施の形態の実施例2では、図26のビットストリームの符号化および復号の共通規則であるシンタックス規則の一例に示すように、スライス単位でスライスヘッダに最終的なマージ候補数finalNumMergeCandを示すシンタックス要素num_merge_candを設定する。ただし、スライスタイプ毎に最終マージ候補数の上限値を規定する。プロファイルとレベルの組み合わせに応じてスライスタイプ毎に最終マージ候補数の上限値を規定してもよいし、プロファイルやレベルに係わらずスライスタイプ毎に最終マージ候補数の上限値を規定してもよい。例えば、IスライスとPスライスのみを利用して符号化または復号するシンプルな機能で構成されるプロファイルにおいては、Pスライスの最終マージ候補数の上限値を3と規定する。Iスライス、Pスライスに加えてBスライスも利用して符号化または復号する複雑で符号化効率のよい機能で構成されるプロファイルにおいては、Pスライス、及びBスライスの最終マージ候補数の上限値を共に同数の5に規定してもよいし、Pスライスの最終マージ候補数の上限値をBスライスの最終マージ候補数の上限値よりも小さい数に規定することもできる。
Next, Example 2 of the present embodiment will be described. In Example 2 of the present embodiment, the final merge candidate number finalNumMergeCand is shown in the slice header in units of slices, as shown in an example of a syntax rule that is a common rule for encoding and decoding a bitstream in FIG. Set the syntax element num_merge_cand. However, the upper limit value of the number of final merge candidates is defined for each slice type. Depending on the combination of profile and level, an upper limit value for the number of final merge candidates may be defined for each slice type, or an upper limit value for the number of final merge candidates may be defined for each slice type regardless of the profile or level. . For example, in a profile configured with a simple function of encoding or decoding using only I slices and P slices, the upper limit value of the number of final merge candidates for P slices is defined as 3. In a profile composed of complex and efficient coding functions that use B slices in addition to I slices and P slices, the upper limit of the number of final merge candidates for P slices and B slices Both may be defined as the same number 5, or the upper limit value of the final merge candidate number of P slices may be defined as a number smaller than the upper limit value of the final merge candidate number of B slices.
図27は本実施の形態の実施例2の方法による符号化側での最終マージ候補数finalNumMergeCandの設定処理手順を説明するフローチャートであり、図28は本実施の形態の実施例2の方法による復号側での最終マージ候補数finalNumMergeCandの設定処理手順を説明するフローチャートである。最終マージ候補数finalNumMergeCandは符号化装置ではヘッダ情報設定部117で設定され、復号装置では第1符号化ビット列復号部212で設定される。符号化側ではスライスタイプslice_typeがPスライスの場合(図27のステップS201のYES)、最終マージ候補数finalNumMergeCandを規定されたPスライスの上限値と同じ値または上限値を超えない値(本実施の形態では3)に設定する(図27のステップS206)。スライスタイプslice_typeがBスライスの場合(図27のステップS201のNO、ステップS202のYES)、最終マージ候補数finalNumMergeCandを規定されたBスライスの上限値と同じ値または上限値を超えない値(本実施の形態では5)に設定する(図27のステップS207)。スライスタイプslice_typeがIスライスの場合(図27のステップS201のNO、ステップS202のNO)、最終マージ候補数finalNumMergeCandを0に設定する(図27のステップS205)。さらに、スライス単位で設定された最終マージ候補数finalNumMergeCandを示すシンタックス要素numMergeCandをエントロピー符号化する(図27のステップS208)。復号側ではビットストリームを復号してシンタックス要素numMergeCandから最終マージ候補数finalNumMergeCandを導出する(図28のS209)。
FIG. 27 is a flowchart for explaining the setting process procedure of the final merge candidate number finalNumMergeCand on the encoding side according to the method of Example 2 of the present embodiment, and FIG. 28 shows decoding by the method of Example 2 of the present embodiment. 10 is a flowchart for explaining a setting process procedure of a final merge candidate number finalNumMergeCand on the side. The final merge candidate number finalNumMergeCand is set by the header information setting unit 117 in the encoding device, and is set by the first encoded bit string decoding unit 212 in the decoding device. On the encoding side, when the slice type slice_type is a P slice (YES in step S201 in FIG. 27), the final merge candidate number finalNumMergeCand is the same value as the upper limit value of the specified P slice or a value not exceeding the upper limit value (this embodiment In the form, it is set to 3) (step S206 in FIG. 27). When the slice type slice_type is B slice (NO in step S201 in FIG. 27, YES in step S202), the final merge candidate number finalNumMergeCand is the same value as the upper limit value of the specified B slice or a value not exceeding the upper limit value (this embodiment) Is set to 5) (step S207 in FIG. 27). When the slice type slice_type is an I slice (NO in step S201 in FIG. 27, NO in step S202), the final merge candidate number finalNumMergeCand is set to 0 (step S205 in FIG. 27). Further, the syntax element numMergeCand indicating the final merge candidate number finalNumMergeCand set in slice units is entropy-coded (step S208 in FIG. 27). The decoding side decodes the bitstream and derives the final merge candidate number finalNumMergeCand from the syntax element numMergeCand (S209 in FIG. 28).
なお、シンタックス要素max_num_spatial_merge_candの値に応じて最終マージ候補数finalNumMergeCandとともに空間マージ候補数の上限値maxNumSpatialMergeCandを規定することもできる。この場合、最終マージ候補数finalNumMergeCandと空間マージ候補数の上限値maxNumSpatialMergeCandは同じ値を規定してもよいし、別の値を規定してもよい。プロファイル、レベル、またはスライスタイプに応じて、符号化効率と処理量を考慮して、符号化効率を重視するケースでは空間マージ候補数の上限値maxNumSpatialMergeCandを大きな値に規定し、処理量を重視するケースでは空間マージ候補数の上限値maxNumSpatialMergeCandを小さな値に規定する。
Note that the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates can be defined together with the final merge candidate number finalNumMergeCand according to the value of the syntax element max_num_spatial_merge_cand. In this case, the final merge candidate number finalNumMergeCand and the upper limit value maxNumSpatialMergeCand of the spatial merge candidate number may define the same value or different values. Depending on the profile, level, or slice type, in consideration of coding efficiency and processing amount, in cases where coding efficiency is important, the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified as a large value, and processing amount is emphasized In the case, the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates is specified to a small value.
または、図26に示すように、スライス単位でスライスヘッダに空間マージ候補数の上限値maxNumSpatialMergeCandを示すシンタックス要素max_num_spatial_merge_candを設定することもできる。符号化側でシンタックス要素max_num_spatial_merge_candを符号化し、復号側ではビットストリームを復号して得られたシンタックス要素max_num_spatial_merge_candの値に応じた空間マージ候補数の上限値maxNumSpatialMergeCandに基づいて復号処理を行う。この場合、符号化側で符号化側の処理能力の範囲内で空間マージ候補数の上限値maxNumSpatialMergeCandを設定することで、空間マージ候補導出の処理量やマージ候補同一判定の処理量を制御する事ができる。
Alternatively, as shown in FIG. 26, a syntax element max_num_spatial_merge_cand indicating the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates can be set in the slice header in units of slices. The encoding side encodes the syntax element max_num_spatial_merge_cand, and the decoding side performs a decoding process based on the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates according to the value of the syntax element max_num_spatial_merge_cand obtained by decoding the bitstream. In this case, by setting the upper limit value maxNumSpatialMergeCand of the number of spatial merge candidates within the range of processing capacity on the encoding side, the processing amount for spatial merge candidate derivation and merge candidate identity determination can be controlled. Can do.
以上述べた実施の形態の動画像符号化装置が出力する動画像の符号化ストリームは、実施の形態で用いられた符号化方法に応じて復号することができるように特定のデータフォーマットを有しており、動画像符号化装置に対応する動画像復号装置がこの特定のデータフォーマットの符号化ストリームを復号することができる。
The moving image encoded stream output from the moving image encoding apparatus of the embodiment described above has a specific data format so that it can be decoded according to the encoding method used in the embodiment. Therefore, the moving picture decoding apparatus corresponding to the moving picture encoding apparatus can decode the encoded stream of this specific data format.
動画像符号化装置と動画像復号装置の間で符号化ストリームをやりとりするために、有線または無線のネットワークが用いられる場合、符号化ストリームを通信路の伝送形態に適したデータ形式に変換して伝送してもよい。その場合、動画像符号化装置が出力する符号化ストリームを通信路の伝送形態に適したデータ形式の符号化データに変換してネットワークに送信する動画像送信装置と、ネットワークから符号化データを受信して符号化ストリームに復元して動画像復号装置に供給する動画像受信装置とが設けられる。
When a wired or wireless network is used to exchange an encoded stream between a moving image encoding device and a moving image decoding device, the encoded stream is converted into a data format suitable for the transmission form of the communication path. It may be transmitted. In that case, a video transmission apparatus that converts the encoded stream output from the video encoding apparatus into encoded data in a data format suitable for the transmission form of the communication channel and transmits the encoded data to the network, and receives the encoded data from the network Then, a moving image receiving apparatus that restores the encoded stream and supplies the encoded stream to the moving image decoding apparatus is provided.
動画像送信装置は、動画像符号化装置が出力する符号化ストリームをバッファするメモリと、符号化ストリームをパケット化するパケット処理部と、パケット化された符号化データをネットワークを介して送信する送信部とを含む。動画像受信装置は、パケット化された符号化データをネットワークを介して受信する受信部と、受信された符号化データをバッファするメモリと、符号化データをパケット処理して符号化ストリームを生成し、動画像復号装置に提供するパケット処理部とを含む。
The moving image transmitting apparatus is a memory that buffers the encoded stream output from the moving image encoding apparatus, a packet processing unit that packetizes the encoded stream, and transmission that transmits the packetized encoded data via the network. Part. The moving image receiving apparatus generates a coded stream by packetizing the received data, a receiving unit that receives the packetized coded data via a network, a memory that buffers the received coded data, and packet processing. And a packet processing unit provided to the video decoding device.
以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ROM(リード・オンリ・メモリ)やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
The above processing relating to encoding and decoding can be realized as a transmission, storage, and reception device using hardware, and is stored in a ROM (Read Only Memory), a flash memory, or the like. It can also be realized by firmware or software such as a computer. The firmware program and software program can be recorded on a computer-readable recording medium, provided from a server through a wired or wireless network, or provided as a data broadcast of terrestrial or satellite digital broadcasting Is also possible.
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
The present invention has been described based on the embodiments. The embodiments are exemplifications, and it will be understood by those skilled in the art that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are within the scope of the present invention. .
101 画像メモリ、 117 ヘッダ情報設定部、 102 動きベクトル検出部、 103 差分動きベクトル算出部、 104 インター予測情報導出部、 105 動き補償予測部、 106 イントラ予測部、 107 予測方法決定部、 108 残差信号生成部、 109 直交変換・量子化部、 118 第1符号化ビット列生成部、110 第2符号化ビット列生成部、 111 第3符号化ビット列生成部、 112 多重化部、 113 逆量子化・逆直交変換部、 114 復号画像信号重畳部、 115 符号化情報格納メモリ、 116 復号画像メモリ、 130 空間マージ候補生成部、 131 時間マージ候補の参照インデックス導出部、 132 時間マージ候補生成部、 133 マージ候補登録部、 134 マージ候補同一判定部、 135 マージ候補数制限部、 136 マージ候補補充部、 137 符号化情報選択部、 201 分離部、 212 第1符号化ビット列復号部、 202 第2符号化ビット列復号部、 203 第3符号化ビット列復号部、 204 動きベクトル算出部、 205 インター予測情報導出部、 206 動き補償予測部、 207 イントラ予測部、 208 逆量子化・逆直交変換部、 209 復号画像信号重畳部、 210 符号化情報格納メモリ、 211 復号画像メモリ、 230 空間マージ候補生成部、 231 時間マージ候補の参照インデックス導出部、 232 時間マージ候補生成部、 233 マージ候補登録部、 234 マージ候補同一判定部、 235 マージ候補数制限部、 236 マージ候補補充部、 237 符号化情報選択部。
101 image memory, 117 header information setting unit, 102 motion vector detection unit, 103 differential motion vector calculation unit, 104 inter prediction information derivation unit, 105 motion compensation prediction unit, 106 intra prediction unit, 107 prediction method determination unit, 108 residual Signal generation unit, 109, orthogonal transform / quantization unit, 118, first encoded bit sequence generation unit, 110, second encoded bit sequence generation unit, 111, third encoded bit sequence generation unit, 112 multiplexing unit, 113 dequantization / inverse Orthogonal transform unit, 114 decoded image signal superimposing unit, 115 encoding information storage memory, 116 decoded image memory, 130 spatial merge candidate generation unit, 131 time merge candidate reference index deriving unit, 132 time merge candidate generation unit, 133 merge candidate Climb , 134 merge candidate identity determination unit, 135 merge candidate number limiting unit, 136 merge candidate supplementing unit, 137 encoded information selecting unit, 201 separating unit, 212 first encoded bit sequence decoding unit, 202 second encoded bit sequence decoding unit , 203 third encoded bit string decoding unit, 204 motion vector calculation unit, 205 inter prediction information derivation unit, 206 motion compensation prediction unit, 207 intra prediction unit, 208 dequantization / inverse orthogonal transform unit, 209 decoded image signal superposition unit 210 encoding information storage memory, 211 decoded image memory, 230 spatial merge candidate generation unit, 231 time merge candidate reference index deriving unit, 232 temporal merge candidate generation unit, 233 merge candidate registration unit, 234 merge candidate identical determination unit, 2 5 merge candidate number limiting part 236 merge candidate refill unit, 237 encoded information selection unit.
本発明は、動き補償予測を利用した動画像符号化技術に利用できる。
The present invention can be used for a moving picture coding technique using motion compensation prediction.
Claims (26)
- 各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化装置であって、
符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出部と、
導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定部と、
前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化部と、
前記決定部により決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化部とを備えることを特徴とする動画像符号化装置。 A video encoding device that encodes a video using inter prediction in units of blocks obtained by dividing each picture,
Inter prediction information of an encoded prediction block adjacent to the prediction block to be encoded in the same picture as the prediction block to be encoded, and prediction in an encoded picture different from the prediction block to be encoded A prediction information deriving unit for deriving candidates for inter prediction information from the inter prediction information of the block;
A determination unit that determines a candidate of inter prediction information to be used for inter prediction of the prediction block to be encoded from the derived candidate of the inter prediction information;
A first encoding unit that encodes a syntax element indicating the number of candidates for the inter prediction information;
A moving picture encoding apparatus comprising: a second encoding unit that encodes an index indicating an inter prediction information candidate determined by the determination unit based on the number of inter prediction information candidates. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項1に記載の動画像符号化装置。 2. The moving picture coding apparatus according to claim 1, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像を符号化する動画像符号化装置であって、
符号化対象の予測ブロックに隣接する予測ブロック、または符号化対象の予測ブロックと時間的に異なる符号化済みのピクチャにおける前記符号化対象の予測ブロックと同一位置あるいはその付近に存在する予測ブロックのインター予測情報から、インター予測情報の候補を導出する予測情報導出部と、
処理機能の集合を示すプロファイルおよびデコード処理能力を示すレベルの少なくとも一方に応じて前記インター予測情報の候補の候補数を制限する候補数制限部と、
候補数の制限された前記インター予測情報の候補から1つのインター予測情報の候補を選択して、その選択したインター予測情報の候補により前記符号化対象の予測ブロックのインター予測を行う動き補償予測部と、
前記候補数の制限に用いたインター予測情報の候補数を示すシンタックス要素を符号化する符号化部とを備えることを特徴とする動画像符号化装置。 A moving image encoding apparatus that encodes the moving image using motion compensated prediction in units of blocks obtained by dividing each picture of the moving image,
The prediction block adjacent to the prediction block to be encoded, or the prediction block existing in the same position as or near the prediction block in the encoded picture that is temporally different from the prediction block to be encoded. A prediction information deriving unit for deriving inter prediction information candidates from the prediction information;
A candidate number limiting unit that limits the number of candidate inter prediction information according to at least one of a profile indicating a set of processing functions and a level indicating decoding processing capability;
A motion compensated prediction unit that selects one inter prediction information candidate from the inter prediction information candidates whose number of candidates is limited, and performs inter prediction on the prediction block to be encoded using the selected inter prediction information candidate When,
A moving picture encoding apparatus comprising: an encoding unit that encodes a syntax element indicating the number of inter prediction information candidates used for limiting the number of candidates. - 各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化方法であって、
符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、
前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、
前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとを備えることを特徴とする動画像符号化方法。 A moving image encoding method for encoding a moving image using inter prediction in units of blocks obtained by dividing each picture,
Inter prediction information of an encoded prediction block adjacent to the prediction block to be encoded in the same picture as the prediction block to be encoded, and prediction in an encoded picture different from the prediction block to be encoded A prediction information deriving step for deriving candidates for inter prediction information from the inter prediction information of the block;
A determination step of determining a candidate for inter prediction information used for inter prediction of the prediction block to be encoded, from the derived candidates for inter prediction information;
A first encoding step of encoding a syntax element indicating the number of candidates for the inter prediction information;
A moving picture coding method comprising: a second coding step for coding an index indicating an inter prediction information candidate determined in the determining step based on the number of inter prediction information candidates. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項4に記載の動画像符号化方法。 5. The moving picture coding method according to claim 4, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化プログラムであって、
符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、
前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、
前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとをコンピュータに実行させることを特徴とする動画像符号化プログラム。 A video encoding program that encodes a video using inter prediction in units of blocks obtained by dividing each picture,
Inter prediction information of an encoded prediction block adjacent to the prediction block to be encoded in the same picture as the prediction block to be encoded, and prediction in an encoded picture different from the prediction block to be encoded A prediction information deriving step for deriving candidates for inter prediction information from the inter prediction information of the block;
A determination step of determining a candidate for inter prediction information used for inter prediction of the prediction block to be encoded, from the derived candidates for inter prediction information;
A first encoding step of encoding a syntax element indicating the number of candidates for the inter prediction information;
A moving picture code characterized by causing a computer to execute a second encoding step for encoding an index indicating an inter prediction information candidate determined in the determining step based on the number of inter prediction information candidates. Program. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項6に記載の動画像符号化プログラム。 The moving picture encoding program according to claim 6, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化方法により符号化された符号化ビット列をパケット化して符号化データを得るパケット処理部と、
パケット化された前記符号化データを送信する送信部とを備え、
前記動画像符号化方法は、
符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、
前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、
前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとを有することを特徴とする送信装置。 A packet processing unit that packetizes an encoded bit sequence encoded by a moving image encoding method that encodes a moving image using inter prediction in units of blocks obtained by dividing each picture, and obtains encoded data;
A transmission unit for transmitting the packetized encoded data,
The moving image encoding method includes:
Inter prediction information of an encoded prediction block adjacent to the prediction block to be encoded in the same picture as the prediction block to be encoded, and prediction in an encoded picture different from the prediction block to be encoded A prediction information deriving step for deriving candidates for inter prediction information from the inter prediction information of the block;
A determination step of determining a candidate for inter prediction information used for inter prediction of the prediction block to be encoded, from the derived candidates for inter prediction information;
A first encoding step of encoding a syntax element indicating the number of candidates for the inter prediction information;
A transmission apparatus comprising: a second encoding step that encodes an index indicating an inter prediction information candidate determined by the determining step based on the number of inter prediction information candidates. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項8に記載の送信装置。 The transmitting apparatus according to claim 8, wherein the maximum value indicated by the index is a value of the number of candidates for the inter prediction information minus one.
- 各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化方法により符号化された符号化ビット列をパケット化して符号化データを得るパケット処理ステップと、
パケット化された前記符号化データを送信する送信ステップとを備え、
前記動画像符号化方法は、
符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、
前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、
前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとを有することを特徴とする送信方法。 A packet processing step of packetizing an encoded bit sequence encoded by a moving image encoding method that encodes a moving image using inter prediction in units of blocks obtained by dividing each picture, and obtaining encoded data;
Transmitting the packetized encoded data, and
The moving image encoding method includes:
Inter prediction information of an encoded prediction block adjacent to the prediction block to be encoded in the same picture as the prediction block to be encoded, and prediction in an encoded picture different from the prediction block to be encoded A prediction information deriving step for deriving candidates for inter prediction information from the inter prediction information of the block;
A determination step of determining a candidate for inter prediction information used for inter prediction of the prediction block to be encoded, from the derived candidates for inter prediction information;
A first encoding step of encoding a syntax element indicating the number of candidates for the inter prediction information;
A transmission method comprising: a second encoding step for encoding an index indicating an inter prediction information candidate determined in the determining step based on the number of inter prediction information candidates. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項10に記載の送信方法。 The transmission method according to claim 10, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 各ピクチャを分割したブロック単位でインター予測を用いて動画像を符号化する動画像符号化方法により符号化された符号化ビット列をパケット化して符号化データを得るパケット処理ステップと、
パケット化された前記符号化データを送信する送信ステップとをコンピュータに実行させ、
前記動画像符号化方法は、
符号化対象の予測ブロックと同一ピクチャ内の前記符号化対象の予測ブロックに近接する符号化済みの予測ブロックのインター予測情報と、前記符号化対象の予測ブロックと異なる符号化済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
導出された前記インター予測情報の候補から、前記符号化対象の予測ブロックのインター予測に用いるインター予測情報の候補を決定する決定ステップと、
前記インター予測情報の候補数を示すシンタックス要素を符号化する第1の符号化ステップと、
前記決定ステップにより決定されたインター予測情報の候補を示すインデックスを、前記インター予測情報の候補数に基づいて符号化する第2の符号化ステップとを有することを特徴とする送信プログラム。 A packet processing step of packetizing an encoded bit sequence encoded by a moving image encoding method that encodes a moving image using inter prediction in units of blocks obtained by dividing each picture, and obtaining encoded data;
Transmitting the packetized encoded data to the computer, and
The moving image encoding method includes:
Inter prediction information of an encoded prediction block adjacent to the prediction block to be encoded in the same picture as the prediction block to be encoded, and prediction in an encoded picture different from the prediction block to be encoded A prediction information deriving step for deriving candidates for inter prediction information from the inter prediction information of the block;
A determination step of determining a candidate for inter prediction information used for inter prediction of the prediction block to be encoded, from the derived candidates for inter prediction information;
A first encoding step of encoding a syntax element indicating the number of candidates for the inter prediction information;
A transmission program comprising: a second encoding step that encodes an index indicating an inter prediction information candidate determined in the determining step based on the number of inter prediction information candidates. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項12に記載の送信プログラム。 The transmission program according to claim 12, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列を復号する動画像復号装置であって、
復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出部と、
インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号部と、
前記第1の復号部で取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを復号する第2の復号部と、
前記予測情報導出部により導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択部とを備えることを特徴とする動画像復号装置。 A video decoding device that decodes a coded bit string in which a video is coded using inter prediction in units of blocks obtained by dividing each picture,
Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the prediction block to be decoded, and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A prediction information deriving unit for deriving inter prediction information candidates,
A first decoding unit that decodes a syntax element indicating the number of inter prediction information candidates and obtains the number of inter prediction information candidates;
A second decoding unit that decodes an index indicating a candidate of inter prediction information used for inter prediction of the prediction block to be decoded, based on the number of candidates of the inter prediction information acquired by the first decoding unit;
A video decoding device comprising: a selection unit that selects a candidate for inter prediction information indicated by the index from candidates for the inter prediction information derived by the prediction information deriving unit. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項14に記載の動画像復号装置。 15. The moving picture decoding apparatus according to claim 14, wherein the maximum value indicated by the index is a value of the number of candidates for the inter prediction information minus one.
- 動画像の各ピクチャを分割したブロック単位で動き補償予測を用いて前記動画像が符号化された符号化ビット列を復号する動画像復号装置であって、
復号対象の予測ブロックに隣接する予測ブロック、または復号対象の予測ブロックと時間的に異なる復号済みのピクチャにおける前記復号対象の予測ブロックと同一位置あるいはその付近に存在する予測ブロックのインター予測情報から、インター予測情報の候補を導出する予測情報導出部と、
インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号部と、
前記第1の復号部で取得した前記インター予測情報の候補数を用いて、前記インター予測情報の候補の候補数を制限する候補数制限部と、
前記第1の復号部で取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測情報となる前記インター予測情報の候補を示すインデックスを復号する第2の復号部と、
復号された前記インデックスが示す前記インター予測情報の候補を、候補数の制限された前記インター予測情報の候補から選択して、その選択したインター予測情報の候補により前記復号対象の予測ブロックのインター予測を行う動き補償予測部とを備えることを特徴とする動画像復号装置。 A moving picture decoding apparatus for decoding a coded bit string obtained by coding the moving picture using motion compensation prediction in units of blocks obtained by dividing each picture of the moving picture,
From the prediction block adjacent to the prediction block to be decoded, or the inter prediction information of the prediction block existing at the same position as or near the prediction block to be decoded in the decoded picture temporally different from the prediction block to be decoded, A prediction information deriving unit for deriving inter prediction information candidates;
A first decoding unit that decodes a syntax element indicating the number of inter prediction information candidates and obtains the number of inter prediction information candidates;
A candidate number limiting unit that limits the number of candidate inter prediction information using the number of inter prediction information candidates acquired by the first decoding unit;
A second decoding unit that decodes an index indicating the candidate of the inter prediction information, which is inter prediction information of the prediction block to be decoded, based on the number of candidates of the inter prediction information acquired by the first decoding unit; ,
The inter prediction information candidate indicated by the decoded index is selected from the inter prediction information candidates whose number of candidates is limited, and the inter prediction of the prediction block to be decoded is selected based on the selected inter prediction information candidates. A moving image decoding apparatus comprising: a motion-compensated prediction unit that performs: - 各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列を復号する動画像復号方法であって、
復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号ステップと、
前記第1の復号ステップで取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを復号する第2の復号ステップと、
前記予測情報導出ステップにより導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択ステップとを備えることを特徴とする動画像復号方法。 A moving picture decoding method for decoding a coded bit string in which a moving picture is coded using inter prediction in units of blocks obtained by dividing each picture,
Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the prediction block to be decoded, and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A prediction information deriving step for deriving inter prediction information candidates from
A first decoding step of decoding a syntax element indicating the number of inter prediction information candidates and obtaining the number of inter prediction information candidates;
A second decoding step of decoding an index indicating a candidate of inter prediction information used for inter prediction of the prediction block to be decoded, based on the number of candidates of the inter prediction information acquired in the first decoding step;
A moving picture decoding method comprising: a selection step of selecting a candidate of inter prediction information indicated by the index from candidates of the inter prediction information derived by the prediction information deriving step. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項17に記載の動画像復号方法。 18. The moving picture decoding method according to claim 17, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列を復号する動画像復号プログラムであって、
復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号ステップと、
前記第1の復号ステップで取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを復号する第2の復号ステップと、
前記予測情報導出ステップにより導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択ステップとをコンピュータに実行させることを特徴とする動画像復号プログラム。 A moving picture decoding program for decoding a coded bit string in which a moving picture is coded using inter prediction in units of blocks obtained by dividing each picture,
Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the prediction block to be decoded, and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A prediction information deriving step for deriving inter prediction information candidates from
A first decoding step of decoding a syntax element indicating the number of inter prediction information candidates and obtaining the number of inter prediction information candidates;
A second decoding step of decoding an index indicating a candidate of inter prediction information used for inter prediction of the prediction block to be decoded, based on the number of candidates of the inter prediction information acquired in the first decoding step;
A moving picture decoding program that causes a computer to execute a selection step of selecting a candidate of inter prediction information indicated by the index from candidates of the inter prediction information derived by the prediction information deriving step. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項19に記載の動画像復号プログラム。 20. The moving picture decoding program according to claim 19, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 動画像が符号化された符号化ビット列を受信して復号する受信装置であって、
各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列がパケット化された符号化データを受信する受信部と、
受信された前記符号化データをパケット処理して元の符号化ビット列を復元する復元部と、
復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出部と、
復元された符号化ビット列から、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号部と、
前記第1の復号部で取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを、復元された符号化ビット列から復号する第2の復号部と、
前記予測情報導出部により導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択部とを備えることを特徴とする受信装置。 A receiving device that receives and decodes an encoded bit sequence in which a moving image is encoded,
A receiving unit that receives encoded data in which a coded bit sequence in which a moving image is coded using inter prediction in units of blocks obtained by dividing each picture is packetized;
A restoring unit that packet-processes the received encoded data and restores the original encoded bit string;
Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the prediction block to be decoded, and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A prediction information deriving unit for deriving inter prediction information candidates,
A first decoding unit that decodes a syntax element indicating the number of inter prediction information candidates from the restored encoded bit string and obtains the number of inter prediction information candidates;
Based on the number of candidates for the inter prediction information acquired by the first decoding unit, an index indicating a candidate for inter prediction information used for inter prediction of the prediction block to be decoded is decoded from the restored encoded bit string. A second decoding unit;
A receiving apparatus comprising: a selection unit that selects an inter prediction information candidate indicated by the index from the inter prediction information candidates derived by the prediction information deriving unit. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項21に記載の受信装置。 The receiving apparatus according to claim 21, wherein the maximum value indicated by the index is a value of the number of candidates for the inter prediction information minus one.
- 動画像が符号化された符号化ビット列を受信して復号する受信方法であって、
各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列がパケット化された符号化データを受信する受信ステップと、
受信された前記符号化データをパケット処理して元の符号化ビット列を復元する復元ステップと、
復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
復元された符号化ビット列から、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号ステップと、
前記第1の復号ステップで取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを、復元された符号化ビット列から復号する第2の復号ステップと、
前記予測情報導出ステップにより導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択ステップとを備えることを特徴とする受信方法。 A receiving method for receiving and decoding an encoded bit string in which a moving image is encoded,
A reception step of receiving encoded data in which a coded bit sequence in which a moving image is encoded using inter prediction in units of blocks obtained by dividing each picture is packetized;
A restoration step of packetizing the received encoded data to restore the original encoded bit sequence;
Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the prediction block to be decoded, and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A prediction information deriving step for deriving inter prediction information candidates from
A first decoding step of decoding a syntax element indicating the number of inter prediction information candidates from the restored encoded bit string, and obtaining the number of inter prediction information candidates;
Based on the number of candidates for the inter prediction information acquired in the first decoding step, an index indicating a candidate for inter prediction information used for inter prediction of the prediction block to be decoded is decoded from the restored encoded bit string. A second decoding step;
And a selection step of selecting an inter prediction information candidate indicated by the index from the inter prediction information candidates derived by the prediction information deriving step. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項23に記載の受信方法。 The reception method according to claim 23, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
- 動画像が符号化された符号化ビット列を受信して復号する受信プログラムであって、
各ピクチャを分割したブロック単位でインター予測を用いて動画像が符号化された符号化ビット列がパケット化された符号化データを受信する受信ステップと、
受信された前記符号化データをパケット処理して元の符号化ビット列を復元する復元ステップと、
復号対象の予測ブロックと同一ピクチャ内の前記復号対象の予測ブロックに近接する復号済みの予測ブロックのインター予測情報と、前記復号対象の予測ブロックと異なる復号済みのピクチャ内の予測ブロックのインター予測情報とから、インター予測情報の候補を導出する予測情報導出ステップと、
復元された符号化ビット列から、インター予測情報の候補数を示すシンタックス要素を復号し、前記インター予測情報の候補数を取得する第1の復号ステップと、
前記第1の復号ステップで取得した前記インター予測情報の候補数に基づいて、前記復号対象の予測ブロックのインター予測に用いるインター予測情報の候補を示すインデックスを、復元された符号化ビット列から復号する第2の復号ステップと、
前記予測情報導出ステップにより導出された前記インター予測情報の候補から、前記インデックスが示すインター予測情報の候補を選択する選択ステップとをコンピュータに実行させることを特徴とする受信プログラム。 A receiving program that receives and decodes a coded bit string in which a moving image is coded,
A reception step of receiving encoded data in which a coded bit sequence in which a moving image is encoded using inter prediction in units of blocks obtained by dividing each picture is packetized;
A restoration step of packetizing the received encoded data to restore the original encoded bit sequence;
Inter prediction information of a decoded prediction block close to the prediction block to be decoded in the same picture as the prediction block to be decoded, and inter prediction information of a prediction block in a decoded picture different from the prediction block to be decoded A prediction information deriving step for deriving inter prediction information candidates from
A first decoding step of decoding a syntax element indicating the number of inter prediction information candidates from the restored encoded bit string, and obtaining the number of inter prediction information candidates;
Based on the number of candidates for the inter prediction information acquired in the first decoding step, an index indicating a candidate for inter prediction information used for inter prediction of the prediction block to be decoded is decoded from the restored encoded bit string. A second decoding step;
A receiving program that causes a computer to execute a selection step of selecting an inter prediction information candidate indicated by the index from the inter prediction information candidates derived in the prediction information deriving step. - 前記インデックスの示す最大値は、前記インター予測情報の候補数-1の値であることを特徴とする請求項25に記載の受信プログラム。 The reception program according to claim 25, wherein the maximum value indicated by the index is a value of the number of candidates of the inter prediction information minus one.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/266,432 US9686566B2 (en) | 2011-10-31 | 2014-04-30 | Moving picture decoding device, moving picture decoding method, moving picture decoding program, and receiving device |
US15/472,533 US9906796B2 (en) | 2011-10-31 | 2017-03-29 | Moving picture coding device, moving picture coding method, moving picture coding program, transmitting device, transmitting method and transmitting program, and moving picture decoding device, moving picture decoding method, moving picture decoding program, receiving device, receiving method and receiving program |
US15/869,274 US10165284B2 (en) | 2011-10-31 | 2018-01-12 | Moving picture decoding device, moving picture decoding method and moving picture decoding program |
US16/101,706 US10171814B2 (en) | 2011-10-31 | 2018-08-13 | Moving picture decoding device, moving picture decoding method and moving picture decoding program |
US16/101,687 US10250886B2 (en) | 2011-10-31 | 2018-08-13 | Moving picture coding device, moving picture coding method and moving picture coding program |
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011239396 | 2011-10-31 | ||
JP2011-239397 | 2011-10-31 | ||
JP2011239397 | 2011-10-31 | ||
JP2011-239396 | 2011-10-31 | ||
JP2012239267A JP5942782B2 (en) | 2011-10-31 | 2012-10-30 | Moving picture decoding apparatus, moving picture decoding method, moving picture decoding program, receiving apparatus, receiving method, and receiving program |
JP2012-239266 | 2012-10-30 | ||
JP2012-239267 | 2012-10-30 | ||
JP2012239266A JP2013118624A (en) | 2011-10-31 | 2012-10-30 | Moving image encoding apparatus, moving image encoding method, moving image encoding program, transmitting apparatus, transmitting method and transmitting program |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/266,432 Continuation US9686566B2 (en) | 2011-10-31 | 2014-04-30 | Moving picture decoding device, moving picture decoding method, moving picture decoding program, and receiving device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013065301A1 true WO2013065301A1 (en) | 2013-05-10 |
Family
ID=48191675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/006981 WO2013065301A1 (en) | 2011-10-31 | 2012-10-31 | Video coding device, video coding method, video coding program, transmission device, transmission method, and transmission program, as well as video decoding device, video decoding method, video decoding program, reception device, reception method, and reception program |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2013065301A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014027529A1 (en) * | 2012-08-16 | 2014-02-20 | Jx日鉱日石金属株式会社 | Rolled copper foil for graphene production and graphene production method |
CN113055690A (en) * | 2018-12-28 | 2021-06-29 | Jvc建伍株式会社 | Image encoding device and method, image decoding device and method, and storage medium |
US11812029B2 (en) | 2018-12-28 | 2023-11-07 | Godo Kaisha Ip Bridge 1 | Picture coding device, picture coding method, and picture coding program, picture decoding device, picture decoding method and picture decoding program |
-
2012
- 2012-10-31 WO PCT/JP2012/006981 patent/WO2013065301A1/en active Application Filing
Non-Patent Citations (4)
Title |
---|
HIROYA NAKAMURA ET AL.: "Non-CE13: The maximum number of merging candidates in P-slice", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, JCTVC-G221, 7TH MEETING, November 2011 (2011-11-01), GENEVA, CH, pages 1 - 4 * |
JIANLE CHEN ET AL.: "MVP index parsing with fixed number of candidates", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, JCTVC-F402RL, 6TH MEETING, July 2011 (2011-07-01), TORINO, IT, pages 1 - 9 * |
MINHUA ZHOU ET AL.: "A study on HM3.0 parsing throughput issue", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, JCTVC-F068, 6TH MEETING, July 2011 (2011-07-01), TORINO, IT, pages 1 - 17 * |
TOSHIYASU SUGIO ET AL.: "Parsing Robustness for Merge/AMVP", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, JCTVC-F470_R4, 6TH MEETING, July 2011 (2011-07-01), TORINO, IT, pages 1 - 15 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014027529A1 (en) * | 2012-08-16 | 2014-02-20 | Jx日鉱日石金属株式会社 | Rolled copper foil for graphene production and graphene production method |
CN113055690A (en) * | 2018-12-28 | 2021-06-29 | Jvc建伍株式会社 | Image encoding device and method, image decoding device and method, and storage medium |
US11812029B2 (en) | 2018-12-28 | 2023-11-07 | Godo Kaisha Ip Bridge 1 | Picture coding device, picture coding method, and picture coding program, picture decoding device, picture decoding method and picture decoding program |
CN113055690B (en) * | 2018-12-28 | 2023-11-14 | 知识产权之桥一号有限责任公司 | Image encoding device and method, image decoding device and method, and storage medium |
US12088818B2 (en) | 2018-12-28 | 2024-09-10 | Godo Kaisha Ip Bridge 1 | Picture coding device, picture coding method, and picture coding program, picture decoding device, picture decoding method and picture decoding program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2013153823A1 (en) | Video encoding device, video encoding method, video encoding program, transmission device, transmission method, and transmission program, and video decoding device, video decoding method, video decoding program, receiving device, receiving method, and receiving program | |
JP6418300B2 (en) | Moving picture decoding apparatus, moving picture decoding method, moving picture decoding program, receiving apparatus, receiving method, and receiving program | |
WO2013088738A1 (en) | Dynamic image encoding device, dynamic image encoding method, dynamic image encoding program, dynamic image decoding device, dynamic image decoding method, and dynamic image decoding program | |
TWI597973B (en) | Video encoding device, video encoding method and recording medium | |
JP2014220846A (en) | Video decoder, video decoding method, video decoding program, receiver, reception method and reception program | |
JP6229806B2 (en) | Moving picture decoding apparatus, moving picture decoding method, moving picture decoding program, receiving apparatus, receiving method, and receiving program | |
JP6644270B2 (en) | Moving picture coding apparatus, moving picture coding method, moving picture coding program, transmitting apparatus, transmitting method and transmitting program | |
JP2013090032A (en) | Video image coding device, video image coding method, and video image coding program | |
WO2013065301A1 (en) | Video coding device, video coding method, video coding program, transmission device, transmission method, and transmission program, as well as video decoding device, video decoding method, video decoding program, reception device, reception method, and reception program | |
JP2013102260A (en) | Moving image decoder, moving image decoding method and moving image decoding program | |
JP2013098733A (en) | Moving image decoder, moving image decoding method and moving image decoding program | |
JP2013090033A (en) | Video image decoding device, video image decoding method, and video image decoding program | |
JP2013102259A (en) | Moving image encoder, moving image encoding method and moving image encoding program | |
JP2013118624A (en) | Moving image encoding apparatus, moving image encoding method, moving image encoding program, transmitting apparatus, transmitting method and transmitting program | |
JP2013098732A (en) | Moving image encoder, moving image encoding method and moving image encoding program |
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: 12845373 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 12845373 Country of ref document: EP Kind code of ref document: A1 |