WO2011034148A1 - Encoder apparatus, decoder apparatus, moving image encoder apparatus, moving image decoder apparatus, and encoding data - Google Patents

Encoder apparatus, decoder apparatus, moving image encoder apparatus, moving image decoder apparatus, and encoding data Download PDF

Info

Publication number
WO2011034148A1
WO2011034148A1 PCT/JP2010/066087 JP2010066087W WO2011034148A1 WO 2011034148 A1 WO2011034148 A1 WO 2011034148A1 JP 2010066087 W JP2010066087 W JP 2010066087W WO 2011034148 A1 WO2011034148 A1 WO 2011034148A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
unit
candidate
prediction
pmv
Prior art date
Application number
PCT/JP2010/066087
Other languages
French (fr)
Japanese (ja)
Inventor
知宏 猪飼
堅田 裕之
山本 智幸
Original Assignee
シャープ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by シャープ株式会社 filed Critical シャープ株式会社
Priority to JP2011531972A priority Critical patent/JPWO2011034148A1/en
Publication of WO2011034148A1 publication Critical patent/WO2011034148A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search

Definitions

  • the present invention mainly relates to a moving picture coding apparatus and a moving picture decoding apparatus that efficiently encode motion vectors.
  • image data is generally divided into a plurality of blocks, and coding is performed in units of divided blocks.
  • coding is performed in units of divided blocks.
  • block unit coding generation of a prediction signal of an input signal, calculation of a residual signal which is a difference between the input signal and the prediction signal, conversion of the calculated residual signal, quantization of conversion coefficients obtained by the conversion, Coding processing such as variable length coding of the quantized transform coefficients is performed.
  • Methods of generating a prediction signal include intra prediction using a reproduced image around a target block and inter prediction using a reproduced image of a frame already encoded / decoded.
  • Intra prediction includes a plurality of intra prediction modes such as DC prediction, horizontal prediction, vertical prediction, and information indicating which intra prediction mode to use is encoded.
  • a frame ID for specifying a reference frame to be used for prediction and a motion vector (MV) are encoded.
  • FIG. 16 is a diagram showing the configuration of the MV encoded data of Non-Patent Document 1. As shown in FIG. As shown in FIG. 16, MV is divided into PMV index indicating PMV, absolute value of difference between PMV and MV (MVD absolute value), and MVD code indicating whether the difference is positive or negative. Ru.
  • the MVD absolute value and the MVD code are encoded in the order of the X component and the Y component, and the MVD code is not encoded when the MVD absolute value of each component is zero.
  • the MVD absolute value is binarized and efficiently encoded by an arithmetic code using an adaptive probability.
  • the MVD code is also binarized and encoded by the arithmetic code, in Non-Patent Document 1, the occurrence probability of 0 and 1 of the binarized code is always 0.5, and as a result of encoding, The code amount is equal to that in the fixed length coding.
  • Non-Patent Document 2 discloses a method of encoding MV as it is without separately encoding into an MVD absolute value and an MVD code.
  • the existence probability of MV is estimated with a model using the sum of distribution functions using generalized Gaussian functions by calculating the distance between PMV and MV for each of a plurality of PMVs and using those distances.
  • Encode using a multilevel arithmetic code using the probability calculated from the estimated model.
  • Non-Patent Document 1 discloses a technique called MotionVectorCompetition (MVCOMP).
  • MVCOMP MotionVectorCompetition
  • PMV candidates motion vector predictor candidates
  • PMV index index
  • the difference between PMV and MV is encoded.
  • PMVCOMP by selecting a suitable PMV from a plurality of PMV candidates, the difference between MV and PMV can be made smaller than in the case where one PMV is used, so the code amount of the difference can be reduced.
  • Non-Patent Document 1 which calculates a plurality of motion vector predictor candidates (PMV candidates), selects one motion vector predictor (PMV) from the PMV candidates, and encodes the difference between the motion vector (MV) and the PMV.
  • PMV candidates motion vector predictor candidates
  • MV motion vector predictor
  • the efficiency is lowered because the relationship between the selected PMV and the PMV candidate does not use the property that the possible region of the coding target MV is limited.
  • the MVD absolute value which is the absolute value of the difference between PMV and MV, is efficiently coded by arithmetic coding using adaptive probability. EFFICIENT CODING did not occur because the fixed probability is used for the coding of parts other than the MVD absolute value.
  • Non-Patent Document 2 since MVD absolute values are not used, coding can be performed according to the existence probability of MV, but parameters for determining the characteristics of the distribution function in advance (for example, generalization Since it is necessary to calculate the standard deviation and shape parameter of the Gaussian function, it has been difficult to apply the MV coding of Non-Patent Document 2 to any image. In addition, since it is necessary to repeatedly calculate the value of the cumulative distribution function, there is a problem that the amount of computation is large even using the table reference described in Non-Patent Document 2. In addition, although the magnitude of the MVD absolute value tends to be spatially correlated, it is difficult to utilize such a tendency because the MVD absolute value is not separated.
  • the encoding apparatus of the present invention generates prediction data from already encoded data when encoding predetermined data, and encodes a difference absolute value between the predetermined data and the prediction data.
  • the data candidate calculation unit for calculating data candidates from the difference absolute value and the prediction data, and the data candidate calculation unit is two or more, each data candidate And a data candidate identification flag encoding unit configured to set different flags to and encode the flag set for each data candidate.
  • the encoding apparatus generates, when encoding predetermined data, a plurality of prediction data candidates from already encoded data, and selects prediction data to be used for encoding from the prediction data candidates.
  • the data candidate identification flag encoding unit may encode a flag that identifies the data candidate if the number is two or more.
  • the encoding apparatus generates, when encoding predetermined data, a plurality of prediction data candidates from already encoded data, and selects prediction data to be used for encoding from the prediction data candidates.
  • a determination unit, and a difference absolute value encoding unit encoding the difference absolute value by arithmetically encoding the symbol sequence while setting the difference absolute value between the predetermined data and the prediction data as a symbol sequence;
  • the difference absolute value encoding unit changes the appearance probability of each symbol used to arithmetically encode the symbol string according to the prediction data selected by the prediction data determination unit.
  • the decoding device of the present invention generates a prediction data from the already encoded data, and a difference absolute value decoding unit that decodes the encoded difference absolute value when decoding predetermined data;
  • the data candidate calculation unit that calculates data candidates from the value and the prediction data, and the number of data candidates generated by the data candidate calculation unit are different for each data candidate for each data candidate when the number of data candidates is two or more
  • a data candidate identification flag decoding unit that decodes a flag for which a value is set.
  • the decoding device When decoding predetermined data, the decoding device according to the present invention decodes the encoded difference absolute value, generates a plurality of prediction data candidates from already encoded data, and generates a code from among the prediction data candidates
  • a prediction data determination unit that selects prediction data to be used for quantization
  • a data candidate determination unit that determines the validity of data candidates calculated from the difference absolute value and the prediction data from the prediction data and the prediction data candidates
  • the data candidate identification flag decoding unit is configured to decode a flag that identifies the data candidate when the number of data candidates validated by the data candidate determination unit is two or more.
  • the decoding device generates a plurality of prediction data candidates from already encoded data when decoding predetermined data, and selects a prediction data determination unit that selects prediction data to be used for decoding from the prediction data candidates.
  • a difference absolute value decoding unit that decodes the difference absolute value by arithmetically decoding a symbol string that is the difference absolute value between the predetermined data and the prediction data, the difference absolute value decoding unit including: The appearance probability of each symbol used to decode the symbol string is changed according to the prediction data selected by the prediction data determination unit.
  • the restriction is used to encode or decode the motion vector.
  • the code amount of the motion vector in the encoded data can be reduced. By reducing the code amount of the motion vector, coding efficiency in moving picture coding is improved.
  • FIG. 1 is a block diagram of a moving picture coding apparatus 100 according to a first embodiment of the present invention. It is a block diagram of the moving image decoding apparatus 200 of the 2nd Embodiment of this invention. It is a block diagram of motion vector encoding part 111 of a 1st embodiment of the present invention. It is a block diagram of the motion vector decoding part 211 of the 2nd Embodiment of this invention. It is a block diagram of the MV flag determination part 1115 by the 1st Embodiment of this invention.
  • FIG. 10 is a block diagram of an MV selection unit 2115 according to a second embodiment of the present invention.
  • FIG. 1 It is a figure explaining the relationship between the possible area
  • FIG. 20 is a block diagram of an MV selection unit 2115 'according to a fourth embodiment of the present invention. It is another figure which shows the structure of the coding data of MV of this invention. It is a schematic diagram which shows the 3rd Embodiment of this invention, and shows how to determine the value of the binary data allocated to each MV index.
  • FIG. 21 is a block diagram of an MVD absolute value coding unit 1152 ′ according to a fifth embodiment of the present invention.
  • FIG. 1 is a block diagram showing the configuration of a moving picture coding apparatus 100 according to the first embodiment of the present invention.
  • the moving picture coding apparatus 100 includes a motion vector coding unit 111, a conversion unit 112, a quantization unit 113, a variable length coding unit 115, an inverse quantization unit 116, an inverse conversion unit 117, a frame memory 118, and an intra prediction unit 121.
  • the inter prediction unit 123, the motion estimation unit 124, the prediction mode determination unit 125, the subtraction unit 101, and the addition unit 102 are included.
  • reference numeral 103 in the figure is a local decoded signal extracted from the frame memory 118.
  • input image data is divided into a plurality of blocks, and coding is performed in units of divided blocks.
  • the subtraction unit 101 uses the prediction signal obtained as the output of the prediction mode determination unit 125, the subtraction unit 101 calculates a residual signal that is the difference between the input signal and the prediction signal.
  • the residual signal is converted into a transform coefficient by DCT or the like in the transform unit 112, and the transform coefficient is further quantized in the quantization unit 113.
  • the quantized transform coefficients are input to the variable-length coding unit 115 and encoded.
  • the quantization transformation coefficient is inversely quantized by the inverse quantization unit 116, and inverse transformation is performed by the inverse transformation unit 117 to obtain a decoded residual signal.
  • the decoded residual signal is added to the prediction signal by the adder 102 and stored in the frame memory 118 as a local decoded signal.
  • the intra prediction unit 121 generates an intra prediction signal which is a prediction signal of the input signal, and calculates a coding cost for evaluating the goodness of prediction from the intra prediction signal and the input signal.
  • the intra prediction signal and the coding cost are input to the prediction mode determination unit 125.
  • the sum of absolute differences between the input signal and the prediction signal may be used, or the sum of squared differences may be used. Furthermore, the code amount of the prediction parameter may be taken into consideration.
  • the inter prediction unit 123 receives a frame ID for specifying the reference frame, which is input from the motion estimation unit 124, and a motion vector (MV) indicating the extraction position on the reference frame as a relative position from the encoding target block. Generate an inter prediction signal. The generated inter prediction signal is input to the motion estimation unit 124 and the prediction mode determination unit 125.
  • MV motion vector
  • the motion estimation unit 124 performs coding for evaluating the goodness of prediction using the inter prediction signal generated by the inter prediction unit 123 for a predetermined frame ID and a prediction parameter within the predetermined MV range. Calculate the cost.
  • the motion estimation unit 124 inputs, to the prediction mode determination unit 125, among the above-mentioned prediction parameters, the prediction parameter that minimizes the calculated coding cost and the cost at that time (inter prediction cost).
  • the prediction mode determination unit 125 compares the intra prediction cost and the inter prediction cost, and selects the prediction mode with the smaller cost.
  • the selected prediction mode and prediction parameters are input to the variable-length coding unit 115. Further, the prediction signal corresponding to the selected prediction mode is input to the subtraction unit 101 and the addition unit 102.
  • variable-length coding unit 115 not only encodes the quantization conversion coefficient, but also encodes the prediction mode and the prediction parameter output from the prediction mode determination unit 125.
  • the prediction mode is inter prediction
  • the frame ID of the prediction parameters is encoded by the variable-length coding unit 115.
  • the motion vector coding unit 111 performs processing necessary for coding the MV, and the variable-length coding unit 115 codes it as coded data.
  • the motion vector encoding unit 111 includes an MV storage unit 1111, a PMV candidate calculation unit 1112, a PMV determination unit 1113, an MVD calculation unit 1114, and an MV flag determination unit 1115.
  • Reference numeral 301 in the figure indicates PMV candidates and the number of PMV candidates, and 302 indicates PMV.
  • the MV storage unit 1111 stores the MV input to the motion vector encoding unit 111.
  • the PMV candidate calculation unit 1112 refers to the MV stored in the MV storage unit 1111 to calculate a motion vector predictor candidate (PMV candidate).
  • the calculated PMV candidate and the number of PMV candidates are input to the PMV determination unit 1113 and the MV flag determination unit 1115.
  • the number of PMV candidates is also input to a PMV index coding unit 1151 provided inside the variable length coding unit 115.
  • the PMV determination unit 1113 receives the MV, the PMV candidate, and the PMV candidate number, and among PMV candidates, the PMV candidate that minimizes the cost function PMVCOST (MV, PMV) calculated from the MV and the PMV candidate is regarded as a PMV. select.
  • a flag (PMV index) for specifying the selected PMV is input to the PMV index encoding unit 1151, and the PMV index encoding unit 1151 encodes the PMV index based on the number of PMV candidates (described later) .
  • the selected PMV is input to the MVD calculation unit 1114 and the MV flag determination unit 1115.
  • the MVD calculation unit 1114 calculates the absolute value (MVD absolute value) of the difference (MVD) between the input MV and PMV, and the MVD absolute value coding unit 1152 and the MV flag determination unit in the variable length coding unit 115 Enter 1115.
  • the MVD absolute value encoding unit 1152 encodes the MVD absolute value.
  • the MV flag determination unit 1115 calculates the MV candidate and the MV candidate number from the input MV, PMV, PMV candidate, and PMV candidate number, and further, a flag (MV for specifying the MV from among the calculated MV candidates. Determine the index).
  • the number of MV candidates and the MV index are input to the MV index coding unit 1153 in the variable-length coding unit 115.
  • the MV index encoding unit 1153 encodes the MV index based on the number of MV candidates.
  • the PMV index and the MV index are each coded according to the number of candidates.
  • the index is not encoded.
  • the number of candidates is 2, "0” or “1” is encoded in binary.
  • the number of candidates is 3, one of “0”, “10” and “11” is encoded.
  • the number of candidates is 4, any one of “00”, “01”, “10” and “11” is encoded. If there is a bias in the ratio of selection of each candidate, one of “0”, “10”, “110” and “111” may be encoded when the number of candidates is four.
  • binary encoding may use a fixed-length code in which the above-mentioned value is used as encoded data as it is, it is more preferable to use an arithmetic code which adaptively changes the occurrence probability of 0 and 1.
  • FIG. 10 is a diagram for explaining a method of calculating PMV candidates.
  • the MVs of the blocks adjacent to the left, upper and upper right of the block to be encoded are represented as mv_a, mv_b and mv_c, respectively.
  • the MV of the block spatially at the same position on the encoding target block and the reference image is expressed as mv_col.
  • the median value of the MVs of spatially adjacent blocks is expressed as mv_med. Specifically, calculation is performed by taking median values for each of the X component and the Y component of mv_a, mv_b, and mv_c.
  • the PMV candidates of the present invention are not limited to the above two, and the number of PMV candidates and PMV candidates are as PMV candidates. Other values can also be used.
  • the PMV candidate calculation unit 1112 may set three of mv_med, mv_a, and mv_col as PMV candidates.
  • the function PMVCOST (MV, PMV) is a function that inputs MV and PMV and calculates a cost corresponding to the distance between MV and PMV.
  • PMVCOST calculates this distance.
  • R (X) is a function which receives the difference absolute value of MV as X and calculates the code amount or the amount corresponding to the code amount.
  • FIG. 11 is a diagram for explaining the possible existence area of the MV when the number of PMV candidates is two.
  • the PMV candidate calculation unit 1112 calculates PMV1 and PMV2 as PMV candidates, and the PMV determination unit 1113 shows a state where PMV1 is selected as the PMV.
  • the city value distance is used for PMVCOST.
  • FIG. 13 is a diagram showing a case where PMVCOST is not a city value distance. As shown in the figure, when PMVCOST is not a city-value distance, a line dividing the possible region of MV and the other region may be a curve. Although not shown, the line is not limited to a smooth curve but may be a broken line.
  • FIG. 5 is a block diagram showing a configuration of the MV flag determination unit 1115.
  • the MV flag determination unit 1115 includes an MV candidate calculation unit 5001, an MV candidate determination unit 5002, and an MV index determination unit 5003.
  • information on PMV the difference absolute value (MVD absolute value) between PMV and MV is known.
  • FIG. 14 is a diagram showing the relationship between the MV candidate and the MV's possible existence area when the number of PMV candidates is 2 (PMV1 and PMV2).
  • the MV candidate In the information of only the PMV and the MVD absolute value, the MV candidate usually includes four MV candidates of MV1 to MV4 (when both the X component and the Y component of the MVD absolute value are other than 0). Therefore, in order to specify an MV from PMV and MVD absolute values, an MV index for specifying one of four MV candidates is required. At this time, the code amount required to specify an MV from the four MV candidates is 2 bits.
  • the PMV to be encoded is PMV1
  • the possible region of MV is limited as in FIG. 11
  • MV4 deviates from the possible region of MV in FIG.
  • the number of effective MV candidates is three. In this case, the amount of code required for coding the MV index can be reduced to 2 bits or less.
  • the former is regarded as a temporary MV candidate, and the latter is regarded as an MV candidate. I will call it.
  • FIG. 7 is a flowchart showing an operation flow of the MV candidate calculation unit 5001.
  • the MVD absolute value and the X component and the Y component of PMV are expressed as (mvd_x, mvd_y) and (pmv_x, pmv_y), respectively.
  • the temporary MV candidate number n is set to 1, and the temporary MV candidate tMV1 is calculated by the following.
  • the temporary MV candidate number n is set to 2, and temporary MV candidates tMV1 and tMV2 are calculated by the following.
  • tMV1 (pmv_x, pmv_y + mvd_x)
  • the temporary MV candidate number n is set to 2, and temporary MV candidates tMV1 and tMV2 are calculated by the following.
  • tMV1 (pmv_x + mvd_x, pmv_y)
  • tMV2 (pmv_x ⁇ mvd_x, pmv_y) S707
  • the temporary MV candidate number n is 4, and temporary MV candidates tMV1, tMV2, tMV3, and tMV4 are calculated by the following.
  • MV candidate determination unit 5002 receives the PMV, the provisional MV candidate, the number of provisional MV candidates, and the MVD absolute value, and determines whether or not the provisional MV candidate is in the possible existence area of the MV. By this determination, the MV candidate and the number of MV candidates obtained by excluding the temporary MV candidate outside the possible region of the MV are output to the MV index determination unit 5003.
  • FIG. 8 is a flowchart showing an operation flow of the MV candidate determination unit 5002.
  • the distance min_dist between PMV and MV is calculated using the cost function PMVCOST used in the PMV determination unit 1113.
  • the function PMVCOST can be calculated from the MVD absolute value which is the difference absolute value between PMV and MV.
  • the distance between the provisional MV candidate and the PMV candidate is always min_dist or more when the provisional MV candidate is in the MV possible region. Conversely, if the distance between the temporary MV candidate and the PMV candidate is less than min_dist, the temporary PMV candidate can be excluded as not being an MV candidate.
  • step S802 a variable nn indicating an MV candidate index is initialized to one.
  • L801 A loop between L802 and S806 is performed n times until i becomes equal to the number of temporary MV candidates n, with the variable i indicating the temporary MV candidate index as a loop variable.
  • a variable j indicating a PMV candidate index is set as a loop variable, and a loop from S803 to S804 is repeated m times until j becomes equal to the number of PMV candidates m.
  • step S803 the distance dist_ij between the temporary MV candidate tMVi indicated by the temporary MV candidate index i and the PMV candidate PMVj indicated by the PMV candidate index j is calculated using the cost function PMVCOST used by the PMV determination unit 1113.
  • dist_ij is less than min_dist, the loop of variable j indicating the PMV index (loop of L802) is exited. If not, the loop of L802 is continued. In addition, that dist_ij is less than min_dist means that the tentative MV candidate tMVi is out of the possible range of the MV.
  • the tentative MV candidate tMVi is determined to be in the possible region of MV, it is added to the MV candidate fMV. Specifically, tMVi is substituted for fMVnn.
  • step S806 the variable nn indicating the MV candidate index is incremented by one. According to the above operation flow, the number of candidate MVs nn and the candidate MVs of MV are obtained.
  • the MV index determination unit 5003 determines which one of the MV candidates is the MV candidate from the input MV (the MV of the coding target block), the MV candidate, and the number of MV candidates, and determines the MV index indicating it. Do.
  • FIG. 9 is a flowchart showing an operation flow of the MV index determination unit 5003.
  • S901 is looped from 1 to the number of MV candidates nn for a loop variable i indicating an index of the L901 MV candidate.
  • step S901 it is determined whether the MV candidate fMVi matches the MV. If they match, the processing proceeds to step S902. If they do not match, the loop continues until the loop termination condition.
  • the MV index ii is obtained by the above operation flow.
  • FIG. 15 is a diagram showing a configuration of encoded data of MV of the present invention.
  • MV is divided into a PMV index indicating PMV, an absolute value of a difference between PMV and MV (MVD absolute value), and an MV index and encoded.
  • the MVD absolute value is encoded in the order of the X component and the Y component. When the number of PMV candidates is one, the PMV index is not encoded, and when the number of MV candidates is one, the MV index is not encoded.
  • the motion image coding apparatus 100 described above calculates a plurality of PMV candidates as MV predicted values, and selects and codes a PMV suitable for MV coding.
  • the MV can be efficiently encoded by limiting the possible region of the MV using.
  • the difference absolute value (MVD absolute value) of MV and PMV excluding those outside the MV's possible existence area from temporary MV candidates determined from PMV and MVD absolute value
  • the MV candidate is limited by and the MV index that uniquely identifies the MV from the limited MV candidate is encoded.
  • FIG. 2 is a block diagram showing the configuration of a moving picture decoding apparatus 200 according to the second embodiment of the present invention.
  • the moving picture decoding apparatus 200 includes a motion vector decoding unit 211, a variable length coding / decoding unit 201, an inverse quantization unit 116, an inverse conversion unit 117, a frame memory 118, an intra prediction unit 121, an inter prediction unit 123, a prediction mode selection unit 225, an adder 102 is included.
  • symbol 203 in a figure means frame ID of prediction parameters.
  • the moving picture decoding apparatus 200 divides input image data into a plurality of blocks, and decoding is performed in units of divided blocks.
  • the variable-length coding / decoding unit 201 decodes prediction modes and quantized transform coefficients.
  • the prediction mode is a mode indicating whether the block is intra prediction or inter prediction.
  • the prediction mode is inter prediction, the prediction parameters frame ID and MV are decoded.
  • the frame ID is decoded by the variable length coding / decoding unit 201.
  • the MV is subjected to decoding processing by the variable-length coding / decoding unit 201 and the motion vector decoding unit 211.
  • the intra prediction unit 121 and the inter prediction unit 123 generate an intra prediction signal and an inter prediction signal from the decoded image (reproduced image) stored in the frame memory 118 using the decoded prediction parameter.
  • the generated prediction signal is input to the prediction mode selection unit 225.
  • the prediction mode selection unit 225 selects a prediction signal corresponding to the prediction mode and outputs the selected prediction signal to the addition unit 102.
  • the decoded quantization transformation coefficient is inverse-quantized by the inverse quantization unit 116, and the inverse transformation unit 117 performs transformation such as inverse DCT, and the decoded residual signal is output to the addition unit 102.
  • the adder 102 adds the prediction signal and the decoded residual signal to generate a local decoded signal.
  • the generated local decoded signal is output to the frame memory 118.
  • the reproduced image output to the frame memory 118 is used as a reference image by the intra prediction unit 121 and the inter prediction unit 123 and is output to the outside of the moving image decoding apparatus 200.
  • FIG. 4 is a block diagram showing the configuration of the motion vector decoding unit 211.
  • the motion vector decoding unit 211 includes an MV storage unit 1111, a PMV candidate calculation unit 1112, a PMV selection unit 2113, and an MV selection unit 2115.
  • the MV storage unit 1111 stores the MV decoded by the motion vector decoding unit 211.
  • the PMV candidate calculation unit 1112 calculates PMV candidates.
  • the calculated PMV candidate and the number of PMV candidates are input to the PMV selection unit 2113 and the MV selection unit 2115.
  • the PMV candidate number is input to the PMV index decoding unit 2011 in the variable-length coding / decoding unit 201.
  • the PMV index decoding unit 2011 decodes the PMV index using the number of PMV candidates, and inputs the PMV index to the PMV selection unit 2113.
  • the PMV selection unit 2113 selects a candidate indicated by the PMV index from the PMV candidates, and inputs it to the MV selection unit 2115 as a PMV.
  • variable-length coding / decoding unit 201 decodes the MVD absolute value by the internal MVD absolute value decoding unit 2012, and inputs the MVD to the MV selection unit 2115.
  • FIG. 6 is a block diagram showing the configuration of the MV selection unit 2115.
  • the MV extraction unit 6004 decodes the MV by selecting a candidate indicated by the MV index from the MV candidates.
  • the PMV candidate and the PMV are used in a motion vector decoding method in which a plurality of PMV candidates are calculated as predicted values of MV and PMVs suitable for MV coding are selected and used for decoding.
  • the encoded MV can be efficiently decoded by limiting the possible region of the MV.
  • the difference absolute value (MVD absolute value) between MV and PMV is decoded, those outside the possible region of MV are excluded from the provisional MV candidates determined from PMV and MVD absolute value
  • the MV candidate is limited, and the MV is decoded by decoding the MV index that specifies the MV from the limited MV candidate.
  • the MV can be decoded from the encoded data in which the code amount of the MV index necessary to specify the MV from the MV candidate is reduced.
  • FIG. 23 is a diagram showing the configuration of MV encoded data. As shown in FIG. 23, the encoded data of MV is composed of "MVD" part and "non-MVD" part.
  • the moving picture coding apparatus 100 ′ performs the arithmetic coding in consideration of the appearance probability of the MV candidate, and thereby the MV which is a flag for specifying the MV candidate as the existence candidate of the MV candidate is higher.
  • the tendency that the code length after encoding of the index becomes short is strengthened, and the code amount of the MV index is reduced compared to the case where the appearance probability is not considered.
  • the moving picture coding apparatus 100 ′ of the present embodiment further reduces the code amount of the “other than MVD” portion of FIG. 23 as compared to the moving picture coding apparatus 100 of the first embodiment.
  • the code amount of MV coding can be further reduced. Therefore, the moving picture coding apparatus 100 'according to the present embodiment performs an operation of rearranging the MV candidates in the order in which the presence probability of the MV is estimated to be high.
  • FIG. 17 is a block diagram showing the configuration of a moving picture coding apparatus 100 'according to the third embodiment of the present invention. Similar to the moving picture coding apparatus 100 according to the first embodiment, the moving picture coding apparatus 100 ′ includes a converting unit 112, a quantizing unit 113, a variable length coding unit 115, an inverse quantizing unit 116, and an inverse converting unit. A frame memory 118, an intra prediction unit 121, an inter prediction unit 123, a motion estimation unit 124, a prediction mode determination unit 125, a subtraction unit 101, and an addition unit 102 are provided, but the configuration of the motion vector encoding unit 111 'is This differs from the motion vector encoding unit 111 of the first embodiment.
  • the other members except the motion vector encoding unit 111 ′ perform the same operations as in the first embodiment, and thus the description of these members will be omitted, and the motion vector encoding unit 111 ′ will be described with reference to FIGS. I will refer to and explain.
  • the motion vector encoding unit 111 ′ includes an MV storage unit 1111, a PMV candidate calculation unit 1112, a PMV determination unit 1113, and an MVD calculation unit 1114 like the motion vector encoding unit 111.
  • the MV flag determination unit 1115 ' is different from the MV flag determination unit 1115 of the first embodiment.
  • an MV candidate sorting unit 5004 is provided between the MV candidate calculation unit 5001 and the MV candidate determination unit 5002.
  • the MV candidate sorting unit 5004 includes an MV candidate cost calculating unit 5004a and a sorting unit 5004b, as shown in (b) of FIG.
  • the MV candidate sorting unit 5004 may be provided after the MV candidate determination unit 5002.
  • the MV candidate sorting unit 5004 receives the number of temporary MV candidates and the number of temporary MV candidates from the MV candidate calculation unit 5001 as an input value.
  • the MV candidate cost calculation unit 5004a of the MV candidate sorting unit 5004 calculates, for each temporary MV candidate, the cost of the temporary MV candidate by using the coordinate value of the temporary MV candidate as an input and applying a function called MVCOST.
  • MVC OST is a function that gives a larger value (or a smaller value) as it is estimated that the appearance probability of the MV candidate is higher, and various functions can be applied.
  • the coordinate value of the MV candidate and the coordinate value of each PMV candidate (or PMV) are input, and the cost value increases as the distance between the provisional MV candidate and the PMV candidate increases.
  • the cost value increases as the distance between the provisional MV candidate and the PMV candidate increases.
  • the sorting unit 5004b rearranges the provisional MV candidates in ascending order of cost.
  • the sorting unit 5004b may rearrange the provisional MV candidates in descending order of cost.
  • the MV candidate determination unit 5002 determines an MV candidate from among the provisional MV candidates in the same manner as in the first embodiment, and outputs the number of the MV candidate and the MV candidate to the MV index determination unit 5003.
  • the MV index determination unit 5003 receives the number of the MV candidate and the MV candidate, and determines the value of the binary data of the MV index to be assigned to each MV candidate. Here, how to determine the value of the binary data to be assigned to each MV index will be described below with reference to FIG.
  • FIG. 24 is a schematic diagram showing the relationship between PMV candidates and MV candidates that are easily selected.
  • PMV0 indicates that the PMV is selected by the PMV determination unit 1113.
  • MV1 to MV4 indicate MV candidates output from the MV candidate determination unit 5002.
  • the MV index determination unit 5003 uses this tendency to determine the value of binary data of the MV index.
  • the MV index determination unit 5003 outputs the determined MV index to the MV index coding unit 1153. Then, the variable-length coding unit 115 performs arithmetic coding on each MV index based on the probabilities assigned to “0” and “1”.
  • the code length of the MV1 code word is shortened, and the code length of the MV4 code word is increased.
  • the average code length of the MV index code word is shorter than in the case of the first embodiment, and the code amount is reduced.
  • the MV index coding unit 1153 may adaptively change the probability assigned to “0” or “1” when performing arithmetic coding.
  • variable-length coding unit 115 may assign short codes in the order sorted by the MV candidate sort unit 5004 (in order of small cost) using fixed-length coding. For example, it is possible by allocating “0” “10” “110” “111”.
  • a method is used to bias the probability of “0” and “1” in the case of arithmetic coding. Can also be applied when the MV candidate determination unit 5002 is not used.
  • the MV candidate determination unit 5002 When the MV candidate determination unit 5002 is used, it is more efficient to perform encoding in accordance with the MV candidate having a high appearance probability. For example, when the number of MV candidates becomes 3 by the MV candidate determination unit 5002, a short code (or an arithmetic code) for an MV candidate having a high appearance probability, such as “0”, “10”, and “11” The code amount can be reduced by allocating a binary number sequence.
  • the code or binary sequence corresponding to the MV candidate has an unequal length.
  • the effectiveness of the process of allocating an MV index according to the appearance probability of the MV candidate is large. Taking this property into consideration, this process is applied only when it is most effective, that is, sorting of MV candidates is performed only when the number of MV candidates meets a specific condition (for example, when it is not an integral power of 2). It is also possible to do. Since this process requires the number of MV candidates determined to be valid, the MV candidate sorting unit 5004 is provided after the MV candidate determination unit 5002.
  • the sorting unit 5004 b becomes unnecessary, and the MV index determination unit 5003 performs the MV index determination by the conditional branch using the MV candidate cost as described above.
  • the process becomes easier.
  • the process of calculating the MV candidate with the MV candidate cost minimum (or maximum) and allocating a specific MV index can be realized only by the process of specifying the MV candidate of the minimum value and can be realized with an extremely simple configuration.
  • the present invention also includes such a simplified configuration that does not perform complete ordering of the MV candidates.
  • MV candidate Cost ⁇ (
  • ) i: 1 ⁇ N, PMV candidate pmv i is not selected
  • Function 1': MV candidate Cost ⁇ ((mv_x-pmv i _x) ⁇ 2 + (mv_y-pmv i _y) ⁇ 2) (i: 1 ⁇ N, pmv i is PMV candidates that were not selected, ⁇ squared Show)
  • Function 2: MV candidate cost
  • Function 3: MV candidate cost
  • Function 4: MV candidate Cost MIN (
  • the function used as the MVCOST function may be changed according to the frame type.
  • function 1 may be used as the MVC OST function in P frame
  • function 2 may be used as the MVC OST function in B frame.
  • the MV index coding unit 1153 may code information indicating the MVCOST function used by the MV candidate cost calculation unit 5004a and record the coded information in the header of the coded data.
  • the PMV used for MV candidate cost calculation (input to the MVC OST function) need not be limited to the PMV candidates calculated by the PMV candidate calculation unit 1112, that is, PMV candidates to be selected by the PMV index (so Not "PMV candidate used for candidate cost calculation” but simply "PMV used for MV candidate cost calculation".
  • PMVs used for MV candidate cost calculation may be mv_med, mv_col, and mv_a.
  • a PMV completely different from the PMV candidate to be selected by the PMV index for example, mv_a may be a PMV candidate that is used for MV candidate cost calculation.
  • function 2 is identical to using ⁇ 0, 0 ⁇ as PMV.
  • the PMV for calculating the MV candidate cost may be configured to use the PMV candidate of the PMV candidate calculating unit 1112 as it is as described above, or the PMV candidate calculating unit 1112 may be used for calculating the MV candidate cost separately from the PMV candidate. It may be configured to calculate PMV. Further, the motion vector encoding unit 111 ′ may be provided with means for calculating PMV different from the PMV candidate calculation unit 1112.
  • the configuration can also be realized by a configuration of a coding device that does not include the PMV candidate calculation unit 1112, the PMV determination unit 1113, the PMV index coding unit 1151, and the MV candidate determination unit 5002.
  • the PMV determination unit 1113 receives the MV, the PMV candidate, and the PMV candidate number, and among the PMV candidates, selects a candidate for minimizing the cost function PMVCOST (MV, PMV) calculated from the MV and PMV. Although the PMV is selected as the PMV, the PMV determination unit 1113 may dynamically change the function used as the PMVCOST function according to the load condition of the motion vector encoding unit 111.
  • PMVCOST
  • + Coding efficiency does not improve so much like
  • , but the amount of computation is small, but PMVCOST R (
  • PMVCOST R (
  • the PMV determination unit 1113 uses a function with high encoding efficiency when the load is light, and the operation amount when the load is a certain level or more.
  • the PMV may be selected using a small function of
  • the MV index encoding unit 1151 encodes information (flag) indicating the PMVCOST function used by the PMV determination unit 1113 and records the encoded information in the header of the encoded data.
  • the header to be recorded may be a sequence header, a picture header, a slice header, an MB header or the like.
  • sequence parameters and picture parameters first and coding and specifying the data by index for each sequence and picture without coding the header for each sequence or picture. Since such data is also treated as a header, a flag indicating a function may be encoded with these data.
  • the conversion unit 111 can freely select the PMV without considering the restriction of the PMV.
  • the PMVCOST When selecting the PMVCOST function, it is necessary to use the same function as the PMVCOST function used in the PMV determination unit 1113 also in the MV candidate determination unit 5002.
  • the provisional MV candidate becomes the MV candidate as it is, and therefore the coding apparatus is provided with the MV candidate determination unit 5002 for determining the MV candidate. No configuration is also possible.
  • FIG. 20 is a block diagram showing the configuration of a decoding apparatus 200 'according to the fourth embodiment of the present invention.
  • the decoding device 200 ′ includes the variable-length coding / decoding unit 201, the inverse quantization unit 116, the inverse conversion unit 117, the frame memory 118, the intra prediction unit 121, and the inter prediction unit
  • a prediction mode selection unit 225 and an addition unit 102 are provided, the motion vector decoding unit 211 'is different from the motion vector decoding unit 211 of the second embodiment.
  • the other members except for the motion vector decoding unit 211 ' perform the same operations as in the second embodiment, and thus the description of these members is omitted, and the motion vector decoding unit 211' is referred to FIG. 21 and FIG. I will explain it.
  • the motion vector decoding unit 211 ′ includes the MV storage unit 1111, the PMV candidate calculation unit 1112, and the PMV selection unit 2113 as in the motion vector decoding unit 211, but the MV selection unit 2115 ′ This differs from the MV selection unit 2115 of the second embodiment.
  • an MV candidate sorting unit 5004 is provided between the MV candidate calculation unit 5001 and the MV candidate determination unit 5002.
  • the MV candidate sorting unit 5004 receives the number of temporary MV candidates and the number of temporary MV candidates from the MV candidate calculation unit 5001 as an input value.
  • the MV candidate sorting unit 5004 performs the same sort as the MV candidate sorting unit 5004 of the MV flag determination unit 1115 '.
  • the MV candidate sorting unit 5004 records the information indicating the MVCOST function recorded in the header of the encoded data. Sorting is performed by decoding and referencing.
  • the PMV determination unit 1113 and the MV candidate determination unit 5002 dynamically change the PMVCOST function
  • the information indicating the PMVCOST function recorded in the header of the encoded data is decoded and the MV candidate determination unit 5002 Make a decision.
  • the MV candidate determination unit 5002 determines an MV candidate from among the temporary MV candidates by the same method as that of the second embodiment, and outputs the number of the MV candidate and the MV candidate to the MV extraction unit 6004.
  • the MV extraction unit 6004 receives the number of the MV candidate and the MV candidate, and decodes the MV by selecting a candidate indicated by the MV index from the MV candidate.
  • the decoding apparatus that calculates a single PMV and decodes the difference between MV and PMV is a decoding apparatus that does not include the PMV candidate calculation unit 1112, PMV selection unit 2113, PMV index decoding unit 2011, and MV candidate determination unit 5002. It can also be realized by the configuration.
  • Moving picture coding apparatus 100 ′ ′ (Moving picture coding apparatus 100 ′ ′) Finally, a moving picture coding apparatus 100 ′ ′ according to a fifth embodiment of the present invention will be described below with reference to FIGS. 25 to 27.
  • the moving picture coding apparatus 100 ′ ′ improves coding efficiency of the MVD absolute value by adaptively switching the probability (context) used for arithmetic coding of the MVD according to the PMV. .
  • This switching is based on the observation that the magnitude of the MVD absolute value tends to correspond to the type of PMV used for calculating the MVD. More specifically, when the PMV candidates are mv_med and mv_col, the MVD absolute value tends to be smaller when mv_col is PMV than when mv_med is PMV. In the following configuration, “0” is adaptively applied in the arithmetic code without explicitly incorporating which PMV tends to decrease the MVD absolute value other than the initial value described later. Because the learning probability is "1", the effect can be realized.
  • FIG. 25 is a block diagram showing the configuration of a moving picture coding apparatus 100 ′ ′ according to the fifth embodiment of the present invention.
  • the moving picture coding apparatus 100 ′ ′ is the same as the moving picture coding apparatus 100 according to the first embodiment.
  • the mode determining unit 125, the subtracting unit 101, and the adding unit 102 are provided, the configuration of the variable-length coding unit 115 'is different from that of the variable-length coding unit 115 according to the first embodiment.
  • variable-length coding unit 115 ′ performs the same operations as in the first embodiment, and thus the description of these members will be omitted, and the variable-length coding unit 115 ′ will be described with reference to FIGS. I will refer to and explain.
  • variable-length coding unit 115 includes a PMV index coding unit 1151, an MVD absolute value coding unit 1152', and an MV index coding unit 1153.
  • the PMV index coding unit 1151 and the MV index coding unit 1153 perform the same operations as in the first embodiment, so the MVD absolute value coding unit 1152 ′ will be described.
  • the MVD absolute value coding unit 1152 includes a context determination unit 1152a, a probability holding unit 1152b, a probability updating unit 1152c, a binarization unit 1152d, and an arithmetic coding unit 1152e.
  • the binarization unit 1152 d converts the MVD absolute value into a binary sequence of “0” and “1” and outputs the binary number sequence to the arithmetic coding unit 1152 e.
  • the binarization unit 1152 d converts the MVD absolute value “n” into a binary number sequence in which one “0” is added after the n consecutive “1s”. For example, when n is 0, the binary sequence is "0", and when n is 2, the binary sequence is "110".
  • the context determination unit 1152a outputs, to the probability storage unit 1152b, the context index determined using the value of the PMV index input from the PMV determination unit 1113.
  • the context index has a value indicating whether it is an X component or a Y component, a value indicating the size of the MVD of the adjacent block already encoded / decoded, and what number binary sequence is processed It is preferable to determine the combination of the value indicating the value of p and the value of the PMV index. That is, 2 components, 3 values indicating the size of the MVD in steps, 3 values indicating in the vicinity of what number in the binary sequence are processed, and the number of PMV candidates is 2
  • the context index to be output is determined from 24 context indexes of 2 ⁇ 3 ⁇ 3 ⁇ 2.
  • the probability holding unit 1152 b is configured to hold twenty four “1” and “0” probabilities. If the value of the PMV index is used, other conditions may be used to determine the context index.
  • the arithmetic coding unit 1152 e codes a binary number sequence based on the probability of “1” or “0” held in the probability holding unit 1152 b corresponding to the context index input to the probability holding unit 1152 b.
  • This embodiment adaptively encodes a binary number sequence (symbol sequence), that is, when encoding a binary number sequence, the probability of “1” “0” every time each bit is encoded. It is characterized in that it updates the
  • the arithmetic coding unit 1152 e codes the first bit “1” of “110” using the probability P 1 . Then, the arithmetic coding unit 1152 e outputs the coded bit “1” to the probability updating unit 1152 c.
  • the probability update unit 1152 c updates the probability of “1” to P 2 when the coded bit is input.
  • the arithmetic coding unit 1152e encodes "1" second bit “110” using the probability P 2. Then, the arithmetic coding unit 1152 e outputs the coded bit “1” to the probability updating unit 1152 c.
  • the probability update unit 1152 c updates the probability of “1” to P 3 when the coded bit is input.
  • the arithmetic coding unit 1152e encodes the "0" third bit of "110” using the probability 1-P 3. Then, the arithmetic coding unit 1152 e outputs coded data obtained by coding “110” with the probabilities P 1 , P 2 and 1 ⁇ P 3 .
  • the probability holding unit 1152b holds an initial value for initializing the probability in the sequence head, the frame head, the slice head, and the like.
  • the initial value may be "0" or "1" with equal probability, that is, 0.5, but it is appropriate to use an appropriate value such as the average value of the appearance probability experimentally obtained in many sequences It is.
  • the PMV candidate is temporally determined using the spatial prediction vector (eg, mv_med) determined from the MV of the already encoded / decoded block of the same frame and the MV of the already encoded / decoded block of the reference frame.
  • a prediction vector e.g., mv_col
  • an initial value so as to encode an MVD absolute value shorter in temporal prediction vector with a smaller code amount.
  • the initial value of the probability of “0” is set larger for the temporal prediction vector than for the spatial prediction vector.
  • the moving picture coding apparatus 100 ′ ′ can switch the appearance probability of “0” “1” in the process of arithmetically coding a binary number sequence converted from the MVD absolute value, the MVD absolute The coding efficiency of the value can be improved.
  • the MVD absolute value may not be divided into the absolute value of the X component and the absolute value of the Y component and encoded, but the sum of the absolute value of the X component and the absolute value of the Y component may be encoded.
  • PMVCOST F (
  • the number of PMV tentative candidates is not limited to four, and changes depending on the value of the MVD absolute value.
  • a program for realizing the functions of the moving picture coding apparatus and the moving picture decoding apparatus is recorded on a computer readable recording medium, and the program recorded on the recording medium May be read into a computer system and executed to control the moving picture coding apparatus and the moving picture decoding apparatus.
  • the “computer system” includes an OS and hardware such as peripheral devices.
  • the “computer-readable recording medium” means a portable medium such as a flexible disk, a magneto-optical disk, a ROM, a CD-ROM, or a storage device such as a hard disk built in a computer system.
  • "computer-readable recording medium” holds a program dynamically for a short time, like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line.
  • the volatile memory in the computer system serving as the server or the client in that case also includes the one that holds the program for a certain period of time.
  • the program may be for realizing a part of the functions described above, and further, the function described above may be realized in combination with a program already recorded in the computer system. .
  • the encoding apparatus of the present invention further includes a data candidate cost calculation unit for calculating the cost of each data candidate, and the flag set for each data candidate by the data candidate identification flag encoding unit is the data candidate cost It is desirable that the flag be a flag corresponding to the cost of the data candidate calculated by the calculation unit.
  • the data candidate identification flag encoding unit may include more symbols with higher probability of occurrence as the distance between the data candidate and the prediction data decreases as the value of the flag identifying the data candidate decreases. It is desirable to encode the flag by coding the symbol sequence and performing arithmetic coding on the symbol sequence.
  • the differential absolute value encoding unit encodes the differential absolute value for each component when the predetermined data and the prediction data are data including a plurality of components, Alternatively, it is desirable to encode the sum of absolute differences of each component.
  • a coding apparatus calculates a distance cost, which is a value according to the distance between the data candidate and the prediction data candidate, using a function having the data candidate and the prediction data candidate as inputs.
  • a distance cost calculation unit capable of selecting a plurality of functions having different amounts of operation as the function, the difference absolute value coding unit coding an index indicating the function selected by the distance cost calculation unit It is desirable to
  • the predetermined data is motion vector data.
  • the present invention also provides a motion estimation unit that estimates a motion vector between an input image and a reference image that has already been decoded, a motion vector encoding unit that encodes the motion vector, and the motion vector using the motion vector.
  • An inter prediction unit that generates a prediction signal from a reference image, a difference calculation unit that calculates a difference between the prediction signal and the input image, a conversion unit that converts the difference, and quantization of a conversion coefficient obtained by the conversion
  • the motion image coding apparatus includes a quantization unit, and the feature coding apparatus is used for coding a motion vector in the motion vector coding unit.
  • the decoding device of the present invention further includes a data candidate cost calculation unit for calculating the cost of each data candidate, and the flag decoded by the data candidate identification flag decoding unit is calculated by the data candidate cost calculation unit. It is desirable that the flag corresponds to the cost of the data candidate.
  • the differential absolute value decoding unit decodes the differential absolute value for each component when the predetermined data and the prediction data are data consisting of a plurality of components, or It is desirable to decode the sum of differential absolute values for each component.
  • the decoding apparatus calculates distance cost, which is a value according to the distance between the data candidate and the prediction data candidate, using a function having the data candidate and the prediction data candidate as input.
  • a distance cost calculation unit capable of selecting a plurality of functions having different amounts of operation as the function, the difference absolute value decoding unit decoding an index indicating the function selected by the distance cost calculation unit It is desirable to do.
  • the predetermined data is motion vector data.
  • the present invention also provides a motion vector decoding unit that decodes a motion vector, a reference image that has already been decoded, an inter prediction unit that generates a prediction signal from the motion vector, and an inverse quantization unit that inversely quantizes transform coefficients.
  • a moving image decoding apparatus including: an inverse conversion unit that inversely converts a conversion coefficient to generate a difference signal; and adding the prediction signal and the difference signal to reproduce a decoded signal, the motion of the motion vector decoding unit It is desirable to use the feature decoder for decoding vectors.
  • DESCRIPTION OF SYMBOLS 100 ... moving image encoder, 101 ... subtraction part, 102 ... addition part, 103 ... local decoding signal, 111 ... motion vector encoding part, 112 ... conversion part, 113 ... quantization part, 115 ...
  • variable length coding part 116 inverse quantization unit 117: inverse transformation unit 118: frame memory 121: intra prediction unit 123: inter prediction unit 124: motion estimation unit 125: prediction mode determination unit 200: moving image decoding apparatus , 201: variable length coding and decoding unit, 203: prediction parameter, 211: motion vector decoding unit, 225: prediction mode selection unit, 301: number of PMV candidates and PMV candidates, 302: PMV, 1111: MV storage unit, 1112 PMV candidate calculation unit, 1113 ... PMV determination unit, 1114 ... MVD calculation unit, 1115 ... MV flag determination unit, 1151 ... PMV index code , 1152 ... MVD absolute value encoding unit, 1153 ...
  • MV index encoding unit 2011 ... PMV index decoding unit, 2012 ... MVD absolute value decoding unit, 2013 ... MV index decoding unit, 2113 ... PMV selection unit, 2115 ... MV Selection unit, 5001 ... MV candidate calculation unit, 5002 ... MV candidate determination unit, 5003 ... MV index determination unit, 6004 ... MV extraction unit

Abstract

An encoder apparatus comprises: an MV flag deciding unit (1115) that extracts, by use of information as to which PMV was selected from among a plurality of PMV candidates, MV candidates, which exist in an area where MV possibly exists, from among tentative MV candidates; and an MV index encoding unit (1153) that, if there are two or more MV indices determining the MV candidates extracted by the MV flag deciding unit (1115), encodes each of the MV indices.

Description

符号化装置、復号装置、動画像符号化装置、動画像復号装置、および符号化データEncoding device, decoding device, moving image encoding device, moving image decoding device, and encoded data
 本発明は、主に、動きベクトルを効率的に符号化する動画像符号化装置および動画像復号装置に関する。 The present invention mainly relates to a moving picture coding apparatus and a moving picture decoding apparatus that efficiently encode motion vectors.
 動画像符号化技術の分野では、一般に画像データを複数のブロックに分割し、分割したブロック単位で符号化が行われる。ブロック単位の符号化では、入力信号の予測信号の生成、入力信号と予測信号の差分である残差信号の算出、算出された残差信号の変換、変換で得られた変換係数の量子化、量子化された変換係数の可変長符号化等の符号化処理がなされる。 In the field of video coding technology, image data is generally divided into a plurality of blocks, and coding is performed in units of divided blocks. In block unit coding, generation of a prediction signal of an input signal, calculation of a residual signal which is a difference between the input signal and the prediction signal, conversion of the calculated residual signal, quantization of conversion coefficients obtained by the conversion, Coding processing such as variable length coding of the quantized transform coefficients is performed.
 予測信号の生成方法には、対象ブロック周囲の再生画像を用いるイントラ予測と既に符号化/復号されたフレームの再生画像を用いるインター予測がある。 Methods of generating a prediction signal include intra prediction using a reproduced image around a target block and inter prediction using a reproduced image of a frame already encoded / decoded.
 イントラ予測には、DC予測、水平予測、垂直予測など複数のイントラ予測モードがあり、いずれのイントラ予測モードを用いるかを示す情報が符号化される。 Intra prediction includes a plurality of intra prediction modes such as DC prediction, horizontal prediction, vertical prediction, and information indicating which intra prediction mode to use is encoded.
 また、インター予測では、予測に使う参照フレームを特定するためのフレームID、および、動きベクトル(MV)が符号化される。 In inter prediction, a frame ID for specifying a reference frame to be used for prediction and a motion vector (MV) are encoded.
 MVの符号化は、まずMVの予測値である予測動きベクトル(PMV)を算出し、次にPMVとMVの差分を符号化することで行われる。図16は、非特許文献1のMVの符号化データの構成を示す図である。図16に示すように、MVはPMVを示すPMVインデックス、PMVとMVの差分の絶対値(MVD絶対値)、及び差分が正であるか負であるかを示すMVD符号に分けて符号化される。なお、MVD絶対値とMVD符号はX成分、Y成分の順に符号化され、成分毎のMVD絶対値が0の場合にはMVD符号は符号化されない。 The coding of the MV is performed by first calculating a motion vector predictor (PMV), which is a predicted value of the MV, and then coding the difference between the PMV and the MV. FIG. 16 is a diagram showing the configuration of the MV encoded data of Non-Patent Document 1. As shown in FIG. As shown in FIG. 16, MV is divided into PMV index indicating PMV, absolute value of difference between PMV and MV (MVD absolute value), and MVD code indicating whether the difference is positive or negative. Ru. The MVD absolute value and the MVD code are encoded in the order of the X component and the Y component, and the MVD code is not encoded when the MVD absolute value of each component is zero.
 ここで、MVD絶対値は2値化され適応的な確率を用いる算術符号により効率的に符号化される。MVD符号についても2値化され算術符号により符号化されるが、非特許文献1においては2値化された符号の0、1の発生確率は常に0.5であり、符号化された結果、符号量が固定長符号化の場合と同等になる。 Here, the MVD absolute value is binarized and efficiently encoded by an arithmetic code using an adaptive probability. Although the MVD code is also binarized and encoded by the arithmetic code, in Non-Patent Document 1, the occurrence probability of 0 and 1 of the binarized code is always 0.5, and as a result of encoding, The code amount is equal to that in the fixed length coding.
 非特許文献2には、MVD絶対値とMVD符号とに分けて符号化することなく、MVをそのまま符号化する方法が開示されている。この方法では、MVの存在確率を、複数のPMVの各々についてPMVとMVとの距離を算出するとともにそれらの距離を用いて一般化ガウス関数を用いた分布関数の和を用いたモデルで推定し、推定したモデルから算出される確率を用いた多値算術符号を用いて符号化する。 Non-Patent Document 2 discloses a method of encoding MV as it is without separately encoding into an MVD absolute value and an MVD code. In this method, the existence probability of MV is estimated with a model using the sum of distribution functions using generalized Gaussian functions by calculating the distance between PMV and MV for each of a plurality of PMVs and using those distances. , Encode using a multilevel arithmetic code using the probability calculated from the estimated model.
 また、非特許文献1には、MotionVectorCompetition(MVCOMP)と呼ばれる技術が開示されている。MVCOMPでは、複数の予測動きベクトル候補(PMV候補)を用いることにより、符号化効率を向上させている。具体的には、PMV候補の中から符号化対象とするMVに近いPMVを選択し、PMV候補を特定するインデックス(PMVインデックス)を符号化する。次いでPMVとMVとの差分を符号化する。MVCOMPでは、複数のPMV候補から好適なPMVを選択することにより、1つのPMVを用いる場合よりもMVとPMVの差分を小さくすることができるため、差分の符号量を削減することができる。 In addition, Non-Patent Document 1 discloses a technique called MotionVectorCompetition (MVCOMP). In MVCOMP, coding efficiency is improved by using a plurality of motion vector predictor candidates (PMV candidates). Specifically, a PMV close to the MV to be encoded is selected from the PMV candidates, and an index (PMV index) specifying the PMV candidate is encoded. Next, the difference between PMV and MV is encoded. In MVCOMP, by selecting a suitable PMV from a plurality of PMV candidates, the difference between MV and PMV can be made smaller than in the case where one PMV is used, so the code amount of the difference can be reduced.
 複数の予測動きベクトル候補(PMV候補)を算出し、PMV候補から1つの予測動きベクトル(PMV)を選択した上で、動きベクトル(MV)とPMVとの差分を符号化する非特許文献1のMV符号化では、MVとPMVの差分の符号化に、選択したPMVの情報を用いていないため、符号量が多くなっていた。 In Non-Patent Document 1, which calculates a plurality of motion vector predictor candidates (PMV candidates), selects one motion vector predictor (PMV) from the PMV candidates, and encodes the difference between the motion vector (MV) and the PMV. In the MV coding, since the information of the selected PMV is not used for the coding of the difference between the MV and the PMV, the code amount is large.
 より具体的には、選択したPMVとPMV候補の関係により、符号化対象MVの存在可能領域が限定されるという性質を用いていないため効率が低下していた。 More specifically, the efficiency is lowered because the relationship between the selected PMV and the PMV candidate does not use the property that the possible region of the coding target MV is limited.
 さらに、非特許文献1のMV符号化においては、PMVとMVとの差分の絶対値であるMVD絶対値については適応的な確率を用いる算術符号化により効率的に符号化されるが、MV符号等、MVD絶対値以外の部分の符号化については固定的な確率を用いるために効率的な符号化が行われなかった。 Furthermore, in the MV coding of Non-Patent Document 1, the MVD absolute value, which is the absolute value of the difference between PMV and MV, is efficiently coded by arithmetic coding using adaptive probability. EFFICIENT CODING did not occur because the fixed probability is used for the coding of parts other than the MVD absolute value.
 一方、非特許文献2のMV符号化においては、MVD絶対値を用いないため、MVの存在確率に応じて符号化することができるが、予め分布関数の特性を決定するパラメータ(例えば、一般化ガウス関数の標準偏差および形状パラメータ)を算出しておく必要があるため、非特許文献2のMV符号化を任意の画像に適応することは困難であった。また、累積分布関数の値を繰り返し計算する必要があるため非特許文献2に記載されているテーブル参照を用いても演算量が大きいという課題があった。また、MVD絶対値の大きさは空間的な相関が高い傾向にあるが、MVD絶対値を分離していないため、このような傾向を利用することが困難であった。 On the other hand, in MV coding of Non-Patent Document 2, since MVD absolute values are not used, coding can be performed according to the existence probability of MV, but parameters for determining the characteristics of the distribution function in advance (for example, generalization Since it is necessary to calculate the standard deviation and shape parameter of the Gaussian function, it has been difficult to apply the MV coding of Non-Patent Document 2 to any image. In addition, since it is necessary to repeatedly calculate the value of the cumulative distribution function, there is a problem that the amount of computation is large even using the table reference described in Non-Patent Document 2. In addition, although the magnitude of the MVD absolute value tends to be spatially correlated, it is difficult to utilize such a tendency because the MVD absolute value is not separated.
 上記課題を解決するために、本発明は次の特徴を備えている。すなわち、
 本発明の符号化装置は、所定のデータの符号化に際し、既に符号化済みのデータから予測データを生成し、前記前記所定のデータと前記予測データとの差分絶対値を符号化する差分絶対値符号化部と、前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、データ候補算出部で算出されたデータ候補の数が2以上である場合に、前記データ候補毎に異なるフラグを設定し、各データ候補に対して設定されたフラグを符号化するデータ候補特定フラグ符号化部と、を備えていることを特徴とする。
In order to solve the above-mentioned subject, the present invention is provided with the following features. That is,
The encoding apparatus of the present invention generates prediction data from already encoded data when encoding predetermined data, and encodes a difference absolute value between the predetermined data and the prediction data. When the number of data candidates calculated by the encoding unit, the data candidate calculation unit for calculating data candidates from the difference absolute value and the prediction data, and the data candidate calculation unit is two or more, each data candidate And a data candidate identification flag encoding unit configured to set different flags to and encode the flag set for each data candidate.
 本発明の符号化装置は、所定のデータの符号化に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、前記所定のデータと前記予測データとの差分絶対値を符号化する差分絶対値符号化部と、前記差分絶対値と前記予測データからデータ候補を算出するデータ候補算出部と、前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを符号化する、データ候補特定フラグ符号化部を備えることを特徴とする。 The encoding apparatus according to the present invention generates, when encoding predetermined data, a plurality of prediction data candidates from already encoded data, and selects prediction data to be used for encoding from the prediction data candidates. A determination unit; a difference absolute value encoding unit encoding a difference absolute value between the predetermined data and the prediction data; a data candidate calculation unit calculating data candidates from the difference absolute value and the prediction data; And a data candidate determination unit that determines the validity of the data candidate calculated from the difference absolute value and the prediction data from the prediction data and the prediction data candidate, and the data candidate determined as valid by the data candidate determination unit The data candidate identification flag encoding unit may encode a flag that identifies the data candidate if the number is two or more.
 本発明の符号化装置は、所定のデータの符号化に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、前記所定のデータと前記予測データとの差分絶対値をシンボル列とするとともに該シンボル列を算術符号化することにより、前記差分絶対値を符号化する差分絶対値符号化部と、を備え、差分絶対値符号化部は、前記シンボル列を算術符号化するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする。 The encoding apparatus according to the present invention generates, when encoding predetermined data, a plurality of prediction data candidates from already encoded data, and selects prediction data to be used for encoding from the prediction data candidates. A determination unit, and a difference absolute value encoding unit encoding the difference absolute value by arithmetically encoding the symbol sequence while setting the difference absolute value between the predetermined data and the prediction data as a symbol sequence; The difference absolute value encoding unit changes the appearance probability of each symbol used to arithmetically encode the symbol string according to the prediction data selected by the prediction data determination unit.
 また、本発明の復号装置は、所定のデータの復号に際し、符号化されている差分絶対値を復号する差分絶対値復号部と、既に符号化済みのデータから予測データを生成し、前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、前記データ候補算出部で生成されたデータ候補の数が2以上である場合に、各データ候補に対してデータ候補毎に異なる値が設定されたフラグを復号するデータ候補特定フラグ復号部と、を備えていることを特徴とする。 Also, the decoding device of the present invention generates a prediction data from the already encoded data, and a difference absolute value decoding unit that decodes the encoded difference absolute value when decoding predetermined data; The data candidate calculation unit that calculates data candidates from the value and the prediction data, and the number of data candidates generated by the data candidate calculation unit are different for each data candidate for each data candidate when the number of data candidates is two or more And a data candidate identification flag decoding unit that decodes a flag for which a value is set.
 本発明の復号装置は、所定のデータの復号に際し、符号化されている差分絶対値を復号し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、前記データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを復号する、データ候補特定フラグ復号部を備えることを特徴とする。 When decoding predetermined data, the decoding device according to the present invention decodes the encoded difference absolute value, generates a plurality of prediction data candidates from already encoded data, and generates a code from among the prediction data candidates A prediction data determination unit that selects prediction data to be used for quantization; a data candidate determination unit that determines the validity of data candidates calculated from the difference absolute value and the prediction data from the prediction data and the prediction data candidates; The data candidate identification flag decoding unit is configured to decode a flag that identifies the data candidate when the number of data candidates validated by the data candidate determination unit is two or more.
 本発明の復号装置は、所定のデータの復号に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から復号に用いる予測データを選択する予測データ決定部と、前記所定のデータと前記予測データとの差分絶対値であるシンボル列を算術復号することにより、前記差分絶対値を復号する差分絶対値復号部と、を備え、前記差分絶対値復号部は、前記シンボル列を復号するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする。 The decoding device according to the present invention generates a plurality of prediction data candidates from already encoded data when decoding predetermined data, and selects a prediction data determination unit that selects prediction data to be used for decoding from the prediction data candidates. A difference absolute value decoding unit that decodes the difference absolute value by arithmetically decoding a symbol string that is the difference absolute value between the predetermined data and the prediction data, the difference absolute value decoding unit including: The appearance probability of each symbol used to decode the symbol string is changed according to the prediction data selected by the prediction data determination unit.
 複数の予測動きベクトル候補からどの予測動きベクトルを選択したかの情報を用いて、動きベクトルの存在可能領域を限定した上で、その限定を利用して動きベクトルを符号化もしくは復号することにより、符号化データ中の動きベクトルの符号量を削減することができる。動きベクトルの符号量を削減することで、動画像符号化における符号化効率が向上する。 By limiting the possible region of the motion vector using information on which prediction motion vector is selected from the plurality of motion vector predictor candidates, the restriction is used to encode or decode the motion vector, The code amount of the motion vector in the encoded data can be reduced. By reducing the code amount of the motion vector, coding efficiency in moving picture coding is improved.
本発明の第1の実施形態の動画像符号化装置100のブロック図である。FIG. 1 is a block diagram of a moving picture coding apparatus 100 according to a first embodiment of the present invention. 本発明の第2の実施形態の動画像復号装置200のブロック図である。It is a block diagram of the moving image decoding apparatus 200 of the 2nd Embodiment of this invention. 本発明の第1の実施形態の動きベクトル符号化部111のブロック図である。It is a block diagram of motion vector encoding part 111 of a 1st embodiment of the present invention. 本発明の第2の実施形態の動きベクトル復号部211のブロック図である。It is a block diagram of the motion vector decoding part 211 of the 2nd Embodiment of this invention. 本発明の第1の実施形態によるMVフラグ決定部1115のブロック図である。It is a block diagram of the MV flag determination part 1115 by the 1st Embodiment of this invention. 本発明の第2の実施形態によるMV選択部2115のブロック図である。FIG. 10 is a block diagram of an MV selection unit 2115 according to a second embodiment of the present invention. 本発明の第1、第2の実施形態によるMV候補算出部5001の動作フローを示す図である。It is a figure which shows the operation | movement flow of the MV candidate calculation part 5001 by the 1st, 2nd embodiment of this invention. 本発明の第1、第2の実施形態によるMV候補判定部5002の動作フローを示す図である。It is a figure which shows the operation | movement flow of the MV candidate determination part 5002 by the 1st, 2nd embodiment of this invention. 本発明の第1の実施形態によるMVインデックス決定部5003の動作フローを示す図である。It is a figure which shows the operation | movement flow of the MV index determination part 5003 by the 1st Embodiment of this invention. 本発明の予測動きベクトルを説明する図である。It is a figure explaining the prediction motion vector of this invention. 本発明のMVの存在可能領域の例を説明する図である。It is a figure explaining the example of the possible existence area | region of MV of this invention. 本発明のMVの存在可能領域の別の例を説明する図である。It is a figure explaining another example of the possible existence area of MV of the present invention. 本発明のMVの存在可能領域の別の例を説明する図である。It is a figure explaining another example of the possible existence area of MV of the present invention. 本発明のMVの存在可能領域とMV候補の関係を説明する図である。It is a figure explaining the relationship between the possible area | region of MV of this invention, and MV candidate. 本発明のMVの符号化データの構成を示す図である。It is a figure which shows the structure of the coding data of MV of this invention. 従来のMVの符号化データの構成を示す図である。It is a figure which shows the structure of the coding data of conventional MV. 本発明の第3の実施形態の動画像符号化装置100’のブロック図である。It is a block diagram of moving picture coding device 100 'of a 3rd embodiment of the present invention. 本発明の第3の実施形態の動きベクトル符号化部111’のブロック図である。It is a block diagram of motion vector encoding part 111 'of the 3rd Embodiment of this invention. 本発明の第3の実施形態の動画像符号化装置を構成する要部のブロック図である。(a)は本発明の第3の実施形態によるMVフラグ決定部1115’を示しており、(b)はMV候補ソート部5004を示している。It is a block diagram of the principal part which comprises the moving picture encoding device of the 3rd Embodiment of this invention. (A) shows the MV flag determination part 1115 'by 3rd Embodiment of this invention, (b) has shown the MV candidate sort part 5004. FIG. 本発明の第4の実施形態の動画像復号装置200’のブロック図である。It is a block diagram of moving image decoding apparatus 200 'of the 4th Embodiment of this invention. 本発明の第4の実施形態の動きベクトル復号部211’のブロック図である。It is a block diagram of motion vector decoding part 211 'of the 4th Embodiment of this invention. 本発明の第4の実施形態によるMV選択部2115’のブロック図である。FIG. 20 is a block diagram of an MV selection unit 2115 'according to a fourth embodiment of the present invention. 本発明のMVの符号化データの構成を示す別の図である。It is another figure which shows the structure of the coding data of MV of this invention. 本発明の第3の実施形態を示すものであり、各MVインデックスに割り当てる2値データの値をどのように決定するかを示す模式図である。(a)は、PMV候補と選択されやすいMV候補との関係を模式的に示しており、(b)は、算術符号化されるMVインデックスの値とする2値データの例を示している。It is a schematic diagram which shows the 3rd Embodiment of this invention, and shows how to determine the value of the binary data allocated to each MV index. (A) schematically shows the relationship between PMV candidates and MV candidates that are likely to be selected, and (b) shows an example of binary data to be the value of the MV index to be arithmetically encoded. 本発明の第5の実施形態の動画像符号化装置100”のブロック図である。It is a block diagram of moving picture coding device 100 "of a 5th embodiment of the present invention. 本発明の第5の実施形態の可変長符号化部115’のブロック図である。It is a block diagram of the variable-length-coding part 115 'of the 5th Embodiment of this invention. 本発明の第5の実施形態によるMVD絶対値符号化部1152’のブロック図である。FIG. 21 is a block diagram of an MVD absolute value coding unit 1152 ′ according to a fifth embodiment of the present invention.
 以下、図面を参照して、本発明の各実施形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
 (動画像符号化装置)
 図1は本発明の第1の実施形態の動画像符号化装置100の構成を示すブロック図である。動画像符号化装置100は、動きベクトル符号化部111、変換部112、量子化部113、可変長符号化部115、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、動き推定部124、予測モード決定部125、減算部101、加算部102から構成される。また図中の符号103は、フレームメモリ118から抽出された局所復号信号である。
(Video encoding device)
FIG. 1 is a block diagram showing the configuration of a moving picture coding apparatus 100 according to the first embodiment of the present invention. The moving picture coding apparatus 100 includes a motion vector coding unit 111, a conversion unit 112, a quantization unit 113, a variable length coding unit 115, an inverse quantization unit 116, an inverse conversion unit 117, a frame memory 118, and an intra prediction unit 121. The inter prediction unit 123, the motion estimation unit 124, the prediction mode determination unit 125, the subtraction unit 101, and the addition unit 102 are included. Further, reference numeral 103 in the figure is a local decoded signal extracted from the frame memory 118.
 動画像符号化装置100では、入力された画像データを複数のブロックに分割し、分割したブロック単位で符号化が行われる。ブロック単位の符号化では、予測モード決定部125の出力として得られた予測信号を用いて、減算部101で入力信号と予測信号との差分である残差信号が算出される。残差信号は変換部112でDCTなどにより変換係数に変換され、変換係数はさらに量子化部113で量子化される。量子化変換係数は一方では、可変長符号化部115に入力されて符号化される。量子化変換係数は他方では、逆量子化部116で逆量子化され、逆変換部117で逆DCT変換などがなされ、復号残差信号が得られる。復号残差信号は加算部102で予測信号と加算され、局所復号信号としてフレームメモリ118に格納される。 In the moving picture coding apparatus 100, input image data is divided into a plurality of blocks, and coding is performed in units of divided blocks. In block-based coding, using the prediction signal obtained as the output of the prediction mode determination unit 125, the subtraction unit 101 calculates a residual signal that is the difference between the input signal and the prediction signal. The residual signal is converted into a transform coefficient by DCT or the like in the transform unit 112, and the transform coefficient is further quantized in the quantization unit 113. On the other hand, the quantized transform coefficients are input to the variable-length coding unit 115 and encoded. On the other hand, the quantization transformation coefficient is inversely quantized by the inverse quantization unit 116, and inverse transformation is performed by the inverse transformation unit 117 to obtain a decoded residual signal. The decoded residual signal is added to the prediction signal by the adder 102 and stored in the frame memory 118 as a local decoded signal.
 (予測信号の生成)
 予測信号の生成は、以下の手順で行われる。イントラ予測部121は入力信号の予測信号であるイントラ予測信号を生成し、イントラ予測信号と入力信号とから予測の良さを評価する符号化コストを算出する。イントラ予測信号と符号化コスト(イントラ予測コスト)は、予測モード決定部125に入力する。
(Generation of prediction signal)
Generation of a prediction signal is performed in the following procedure. The intra prediction unit 121 generates an intra prediction signal which is a prediction signal of the input signal, and calculates a coding cost for evaluating the goodness of prediction from the intra prediction signal and the input signal. The intra prediction signal and the coding cost (intra prediction cost) are input to the prediction mode determination unit 125.
 符号化コストには入力信号と予測信号との差分絶対値和を用いても良いし、差分二乗和を用いても良い。さらに、予測パラメータの符号量を考慮しても良い。 As the coding cost, the sum of absolute differences between the input signal and the prediction signal may be used, or the sum of squared differences may be used. Furthermore, the code amount of the prediction parameter may be taken into consideration.
 インター予測部123は、動き推定部124から入力された、参照フレームを特定するためのフレームID、参照フレーム上の抽出位置を符号化対象ブロックからの相対位置として示す動きベクトル(MV)に応じてインター予測信号を生成する。生成されたインター予測信号は、動き推定部124及び予測モード決定部125に入力される。 The inter prediction unit 123 receives a frame ID for specifying the reference frame, which is input from the motion estimation unit 124, and a motion vector (MV) indicating the extraction position on the reference frame as a relative position from the encoding target block. Generate an inter prediction signal. The generated inter prediction signal is input to the motion estimation unit 124 and the prediction mode determination unit 125.
 動き推定部124は、あらかじめ定められたフレームIDと、あらかじめ定められたMVの範囲内の予測パラメータに対し、インター予測部123で生成したインター予測信号を用いて、予測の良さを評価する符号化コストを算出する。 The motion estimation unit 124 performs coding for evaluating the goodness of prediction using the inter prediction signal generated by the inter prediction unit 123 for a predetermined frame ID and a prediction parameter within the predetermined MV range. Calculate the cost.
 そして、動き推定部124は、前述の予測パラメータの中で、算出された符号化コストを最小化する予測パラメータとそのときのコスト(インター予測コスト)を予測モード決定部125に入力する。 Then, the motion estimation unit 124 inputs, to the prediction mode determination unit 125, among the above-mentioned prediction parameters, the prediction parameter that minimizes the calculated coding cost and the cost at that time (inter prediction cost).
 予測モード決定部125では、イントラ予測コストとインター予測コストを比較し、コストの小さい方の予測モードを選択する。選択した予測モードと予測パラメータは可変長符号化部115に入力される。また、選択した予測モードに対応する予測信号は減算部101及び加算部102に入力される。 The prediction mode determination unit 125 compares the intra prediction cost and the inter prediction cost, and selects the prediction mode with the smaller cost. The selected prediction mode and prediction parameters are input to the variable-length coding unit 115. Further, the prediction signal corresponding to the selected prediction mode is input to the subtraction unit 101 and the addition unit 102.
 (可変長符号化部115)
 可変長符号化部115は、量子化変換係数を符号化するだけでなく、予測モード決定部125から出力される予測モードと予測パラメータを符号化する。予測モードがインター予測の場合には予測パラメータのうちフレームIDが可変長符号化部115で符号化される。MVは動きベクトル符号化部111で符号化に必要な処理がなされ、可変長符号化部115で符号化データとして符号化される。
(Variable-length coding unit 115)
The variable-length coding unit 115 not only encodes the quantization conversion coefficient, but also encodes the prediction mode and the prediction parameter output from the prediction mode determination unit 125. When the prediction mode is inter prediction, the frame ID of the prediction parameters is encoded by the variable-length coding unit 115. The motion vector coding unit 111 performs processing necessary for coding the MV, and the variable-length coding unit 115 codes it as coded data.
 (動きベクトル符号化部111)
 図3に示すとおり、動きベクトル符号化部111は、MV格納部1111、PMV候補算出部1112、PMV決定部1113、MVD算出部1114、MVフラグ決定部1115から構成される。図中の符号301はPMV候補およびPMV候補数を示し、302は、PMVを示す。
(Motion vector encoding unit 111)
As shown in FIG. 3, the motion vector encoding unit 111 includes an MV storage unit 1111, a PMV candidate calculation unit 1112, a PMV determination unit 1113, an MVD calculation unit 1114, and an MV flag determination unit 1115. Reference numeral 301 in the figure indicates PMV candidates and the number of PMV candidates, and 302 indicates PMV.
 MV格納部1111は、動きベクトル符号化部111に入力されたMVを格納する。PMV候補算出部1112は、MV格納部1111に格納されたMVを参照して予測動きベクトル候補(PMV候補)を算出する。算出されたPMV候補およびPMV候補数は、PMV決定部1113及びMVフラグ決定部1115に入力される。またPMV候補数は、可変長符号化部115の内部に備えるPMVインデックス符号化部1151にも入力される。 The MV storage unit 1111 stores the MV input to the motion vector encoding unit 111. The PMV candidate calculation unit 1112 refers to the MV stored in the MV storage unit 1111 to calculate a motion vector predictor candidate (PMV candidate). The calculated PMV candidate and the number of PMV candidates are input to the PMV determination unit 1113 and the MV flag determination unit 1115. The number of PMV candidates is also input to a PMV index coding unit 1151 provided inside the variable length coding unit 115.
 PMV決定部1113では、MVとPMV候補、PMV候補数を入力とし、PMV候補のうちで、MVとPMV候補とから算出されるコスト関数PMVCOST(MV,PMV)を最小化するPMV候補をPMVとして選択する。選択されたPMVを特定するためのフラグ(PMVインデックス)はPMVインデックス符号化部1151に入力され、PMVインデックス符号化部1151では、PMV候補数をもとにPMVインデックスが符号化される(後述)。選択されたPMVは、MVD算出部1114及びMVフラグ決定部1115に入力される。 The PMV determination unit 1113 receives the MV, the PMV candidate, and the PMV candidate number, and among PMV candidates, the PMV candidate that minimizes the cost function PMVCOST (MV, PMV) calculated from the MV and the PMV candidate is regarded as a PMV. select. A flag (PMV index) for specifying the selected PMV is input to the PMV index encoding unit 1151, and the PMV index encoding unit 1151 encodes the PMV index based on the number of PMV candidates (described later) . The selected PMV is input to the MVD calculation unit 1114 and the MV flag determination unit 1115.
 MVD算出部1114は、入力されたMVとPMVとの差分(MVD)の絶対値(MVD絶対値)を算出し、可変長符号化部115内のMVD絶対値符号化部1152及びMVフラグ決定部1115に入力する。MVD絶対値符号化部1152では、MVD絶対値が符号化される。 The MVD calculation unit 1114 calculates the absolute value (MVD absolute value) of the difference (MVD) between the input MV and PMV, and the MVD absolute value coding unit 1152 and the MV flag determination unit in the variable length coding unit 115 Enter 1115. The MVD absolute value encoding unit 1152 encodes the MVD absolute value.
 MVフラグ決定部1115では、入力されたMV、PMV、PMV候補、およびPMV候補数から、MV候補およびMV候補数を算出し、さらに算出したMV候補の中からMVを特定するためのフラグ(MVインデックス)を決定する。MV候補数とMVインデックスは可変長符号化部115内のMVインデックス符号化部1153に入力される。MVインデックス符号化部1153では、MV候補数をもとにMVインデックスが符号化される。 The MV flag determination unit 1115 calculates the MV candidate and the MV candidate number from the input MV, PMV, PMV candidate, and PMV candidate number, and further, a flag (MV for specifying the MV from among the calculated MV candidates. Determine the index). The number of MV candidates and the MV index are input to the MV index coding unit 1153 in the variable-length coding unit 115. The MV index encoding unit 1153 encodes the MV index based on the number of MV candidates.
 (PMVインデックス及びMVインデックスの符号化)
 PMVインデックス及びMVインデックスは、各々、候補数に応じて符号化が行われる。
(Coding of PMV index and MV index)
The PMV index and the MV index are each coded according to the number of candidates.
 具体的には、候補数が1の場合にはインデックスは符号化しない。候補数が2の場合には、2進数で“0”もしくは“1”を符号化する。候補数が3の場合には、“0”、“10”、“11”のいずれかを符号化する。候補数が4の場合には、“00”、“01”、“10”、“11”のいずれかを符号化する。各候補の選択される割合に偏りがある場合には、候補数が4の場合に、“0”、“10”、“110”、“111”のいずれかを符号化するようにしても良い。2進数の符号化は、前述の値をそのまま符号化データとする固定長符号を用いても良いが、0と1の発生確率を適応的に変更する算術符号を用いればより好適である。 Specifically, when the number of candidates is 1, the index is not encoded. When the number of candidates is 2, "0" or "1" is encoded in binary. When the number of candidates is 3, one of “0”, “10” and “11” is encoded. When the number of candidates is 4, any one of "00", "01", "10" and "11" is encoded. If there is a bias in the ratio of selection of each candidate, one of “0”, “10”, “110” and “111” may be encoded when the number of candidates is four. . Although binary encoding may use a fixed-length code in which the above-mentioned value is used as encoded data as it is, it is more preferable to use an arithmetic code which adaptively changes the occurrence probability of 0 and 1.
 以下、PMV候補の算出方法、関数PMVCOSTを説明し、本発明のポイントであるMVの存在可能領域について説明する。最後にMVフラグ決定部1115の詳細を説明する。 Hereinafter, the calculation method of the PMV candidate and the function PMVCOST will be described, and the possible region of the MV, which is the point of the present invention, will be described. Finally, the details of the MV flag determination unit 1115 will be described.
 (PMV候補の算出方法)
 図10は、PMV候補の算出方法を説明するための図である。符号化対象ブロックの左、上、右上に隣接するブロックのMVを各々mv_a、mv_b、mv_cと表現する。また、符号化対象ブロックと参照画像上で空間的に同じ位置のブロックのMVをmv_colと表現する。また、空間的に隣接するブロックのMVの中央値をmv_medと表現する。具体的には、mv_a、mv_b、mv_cのX成分、Y成分毎に中央値をとることで算出する。
(Method of calculating PMV candidate)
FIG. 10 is a diagram for explaining a method of calculating PMV candidates. The MVs of the blocks adjacent to the left, upper and upper right of the block to be encoded are represented as mv_a, mv_b and mv_c, respectively. Also, the MV of the block spatially at the same position on the encoding target block and the reference image is expressed as mv_col. Also, the median value of the MVs of spatially adjacent blocks is expressed as mv_med. Specifically, calculation is performed by taking median values for each of the X component and the Y component of mv_a, mv_b, and mv_c.
 PMV候補としては、mv_medとmv_aとを用いるか、もしくはmv_medとmv_colとを用いることが好適であるが、本発明のPMV候補は上記2通りに限定するものではなく、PMV候補数及びPMV候補として他の値を用いることもできる。例えば、PMV候補算出部1112はmv_med、mv_a、mv_colの3つをPMV候補としても良い。 Although it is preferable to use mv_med and mv_a or mv_med and mv_col as PMV candidates, the PMV candidates of the present invention are not limited to the above two, and the number of PMV candidates and PMV candidates are as PMV candidates. Other values can also be used. For example, the PMV candidate calculation unit 1112 may set three of mv_med, mv_a, and mv_col as PMV candidates.
 (関数PMVCOST)
 関数PMVCOST(MV、PMV)は、MVとPMVを入力し、MVとPMVとの距離に相当するコストを算出する関数である。PMVを用いてMVを符号化する場合、MVに距離が近いPMVを選択する方がMVの符号量を減らすことができる。関数PMVCOSTはこの距離を算出するものである。
(Function PMVCOST)
The function PMVCOST (MV, PMV) is a function that inputs MV and PMV and calculates a cost corresponding to the distance between MV and PMV. When coding an MV using a PMV, it is possible to reduce the amount of coding of the MV by selecting a PMV closer to the MV. The function PMVCOST calculates this distance.
 PMVCOSTは、MVとPMVとの差分絶対値であるMVD絶対値から算出される関数とする。すなわち、任意の関数F、Gを用いて、
 PMVCOST=F(|MV_X-PMV_X|)+G(|MV_Y-PMV_Y|)
で表現できる関数とする。ここで||は絶対値を示す記号である。この様な関数としてコストを定義することにより、MVとPMVが得られない場合でも、MVとPMVとの差分絶対値であるMVD絶対値が得られればコストを算出することができる。
PMVCOST is a function calculated from an MVD absolute value which is a difference absolute value between MV and PMV. That is, using arbitrary functions F and G,
PMVCOST = F (| MV_X-PMV_X |) + G (| MV_Y-PMV_Y |)
Let be a function that can be expressed by Here, | is a symbol indicating an absolute value. By defining the cost as such a function, even if MV and PMV can not be obtained, the cost can be calculated if an MVD absolute value, which is the difference between MV and PMV, is obtained.
 例えば、市街値距離
 PMVCOST=|MV_X-PMV_X|+|MV_Y-PMV_Y|
 あるいは、ユークリッド距離の2乗
 PMVCOST=|MV_X-PMV_X|^2+|MV_Y-PMV_Y|^2
を距離として用いることができる。
For example, city value distance PMVCOST = | MV_X-PMV_X | + | MV_Y-PMV_Y |
Alternatively, Euclidean distance squared PMVCOST = | MV_X-PMV_X | ^ 2 + | MV_Y-PMV_Y | ^ 2
Can be used as the distance.
 また、他の距離として、MVの符号量を考慮したコスト関数が考えられる。より具体的には、
 PMVCOST=R(|MV_X-PMV_X|)+R(|MV_Y-PMV_Y|)により算出する。ここでR(X)はXとしてMVの差分絶対値を入力し、その符号量もしくは符号量に相当する量を算出する関数である。
Also, as another distance, a cost function in which the code amount of the MV is considered can be considered. More specifically,
It is calculated by PMVCOST = R (| MV_X-PMV_X |) + R (| MV_Y-PMV_Y |). Here, R (X) is a function which receives the difference absolute value of MV as X and calculates the code amount or the amount corresponding to the code amount.
 MVD絶対値(=X)の分布は多くの場合X=0の周りに集中する。この場合、符号量はXが大きくなるにつれてその増加度が小さくなるような関数R(X)となるような符号を用いることが好適である。そのため、R(X)としてLOG(X+1)を用いると良い。また、MVD絶対値Xが0である場合には正負を示すための符号化が不要であるため、MVD絶対値Xが0以外の場合よりも1ビット少なくMVDを符号化できる。この性質を考慮して、R(X)=1(Xが0の場合)、R(X)=X+2(Xが0以外の場合)を用いることも好適である。 The distribution of MVD absolute values (= X) often concentrates around X = 0. In this case, it is preferable to use a code such that the code amount is a function R (X) such that the degree of increase decreases as X increases. Therefore, it is better to use LOG (X + 1) as R (X). Further, when the MVD absolute value X is 0, coding for indicating plus or minus is unnecessary, and therefore, the MVD can be encoded by one bit less than when the MVD absolute value X is other than 0. Taking this property into consideration, it is also preferable to use R (X) = 1 (when X is 0) and R (X) = X + 2 (when X is other than 0).
 (MVの存在可能領域)
 図11は、PMV候補数が2の場合のMVの存在可能領域を説明する図である。PMV候補としてPMV候補算出部1112でPMV1とPMV2が算出され、PMV決定部1113でPMVとしてPMV1が選択された状態を示す。また、PMVCOSTには市街値距離を用いる。PMV決定部1113でPMV1が選択されたということは、PMVCOSTを距離として、MVとPMV1の距離が、MVとPMV2の距離と等しいか、より小さいことを意味する。すなわち、
 PMVCOST(MV、PMV1) <= PMVCOST(MV、PMV2)
が成り立つ。よってMVの存在可能領域は上記領域(図11中の斜線領域)に限定される。
(Available area of MV)
FIG. 11 is a diagram for explaining the possible existence area of the MV when the number of PMV candidates is two. The PMV candidate calculation unit 1112 calculates PMV1 and PMV2 as PMV candidates, and the PMV determination unit 1113 shows a state where PMV1 is selected as the PMV. In addition, the city value distance is used for PMVCOST. The fact that PMV1 is selected by the PMV determination unit 1113 means that the distance between MV and PMV1 is equal to or smaller than the distance between MV and PMV2 with PMVCOST as the distance. That is,
PMVCOST (MV, PMV1) <= PMVCOST (MV, PMV2)
Is true. Therefore, the possible existence area of MV is limited to the above-mentioned area (shaded area in FIG. 11).
 PMVCOSTが市街値距離の場合、MVの存在可能領域とそれ以外の領域とを分割する線は、PMV1とPMV2の垂直2等分線L1となる。 When PMVCOST is a city value distance, a line dividing the possible region of MV and the other region is a vertical bisector L1 of PMV1 and PMV2.
 図12は、PMV候補数が3の場合のMVの存在可能領域を説明する図である。この場合もMVの存在可能領域(図12中の斜線領域)は、下記2つの式
 PMVCOST(MV、PMV1) <= PMVCOST(MV、PMV2)
 PMVCOST(MV、PMV1) <= PMVCOST(MV、PMV3)
の双方が成り立つ領域に限定される。このようにPMV候補の数がm個(mは1以上の整数)である場合、m-1個の不等式からなる連立方程式の解としてMVの存在可能領域は限定される。
FIG. 12 is a diagram for explaining the possible existence area of the MV when the number of PMV candidates is three. Also in this case, the existence possible region of MV (hatched region in FIG. 12) is the following two expressions PMVCOST (MV, PMV1) <= PMVCOST (MV, PMV2)
PMVCOST (MV, PMV1) <= PMVCOST (MV, PMV3)
It is limited to the area in which both of them hold. As described above, when the number of PMV candidates is m (m is an integer of 1 or more), the possible region of MV is limited as a solution of simultaneous equations including m-1 inequalities.
 図13は、PMVCOSTが市街値距離ではない場合を示す図である。図に示すとおり、PMVCOSTが市街値距離ではない場合には、MVの存在可能領域とそれ以外の領域とを分割する線は曲線となる場合もある。また、図示しないが線は滑らかな曲線であるとは限らず、折れ線となることもある。 FIG. 13 is a diagram showing a case where PMVCOST is not a city value distance. As shown in the figure, when PMVCOST is not a city-value distance, a line dividing the possible region of MV and the other region may be a curve. Although not shown, the line is not limited to a smooth curve but may be a broken line.
 (MVフラグ決定部1115)
 図5は、MVフラグ決定部1115の構成を示すブロック図である。MVフラグ決定部1115は、MV候補算出部5001、MV候補判定部5002、MVインデックス決定部5003から構成される。MVフラグ決定部1115では、PMV、PMVとMVとの差分絶対値(MVD絶対値)の情報が既知である。
(MV flag determination unit 1115)
FIG. 5 is a block diagram showing a configuration of the MV flag determination unit 1115. The MV flag determination unit 1115 includes an MV candidate calculation unit 5001, an MV candidate determination unit 5002, and an MV index determination unit 5003. In the MV flag determination unit 1115, information on PMV, the difference absolute value (MVD absolute value) between PMV and MV is known.
 図14は、PMV候補数が2の場合(PMV1とPMV2)におけるMV候補とMVの存在可能領域との関係を示す図である。PMVとMVD絶対値のみの情報では、MV候補としては通常(MVD絶対値のX成分、Y成分がともに0以外の場合)、MV1からMV4の4つのMV候補が挙げられる。従ってPMVとMVD絶対値からMVを特定するためには4つのMV候補の中から1つを特定するためのMVインデックスが必要である。このとき、4通りのMV候補からMVを特定するために必要な符号量は2ビットとなる。 FIG. 14 is a diagram showing the relationship between the MV candidate and the MV's possible existence area when the number of PMV candidates is 2 (PMV1 and PMV2). In the information of only the PMV and the MVD absolute value, the MV candidate usually includes four MV candidates of MV1 to MV4 (when both the X component and the Y component of the MVD absolute value are other than 0). Therefore, in order to specify an MV from PMV and MVD absolute values, an MV index for specifying one of four MV candidates is required. At this time, the code amount required to specify an MV from the four MV candidates is 2 bits.
 今、符号化されるPMVがPMV1の場合に、図11と同様にMVの存在可能領域を限定すると、図14においてはMV4はMVの存在可能領域から外れる。MVの存在可能領域外のMV候補を除外すると、有効なMV候補数は3になる。この場合、MVインデックスの符号化に必要な符号量は2ビット以内に減らすことができる。 Now, if the PMV to be encoded is PMV1, and the possible region of MV is limited as in FIG. 11, MV4 deviates from the possible region of MV in FIG. If the MV candidate outside the possible region of MV is excluded, the number of effective MV candidates is three. In this case, the amount of code required for coding the MV index can be reduced to 2 bits or less.
 以下、PMVとMVD絶対値とから定まるMV候補と、前述のMV候補の中でMVの存在可能領域内にあるMV候補と、を区別するために、前者を仮MV候補、後者をMV候補と呼ぶこととする。 Hereinafter, in order to distinguish between an MV candidate determined from PMV and an MVD absolute value and an MV candidate within the MV's possible region among the aforementioned MV candidates, the former is regarded as a temporary MV candidate, and the latter is regarded as an MV candidate. I will call it.
 (MV候補算出部5001)
 MV候補算出部5001は、PMVとMVD絶対値を入力とし、仮MV候補および仮MV候補の数を算出する。図7はMV候補算出部5001の動作フローを示すフローチャートである。MVD絶対値とPMVのX成分、Y成分は各々(mvd_x、mvd_y)、(pmv_x、pmv_y)と表現されるものとする。
(MV candidate calculation unit 5001)
The MV candidate calculation unit 5001 receives the PMV and the MVD absolute value, and calculates the number of temporary MV candidates and temporary MV candidates. FIG. 7 is a flowchart showing an operation flow of the MV candidate calculation unit 5001. The MVD absolute value and the X component and the Y component of PMV are expressed as (mvd_x, mvd_y) and (pmv_x, pmv_y), respectively.
 S701 mvd_x==0かつmvd_y==0の場合にはS702に進み、そうでない場合にはS703に移行する。 S701 If mvd_x == 0 and mvd_y == 0, the process proceeds to S702, and if not, the process proceeds to S703.
 S702 仮MV候補数nを1とし、仮MV候補tMV1を以下により算出する。 S702 The temporary MV candidate number n is set to 1, and the temporary MV candidate tMV1 is calculated by the following.
 tMV1=(pmv_x、pmv_y)
 S703 mvd_x==0の場合にはS704に進み、そうでない場合にはS705に移行する。
tMV1 = (pmv_x, pmv_y)
S703 If mvd_x == 0, the process proceeds to S704, and if not, the process proceeds to S705.
 S704 仮MV候補数nを2とし、仮MV候補tMV1、tMV2を以下により算出する。 S704 The temporary MV candidate number n is set to 2, and temporary MV candidates tMV1 and tMV2 are calculated by the following.
 tMV1=(pmv_x、pmv_y+mvd_x)
 tMV2=(pmv_x、pmv_y―mvd_x)
 S705 mvd_y==0の場合にはS706に進み、そうでない場合にはS707に移行する。
tMV1 = (pmv_x, pmv_y + mvd_x)
tMV2 = (pmv_x, pmv_y-mvd_x)
S705 If mvd_y == 0, the process proceeds to S706, and if not, the process proceeds to S707.
 S706 仮MV候補数nを2とし、仮MV候補tMV1、tMV2を以下により算出する。 S706 The temporary MV candidate number n is set to 2, and temporary MV candidates tMV1 and tMV2 are calculated by the following.
 tMV1=(pmv_x+mvd_x、pmv_y)
 tMV2=(pmv_x―mvd_x、pmv_y)
 S707 仮MV候補数nを4とし、仮MV候補tMV1、tMV2、tMV3、tMV4を以下により算出する。
tMV1 = (pmv_x + mvd_x, pmv_y)
tMV2 = (pmv_x−mvd_x, pmv_y)
S707 The temporary MV candidate number n is 4, and temporary MV candidates tMV1, tMV2, tMV3, and tMV4 are calculated by the following.
 tMV1=(pmv_x+mvd_x、pmv_y+mvd_y)
 tMV2=(pmv_x+mvd_x、pmv_y―mvd_y)
 tMV3=(pmv_x―mvd_x、pmv_y+mvd_y)
 tMV4=(pmv_x―mvd_x、pmv_y―mvd_y)
 (MV候補判定部5002)
 MV候補判定部5002は、PMV、仮MV候補、仮MV候補数、MVD絶対値を入力とし、仮MV候補がMVの存在可能領域にあるか否かの判定を行う。この判定により、MVの存在可能領域外にある仮MV候補を排除することで得られるMV候補とMV候補数をMVインデックス決定部5003に出力する。
tMV1 = (pmv_x + mvd_x, pmv_y + mvd_y)
tMV2 = (pmv_x + mvd_x, pmv_y−mvd_y)
tMV3 = (pmv_x−mvd_x, pmv_y + mvd_y)
tMV4 = (pmv_x−mvd_x, pmv_y−mvd_y)
(MV candidate determination unit 5002)
The MV candidate determination unit 5002 receives the PMV, the provisional MV candidate, the number of provisional MV candidates, and the MVD absolute value, and determines whether or not the provisional MV candidate is in the possible existence area of the MV. By this determination, the MV candidate and the number of MV candidates obtained by excluding the temporary MV candidate outside the possible region of the MV are output to the MV index determination unit 5003.
 図8は、MV候補判定部5002の動作フローを示すフローチャートである。 FIG. 8 is a flowchart showing an operation flow of the MV candidate determination unit 5002.
 S801では、PMV決定部1113において用いたコスト関数PMVCOSTを用いてPMVとMVとの間の距離min_distを算出する。MV候補判定部5002にはMVを入力していないが、既に説明したように関数PMVCOSTはPMVとMVの差分絶対値であるMVD絶対値から算出可能である。 In S801, the distance min_dist between PMV and MV is calculated using the cost function PMVCOST used in the PMV determination unit 1113. Although the MV is not input to the MV candidate determination unit 5002, as described above, the function PMVCOST can be calculated from the MVD absolute value which is the difference absolute value between PMV and MV.
 仮MV候補とPMV候補の距離は、仮MV候補がMVの存在可能領域にある場合、常にmin_dist以上になる。逆に、仮MV候補とPMV候補の距離がmin_dist未満になる場合、その仮PMV候補は、MV候補ではないとして排除することが可能である。 The distance between the provisional MV candidate and the PMV candidate is always min_dist or more when the provisional MV candidate is in the MV possible region. Conversely, if the distance between the temporary MV candidate and the PMV candidate is less than min_dist, the temporary PMV candidate can be excluded as not being an MV candidate.
 S802 MV候補インデックスを示す変数nnを1に初期化する。 In step S802, a variable nn indicating an MV candidate index is initialized to one.
 L801 仮MV候補インデックスを示す変数iをループ変数として、iが1から仮MV候補数nと等しくなるまでのn回だけL802からS806の間をループする。 L801 A loop between L802 and S806 is performed n times until i becomes equal to the number of temporary MV candidates n, with the variable i indicating the temporary MV candidate index as a loop variable.
 L802 PMV候補インデックスを示す変数jをループ変数として、jが1からPMV候補数mと等しくなるまでのm回だけS803からS804の間をループする。 L802 A variable j indicating a PMV candidate index is set as a loop variable, and a loop from S803 to S804 is repeated m times until j becomes equal to the number of PMV candidates m.
 S803 仮MV候補インデックスiで示される仮MV候補tMViと、PMV候補インデックスjで示されるPMV候補PMVjとの間の距離dist_ijを、PMV決定部1113で用いたコスト関数PMVCOSTを用いて算出する。 In step S803, the distance dist_ij between the temporary MV candidate tMVi indicated by the temporary MV candidate index i and the PMV candidate PMVj indicated by the PMV candidate index j is calculated using the cost function PMVCOST used by the PMV determination unit 1113.
 S804 dist_ijがmin_dist未満である場合、PMVインデックスを示す変数jのループ(L802のループ)を抜ける。そうではない場合にはL802のループを継続する。なお、dist_ijがmin_dist未満であるということは、仮MV候補tMViがMVの存在可能領域外にあることを意味する。 S804 If dist_ij is less than min_dist, the loop of variable j indicating the PMV index (loop of L802) is exited. If not, the loop of L802 is continued. In addition, that dist_ij is less than min_dist means that the tentative MV candidate tMVi is out of the possible range of the MV.
 S805 仮MV候補tMViは、MVの存在可能領域にあると判断されたため、MV候補fMVに追加する。具体的には、fMVnnにtMViを代入する。 S805 Since the tentative MV candidate tMVi is determined to be in the possible region of MV, it is added to the MV candidate fMV. Specifically, tMVi is substituted for fMVnn.
 S806 MV候補インデックスを示す変数nnを1だけインクリメントする。
以上の動作フローにより、MV候補数nnとMV候補fMVを得る。
In step S806, the variable nn indicating the MV candidate index is incremented by one.
According to the above operation flow, the number of candidate MVs nn and the candidate MVs of MV are obtained.
 なお、MV候補算出部5001とMV候補判定部5002を一体とすることにより、全ての仮MV候補を算出することなく、MV候補を算出することも可能である。この場合、仮MV候補の1つ1つを算出する度にL802のループによる判定を行う。 Note that by integrating the MV candidate calculation unit 5001 and the MV candidate determination unit 5002, it is also possible to calculate MV candidates without calculating all of the provisional MV candidates. In this case, the determination in the loop of L802 is performed each time the temporary MV candidates are calculated.
 (MVインデックス決定部5003)
 MVインデックス決定部5003は、入力されたMV(符号化対象ブロックのMV)とMV候補、MV候補数から、MVがMV候補のうちのいずれであるかを判定し、それを示すMVインデックスを決定する。
(MV index determination unit 5003)
The MV index determination unit 5003 determines which one of the MV candidates is the MV candidate from the input MV (the MV of the coding target block), the MV candidate, and the number of MV candidates, and determines the MV index indicating it. Do.
 図9はMVインデックス決定部5003の動作フローを示すフローチャートである。 FIG. 9 is a flowchart showing an operation flow of the MV index determination unit 5003.
 L901 MV候補のインデックスを示すループ変数iについて1からMV候補数nnまで、S901をループする。 S901 is looped from 1 to the number of MV candidates nn for a loop variable i indicating an index of the L901 MV candidate.
 S901 MV候補fMViがMVと一致するかを判定する。一致する場合にはS902に進む。一致しない場合はループの終了条件までループを継続する。 In step S901, it is determined whether the MV candidate fMVi matches the MV. If they match, the processing proceeds to step S902. If they do not match, the loop continues until the loop termination condition.
 S902 MVインデックスiiにiを代入する。 S 902 substitutes i into the MV index ii.
 以上の動作フローにより、MVインデックスiiを得る。 The MV index ii is obtained by the above operation flow.
 図15は、本発明のMVの符号化データの構成を示す図である。図15に示すように、MVはPMVを示すPMVインデックス、PMVとMVとの差分の絶対値(MVD絶対値)、及びMVインデックスに分けて符号化される。なお、MVD絶対値はX成分、Y成分の順に符号化される。なお、PMV候補数が1の場合にはPMVインデックスは符号化されず、MV候補数が1の場合にはMVインデックスは符号化されない。 FIG. 15 is a diagram showing a configuration of encoded data of MV of the present invention. As shown in FIG. 15, MV is divided into a PMV index indicating PMV, an absolute value of a difference between PMV and MV (MVD absolute value), and an MV index and encoded. The MVD absolute value is encoded in the order of the X component and the Y component. When the number of PMV candidates is one, the PMV index is not encoded, and when the number of MV candidates is one, the MV index is not encoded.
 以上、説明した動画像符号化装置100では、MVの予測値として複数のPMV候補を算出し、MVの符号化に適したPMVを選択し符号化する動きベクトル符号化方法において、PMV候補とPMVを用いてMVの存在可能領域を限定することでMVを効率的に符号化できる。 The motion image coding apparatus 100 described above calculates a plurality of PMV candidates as MV predicted values, and selects and codes a PMV suitable for MV coding. The MV can be efficiently encoded by limiting the possible region of the MV using.
 より具体的には、MVとPMVの差分絶対値(MVD絶対値)を符号化した上で、PMVとMVD絶対値から定まる仮MV候補から、MVの存在可能領域外にあるものを排除することでMV候補を限定し、限定したMV候補からMVを一意に特定するMVインデックスを符号化する。 More specifically, after encoding the difference absolute value (MVD absolute value) of MV and PMV, excluding those outside the MV's possible existence area from temporary MV candidates determined from PMV and MVD absolute value The MV candidate is limited by and the MV index that uniquely identifies the MV from the limited MV candidate is encoded.
 MVの存在可能領域を限定することにより、MV候補からMVを特定するためのMVインデックスの符号量を削減することができる。 By limiting the possible existence area of the MV, it is possible to reduce the code amount of the MV index for specifying the MV from the MV candidate.
 (復号装置)
 図2は本発明の第2の実施形態の動画像復号装置200の構成を示すブロック図である。動画像復号装置200は、動きベクトル復号部211、可変長符号化復号部201、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、予測モード選択部225、加算部102から構成される。なお、図中の符号203は、予測パラメータのうちのフレームIDを意味する。
(Decoding device)
FIG. 2 is a block diagram showing the configuration of a moving picture decoding apparatus 200 according to the second embodiment of the present invention. The moving picture decoding apparatus 200 includes a motion vector decoding unit 211, a variable length coding / decoding unit 201, an inverse quantization unit 116, an inverse conversion unit 117, a frame memory 118, an intra prediction unit 121, an inter prediction unit 123, a prediction mode selection unit 225, an adder 102 is included. In addition, the code | symbol 203 in a figure means frame ID of prediction parameters.
 動画像復号装置200も、動画像符号化装置100同様、入力された画像データを複数のブロックに分割し、分割したブロック単位で復号が行われる。ブロック単位の復号では、可変長符号化復号部201で、予測モード、量子化変換係数が復号される。 Similarly to the moving picture coding apparatus 100, the moving picture decoding apparatus 200 divides input image data into a plurality of blocks, and decoding is performed in units of divided blocks. In block-based decoding, the variable-length coding / decoding unit 201 decodes prediction modes and quantized transform coefficients.
 予測モードは、当該ブロックがイントラ予測であるかインター予測であるかを示すモードである。予測モードがインター予測の場合、予測パラメータであるフレームID及びMVを復号する。フレームIDは可変長符号化復号部201で復号される。MVは可変長符号化復号部201、および動きベクトル復号部211で復号処理がなされる。 The prediction mode is a mode indicating whether the block is intra prediction or inter prediction. When the prediction mode is inter prediction, the prediction parameters frame ID and MV are decoded. The frame ID is decoded by the variable length coding / decoding unit 201. The MV is subjected to decoding processing by the variable-length coding / decoding unit 201 and the motion vector decoding unit 211.
 イントラ予測部121およびインター予測部123は、フレームメモリ118に格納された復号済みの画像(再生画像)から、復号された予測パラメータを用いて、イントラ予測信号およびインター予測信号を生成する。生成された予測信号は予測モード選択部225に入力される。予測モード選択部225は、予測モードに対応する予測信号を選択し、加算部102に出力する。 The intra prediction unit 121 and the inter prediction unit 123 generate an intra prediction signal and an inter prediction signal from the decoded image (reproduced image) stored in the frame memory 118 using the decoded prediction parameter. The generated prediction signal is input to the prediction mode selection unit 225. The prediction mode selection unit 225 selects a prediction signal corresponding to the prediction mode and outputs the selected prediction signal to the addition unit 102.
 復号された量子化変換係数は、逆量子化部116で逆量子化され、逆変換部117で逆DCTなどの変換がなされて復号残差信号が加算部102に出力される。加算部102では、予測信号と復号残差信号が加算され局所復号信号が生成される。生成された局所復号信号はフレームメモリ118に出力される。フレームメモリ118に出力された再生画像は、イントラ予測部121およびインター予測部123で参照画像として用いられるとともに動画像復号装置200外に出力される。 The decoded quantization transformation coefficient is inverse-quantized by the inverse quantization unit 116, and the inverse transformation unit 117 performs transformation such as inverse DCT, and the decoded residual signal is output to the addition unit 102. The adder 102 adds the prediction signal and the decoded residual signal to generate a local decoded signal. The generated local decoded signal is output to the frame memory 118. The reproduced image output to the frame memory 118 is used as a reference image by the intra prediction unit 121 and the inter prediction unit 123 and is output to the outside of the moving image decoding apparatus 200.
 図4は、動きベクトル復号部211の構成を示すブロック図である。動きベクトル復号部211は、MV格納部1111、PMV候補算出部1112、PMV選択部2113、MV選択部2115から構成される。 FIG. 4 is a block diagram showing the configuration of the motion vector decoding unit 211. As shown in FIG. The motion vector decoding unit 211 includes an MV storage unit 1111, a PMV candidate calculation unit 1112, a PMV selection unit 2113, and an MV selection unit 2115.
 MV格納部1111は、動きベクトル復号部211で復号したMVを格納する。PMV候補算出部1112はPMV候補を算出する。算出されたPMV候補およびPMV候補数はPMV選択部2113およびMV選択部2115に入力される。PMV候補数は可変長符号化復号部201内のPMVインデックス復号部2011に入力される。PMVインデックス復号部2011は、PMV候補数を用いてPMVインデックスを復号し、PMV選択部2113に入力する。PMV選択部2113は、PMV候補からPMVインデックスで示される候補を選択し、PMVとしてMV選択部2115に入力する。 The MV storage unit 1111 stores the MV decoded by the motion vector decoding unit 211. The PMV candidate calculation unit 1112 calculates PMV candidates. The calculated PMV candidate and the number of PMV candidates are input to the PMV selection unit 2113 and the MV selection unit 2115. The PMV candidate number is input to the PMV index decoding unit 2011 in the variable-length coding / decoding unit 201. The PMV index decoding unit 2011 decodes the PMV index using the number of PMV candidates, and inputs the PMV index to the PMV selection unit 2113. The PMV selection unit 2113 selects a candidate indicated by the PMV index from the PMV candidates, and inputs it to the MV selection unit 2115 as a PMV.
 また、可変長符号化復号部201は、PMVインデックスに続き、内部のMVD絶対値復号部2012により、MVD絶対値を復号し、MV選択部2115に入力する。 Further, following the PMV index, the variable-length coding / decoding unit 201 decodes the MVD absolute value by the internal MVD absolute value decoding unit 2012, and inputs the MVD to the MV selection unit 2115.
 図6は、MV選択部2115の構成を示すブロック図である。MV選択部2115は、MV候補算出部5001、MV候補判定部5002、MV抽出部6004から構成される。MV候補算出部5001、MV候補判定部5002は、実施形態1で説明したため説明は省略するが、これら手段により、PMVとMVD絶対値から算出される仮MV候補のうち、PMVとPMV候補を用いて判定されるMVの存在可能領域にあるもの(=MV候補)が算出される。MV抽出部6004は、MV候補からMVインデックスで示される候補を選択することでMVを復号する。 FIG. 6 is a block diagram showing the configuration of the MV selection unit 2115. The MV selection unit 2115 includes an MV candidate calculation unit 5001, an MV candidate determination unit 5002, and an MV extraction unit 6004. Since the MV candidate calculation unit 5001 and the MV candidate determination unit 5002 are described in the first embodiment and thus the description thereof is omitted, PMV and PMV candidates among provisional MV candidates calculated from PMV and MVD absolute values by these means are used. Those in the possible region of MV determined (== MV candidate) are calculated. The MV extraction unit 6004 decodes the MV by selecting a candidate indicated by the MV index from the MV candidates.
 以上、説明した動画像復号装置200では、MVの予測値として複数のPMV候補を算出し、MVの符号化に適したPMVを選択し復号に用いる動きベクトル復号方法において、PMV候補とPMVを用いてMVの存在可能領域を限定することで効率的に符号化されたMVを復号できる。 As described above, in the moving image decoding apparatus 200 described above, the PMV candidate and the PMV are used in a motion vector decoding method in which a plurality of PMV candidates are calculated as predicted values of MV and PMVs suitable for MV coding are selected and used for decoding. The encoded MV can be efficiently decoded by limiting the possible region of the MV.
 より具体的には、MVとPMVとの差分絶対値(MVD絶対値)を復号した上で、PMVとMVD絶対値とから定まる仮MV候補から、MVの存在可能領域外にあるものを排除することでMV候補を限定し、限定したMV候補からMVを特定するMVインデックスを復号することでMVを復号する。 More specifically, after the difference absolute value (MVD absolute value) between MV and PMV is decoded, those outside the possible region of MV are excluded from the provisional MV candidates determined from PMV and MVD absolute value Thus, the MV candidate is limited, and the MV is decoded by decoding the MV index that specifies the MV from the limited MV candidate.
 MVの存在可能領域を限定することにより、MV候補からMVを特定するために必要なMVインデックスの符号量を削減した符号化データからMVを復号できる。 By limiting the possible existence area of the MV, the MV can be decoded from the encoded data in which the code amount of the MV index necessary to specify the MV from the MV candidate is reduced.
 (動画像符号化装置100’)
 次に、本発明の第3の実施形態の動画像符号化装置100’について図17~図19、図23を参照しつつ、以下に説明する。図23は、MVの符号化データの構成を示す図である。図23に示すように、MVの符号化データは「MVD」の部分と「MVD以外」の部分から構成されている。
(Video encoding device 100 ')
Next, a moving picture coding apparatus 100 ′ according to a third embodiment of the present invention will be described below with reference to FIGS. 17 to 19 and 23. FIG. 23 is a diagram showing the configuration of MV encoded data. As shown in FIG. 23, the encoded data of MV is composed of "MVD" part and "non-MVD" part.
 本実施形態の動画像符号化装置100’は、MV候補の出現確率を考慮して算術符号化することにより、MV候補の存在確率が高いものほどそのMV候補を特定するためのフラグであるMVインデックスの符号化後の符号長が短くなるという傾向を強め、出現確率を考慮しない場合よりMVインデックスの符号量を削減するものである。 The moving picture coding apparatus 100 ′ according to the present embodiment performs the arithmetic coding in consideration of the appearance probability of the MV candidate, and thereby the MV which is a flag for specifying the MV candidate as the existence candidate of the MV candidate is higher. The tendency that the code length after encoding of the index becomes short is strengthened, and the code amount of the MV index is reduced compared to the case where the appearance probability is not considered.
 すなわち、本実施形態の動画像符号化装置100’は、第1の実施形態の動画像符号化装置100に比べて、図23の「MVD以外」の部分の符号量をさらに削減することにより、MV符号化の符号量をさらに削減することができる。そのために、本実施形態に係る動画像符号化装置100’は、MVの存在確率が高いと推定される順序にMV候補を並び替える動作を行う。 That is, the moving picture coding apparatus 100 ′ of the present embodiment further reduces the code amount of the “other than MVD” portion of FIG. 23 as compared to the moving picture coding apparatus 100 of the first embodiment. The code amount of MV coding can be further reduced. Therefore, the moving picture coding apparatus 100 'according to the present embodiment performs an operation of rearranging the MV candidates in the order in which the presence probability of the MV is estimated to be high.
 図17は本発明の第3の実施形態の動画像符号化装置100’の構成を示すブロック図である。動画像符号化装置100’は、第1の実施形態の動画像符号化装置100と同様に、変換部112、量子化部113、可変長符号化部115、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、動き推定部124、予測モード決定部125、減算部101、加算部102を備えているが、動きベクトル符号化部111’の構成が第1の実施形態の動きベクトル符号化部111と異なっている。動きベクトル符号化部111’を除く他の部材は、第1の実施形態と同様の動作を行うので、これらの部材についての説明は省略し、動きベクトル符号化部111’について図18、図19を参照して説明していくことにする。 FIG. 17 is a block diagram showing the configuration of a moving picture coding apparatus 100 'according to the third embodiment of the present invention. Similar to the moving picture coding apparatus 100 according to the first embodiment, the moving picture coding apparatus 100 ′ includes a converting unit 112, a quantizing unit 113, a variable length coding unit 115, an inverse quantizing unit 116, and an inverse converting unit. A frame memory 118, an intra prediction unit 121, an inter prediction unit 123, a motion estimation unit 124, a prediction mode determination unit 125, a subtraction unit 101, and an addition unit 102 are provided, but the configuration of the motion vector encoding unit 111 'is This differs from the motion vector encoding unit 111 of the first embodiment. The other members except the motion vector encoding unit 111 ′ perform the same operations as in the first embodiment, and thus the description of these members will be omitted, and the motion vector encoding unit 111 ′ will be described with reference to FIGS. I will refer to and explain.
 図18に示すとおり、動きベクトル符号化部111’は、動きベクトル符号化部111同様に、MV格納部1111、PMV候補算出部1112、PMV決定部1113、MVD算出部1114を備えているが、MVフラグ決定部1115’が第1の実施形態のMVフラグ決定部1115と異なっている。 As shown in FIG. 18, the motion vector encoding unit 111 ′ includes an MV storage unit 1111, a PMV candidate calculation unit 1112, a PMV determination unit 1113, and an MVD calculation unit 1114 like the motion vector encoding unit 111. The MV flag determination unit 1115 'is different from the MV flag determination unit 1115 of the first embodiment.
 図19の(a)に示すように、MVフラグ決定部1115’には、MV候補算出部5001とMV候補判定部5002との間にMV候補ソート部5004が設けられている。MV候補ソート部5004は、図19の(b)に示すように、MV候補コスト算出部5004aとソート部5004bと、を備えている。 As shown in (a) of FIG. 19, in the MV flag determination unit 1115 ', an MV candidate sorting unit 5004 is provided between the MV candidate calculation unit 5001 and the MV candidate determination unit 5002. The MV candidate sorting unit 5004 includes an MV candidate cost calculating unit 5004a and a sorting unit 5004b, as shown in (b) of FIG.
 なお、MV候補ソート部5004は、MV候補判定部5002の後に設ける構成としても良い。 The MV candidate sorting unit 5004 may be provided after the MV candidate determination unit 5002.
 MV候補ソート部5004では、MV候補算出部5001から、仮MV候補および仮MV候補の数を入力値として受け付ける。MV候補ソート部5004のMV候補コスト算出部5004aは、各仮MV候補について、その仮MV候補の座標値を入力としてMVCOSTと呼ぶ関数を適用することにより、その仮MV候補のコストを算出する。MVCOSTは、MV候補の出現確率が高いと推定されるほど、より大きな値(もしくはより小さな値)を与える関数であり様々な関数を適用することが可能である。具体的には、MV候補の座標値と各PMV候補(もしくはPMV)の座標値を入力として、仮MV候補とPMV候補との距離が大きくなるほどコストの値が大きくなるものが適当である。なお、そのような関数の具体例について後述することにする。 The MV candidate sorting unit 5004 receives the number of temporary MV candidates and the number of temporary MV candidates from the MV candidate calculation unit 5001 as an input value. The MV candidate cost calculation unit 5004a of the MV candidate sorting unit 5004 calculates, for each temporary MV candidate, the cost of the temporary MV candidate by using the coordinate value of the temporary MV candidate as an input and applying a function called MVCOST. MVC OST is a function that gives a larger value (or a smaller value) as it is estimated that the appearance probability of the MV candidate is higher, and various functions can be applied. Specifically, it is appropriate that the coordinate value of the MV candidate and the coordinate value of each PMV candidate (or PMV) are input, and the cost value increases as the distance between the provisional MV candidate and the PMV candidate increases. A specific example of such a function will be described later.
 そして、ソート部5004bはコストの小さい順に仮MV候補を並び変える。あるいは、ソート部5004bはコストの大きい順に仮MV候補を並び変えてもよい。 Then, the sorting unit 5004b rearranges the provisional MV candidates in ascending order of cost. Alternatively, the sorting unit 5004b may rearrange the provisional MV candidates in descending order of cost.
 MV候補判定部5002は、第1の実施形態と同様の方法で仮MV候補の中からMV候補を決定し、MV候補およびMV候補の数をMVインデックス決定部5003に出力する。 The MV candidate determination unit 5002 determines an MV candidate from among the provisional MV candidates in the same manner as in the first embodiment, and outputs the number of the MV candidate and the MV candidate to the MV index determination unit 5003.
 MVインデックス決定部5003は、MV候補およびMV候補の数を受け付け、各MV候補に割り当てるMVインデックスの2値データの値を決定する。ここで、各MVインデックスに割り当てる2値データの値をどのように決定するかについて、図24を参照しつつ以下に説明する。 The MV index determination unit 5003 receives the number of the MV candidate and the MV candidate, and determines the value of the binary data of the MV index to be assigned to each MV candidate. Here, how to determine the value of the binary data to be assigned to each MV index will be described below with reference to FIG.
 図24の(a)は、PMV候補と選択されやすいMV候補との関係を示した模式図である。図24において、PMV0は、PMV決定部1113により選択されたPMVであることを示している。また、MV1~MV4は、MV候補判定部5002から出力されたMV候補を示している。 (A) of FIG. 24 is a schematic diagram showing the relationship between PMV candidates and MV candidates that are easily selected. In FIG. 24, PMV0 indicates that the PMV is selected by the PMV determination unit 1113. Further, MV1 to MV4 indicate MV candidates output from the MV candidate determination unit 5002.
 一般に、MV候補のうち、選択されたPMV候補以外のPMV候補との距離が小さいものほど、MVに決定される傾向がある。MVインデックス決定部5003は、この傾向を利用して、MVインデックスの2値データの値を決定する。 Generally, the smaller the distance between the MV candidate and the PMV candidate other than the selected PMV candidate, the tendency tends to be determined as the MV. The MV index determination unit 5003 uses this tendency to determine the value of binary data of the MV index.
 すなわち、後述するように、算術符号化の際は、「0」に高い確率が割り当てられ、「1」に低い確率が割り当てられることとなるが、MVインデックス決定部5003は、MV候補ソート部5004でソートされた順(コストの小さい順)に、MV候補に「00」「01」「10」「11」を割り当てていく。この結果、図24の(b)に示すように、MV1に「00」、MV2に「01」、MV3に「10」、MV4に「11」が割り当てられることになる。 That is, as described later, at the time of arithmetic coding, a high probability is assigned to “0” and a low probability is assigned to “1”. Assign "00" "01" "10" "11" to the MV candidate in the order sorted in the order of (in order of small cost). As a result, as shown in (b) of FIG. 24, "00" is allocated to MV1, "01" to MV2, "10" to MV3, and "11" to MV4.
 そして、MVインデックス決定部5003は、決定されたMVインデックスをMVインデックス符号化部1153に出力する。そして、可変長符号化部115は、「0」および「1」に割り当てられた確率に基づいて、各MVインデックスを算術符号化する。 Then, the MV index determination unit 5003 outputs the determined MV index to the MV index coding unit 1153. Then, the variable-length coding unit 115 performs arithmetic coding on each MV index based on the probabilities assigned to “0” and “1”.
 従って、MVインデックスの符号語は、MV1の符号語の符号長が短くなり、MV4の符号語の符号長が長くなる傾向が強まる。結果として、実施形態1の場合より、MVインデックスの符号語の平均符号長が短くなり、符号量が少なくなることがわかる。なお、MVインデックス符号化部1153は、算術符号化するときに「0」「1」に割り当てる確率を適応的に変更するようにしてもよい。 Therefore, in the MV index code word, the code length of the MV1 code word is shortened, and the code length of the MV4 code word is increased. As a result, it can be seen that the average code length of the MV index code word is shorter than in the case of the first embodiment, and the code amount is reduced. Note that the MV index coding unit 1153 may adaptively change the probability assigned to “0” or “1” when performing arithmetic coding.
 また、可変長符号化部115は、固定長符号化を用いて、MV候補ソート部5004でソートされた順(コストの小さい順)に短い符号を割り当てても良い。例えば、「0」「10」「110」「111」を割り当てることで可能である。 Also, the variable-length coding unit 115 may assign short codes in the order sorted by the MV candidate sort unit 5004 (in order of small cost) using fixed-length coding. For example, it is possible by allocating “0” “10” “110” “111”.
 このように、出現確率が高いMV候補に応じてMVインデックスを割り当てることにより2値化を行った際に、算術符号化される場合の「0」、「1」の確率に偏りを持たせる方法は、MV候補判定部5002を用いない場合にも適用できる。 As described above, when binarization is performed by assigning an MV index according to an MV candidate having a high appearance probability, a method is used to bias the probability of “0” and “1” in the case of arithmetic coding. Can also be applied when the MV candidate determination unit 5002 is not used.
 なお、MV候補判定部5002を用いる場合には、出現確率が高いMV候補に応じて符号化を行うことはさらに効率的になる。例えば、MV候補判定部5002によりMV候補の数が3となった場合、「0」、「10」、「11」のように、出現確率の高いMV候補に短い符号(もしくは算術符号の場合の2進数列)を割り当てることで符号量を低減することができる。 When the MV candidate determination unit 5002 is used, it is more efficient to perform encoding in accordance with the MV candidate having a high appearance probability. For example, when the number of MV candidates becomes 3 by the MV candidate determination unit 5002, a short code (or an arithmetic code) for an MV candidate having a high appearance probability, such as “0”, “10”, and “11” The code amount can be reduced by allocating a binary number sequence.
 また、MV候補の数が3である場合のような、MV候補の数が2の整数乗でない場合には一般にMV候補に対応する符号もしくは2進数列は不等長になる。この場合、MV候補の出現確率に応じてMVインデックスを割り当てる当該処理の有効性が大きい。この特性を考慮して、最も効果の高い場合のみこの処理を適用する、すなわち、MV候補の数が特定の条件に合致した場合(例えば2の整数乗ではない場合)のみ、MV候補のソートを行うことも可能である。この処理には、有効と判定されたMV候補の数を必要なので、MV候補ソート部5004はMV候補判定部5002の後に設ける。 Also, when the number of MV candidates is not an integral power of 2 as in the case where the number of MV candidates is 3, generally the code or binary sequence corresponding to the MV candidate has an unequal length. In this case, the effectiveness of the process of allocating an MV index according to the appearance probability of the MV candidate is large. Taking this property into consideration, this process is applied only when it is most effective, that is, sorting of MV candidates is performed only when the number of MV candidates meets a specific condition (for example, when it is not an integral power of 2). It is also possible to do. Since this process requires the number of MV candidates determined to be valid, the MV candidate sorting unit 5004 is provided after the MV candidate determination unit 5002.
 なお、出現確率が高いMV候補に応じてMVインデックスの値を割り当てる処理は、MV候補の文字通りのソートを用いる必要はない。高々4個程度のMV候補数であれば、複数の条件分岐を組み合わせることで容易に処理が可能である。 In the process of assigning the value of the MV index in accordance with the MV candidate having a high appearance probability, it is not necessary to use the literal sort of the MV candidate. If the number of MV candidates is at most about four, processing can be easily performed by combining a plurality of conditional branches.
 例えば、MV候補コストが、コストA、コストB、コストC、コストDがコストA<=コストB<=コストC<=コストDの順にあるかは、
 IF(コストA<=コストB かつ コストB<=コストC かつコストC<=コストD)
 という条件分岐文で判定できる。この条件分に該当した場合において、対応するMVインデックス、すなわち、コストA~コストDのMV候補に、「00」「01」「10」「11」で割り当てる。他の順序であるかどうかも同様の条件分岐文を並べることで容易に実施できる。
For example, whether the MV candidate cost is in the order of cost A, cost B, cost C, and cost D is cost A <= cost B <= cost C <= cost D,
IF (cost A <= cost B and cost B <= cost C and cost C <= cost D)
It can be judged by the conditional branch statement. When the condition is satisfied, “00”, “01”, “10”, and “11” are assigned to the corresponding MV index, that is, the MV candidate of the cost A to the cost D. Whether it is another order or not can be easily implemented by arranging similar conditional branch statements.
 この場合、ソート部5004bは不要になり、MVインデックス決定部5003において上記のようなMV候補コストを用いた条件分岐によるMVインデックス決定を行うことになる。 In this case, the sorting unit 5004 b becomes unnecessary, and the MV index determination unit 5003 performs the MV index determination by the conditional branch using the MV candidate cost as described above.
 また、MV候補コストの順に割り振るのではなく、最小の(もしくは最大の)N個のMV候補コストについてMV候補コストの順に割り振るのであればさらに処理が容易になる。例えば、MV候補コスト最小(もしくは最大)のMV候補を算出し特定のMVインデックスを割り振るような処理は、最小値のMV候補を特定する処理だけで実現できることから極めて簡易な構成で実現できる。 In addition, if the process is performed in the order of the MV candidate costs for the minimum (or the maximum) N MV candidate costs instead of the order of the MV candidate costs, the process becomes easier. For example, the process of calculating the MV candidate with the MV candidate cost minimum (or maximum) and allocating a specific MV index can be realized only by the process of specifying the MV candidate of the minimum value and can be realized with an extremely simple configuration.
 本発明は、MV候補の完全な順序付けを行わないような、このような簡略化された構成も含むものとする。 The present invention also includes such a simplified configuration that does not perform complete ordering of the MV candidates.
 (MVCOST関数の具体例)
 MVCOST関数の具体例としては、以下の関数1~関数4が考えられる。
関数1:MV候補コスト=Σ(|mv_x-pmvi_x|+|mv_y-pmvi_y|)(i:1~N、pmviは選択されなかったPMV候補)
関数1´:MV候補コスト=Σ((mv_x-pmvi_x)^2+(mv_y-pmvi_y)^2)(i:1~N、pmviは選択されなかったPMV候補、^は2乗を示す)
関数2:MV候補コスト=|mv_x|+|mv_y|
関数3:MV候補コスト=|mv_x-pmv0_x|+|mv_y-pmv0_y|(pmv0は選択されたPMV候補)
関数4:MV候補コスト=MIN(|mv_x-pmvi_x|+|mv_y-pmvi_y|)(i:1~N、pmviは選択されなかったPMV候補)
 使用するMVCOST関数は、関数1であることが望ましいが、関数1´や関数2~関数4を用いてもよい。また、フレームタイプに応じて、MVCOST関数として使用する関数を変更してもよい。例えば、PフレームではMVCOST関数として関数1を用い、BフレームではMVCOST関数として関数2を用いるようにしてもよい。なお、後述のように、MVインデックス符号化部1153は、MV候補コスト算出部5004aが使用したMVCOST関数を示す情報を符号化して、符号化データのヘッダに記録しておいても良い。
(Specific example of the MVCOST function)
The following functions 1 to 4 can be considered as specific examples of the MVCOST function.
Function 1: MV candidate Cost = Σ (| mv_x-pmv i _x | + | mv_y-pmv i _y |) (i: 1 ~ N, PMV candidate pmv i is not selected)
Function 1': MV candidate Cost = Σ ((mv_x-pmv i _x) ^ 2 + (mv_y-pmv i _y) ^ 2) (i: 1 ~ N, pmv i is PMV candidates that were not selected, ^ squared Show)
Function 2: MV candidate cost = | mv_x | + | mv_y |
Function 3: MV candidate cost = | mv_x-pmv 0 _x | + | mv_y-pmv 0 _y | (pmv 0 is a selected PMV candidate)
Function 4: MV candidate Cost = MIN (| mv_x-pmv i _x | + | mv_y-pmv i _y |) (i: 1 ~ N, PMV candidate pmv i is not selected)
The MVCOST function to be used is preferably function 1, but function 1 'or functions 2 to 4 may be used. Also, the function used as the MVCOST function may be changed according to the frame type. For example, function 1 may be used as the MVC OST function in P frame, and function 2 may be used as the MVC OST function in B frame. As described later, the MV index coding unit 1153 may code information indicating the MVCOST function used by the MV candidate cost calculation unit 5004a and record the coded information in the header of the coded data.
 なお、MV候補コスト算出に用いる(MVCOST関数に入力する)PMVは、PMV候補算出部1112で算出されたPMV候補、すなわち、PMVインデックスで選択対象となるPMV候補に限る必要はない(そのため「MV候補コスト算出に用いるPMV候補」ではなく単に「MV候補コスト算出に用いるPMV」と記載している)。例えば、PMV候補算出部1112において、mv_medとmv_colをPMV候補として算出する場合において、MV候補コスト算出に用いるPMVをmv_medとmv_col、mv_aとしても良い。 The PMV used for MV candidate cost calculation (input to the MVC OST function) need not be limited to the PMV candidates calculated by the PMV candidate calculation unit 1112, that is, PMV candidates to be selected by the PMV index (so Not "PMV candidate used for candidate cost calculation" but simply "PMV used for MV candidate cost calculation". For example, when mv_med and mv_col are calculated as PMV candidates in the PMV candidate calculation unit 1112, PMVs used for MV candidate cost calculation may be mv_med, mv_col, and mv_a.
 これは、PMVインデックスの符号量を小さくするためには、PMV候補の数を小さい数(2個が適当)に制限する必要があるが、MV候補の出現確率を推定するためにはそのような制限がないためである。 It is necessary to limit the number of PMV candidates to a small number (2 is appropriate) in order to reduce the code amount of PMV index, but to estimate the appearance probability of MV candidates It is because there is no restriction.
 なお、PMVインデックスで選択対象となるPMV候補とは全く異なるPMV、例えば、mv_aをMV候補コスト算出に用いるPMV候補としても良い。このようにPMVを考えると、関数2はPMVとして{0、0}を用いたのと同一となる。 Note that a PMV completely different from the PMV candidate to be selected by the PMV index, for example, mv_a may be a PMV candidate that is used for MV candidate cost calculation. Thus, considering PMV, function 2 is identical to using {0, 0} as PMV.
 なお、MV候補コスト算出用のPMVは、上述のようにPMV候補算出部1112のPMV候補をそのまま用いる構成にしても良いし、PMV候補算出部1112においてPMV候補とは別にMV候補コスト算出用のPMVを算出する構成としても良い。また、動きベクトル符号化部111’内に、PMV候補算出部1112とは別のPMVを算出する手段を設ける構成にしても良い。 The PMV for calculating the MV candidate cost may be configured to use the PMV candidate of the PMV candidate calculating unit 1112 as it is as described above, or the PMV candidate calculating unit 1112 may be used for calculating the MV candidate cost separately from the PMV candidate. It may be configured to calculate PMV. Further, the motion vector encoding unit 111 ′ may be provided with means for calculating PMV different from the PMV candidate calculation unit 1112.
 この場合、複数のPMV候補を算出しMVの符号化に適したPMVを選択し、MVとPMVの差分を符号化/復号する符号化装置/復号装置ではなく、単一のPMVを算出しMVとPMVの差分を符号化/復号する符号化装置/復号装置にも適用可能である。この場合、PMV候補算出部1112、PMV決定部1113、PMVインデックス符号化部1151、MV候補判定部5002を備えない符号化装置の構成でも実現できる。 In this case, it is not an encoder / decoder that calculates a plurality of PMV candidates, selects a PMV suitable for MV coding, and encodes / decodes the difference between MV and PMV, but calculates a single PMV to calculate MV The present invention is also applicable to an encoding apparatus / decoding apparatus that encodes / decodes the difference between the and PMV. In this case, the configuration can also be realized by a configuration of a coding device that does not include the PMV candidate calculation unit 1112, the PMV determination unit 1113, the PMV index coding unit 1151, and the MV candidate determination unit 5002.
 (PMV決定部1113が使用するPMVCOST関数について)
 前述したように、PMV決定部1113では、MVとPMV候補、PMV候補数を入力とし、PMV候補のうちでMVとPMVとから算出されるコスト関数PMVCOST(MV,PMV)を最小化する候補をPMVとして選択するが、PMV決定部1113は、動きベクトル符号化部111の負荷の状況に応じて、PMVCOST関数として使用する関数を動的に変更するようにしてもよい。
(About the PMVCOST function used by the PMV determination unit 1113)
As described above, the PMV determination unit 1113 receives the MV, the PMV candidate, and the PMV candidate number, and among the PMV candidates, selects a candidate for minimizing the cost function PMVCOST (MV, PMV) calculated from the MV and PMV. Although the PMV is selected as the PMV, the PMV determination unit 1113 may dynamically change the function used as the PMVCOST function according to the load condition of the motion vector encoding unit 111.
 すなわち、前述したようにPMVCOST関数としては様々な関数を適用可能であるが、その中には、PMVCOST=0のように符号化効率も演算量も変わらないもの、PMVCOST=|MV_X-PMV_X|+|MV_Y-PMV_Y|のように符号化効率はあまり改善しないが演算量も少ないもの、PMVCOST=R(|MV_X-PMV_X|)+R(|MV_Y-PMV_Y|)のように、符号化効率が大きく改善するが演算量も大きいもの、など様々なものがある。そこで、PMV決定部1113は、動きベクトル符号化部111の負荷の状況に応じて、負荷が軽い場合には、符号化効率の高い関数を用い、負荷が一定以上である場合には、演算量の小さい関数を用いて、PMVを選択するようにしてもよい。この場合、MVインデックス符号化部1151は、PMV決定部1113が使用したPMVCOST関数を示す情報(フラグ)を符号化して、符号化データのヘッダに記録しておく。なお、記録するヘッダは、シーケンスヘッダ、ピクチャヘッダ、スライスヘッダ、MBヘッダなどであればよい。また、シーケンスやピクチャ毎にヘッダを符号化することなく、シーケンスパラメータ、ピクチャパラメータというデータを先に符号化し、各シーケンス、ピクチャではそのデータをインデックスで指定、参照する方式もあるが、当該発明では、このようなデータもヘッダとして扱うため、これらデータで関数を示すフラグを符号化すれば良い。 That is, as described above, although various functions can be applied as the PMVCOST function, among them, there is no change in the coding efficiency or the calculation amount such as PMVCOST = 0, PMVCOST = | MV_X-PMV_X | + Coding efficiency does not improve so much like | MV_Y-PMV_Y |, but the amount of computation is small, but PMVCOST = R (| MV_X-PMV_X |) + R (| MV_Y-PMV_Y |) greatly improves coding efficiency However, there are various things such as a large amount of calculation. Therefore, according to the load condition of the motion vector encoding unit 111, the PMV determination unit 1113 uses a function with high encoding efficiency when the load is light, and the operation amount when the load is a certain level or more. The PMV may be selected using a small function of In this case, the MV index encoding unit 1151 encodes information (flag) indicating the PMVCOST function used by the PMV determination unit 1113 and records the encoded information in the header of the encoded data. The header to be recorded may be a sequence header, a picture header, a slice header, an MB header or the like. There is also a method of coding data called sequence parameters and picture parameters first and coding and specifying the data by index for each sequence and picture without coding the header for each sequence or picture. Since such data is also treated as a header, a flag indicating a function may be encoded with these data.
 このように、動きベクトル符号化部111の負荷の状況に応じて、PMVを選択可能にすることにより、符号化効率と演算量とのバランスをとることができる。また、符号化装置の構成を簡略化する場合や符号化の負荷が高い場合には、PMVCOST=0を選択することにより、PMVによる制約を利用しない符号化も可能である、すなわち、動きベクトル符号化部111でPMVの制約を考慮することなく自由にPMVを選択することができる。 As described above, by making the PMV selectable in accordance with the load condition of the motion vector encoding unit 111, it is possible to balance the encoding efficiency and the operation amount. Also, in order to simplify the configuration of the encoding apparatus or when the load of encoding is high, it is possible to perform encoding not using PMV restrictions by selecting PMVCOST = 0, that is, motion vector code The conversion unit 111 can freely select the PMV without considering the restriction of the PMV.
 PMVCOST関数を選択する場合には、PMV決定部1113で用いたPMVCOST関数と同じ関数をMV候補判定部5002でも用いることが必要である。なお、符号化装置を簡略化するため、符号化装置では常にPMVCOST=0を選択する場合には、仮MV候補がそのままMV候補となるため、MV候補の判定を行うMV候補判定部5002を備えない構成も可能である。 When selecting the PMVCOST function, it is necessary to use the same function as the PMVCOST function used in the PMV determination unit 1113 also in the MV candidate determination unit 5002. In order to simplify the coding apparatus, when PMVCOST = 0 is always selected in the coding apparatus, the provisional MV candidate becomes the MV candidate as it is, and therefore the coding apparatus is provided with the MV candidate determination unit 5002 for determining the MV candidate. No configuration is also possible.
 (MV候補ソート部5004が使用するMVCOST関数について)
 MV候補ソート部5004で用いるMVCOST関数についても、PMVCOST関数と同様、MVCOST関数を示す情報(フラグ)を符号化して、符号化データのヘッダに記録しておくことにより、符号化効率と演算量とのバランスをとることができる。符号化装置の構成の簡略化及び、符号化装置の高速化の要求が強い場合には、MVCOST=0とすればソート自体が不要になり演算量を削減できる。
(About the MVCOST function used by the MV candidate sorting unit 5004)
As for the MVCOST function used in the MV candidate sorting unit 5004, encoding efficiency and operation amount can be obtained by encoding information (flag) indicating the MVCOST function and recording it in the header of encoded data, as in the PMVCOST function. Balance. In the case where there is a strong demand for simplification of the configuration of the encoding device and speeding up of the encoding device, if MVC OST = 0, the sort itself becomes unnecessary and the amount of operation can be reduced.
 なお、PMVCOST関数やMVCOST関数をフレームタイプによって変更する場合には、フレームタイプ毎のMVCOST関数を示すフラグを符号化することが適当である。 When the PMVCOST function or the MVCOST function is changed according to the frame type, it is appropriate to encode a flag indicating the MVCOST function for each frame type.
 (復号装置200’)
 次に、本発明の第4の実施形態の復号装置200’について図20~図22を参照しつつ、以下に説明する。
(Decoding device 200 ')
Next, a decoding device 200 ′ according to a fourth embodiment of the present invention will be described below with reference to FIGS. 20 to 22.
 図20は本発明の第4の実施形態の復号装置200’の構成を示すブロック図である。復号装置200’は、第2の実施形態の復号装置200と同様に、可変長符号化復号部201、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、予測モード選択部225、加算部102を備えているが、動きベクトル復号部211’が第2の実施形態の動きベクトル復号部211と異なっている。動きベクトル復号部211’を除く他の部材は、第2の実施形態と同様の動作を行うので、これらの部材についての説明は省略し、動きベクトル復号部211’について図21、図22を参照して説明していくことにする。 FIG. 20 is a block diagram showing the configuration of a decoding apparatus 200 'according to the fourth embodiment of the present invention. Similar to the decoding device 200 of the second embodiment, the decoding device 200 ′ includes the variable-length coding / decoding unit 201, the inverse quantization unit 116, the inverse conversion unit 117, the frame memory 118, the intra prediction unit 121, and the inter prediction unit Although a prediction mode selection unit 225 and an addition unit 102 are provided, the motion vector decoding unit 211 'is different from the motion vector decoding unit 211 of the second embodiment. The other members except for the motion vector decoding unit 211 'perform the same operations as in the second embodiment, and thus the description of these members is omitted, and the motion vector decoding unit 211' is referred to FIG. 21 and FIG. I will explain it.
 図21に示すとおり、動きベクトル復号部211’は、動きベクトル復号部211と同様に、MV格納部1111、PMV候補算出部1112、PMV選択部2113を備えているが、MV選択部2115’が第2の実施形態のMV選択部2115と異なっている。 As shown in FIG. 21, the motion vector decoding unit 211 ′ includes the MV storage unit 1111, the PMV candidate calculation unit 1112, and the PMV selection unit 2113 as in the motion vector decoding unit 211, but the MV selection unit 2115 ′ This differs from the MV selection unit 2115 of the second embodiment.
 図22に示すように、MV選択部2115’には、MV候補算出部5001とMV候補判定部5002との間にMV候補ソート部5004が設けられている。 As shown in FIG. 22, in the MV selection unit 2115 ', an MV candidate sorting unit 5004 is provided between the MV candidate calculation unit 5001 and the MV candidate determination unit 5002.
 MV候補ソート部5004では、MV候補算出部5001から、仮MV候補および仮MV候補の数を入力値として受け付ける。MV候補ソート部5004は、MVフラグ決定部1115’のMV候補ソート部5004と同様のソートを行う。なお、MVフラグ決定部1115’のMV候補ソート部5004が動的にMVCOST関数を変更した場合には、MV候補ソート部5004は、符号化データのヘッダに記録された、MVCOST関数を示す情報を復号して参照することにより、ソートを行う。 The MV candidate sorting unit 5004 receives the number of temporary MV candidates and the number of temporary MV candidates from the MV candidate calculation unit 5001 as an input value. The MV candidate sorting unit 5004 performs the same sort as the MV candidate sorting unit 5004 of the MV flag determination unit 1115 '. When the MV candidate sorting unit 5004 of the MV flag determination unit 1115 'dynamically changes the MVCOST function, the MV candidate sorting unit 5004 records the information indicating the MVCOST function recorded in the header of the encoded data. Sorting is performed by decoding and referencing.
 なお、PMV決定部1113及びMV候補判定部5002が動的にPMVCOST関数を変更した場合には、符号化データのヘッダに記録された、PMVCOST関数を示す情報を復号してMV候補判定部5002における判定を行う。 When the PMV determination unit 1113 and the MV candidate determination unit 5002 dynamically change the PMVCOST function, the information indicating the PMVCOST function recorded in the header of the encoded data is decoded and the MV candidate determination unit 5002 Make a decision.
 そして、MV候補判定部5002は、第2の実施形態と同様の方法で仮MV候補の中からMV候補を決定し、MV候補およびMV候補の数をMV抽出部6004に出力する。 Then, the MV candidate determination unit 5002 determines an MV candidate from among the temporary MV candidates by the same method as that of the second embodiment, and outputs the number of the MV candidate and the MV candidate to the MV extraction unit 6004.
 最後に、MV抽出部6004は、MV候補およびMV候補の数を受け付け、MV候補からMVインデックスで示される候補を選択することでMVを復号する。 Finally, the MV extraction unit 6004 receives the number of the MV candidate and the MV candidate, and decodes the MV by selecting a candidate indicated by the MV index from the MV candidate.
 なお、単一のPMVを算出しMVとPMVの差分を復号する復号装置においては、PMV候補算出部1112、PMV選択部2113、PMVインデックス復号部2011、MV候補判定部5002を備えない復号装置の構成でも実現できる。 Note that the decoding apparatus that calculates a single PMV and decodes the difference between MV and PMV is a decoding apparatus that does not include the PMV candidate calculation unit 1112, PMV selection unit 2113, PMV index decoding unit 2011, and MV candidate determination unit 5002. It can also be realized by the configuration.
 (動画像符号化装置100”)
 最後に、本発明の第5の実施形態の動画像符号化装置100”について図25~図27を参照しつつ、以下に説明する。
(Moving picture coding apparatus 100 ′ ′)
Finally, a moving picture coding apparatus 100 ′ ′ according to a fifth embodiment of the present invention will be described below with reference to FIGS. 25 to 27.
 本実施形態の動画像符号化装置100”は、PMVに応じて、MVDの算術符号化に用いる確率(コンテキスト)を適応的に切り替えることにより、MVD絶対値の符号化効率を向上させるものである。 The moving picture coding apparatus 100 ′ ′ according to the present embodiment improves coding efficiency of the MVD absolute value by adaptively switching the probability (context) used for arithmetic coding of the MVD according to the PMV. .
 この切り替えは、MVD絶対値の大きさに、MVDの算出に用いたPMVの種類に応じた傾向があるという観察結果に基づくものである。より具体的には、PMV候補がmv_medとmv_colである場合において、mv_colがPMVの場合には、mv_medがPMVの場合よりもMVD絶対値が小さくなる傾向がある。なお、以下の構成においては、後述する初期値以外は、いずれのPMVがよりMVD絶対値が小さくなる傾向があるかを明示的な処理として組み込まなくても、算術符号において適応的に「0」、「1」の出現確率として学習されるため効果を実現できる。 This switching is based on the observation that the magnitude of the MVD absolute value tends to correspond to the type of PMV used for calculating the MVD. More specifically, when the PMV candidates are mv_med and mv_col, the MVD absolute value tends to be smaller when mv_col is PMV than when mv_med is PMV. In the following configuration, “0” is adaptively applied in the arithmetic code without explicitly incorporating which PMV tends to decrease the MVD absolute value other than the initial value described later. Because the learning probability is "1", the effect can be realized.
 図25は本発明の第5の実施形態の動画像符号化装置100”の構成を示すブロック図である。動画像符号化装置100”は、第1の実施形態の動画像符号化装置100と同様に、動きベクトル符号化部111、変換部112、量子化部113、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、動き推定部124、予測モード決定部125、減算部101、加算部102を備えているが、可変長符号化部115’の構成が第1の実施形態の可変長符号化部115と異なっている。可変長符号化部115’を除く他の部材は、第1の実施形態と同様の動作を行うので、これらの部材についての説明は省略し、可変長符号化部115’について図26、図27を参照して説明していくことにする。 25 is a block diagram showing the configuration of a moving picture coding apparatus 100 ′ ′ according to the fifth embodiment of the present invention. The moving picture coding apparatus 100 ′ ′ is the same as the moving picture coding apparatus 100 according to the first embodiment. Similarly, the motion vector encoding unit 111, the conversion unit 112, the quantization unit 113, the inverse quantization unit 116, the inverse conversion unit 117, the frame memory 118, the intra prediction unit 121, the inter prediction unit 123, the motion estimation unit 124, the prediction Although the mode determining unit 125, the subtracting unit 101, and the adding unit 102 are provided, the configuration of the variable-length coding unit 115 'is different from that of the variable-length coding unit 115 according to the first embodiment. The other members except for the variable-length coding unit 115 ′ perform the same operations as in the first embodiment, and thus the description of these members will be omitted, and the variable-length coding unit 115 ′ will be described with reference to FIGS. I will refer to and explain.
 図26に示すとおり、可変長符号化部115’は、PMVインデックス符号化部1151、MVD絶対値符号化部1152’、MVインデックス符号化部1153を備えている。PMVインデックス符号化部1151、MVインデックス符号化部1153については、第1の実施形態と同様の動作を行うので、MVD絶対値符号化部1152’について説明する。 As shown in FIG. 26, the variable-length coding unit 115 'includes a PMV index coding unit 1151, an MVD absolute value coding unit 1152', and an MV index coding unit 1153. The PMV index coding unit 1151 and the MV index coding unit 1153 perform the same operations as in the first embodiment, so the MVD absolute value coding unit 1152 ′ will be described.
 図27に示すように、MVD絶対値符号化部1152’は、コンテキスト決定部1152a、確率保持部1152b、確率更新部1152c、2進化部1152d、算術符号化部1152eを備えている。 As shown in FIG. 27, the MVD absolute value coding unit 1152 'includes a context determination unit 1152a, a probability holding unit 1152b, a probability updating unit 1152c, a binarization unit 1152d, and an arithmetic coding unit 1152e.
 2進化部1152dは、MVD絶対値を「0」「1」の2進数列にして算術符号化部1152eに出力する。2進化部1152dは、MVD絶対値「n」を、連続するn個の「1」の後ろに1個の「0」が付加された2進数列に変換する。例えば、nが0の場合、2進数列は「0」となり、nが2の場合、2進数列は「110」になる。 The binarization unit 1152 d converts the MVD absolute value into a binary sequence of “0” and “1” and outputs the binary number sequence to the arithmetic coding unit 1152 e. The binarization unit 1152 d converts the MVD absolute value “n” into a binary number sequence in which one “0” is added after the n consecutive “1s”. For example, when n is 0, the binary sequence is "0", and when n is 2, the binary sequence is "110".
 一方、コンテキスト決定部1152aは、PMV決定部1113から入力されたPMVインデックスの値を用いて定めたコンテキストインデックスを確率保持部1152bに出力する。 On the other hand, the context determination unit 1152a outputs, to the probability storage unit 1152b, the context index determined using the value of the PMV index input from the PMV determination unit 1113.
 コンテキストインデックスは、X成分かY成分かを示す値と、既に符号化/復号した隣接するブロックのMVDの大きさを段階的に示す値と、2進数列の何個目付近を処理しているかを段階的に示す値と、PMVインデックスの値と、の組み合わせによって定めるのが好適である。すなわち、コンポーネントが2個、MVDの大きさを段階的に示す値が3段階、2進数列の何個目付近を処理しているかを段階的に示す値が3段階、PMV候補数が2個で有った場合、2×3×3×2の24個のコンテキストインデックスの中から出力すべきコンテキストインデックスを定めることになる。この場合、確率保持部1152bは「1」「0」の確率を24通り保持するように構成される。なお、PMVインデックスの値を用いていれば、他の条件を用いてコンテキストインデックスを定めても構わない。 The context index has a value indicating whether it is an X component or a Y component, a value indicating the size of the MVD of the adjacent block already encoded / decoded, and what number binary sequence is processed It is preferable to determine the combination of the value indicating the value of p and the value of the PMV index. That is, 2 components, 3 values indicating the size of the MVD in steps, 3 values indicating in the vicinity of what number in the binary sequence are processed, and the number of PMV candidates is 2 In the case of (2), the context index to be output is determined from 24 context indexes of 2 × 3 × 3 × 2. In this case, the probability holding unit 1152 b is configured to hold twenty four “1” and “0” probabilities. If the value of the PMV index is used, other conditions may be used to determine the context index.
 算術符号化部1152eは、確率保持部1152bに入力されたコンテキストインデックスに対応する、確率保持部1152bに保持されている「1」「0」の確率に基づいて2進数列を符号化する。本実施形態は、2進数列(シンボル列)を適応的に符号化する点、すなわち、2進数列を符号化する際に、各ビットを符号化するたびに、「1」「0」の確率を更新していく点に特徴がある。 The arithmetic coding unit 1152 e codes a binary number sequence based on the probability of “1” or “0” held in the probability holding unit 1152 b corresponding to the context index input to the probability holding unit 1152 b. This embodiment adaptively encodes a binary number sequence (symbol sequence), that is, when encoding a binary number sequence, the probability of “1” “0” every time each bit is encoded. It is characterized in that it updates the
 このことについて、算術符号化部1152eに入力される2進数列が「110」である場合を例として2進数列の符号化を説明する。なお、符号化前の「1」の確率はP1であるものとする。 Regarding this, encoding of a binary number sequence will be described taking an example where the binary number sequence input to the arithmetic coding unit 1152 e is “110”. Note that the probability of “1” before encoding is P 1 .
 算術符号化部1152eは、確率P1を用いて「110」の1ビット目「1」を符号化する。そして、算術符号化部1152eは、符号化ビット「1」を確率更新部1152cに出力する。確率更新部1152cは、符号化ビットが入力されると、「1」の確率をP2に更新する。 The arithmetic coding unit 1152 e codes the first bit “1” of “110” using the probability P 1 . Then, the arithmetic coding unit 1152 e outputs the coded bit “1” to the probability updating unit 1152 c. The probability update unit 1152 c updates the probability of “1” to P 2 when the coded bit is input.
 次に、算術符号化部1152eは、確率P2を用いて「110」の2ビット目「1」を符号化する。そして、算術符号化部1152eは、符号化ビット「1」を確率更新部1152cに出力する。確率更新部1152cは、符号化ビットが入力されると、「1」の確率をP3に更新する。 Next, the arithmetic coding unit 1152e encodes "1" second bit "110" using the probability P 2. Then, the arithmetic coding unit 1152 e outputs the coded bit “1” to the probability updating unit 1152 c. The probability update unit 1152 c updates the probability of “1” to P 3 when the coded bit is input.
 最後に、算術符号化部1152eは、確率1-P3を用いて「110」の3ビット目「0」を符号化する。そして、算術符号化部1152eは、確率P1、P2、1-P3で「110」を符号化して得られた符号化データを出力する。 Finally, the arithmetic coding unit 1152e encodes the "0" third bit of "110" using the probability 1-P 3. Then, the arithmetic coding unit 1152 e outputs coded data obtained by coding “110” with the probabilities P 1 , P 2 and 1−P 3 .
 ところで、確率保持部1152bはシーケンス先頭、フレーム先頭、スライス先頭などで、確率を初期化するための初期値を保持する。この初期値は、「0」、「1」を等確率、すなわち0.5としても良いが、多くのシーケンスで実験的に求めた出現確率の平均値のような適当な値を用いることが適当である。この場合、PMV候補が、同一フレームの既に符号化/復号したブロックのMVから求めた空間的予測ベクトル(例えばmv_med)と参照フレームの既に符号化/復号したブロックのMVも用いて求めた時間的予測ベクトル(例えばmv_col)である場合において、時間的予測ベクトルの方が短いMVD絶対値を小さな符号量で符号化するように初期値を設定すると適切である。上記の例では、「0」の確率の初期値を時間的予測ベクトルの方が空間的予測ベクトルよりも大きく設定する。 By the way, the probability holding unit 1152b holds an initial value for initializing the probability in the sequence head, the frame head, the slice head, and the like. The initial value may be "0" or "1" with equal probability, that is, 0.5, but it is appropriate to use an appropriate value such as the average value of the appearance probability experimentally obtained in many sequences It is. In this case, the PMV candidate is temporally determined using the spatial prediction vector (eg, mv_med) determined from the MV of the already encoded / decoded block of the same frame and the MV of the already encoded / decoded block of the reference frame. In the case of a prediction vector (e.g., mv_col), it is appropriate to set an initial value so as to encode an MVD absolute value shorter in temporal prediction vector with a smaller code amount. In the above example, the initial value of the probability of “0” is set larger for the temporal prediction vector than for the spatial prediction vector.
 以上のように、動画像符号化装置100”は、MVD絶対値から変換された2進数列を算術符号化する過程で、「0」「1」の出現確率を切り替えることができるので、MVD絶対値の符号化効率を向上させることができる。 As described above, since the moving picture coding apparatus 100 ′ ′ can switch the appearance probability of “0” “1” in the process of arithmetically coding a binary number sequence converted from the MVD absolute value, the MVD absolute The coding efficiency of the value can be improved.
 (付記事項)
 なお、MVD絶対値は、X成分の絶対値とY成分の絶対値とに分けて符号化するのではなく、X成分の絶対値とY成分の絶対値との和を符号化しても構わない。この場合には、PMVCOST=F(|MV_X-PMV_X|+|MV_Y-PMV_Y|)となる。また、PMV仮候補の数は4とは限らず、MVD絶対値の値によって変化する。すなわち、X成分の絶対値とY成分の絶対値との和が1の場合にはMV仮候補の数は8、和が2の場合にはMV仮候補の数は16となり、一般的には、和がNの場合にMV仮候補の数は8Nとなる。
(Additional items)
The MVD absolute value may not be divided into the absolute value of the X component and the absolute value of the Y component and encoded, but the sum of the absolute value of the X component and the absolute value of the Y component may be encoded. . In this case, PMVCOST = F (| MV_X-PMV_X | + | MV_Y-PMV_Y |). Further, the number of PMV tentative candidates is not limited to four, and changes depending on the value of the MVD absolute value. That is, when the sum of the absolute value of the X component and the absolute value of the Y component is 1, the number of MV temporary candidates is 8, and when the sum is 2, the number of MV temporary candidates is 16, and in general When the sum is N, the number of MV tentative candidates is 8N.
 また、以上説明したそれぞれの実施形態において、動画像符号化装置および動画像復号装置の各機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより動画像符号化装置や動画像復号装置の制御を行っても良い。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。 Further, in each of the embodiments described above, a program for realizing the functions of the moving picture coding apparatus and the moving picture decoding apparatus is recorded on a computer readable recording medium, and the program recorded on the recording medium May be read into a computer system and executed to control the moving picture coding apparatus and the moving picture decoding apparatus. Here, the “computer system” includes an OS and hardware such as peripheral devices.
 また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるものであっても良い。 Further, the “computer-readable recording medium” means a portable medium such as a flexible disk, a magneto-optical disk, a ROM, a CD-ROM, or a storage device such as a hard disk built in a computer system. Furthermore, "computer-readable recording medium" holds a program dynamically for a short time, like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, the volatile memory in the computer system serving as the server or the client in that case, also includes the one that holds the program for a certain period of time. Further, the program may be for realizing a part of the functions described above, and further, the function described above may be realized in combination with a program already recorded in the computer system. .
 以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も特許請求の範囲に含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings, but the specific configuration is not limited to this embodiment, and the design and the like within the scope of the present invention are also claimed. include.
 本発明の符号化装置は、各データ候補のコストを算出するデータ候補コスト算出部を更に備え、前記データ候補特定フラグ符号化部により各データ候補に対して設定されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことが望ましい。例えば、符号化装置は、前記データ候補特定フラグ符号化部が、前記データ候補を特定するフラグの値を該データ候補と前記予測データとの距離が短いほど出現確率の高いシンボルが多く含まれるようなシンボル列にするとともに前記シンボル列を算術符号化することにより、前記フラグを符号化することが望ましい。 The encoding apparatus of the present invention further includes a data candidate cost calculation unit for calculating the cost of each data candidate, and the flag set for each data candidate by the data candidate identification flag encoding unit is the data candidate cost It is desirable that the flag be a flag corresponding to the cost of the data candidate calculated by the calculation unit. For example, in the encoding device, the data candidate identification flag encoding unit may include more symbols with higher probability of occurrence as the distance between the data candidate and the prediction data decreases as the value of the flag identifying the data candidate decreases. It is desirable to encode the flag by coding the symbol sequence and performing arithmetic coding on the symbol sequence.
 本発明の符号化装置は、前記差分絶対値符号化部が、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を符号化するか、または、成分ごとの差分絶対値の和を符号化することを特徴とすることが望ましい。 In the encoding apparatus according to the present invention, the differential absolute value encoding unit encodes the differential absolute value for each component when the predetermined data and the prediction data are data including a plurality of components, Alternatively, it is desirable to encode the sum of absolute differences of each component.
 本発明の符号化装置は、前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、前記差分絶対値符号化部は、前記距離コスト算出部が選択した関数を示すインデックスを符号化することが望ましい。 A coding apparatus according to the present invention calculates a distance cost, which is a value according to the distance between the data candidate and the prediction data candidate, using a function having the data candidate and the prediction data candidate as inputs. A distance cost calculation unit capable of selecting a plurality of functions having different amounts of operation as the function, the difference absolute value coding unit coding an index indicating the function selected by the distance cost calculation unit It is desirable to
 また、本発明の符号化装置は、前記所定のデータが、動きベクトルデータであることが望ましい。 Further, in the encoding apparatus according to the present invention, it is preferable that the predetermined data is motion vector data.
 また、本発明は、入力画像と既に復号済みの参照画像との間の動きベクトルを推定する動き推定部と、前記動きベクトルを符号化する動きベクトル符号化部と、前記動きベクトルを用いて前記参照画像から予測信号を生成するインター予測部と、前記予測信号と前記入力画像の差分を算出する差分算出部と、前記差分を変換する変換部と、前記変換で得られた変換係数を量子化する量子化部を備える動画像符号化装置であって、前記動きベクトル符号化部での動きベクトルの符号化に前記特徴の符号化装置を用いることが望ましい。 The present invention also provides a motion estimation unit that estimates a motion vector between an input image and a reference image that has already been decoded, a motion vector encoding unit that encodes the motion vector, and the motion vector using the motion vector. An inter prediction unit that generates a prediction signal from a reference image, a difference calculation unit that calculates a difference between the prediction signal and the input image, a conversion unit that converts the difference, and quantization of a conversion coefficient obtained by the conversion Preferably, the motion image coding apparatus includes a quantization unit, and the feature coding apparatus is used for coding a motion vector in the motion vector coding unit.
 また、本発明の復号装置は、各データ候補のコストを算出するデータ候補コスト算出部を更に備え、前記データ候補特定フラグ復号部により復号されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことが望ましい。 The decoding device of the present invention further includes a data candidate cost calculation unit for calculating the cost of each data candidate, and the flag decoded by the data candidate identification flag decoding unit is calculated by the data candidate cost calculation unit. It is desirable that the flag corresponds to the cost of the data candidate.
 また、本発明の復号装置では、前記差分絶対値復号部が、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を復号するか、または、成分ごとの差分絶対値の和を復号することが望ましい。 In the decoding device according to the present invention, the differential absolute value decoding unit decodes the differential absolute value for each component when the predetermined data and the prediction data are data consisting of a plurality of components, or It is desirable to decode the sum of differential absolute values for each component.
 また、本発明の復号装置は、前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、前記差分絶対値復号部は、前記距離コスト算出部が選択した関数を示すインデックスを復号することが望ましい。 Further, the decoding apparatus according to the present invention calculates distance cost, which is a value according to the distance between the data candidate and the prediction data candidate, using a function having the data candidate and the prediction data candidate as input. A distance cost calculation unit capable of selecting a plurality of functions having different amounts of operation as the function, the difference absolute value decoding unit decoding an index indicating the function selected by the distance cost calculation unit It is desirable to do.
 また、本発明の復号装置は、前記所定のデータが、動きベクトルデータであることが望ましい。 In the decoding device according to the present invention, it is preferable that the predetermined data is motion vector data.
 また、本発明は、動きベクトルを復号する動きベクトル復号部と、既に復号済みの参照画像と、前記動きベクトルから予測信号を生成するインター予測部と、変換係数を逆量子化する逆量子化部と、変換係数を逆変換し差分信号を生成する逆変換部を備え、前記予測信号と前記差分信号を加算し復号信号を再生する動画像復号装置であって、前記動きベクトル復号部での動きベクトルの復号に前記特徴の復号装置を用いることが望ましい。 The present invention also provides a motion vector decoding unit that decodes a motion vector, a reference image that has already been decoded, an inter prediction unit that generates a prediction signal from the motion vector, and an inverse quantization unit that inversely quantizes transform coefficients. A moving image decoding apparatus including: an inverse conversion unit that inversely converts a conversion coefficient to generate a difference signal; and adding the prediction signal and the difference signal to reproduce a decoded signal, the motion of the motion vector decoding unit It is desirable to use the feature decoder for decoding vectors.
 なお、記載の符号化装置が出力する符号化データであって、データ候補を特定するフラグを含む符号化データも本発明の範疇に含まれる。 In addition, it is the coding data which a description encoding apparatus outputs, Comprising: The coding data containing the flag which specifies a data candidate are also included in the scope of the present invention.
100…動画像符号化装置、101…減算部、102…加算部、103…局所復号信号、111…動きベクトル符号化部、112…変換部、113…量子化部、115…可変長符号化部、116…逆量子化部、117…逆変換部、118…フレームメモリ、121…イントラ予測部、123…インター予測部、124…動き推定部、125…予測モード決定部、200…動画像復号装置、201…可変長符号化復号部、203…予測パラメータ、211…動きベクトル復号部、225…予測モード選択部、301…PMV候補およびPMV候補数、302…PMV、1111…MV格納部、1112…PMV候補算出部、1113…PMV決定部、1114…MVD算出部、1115…MVフラグ決定部、1151…PMVインデックス符号化部、1152…MVD絶対値符号化部、1153…MVインデックス符号化部、2011…PMVインデックス復号部、2012…MVD絶対値復号部、2013…MVインデックス復号部、2113…PMV選択部、2115…MV選択部、5001…MV候補算出部、5002…MV候補判定部、5003…MVインデックス決定部、6004…MV抽出部 DESCRIPTION OF SYMBOLS 100 ... moving image encoder, 101 ... subtraction part, 102 ... addition part, 103 ... local decoding signal, 111 ... motion vector encoding part, 112 ... conversion part, 113 ... quantization part, 115 ... variable length coding part 116: inverse quantization unit 117: inverse transformation unit 118: frame memory 121: intra prediction unit 123: inter prediction unit 124: motion estimation unit 125: prediction mode determination unit 200: moving image decoding apparatus , 201: variable length coding and decoding unit, 203: prediction parameter, 211: motion vector decoding unit, 225: prediction mode selection unit, 301: number of PMV candidates and PMV candidates, 302: PMV, 1111: MV storage unit, 1112 PMV candidate calculation unit, 1113 ... PMV determination unit, 1114 ... MVD calculation unit, 1115 ... MV flag determination unit, 1151 ... PMV index code , 1152 ... MVD absolute value encoding unit, 1153 ... MV index encoding unit, 2011 ... PMV index decoding unit, 2012 ... MVD absolute value decoding unit, 2013 ... MV index decoding unit, 2113 ... PMV selection unit, 2115 ... MV Selection unit, 5001 ... MV candidate calculation unit, 5002 ... MV candidate determination unit, 5003 ... MV index determination unit, 6004 ... MV extraction unit

Claims (17)

  1.  所定のデータの符号化に際し、既に符号化済みのデータから予測データを生成し、前記前記所定のデータと前記予測データとの差分絶対値を符号化する差分絶対値符号化部と、
     前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、
     データ候補算出部で算出されたデータ候補の数が2以上である場合に、前記データ候補毎に異なるフラグを設定し、各データ候補に対して設定されたフラグを符号化するデータ候補特定フラグ符号化部と、を備えていることを特徴とする符号化装置。
    A difference absolute value encoding unit that generates prediction data from data that has already been encoded and encodes the difference absolute value between the predetermined data and the prediction data when encoding the predetermined data;
    A data candidate calculation unit that calculates data candidates from the difference absolute value and the prediction data;
    A data candidate identification flag code that sets a different flag for each data candidate and encodes the flag set for each data candidate when the number of data candidates calculated by the data candidate calculation unit is two or more. And an encoding unit.
  2.  請求項1に記載の符号化装置であって、
     各データ候補のコストを算出するデータ候補コスト算出部を更に備え、
     前記データ候補特定フラグ符号化部により各データ候補に対して設定されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことを特徴とする符号化装置。
    The encoding apparatus according to claim 1, wherein
    A data candidate cost calculation unit for calculating the cost of each data candidate;
    The flag set for each data candidate by the data candidate identification flag coding unit is a flag according to the cost of the data candidate calculated by the data candidate cost calculation unit. apparatus.
  3.  請求項1または2に記載の符号化装置であって、
     前記差分絶対値符号化部は、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を符号化するか、または、成分ごとの差分絶対値の和を符号化することを特徴とする符号化装置。
    The encoding apparatus according to claim 1 or 2, wherein
    The difference absolute value encoding unit encodes the difference absolute value for each component when the predetermined data and the prediction data are data including a plurality of components, or the difference absolute value for each component An encoding device comprising encoding the sum of
  4.  所定のデータの符号化に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、
     前記所定のデータと前記予測データとの差分絶対値を符号化する差分絶対値符号化部と、
     前記差分絶対値と前記予測データからデータ候補を算出するデータ候補算出部と、
     前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、
     データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを符号化する、データ候補特定フラグ符号化部を備えることを特徴とする符号化装置。
    A prediction data determination unit that generates a plurality of prediction data candidates from data that has already been encoded and encodes prediction data to be used for encoding from the prediction data candidates when encoding predetermined data;
    A difference absolute value encoding unit that encodes the difference absolute value between the predetermined data and the prediction data;
    A data candidate calculation unit that calculates data candidates from the difference absolute value and the prediction data;
    A data candidate determination unit that determines the validity of the data candidate calculated from the difference absolute value and the prediction data from the prediction data and the prediction data candidate;
    An encoding apparatus comprising: a data candidate identification flag encoding unit that encodes a flag identifying the data candidate when the number of data candidates validated by the data candidate determination unit is two or more. .
  5.  請求項4に記載の符号化装置であって、
     前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、
     前記差分絶対値符号化部は、前記距離コスト算出部が選択した関数を示すインデックスを符号化することを特徴とする符号化装置。
    The encoding apparatus according to claim 4, wherein
    A distance cost calculation unit that calculates a distance cost that is a value according to the distance between the data candidate and the predicted data candidate using a function that receives the data candidate and the predicted data candidate as input, and performs calculation as the function It further comprises a distance cost calculation unit capable of selecting a plurality of functions with different amounts,
    The encoding apparatus according to claim 1, wherein the difference absolute value encoding unit encodes an index indicating a function selected by the distance cost calculation unit.
  6.  所定のデータの符号化に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、
     前記所定のデータと前記予測データとの差分絶対値をシンボル列とするとともに該シンボル列を算術符号化することにより、前記差分絶対値を符号化する差分絶対値符号化部と、を備え、
     前記差分絶対値符号化部は、前記シンボル列を算術符号化するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする符号化装置。
    A prediction data determination unit that generates a plurality of prediction data candidates from data that has already been encoded and encodes prediction data to be used for encoding from the prediction data candidates when encoding predetermined data;
    A difference absolute value encoding unit that encodes the difference absolute value by using the difference absolute value between the predetermined data and the prediction data as a symbol string and performing arithmetic encoding on the symbol string;
    A coding unit characterized in that the difference absolute value coding unit changes the appearance probability of each symbol used to arithmetically code the symbol string according to the prediction data selected by the prediction data determination unit. .
  7.  前記所定のデータが、動きベクトルデータであることを特徴とする請求項1から6のいずれか1項に記載の符号化装置。 The encoding apparatus according to any one of claims 1 to 6, wherein the predetermined data is motion vector data.
  8.  入力画像と既に復号済みの参照画像との間の動きベクトルを推定する動き推定部と、前記動きベクトルを符号化する動きベクトル符号化部と、前記動きベクトルを用いて前記参照画像から予測信号を生成するインター予測部と、前記予測信号と前記入力画像の差分を算出する差分算出部と、前記差分を変換する変換部と、前記変換で得られた変換係数を量子化する量子化部を備える動画像符号化装置であって、前記動きベクトル符号化部での動きベクトルの符号化に請求項7に記載の符号化装置を用いることを特徴とする動画像符号化装置。 A motion estimation unit that estimates a motion vector between an input image and a reference image that has already been decoded, a motion vector encoding unit that encodes the motion vector, and a prediction signal from the reference image using the motion vector An inter prediction unit to generate, a difference calculation unit to calculate a difference between the prediction signal and the input image, a conversion unit to convert the difference, and a quantization unit to quantize a conversion coefficient obtained by the conversion A moving picture coding apparatus, wherein the coding apparatus according to claim 7 is used for coding a motion vector in the motion vector coding unit.
  9.  所定のデータの復号に際し、符号化されている差分絶対値を復号する差分絶対値復号部と、
     既に符号化済みのデータから予測データを生成し、前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、
     前記データ候補算出部で生成されたデータ候補の数が2以上である場合に、各データ候補に対してデータ候補毎に異なる値が設定されたフラグを復号するデータ候補特定フラグ復号部と、を備えていることを特徴とする復号装置。
    A difference absolute value decoding unit that decodes the encoded difference absolute value when decoding predetermined data;
    A data candidate calculation unit that generates prediction data from already encoded data and calculates data candidates from the difference absolute value and the prediction data;
    A data candidate identification flag decoding unit that decodes a flag in which a different value is set for each data candidate when the number of data candidates generated by the data candidate calculation unit is two or more; A decoding device characterized by comprising.
  10.  請求項9に記載の復号装置であって、
     各データ候補のコストを算出するデータ候補コスト算出部を更に備え、
     前記データ候補特定フラグ復号部により復号されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことを特徴とする復号装置。
    The decoding device according to claim 9, wherein
    A data candidate cost calculation unit for calculating the cost of each data candidate;
    A decoding device characterized in that the flag decoded by the data candidate identification flag decoding unit is a flag corresponding to the cost of the data candidate calculated by the data candidate cost calculation unit.
  11.  請求項9または10に記載の復号装置であって、
     前記差分絶対値復号部は、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を復号するか、または、成分ごとの差分絶対値の和を復号することを特徴とする復号装置。
    A decoding device according to claim 9 or 10, wherein
    The difference absolute value decoding unit decodes the difference absolute value for each component when the predetermined data and the prediction data are data including a plurality of components, or a sum of difference absolute values for each component A decoding device characterized by decoding.
  12.  所定のデータの復号に際し、符号化されている差分絶対値を復号し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、
     前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、
     前記データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを復号する、データ候補特定フラグ復号部を備えることを特徴とする復号装置。
    When decoding predetermined data, the encoded differential absolute value is decoded, a plurality of prediction data candidates are generated from already encoded data, and the prediction data to be used for encoding is selected from the prediction data candidates The forecast data determination unit to
    A data candidate determination unit that determines the validity of the data candidate calculated from the difference absolute value and the prediction data from the prediction data and the prediction data candidate;
    A decoding apparatus comprising: a data candidate identification flag decoding unit that decodes a flag identifying the data candidate if the number of data candidates validated by the data candidate determination unit is two or more.
  13.  請求項12に記載の復号装置であって、
     前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、
     前記差分絶対値復号部は、前記距離コスト算出部が選択した関数を示すインデックスを復号することを特徴とする復号装置。
    The decoding apparatus according to claim 12, wherein
    A distance cost calculation unit that calculates a distance cost that is a value according to the distance between the data candidate and the predicted data candidate using a function that receives the data candidate and the predicted data candidate as input, and performs calculation as the function It further comprises a distance cost calculation unit capable of selecting a plurality of functions with different amounts,
    The said difference absolute value decoding part decodes the index which shows the function which the said distance cost calculation part selected.
  14.  所定のデータの復号に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から復号に用いる予測データを選択する予測データ決定部と、
     前記所定のデータと前記予測データとの差分絶対値であるシンボル列を算術復号することにより、前記差分絶対値を復号する差分絶対値復号部と、を備え、
     前記差分絶対値復号部は、前記シンボル列を復号するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする復号装置。
    A prediction data determination unit that generates a plurality of prediction data candidates from already encoded data and decodes prediction data to be used for decoding from the prediction data candidates when decoding predetermined data;
    A difference absolute value decoding unit that decodes the difference absolute value by arithmetically decoding a symbol string that is the difference absolute value between the predetermined data and the prediction data;
    The difference absolute value decoding unit changes the appearance probability of each symbol used to decode the symbol string according to the prediction data selected by the prediction data determination unit.
  15.  前記所定のデータが、動きベクトルデータであることを特徴とする請求項9から14のいずれか1項に記載の復号装置。 The decoding apparatus according to any one of claims 9 to 14, wherein the predetermined data is motion vector data.
  16.  動きベクトルを復号する動きベクトル復号部と、既に復号済みの参照画像と、前記動きベクトルから予測信号を生成するインター予測部と、変換係数を逆量子化する逆量子化部と、変換係数を逆変換し差分信号を生成する逆変換部を備え、前記予測信号と前記差分信号を加算し復号信号を再生する動画像復号装置であって、前記動きベクトル復号部での動きベクトルの復号に請求項15に記載の復号装置を用いることを特徴とする動画像復号装置。 A motion vector decoding unit that decodes a motion vector, a reference image that has already been decoded, an inter prediction unit that generates a prediction signal from the motion vector, an inverse quantization unit that inversely quantizes transform coefficients, and inverse transform coefficients A moving picture decoding apparatus comprising: an inverse conversion unit for converting and generating a differential signal, and adding the prediction signal and the differential signal to reproduce a decoded signal, wherein the motion vector decoding unit performs decoding on the motion vector claim. 15. A moving picture decoding apparatus characterized by using the decoding apparatus according to 15.
  17.  請求項1から7のいずれか1項に記載の符号化装置が出力する符号化データであって、前記フラグを含む符号化データ。 It is the encoding data which the encoding apparatus of any one of Claims 1 to 7 outputs, Comprising: The encoding data containing the said flag.
PCT/JP2010/066087 2009-09-18 2010-09-16 Encoder apparatus, decoder apparatus, moving image encoder apparatus, moving image decoder apparatus, and encoding data WO2011034148A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011531972A JPWO2011034148A1 (en) 2009-09-18 2010-09-16 Encoding device, decoding device, moving image encoding device, moving image decoding device, and encoded data

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009217137 2009-09-18
JP2009-217137 2009-09-18
JP2009-238216 2009-10-15
JP2009238216 2009-10-15

Publications (1)

Publication Number Publication Date
WO2011034148A1 true WO2011034148A1 (en) 2011-03-24

Family

ID=43758748

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/066087 WO2011034148A1 (en) 2009-09-18 2010-09-16 Encoder apparatus, decoder apparatus, moving image encoder apparatus, moving image decoder apparatus, and encoding data

Country Status (2)

Country Link
JP (1) JPWO2011034148A1 (en)
WO (1) WO2011034148A1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012176450A1 (en) * 2011-06-24 2012-12-27 パナソニック株式会社 Image encoding method, image decoding method, image encoding device, image decoding device, and image encoding/decoding device
WO2013001795A1 (en) * 2011-06-29 2013-01-03 パナソニック株式会社 Image encoding method, image decoding method, image encoding device, and image decoding device
WO2013065300A1 (en) * 2011-10-31 2013-05-10 株式会社Jvcケンウッド Moving-image encoding device, moving-image encoding method, moving-image encoding program, transmitter, transmission method and transmission program, and moving-image decoding device, moving-image decoding method, moving-image decoding program, receiver, and reception method and reception program
JP2013517734A (en) * 2010-01-19 2013-05-16 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for encoding / decoding motion vectors based on reduced predicted motion vector candidates
JP2013517669A (en) * 2010-01-14 2013-05-16 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for encoding / decoding motion vectors
JP2014509116A (en) * 2011-01-21 2014-04-10 クゥアルコム・インコーポレイテッド Motion vector prediction
CN104041043A (en) * 2012-01-18 2014-09-10 Jvc建伍株式会社 Moving image coding device, moving image coding method, moving image coding program, moving image decoding device, moving image decoding method and moving image decoding program
JP2014523714A (en) * 2011-07-01 2014-09-11 クゥアルコム・インコーポレイテッド Video coding using adaptive motion vector resolution
JP2018093504A (en) * 2010-01-19 2018-06-14 サムスン エレクトロニクス カンパニー リミテッド Method and device for coding/decoding motion vector, based on candidate of reduced prediction motion vector
WO2019150411A1 (en) * 2018-01-30 2019-08-08 富士通株式会社 Video encoding device, video encoding method, video decoding device, and video decoding method, and video encoding system
JP2022043034A (en) * 2019-10-21 2022-03-15 株式会社東芝 Image encoding method and image decoding method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007525100A (en) * 2003-06-30 2007-08-30 株式会社エヌ・ティ・ティ・ドコモ Method and apparatus for encoding motion information
JP2008211697A (en) * 2007-02-28 2008-09-11 Sharp Corp Encoder and decoder

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4240283B2 (en) * 2002-10-10 2009-03-18 ソニー株式会社 Decoding device and decoding method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007525100A (en) * 2003-06-30 2007-08-30 株式会社エヌ・ティ・ティ・ドコモ Method and apparatus for encoding motion information
JP2008211697A (en) * 2007-02-28 2008-09-11 Sharp Corp Encoder and decoder

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JOEL JUNG ET AL.: "Competition- Based Scheme for Motion Vector Selection and Coding, ITU - Telecommunications Standardization Sector STUDY GROUP 16 Question 6, VCEG-AC06", VIDEO CODING EXPERTS GROUP (VCEG) 29TH MEETING, July 2006 (2006-07-01), pages 1 - 7 *
SUNG DEUK KIM ET AL.: "An efficient motion vector coding scheme based on minimum bitrate prediction", IEEE TRANSACTIONS ON IMAGE PROCESSING, vol. 8, no. 8, August 1999 (1999-08-01), pages 1117 - 1120 *

Cited By (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013517669A (en) * 2010-01-14 2013-05-16 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for encoding / decoding motion vectors
US9106924B2 (en) 2010-01-14 2015-08-11 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector by predicting motion vector according to mode
US9131237B2 (en) 2010-01-14 2015-09-08 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector by predicting motion vector according to mode
US8995529B2 (en) 2010-01-14 2015-03-31 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector by predicting motion vector according to mode
US10057597B2 (en) 2010-01-19 2018-08-21 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
JP2013517734A (en) * 2010-01-19 2013-05-16 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for encoding / decoding motion vectors based on reduced predicted motion vector candidates
JP2019146252A (en) * 2010-01-19 2019-08-29 サムスン エレクトロニクス カンパニー リミテッド Method and device for encoding/decoding motion vector based on reduced prediction motion vector candidate
JP2018093504A (en) * 2010-01-19 2018-06-14 サムスン エレクトロニクス カンパニー リミテッド Method and device for coding/decoding motion vector, based on candidate of reduced prediction motion vector
JP2017108423A (en) * 2010-01-19 2017-06-15 サムスン エレクトロニクス カンパニー リミテッド Method and device for encoding/decoding motion vector on the basis of reduced predicted motion vector candidate
US9571853B2 (en) 2010-01-19 2017-02-14 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
JP2020182236A (en) * 2010-01-19 2020-11-05 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidate
US9565447B2 (en) 2010-01-19 2017-02-07 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
JP2016007065A (en) * 2010-01-19 2016-01-14 サムスン エレクトロニクス カンパニー リミテッド Method and device for encoding/decoding motion vector based upon candidate for reduced prediction motion vector
US10484709B2 (en) 2010-01-19 2019-11-19 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
US10708616B2 (en) 2010-01-19 2020-07-07 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
JP2014509116A (en) * 2011-01-21 2014-04-10 クゥアルコム・インコーポレイテッド Motion vector prediction
US9532066B2 (en) 2011-01-21 2016-12-27 Qualcomm Incorporated Motion vector prediction
JP2017229103A (en) * 2011-06-24 2017-12-28 サン パテント トラスト Decoding method and decoding device
JP2021069124A (en) * 2011-06-24 2021-04-30 ヴェロス メディア インターナショナル リミテッドVelos Media International Limited Decoding method, decoding device, coding method, and coding device
JP2014014146A (en) * 2011-06-24 2014-01-23 Panasonic Corp Content supply method and communication system
US11330292B2 (en) 2011-06-24 2022-05-10 Velos Media, Llc Image coding method for encoding a difference motion vector into and decoding a difference motion vector from a bitstream
US8855207B2 (en) 2011-06-24 2014-10-07 Panasonic Intellectual Property Corporation Of America Image coding method for encoding a difference motion vector into a bitstream
JP2016226026A (en) * 2011-06-24 2016-12-28 サン パテント トラスト Decoding method and decoding device
WO2012176450A1 (en) * 2011-06-24 2012-12-27 パナソニック株式会社 Image encoding method, image decoding method, image encoding device, image decoding device, and image encoding/decoding device
US20140029673A1 (en) * 2011-06-24 2014-01-30 Panasonic Corporation Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US9648324B2 (en) 2011-06-24 2017-05-09 Sun Patent Trust Image coding method of encoding components of a motion vector and arranging the encoded components in a bitstream
JP7033675B2 (en) 2011-06-24 2022-03-10 ヴェロス メディア インターナショナル リミテッド Decoding method, decoding device, coding method and coding device
US11743490B2 (en) 2011-06-24 2023-08-29 Sun Patent Trust Image coding method for decoding a difference motion vector from a bitstream
JPWO2012176450A1 (en) * 2011-06-24 2015-02-23 パナソニック株式会社 Image encoding method and image encoding apparatus
US9681130B2 (en) 2011-06-24 2017-06-13 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
JP2014014130A (en) * 2011-06-24 2014-01-23 Panasonic Corp Decoding method and decoding device
JP5362129B2 (en) * 2011-06-24 2013-12-11 パナソニック株式会社 Image encoding method and image encoding apparatus
JP2019047517A (en) * 2011-06-24 2019-03-22 サン パテント トラスト Image decoding method and image decoding device
JP2020018013A (en) * 2011-06-24 2020-01-30 ヴェロス メディア インターナショナル リミテッドVelos Media International Limited Method, content management method and communication system
US10382779B2 (en) 2011-06-24 2019-08-13 Velos Media, Llc Image coding method for decoding a difference motion vector from a bitstream
CN103004207A (en) * 2011-06-24 2013-03-27 松下电器产业株式会社 Image encoding method, image decoding method, image encoding device, image decoding device, and image encoding/decoding device
WO2013001795A1 (en) * 2011-06-29 2013-01-03 パナソニック株式会社 Image encoding method, image decoding method, image encoding device, and image decoding device
US10536701B2 (en) 2011-07-01 2020-01-14 Qualcomm Incorporated Video coding using adaptive motion vector resolution
JP2014523714A (en) * 2011-07-01 2014-09-11 クゥアルコム・インコーポレイテッド Video coding using adaptive motion vector resolution
WO2013065300A1 (en) * 2011-10-31 2013-05-10 株式会社Jvcケンウッド Moving-image encoding device, moving-image encoding method, moving-image encoding program, transmitter, transmission method and transmission program, and moving-image decoding device, moving-image decoding method, moving-image decoding program, receiver, and reception method and reception program
CN104041043A (en) * 2012-01-18 2014-09-10 Jvc建伍株式会社 Moving image coding device, moving image coding method, moving image coding program, moving image decoding device, moving image decoding method and moving image decoding program
CN104041043B (en) * 2012-01-18 2018-04-03 Jvc建伍株式会社 Moving image decoding device, moving picture decoding method, reception device and method of reseptance
CN105791855A (en) * 2012-01-18 2016-07-20 Jvc建伍株式会社 Moving picture decoding device and moving picture decoding method
CN105791822A (en) * 2012-01-18 2016-07-20 Jvc建伍株式会社 Moving picture decoding device and moving picture decoding method
WO2019150411A1 (en) * 2018-01-30 2019-08-08 富士通株式会社 Video encoding device, video encoding method, video decoding device, and video decoding method, and video encoding system
JP2022043034A (en) * 2019-10-21 2022-03-15 株式会社東芝 Image encoding method and image decoding method
JP7242811B2 (en) 2019-10-21 2023-03-20 株式会社東芝 Image encoding method and image decoding method

Also Published As

Publication number Publication date
JPWO2011034148A1 (en) 2013-02-14

Similar Documents

Publication Publication Date Title
WO2011034148A1 (en) Encoder apparatus, decoder apparatus, moving image encoder apparatus, moving image decoder apparatus, and encoding data
US11178421B2 (en) Method and apparatus for encoding/decoding images using adaptive motion vector resolution
CN108781295B (en) Method and apparatus for pattern-based motion vector derivation for video coding
JP6739770B2 (en) Image decoding apparatus using enhanced CABAC decoding
JP5277257B2 (en) Video decoding method and video encoding method
Kim et al. An efficient motion vector coding scheme based on minimum bitrate prediction
KR101128533B1 (en) Image encoding method and decoding method, their device, their program, and recording medium with the program recorded thereon
JP2021119658A (en) Video decoding method
US11641481B2 (en) Method and apparatus for encoding/decoding images using adaptive motion vector resolution
CN111418214B (en) Syntactic prediction using reconstructed pixel points
WO2011095260A1 (en) Managing predicted motion vector candidates
KR20100027385A (en) Method and apparatus for encoding/decoding image using adaptive binarization
TW202019179A (en) Method and apparatus of motion-vector rounding unification for video coding system
KR20020044694A (en) Motion vector coding method based on 2-demension least bits prediction
JP2016154395A (en) Method and apparatus for encoding/decoding video using motion vector of previous block as motion vector for current block
JP5270592B2 (en) Image coding apparatus, image coding method, and image coding program
KR20110048004A (en) Motion vector encoding / decoding method and apparatus using motion vector resolution limitation and image encoding / decoding method using same
WO2019150411A1 (en) Video encoding device, video encoding method, video decoding device, and video decoding method, and video encoding system
JP2019537344A (en) Method for coding and decoding image parameters, apparatus for coding and decoding image parameters, and computer program corresponding thereto
KR101238012B1 (en) Method and device for encoding prediction motion vector
US20150237345A1 (en) Video coding device, video coding method, and video coding program
JP2015111774A (en) Video coding device and video coding program
JP5729817B2 (en) Moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding method, moving picture decoding method, moving picture encoding program, and moving picture decoding program
JP6853697B2 (en) Time prediction motion vector candidate generator, coding device, decoding device, and program
US20150215633A1 (en) Image-data binary arithmetic decoding device and image decoding device

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011531972

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10817261

Country of ref document: EP

Kind code of ref document: A1