WO2013002219A1 - 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム及び動画像復号プログラム - Google Patents
動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム及び動画像復号プログラム Download PDFInfo
- Publication number
- WO2013002219A1 WO2013002219A1 PCT/JP2012/066282 JP2012066282W WO2013002219A1 WO 2013002219 A1 WO2013002219 A1 WO 2013002219A1 JP 2012066282 W JP2012066282 W JP 2012066282W WO 2013002219 A1 WO2013002219 A1 WO 2013002219A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- component
- value
- motion vector
- component value
- encoding
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/463—Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Definitions
- the present invention relates to a moving image encoding apparatus, a moving image decoding apparatus, a moving image encoding method, a moving image decoding method, a moving image encoding program, and a moving image decoding program using a moving image encoding technique using motion compensation.
- FIG. 13 is a block diagram showing a configuration of a moving picture coding apparatus using motion compensation according to the prior art.
- an encoder 300 based on motion compensation performs encoding based on motion compensation.
- the motion estimation unit 310 estimates image motion by motion search.
- the motion vector storage unit 320 stores a motion vector calculated by motion estimation.
- the motion vector prediction processing unit 330 predicts a motion vector from encoded information for predictive coding of a motion vector.
- the reference block motion vector extraction processing unit 331 extracts a motion vector of a reference block used for motion vector prediction.
- the median value calculation processing unit 332 calculates the median value of motion vectors extracted from the reference block.
- the prediction residual calculation unit 340 calculates a difference between the motion vector and the predicted motion vector (hereinafter referred to as a prediction vector).
- the code assigning unit 350 assigns a variable length code to the quantized transform coefficient and motion vector prediction residual signal (referred to as a prediction error vector), and outputs a coded stream.
- the motion estimation unit 310 When the video signal of the encoding target block is input, the motion estimation unit 310 performs a motion search by collating with the decoded signal of the encoded reference image, and calculates a motion vector.
- the calculated motion vector is input to an encoder 300 based on motion compensation, and the encoder 300 based on motion compensation obtains a residual signal between the video signal and the prediction signal by motion compensation using the motion vector.
- Encoding processing is performed by orthogonal transformation, quantization, or the like.
- the quantized value of the processing result is encoded by the code allocation unit 350 and output as an encoded stream.
- predictive coding is also performed for motion vectors in order to reduce the code amount. For this reason, the motion vector calculated by the motion estimation unit 310 is stored in the motion vector storage unit 320 for later reference.
- the motion vector prediction processing unit 330 calculates a prediction vector using the encoded motion vector.
- the reference block motion vector extraction processing unit 331 performs prediction target block (encoding) of the encoding target image (also referred to as encoding target picture or frame) shown in FIG. Target block) Encoded blocks in the vicinity of B0 are set as reference blocks B1 to B3, and these motion vectors are extracted from the motion vector storage unit 320.
- FIG. 14 is a diagram illustrating an example of a prediction target block of an encoding target image.
- the median value calculation processing unit 332 calculates the median value of each motion vector component of the reference blocks B1 to B3, and generates a prediction vector from the calculated median value. This method of generating a prediction vector is called spatial median prediction.
- the prediction residual calculation unit 340 calculates a difference (prediction error vector) between the motion vector and the prediction vector, and sends the prediction error vector to the code allocation unit 350.
- the prediction error vector is variable-length encoded by the code assigning unit 350 and output as an encoded stream.
- FIG. 15 is a block diagram showing a configuration of a moving picture decoding apparatus using motion compensation according to the prior art.
- a variable length decoding unit 400 decodes a variable length code in an encoded stream.
- the motion vector calculation unit 410 adds the prediction error vector and the prediction vector.
- the motion vector storage unit 420 stores a motion vector.
- the motion vector prediction processing unit 430 predicts a motion vector using information obtained by decoding the motion vector.
- the reference block motion vector extraction processing unit 431 extracts a motion vector of a reference block used for motion vector prediction.
- the median value calculation processing unit 432 calculates the median value of the motion vector components extracted from the reference block.
- the motion compensation decoding unit 440 performs motion compensation using the calculated motion vector, decodes a decoding target block, and outputs a decoded video signal.
- variable length decoding unit 400 decodes the variable length code in the encoded stream, sends the quantized transform coefficient of the decoding target block to the decoding unit 440 by motion compensation, and sends the prediction error vector to the motion vector.
- the data is sent to the calculation unit 410.
- the motion vector calculation unit 410 adds the prediction error vector and the prediction vector obtained from the decoded motion vector to calculate a motion vector.
- the calculated motion vector is sent to the decoding unit 440 based on motion compensation and stored in the motion vector storage unit 420.
- the motion compensation decoding unit 440 performs motion compensation using the calculated motion vector, decodes the decoding target block, and outputs the decoded video signal.
- the motion vector prediction processing of the motion vector prediction processing unit 430 in the video decoding device is the same as the processing of the motion vector prediction processing unit 330 in the video encoding device shown in FIG.
- FIG. 16 is a block diagram showing a configuration of a conventional temporal direction motion vector prediction processing unit.
- Standard H. In H.264 encoding as one of encoding modes in B picture encoding, encoding is called a direct mode in which motion information is predicted and generated from motion information of an encoded block, and motion information encoding is omitted. Mode is used.
- the direct mode includes a spatial direct mode mainly using motion information in the spatial direction and a temporal direct mode mainly using motion information in the time direction.
- the motion vector prediction processing unit 500 calculates a prediction vector as follows.
- the anchor block motion vector extraction processing unit 501 extracts, from the motion vector storage unit 510, a motion vector mvCol of a block (this is called an anchor block) in the anchor picture at the same position as the prediction target block.
- An anchor picture is a picture having a motion vector for obtaining a direct mode motion vector, and is usually the closest reference picture behind the current picture in display order.
- the extrapolation prediction processing unit 502 proportionally distributes the motion vector mvL0 from the motion vector mvCol to the motion vector mvL0 of L0 and the motion vector mvL1 of L1 according to the time interval between the reference picture of L0, the current picture and the anchor picture. To calculate.
- the motion vector prediction processing unit 500 outputs the motion vectors mvL0 and mvL1 calculated by the extrapolation prediction processing unit 502 as prediction vectors. There is also a method of using a motion vector mvCol as a prediction vector. This method of generating a prediction vector is called “co-located prediction”.
- a prediction vector is generated from the motion vector of the spatial neighboring block, and the prediction vector and the motion vector of the encoding target block are
- the horizontal vector and the vertical component of the motion vector are predicted at the same time.
- the generated encoded data is decoded in the order of horizontal and vertical components on the decoding side. Is done. For this reason, when decoding the vertical component of the motion vector, the already decoded horizontal component can be used.
- the motion vector encoding is lossless encoding, the horizontal component of the motion vector that can be used on the decoding side is the same as the value encoded on the encoding side.
- the present invention has been made in view of the above circumstances, and is a moving image coding apparatus and a moving image code capable of improving the coding efficiency of a motion vector and reducing the coding amount of the motion vector as compared with the prior art.
- Method, moving picture coding program, moving picture coding apparatus, moving picture coding method, moving picture decoding apparatus for decoding picture coded by moving picture coding program, moving picture decoding method, moving picture decoding program The purpose is to provide.
- the present invention divides an image into blocks of a predetermined size, and among the plurality of component values of the motion vector between the encoding target block and neighboring blocks, one component value is set as the first component value, and the other component value is set as the other component value.
- First component encoding means for obtaining a difference value of one component and encoding the difference value of the first component; the first component value of the motion vector of the neighboring block; and the motion vector of the encoding target block. And determining the occurrence probability for the candidate value of the second component value of the motion vector of the encoding target block, based on the difference value between the first component value of the second block and the second component value of the motion vector of the neighboring block, A second component encoding means for determining a codeword of the second component value based on the occurrence probability and encoding the second component value;
- the present invention divides an image into blocks of a predetermined size, and among the plurality of component values of the motion vector between the encoding target block and neighboring blocks, one component value is set as the first component value, and the other component value is set as the other component value.
- Video decoding that decodes the image encoded using motion compensation interframe prediction for each block by encoding the first component value and the second component value, respectively, as a second component value
- the occurrence probability for the candidate value of the second component value of the motion vector of the encoding target block is obtained based on the difference value between and the second component value of the motion vector of the neighboring block, and based on the occurrence probability, the first Second component decoding means for identifying a correspondence relationship between a two-component value and a codeword of the second component value, and decoding the codeword of the second component value given as encode
- the present invention divides an image into blocks of a predetermined size, and among the plurality of component values of the motion vector between the encoding target block and neighboring blocks, one component value is set as the first component value, and the other component value is set as A video encoding method using motion compensated interframe prediction for each block by encoding the first component value and the second component value as a second component value, wherein the neighboring block The difference value between the predicted value of the first component value of the motion vector of the coding target block generated from the first component value of the motion vector and the first component value of the motion vector of the coding target block.
- a first component encoding step for obtaining a difference value of one component and encoding the difference value of the first component; the first component value of the motion vector of the neighboring block; and the motion of the encoding target block Based on the difference value between the first component value of the Kuttle and the second component value of the motion vector of the neighboring block, the occurrence probability for the candidate value of the second component value of the motion vector of the encoding target block is determined,
- the present invention divides an image into blocks of a predetermined size, and among the plurality of component values of the motion vector between the encoding target block and neighboring blocks, one component value is set as the first component value, and the other component value is set as the other component value.
- Video decoding that decodes the image encoded using motion compensation interframe prediction for each block by encoding the first component value and the second component value, respectively, as a second component value
- the occurrence probability for the candidate value of the second component value of the motion vector of the encoding target block is obtained, and based on the occurrence probability
- Second component decoding that identifies the correspondence between the second component value and the code word of the second component value and decodes the code word of the second component value given as encoded data to the second component value Steps.
- the present invention divides an image into blocks of a predetermined size, and among the plurality of component values of the motion vector between the encoding target block and neighboring blocks, one component value is set as the first component value, and the other component value is set as the other component value.
- a second component value is encoded into the computer on the moving image encoding apparatus using motion compensation interframe prediction for each block by encoding the first component value and the second component value, respectively.
- a predicted value of the first component value of the motion vector of the encoding target block generated from the first component value of the motion vector of the neighboring block, and the encoding target block A first component encoding step of determining a difference value of the first component, which is a difference value with respect to the first component value of the motion vector, and encoding the difference value of the first component; Based on the difference value between the first component value of the motion vector of the block and the first component value of the motion vector of the block to be encoded, and the second component value of the motion vector of the neighboring block, the encoding target A second component encoding step of obtaining an occurrence probability of the candidate value of the second component value of the block motion vector, determining a codeword of the second component value based on the occurrence probability, and encoding the second component value And do.
- the present invention divides an image into blocks of a predetermined size, and among the plurality of component values of the motion vector between the encoding target block and neighboring blocks, one component value is set as the first component value, and the other component value is set as the other component value.
- Video decoding that decodes the image encoded using motion compensation interframe prediction for each block by encoding the first component value and the second component value, respectively, as a second component value
- a moving picture decoding program for causing a computer on the apparatus to perform an image decoding process, wherein the motion of the encoding target block generated from the first component value of the motion vector of the neighboring block by decoding the difference value of the first component
- the second motion vector of the encoding target block Based on the difference value between the one component value and the first component value of the motion vector of the encoding target block and the second component value of the motion vector of the neighboring block, the second motion vector of the encoding target block
- the occurrence probability of the component value with respect to the candidate value is obtained, and based on the occurrence probability, the correspondence between the second component value and the code word of the second
- the moving picture coding apparatus According to the moving picture coding apparatus according to the embodiment of the present invention, it is possible to reduce the coding amount of the motion vector, so that it is possible to reduce the amount of coding generated in the moving picture coding process.
- FIG. 1 is a block diagram showing a configuration of a moving picture coding apparatus according to an embodiment of the present invention.
- the motion vector prediction processing unit 30 is a part different from the conventional technique, and the other part is a standard H.264 standard. It is the same as that of the structure of the conventional general moving image encoder used as H.264 other encoders.
- the video encoding device 1 receives a video signal to be encoded, divides a frame of the input video signal into blocks, encodes each block, and outputs the bit stream as an encoded stream.
- the prediction residual signal calculation unit 10 obtains a difference between the input video signal and the prediction signal output from the motion compensation unit 19 and outputs it as a prediction residual signal.
- the orthogonal transform unit 11 performs orthogonal transform such as discrete cosine transform (DCT) on the prediction residual signal and outputs a transform coefficient.
- the quantization unit 12 quantizes the transform coefficient and outputs the quantized transform coefficient.
- the code assigning unit 13 entropy-encodes the quantized transform coefficient and outputs it as an encoded stream.
- the quantized transform coefficient is also input to the inverse quantization unit 14 where it is inversely quantized.
- the inverse orthogonal transform unit 15 performs inverse orthogonal transform on the transform coefficient output from the inverse quantization unit 14 and outputs a prediction residual decoded signal.
- the decoded signal calculation unit 16 adds the prediction residual decoded signal and the prediction signal output from the motion compensation unit 19 to generate a coded decoded signal of the current block.
- the decoded signal is stored in the frame memory 17 for use as a motion compensation reference image in the motion compensation unit 19.
- the motion estimation unit 18 performs a motion search on the video signal of the encoding target block with reference to a reference image stored in the frame memory 17 to calculate a motion vector.
- This motion vector is output to the motion compensation unit 19 and the prediction error vector calculation unit 32, and is also stored in the motion vector storage unit 31.
- the motion compensation unit 19 refers to the image in the frame memory 17 by using the motion vector obtained by the motion estimation unit 18, and outputs a prediction signal of the encoding target block.
- the motion vector is predicted using the information encoded by the motion vector prediction processing unit 30, and the motion vector used for the motion compensation is predicted.
- the difference from the motion vector (this is referred to as a prediction vector) is calculated by the prediction error vector calculation unit 32 and the result is output to the code allocation unit 13 as a prediction error vector.
- the code assigning unit 13 assigns a code to the prediction error vector by entropy coding and outputs it as an encoded stream.
- FIG. 2 is a block diagram showing the configuration of the moving picture decoding apparatus in one embodiment of the present invention.
- the motion vector prediction processing unit 28 is a part different from the prior art, and the other part is a standard H.264 standard. It is the same as that of the structure of the conventional general moving image decoding apparatus used as a H.264 other decoder.
- the moving picture decoding apparatus 2 outputs a video signal of a decoded picture by inputting and decoding the encoded stream encoded by the moving picture encoding apparatus 1 shown in FIG.
- the decoding unit 20 receives the encoded stream, entropy-decodes the quantized transform coefficient of the decoding target block, and decodes the prediction error vector.
- the inverse quantization unit 21 receives the quantized transform coefficient, inversely quantizes it, and outputs a decoded transform coefficient.
- the inverse orthogonal transform unit 22 performs inverse orthogonal transform on the decoded transform coefficient, and outputs a decoded prediction residual signal.
- the decoded signal calculation unit 23 adds the inter-frame prediction signal generated by the motion compensation unit 27 and the decoded prediction residual signal, thereby generating a decoded signal of the decoding target block.
- the decoded signal is output to an external device such as a display device and stored in the frame memory 24 for use as a motion compensation reference image in the motion compensation unit 27.
- the motion vector calculation unit 25 adds the prediction error vector decoded by the decoding unit 20 and the prediction vector calculated by the motion vector prediction processing unit 28 to calculate a motion vector used for motion compensation.
- This motion vector is stored in the motion vector storage unit 26 and notified to the motion compensation unit 27.
- the motion compensation unit 27 performs motion compensation based on the input motion vector, and generates an inter-frame prediction signal for the decoding target block with reference to the reference image in the frame memory 24. This inter-frame prediction signal is added to the decoded prediction residual signal by the decoded signal calculation unit 23.
- the motion vector prediction processing unit 28 performs motion vector prediction using the decoded motion vector stored in the motion vector storage unit 26, and outputs the obtained prediction vector to the motion vector calculation unit 25.
- the motion vector prediction processing unit 30 shown in FIG. 1 and the motion vector prediction processing unit 28 shown in FIG. 2 will be described.
- the two motion vector prediction processing units 30 and 28 have the same configuration, and the processing operation is also the same.
- the first component and the second component are called in the order in which the two components of the motion vector are encoded.
- the horizontal component is the first component
- the vertical component is the second component.
- the moving image encoding apparatus according to the present invention encodes the second component using the first component of the motion vector.
- the horizontal component of the motion vector will be described as a first component
- the vertical component will be described as a second component. The same applies if the first component and the second component are assigned in reverse.
- M neighboring blocks are set for the encoding target block. Examples of setting of neighboring blocks are shown in FIGS. 11 (a), 11 (b), and 11 (c), for block A, there are two neighboring blocks (block B0, B1), three (block B0, B1, B2), and four (block B0, In this example, B1, B2, and B3) are set.
- the neighboring blocks are not limited to the example shown in the figure, and the number of neighboring blocks can be increased or decreased.
- Motion vectors are assigned to the encoding target block and the neighboring blocks.
- a difference value is obtained for the first component of the motion vector between the encoding target block and the neighboring block. This is called a first component difference value.
- e x (m) v x ⁇ u x (m) .
- the magnitude of the first component difference value indicates that the corresponding neighboring block and the first component of the encoding target block are similar, and the same similarity may hold for the second component. is expected.
- the occurrence probability of the second component is estimated as follows based on the first component difference value.
- A is a constant for normalizing the sum of p (x) with respect to x to be 1.
- f () uses the following generalized Gaussian distribution.
- q is a parameter indicating the shape of the distribution
- ⁇ is a parameter related to the distribution of the distribution.
- ⁇ (z) is a gamma function defined by Expression (2).
- f (x ⁇ u y (m) ) takes the maximum value in u y (m) , and decreases as the distance from u y (m) increases.
- Formula (1) is a weighted sum obtained by weighting f (x ⁇ u y (m) ) by the reciprocal of the first component difference value. That is, p (x) gives a large value near u y (m) where the first component difference value is small.
- the occurrence probabilities are sorted in descending order, and the sorted values are converted into binary numbers using a given code table.
- Golomb code and Exp-Golomb code can be applied.
- FIG. 3 is a block diagram showing a configuration of the motion vector prediction processing unit 30 shown in FIG.
- the encoding target block MV storage unit 100 stores the first component of the motion vector of the encoding target block and the predicted value for the first component.
- the neighboring block MV read processing unit 101 reads the motion vector of the designated neighboring block.
- the neighboring block MV storage unit 102 stores the motion vector of the neighboring block.
- the predicted value generation processing unit 103 receives the first component of the motion vector of the neighboring block and generates a predicted value for the first component of the motion vector of the encoding target block.
- the prediction value generation method is given in advance, and for example, spatial median prediction can be applied.
- the difference value generation processing unit 104 inputs the first component of the motion vector of the encoding target block stored in the encoding target block MV storage unit 100 and the prediction value for the first component output from the prediction value generation processing unit 103. The difference value between the two is output.
- the binary number conversion processing unit 105 converts the difference value output from the difference value generation processing unit 104 into a binary number sequence. A specific conversion to a binary number sequence is given at the time of encoding. For example, a Golomb code or an Exp-Golomb code is used.
- Reference numeral 106 denotes an entropy encoding processing unit that entropy encodes the binary number sequence output from the binary number conversion processing unit 105. Specific entropy coding shall be given at the time of coding. For example, H.M. The CABAC adopted in H.264 / AVC is used.
- the predicted value generation processing unit 107 receives the second component of the motion vector of the neighboring block, and generates a predicted value for the second component of the motion vector of the encoding target block.
- the prediction value generation method is given in advance, and for example, spatial median prediction can be applied.
- the difference value generation processing unit 108 inputs the second component of the motion vector of the encoding target block stored in the encoding target block MV storage unit 100 and the prediction value for the second component output from the prediction value generation processing unit 107. The difference value between the two is output.
- the binary number conversion processing unit 109 converts the difference value output from the difference value generation processing unit 108 into a binary number sequence. A specific conversion to a binary number sequence is given at the time of encoding.
- the entropy encoding processing unit 110 performs entropy encoding on the binary sequence output from the binary number conversion processing unit 109. Specific entropy coding shall be given at the time of coding. For example, H.M.
- the CABAC adopted in H.264 / AVC is used.
- FIG. 4 is a flowchart showing the processing operation of the vector prediction processing unit 30 shown in FIG.
- the predicted value generation processing unit 103 reads the motion vector of the designated neighboring block (step S1), and predicts the predicted value for the first component of the motion vector of the encoding target block from the first component of the motion vector of the neighboring block. Is generated (step S2).
- the prediction value generation method is assumed to be given in advance, and for example, the above-described spatial median prediction can be applied.
- the difference value generation processing unit 104 generates a difference value between the first component and the predicted value of the same component of the motion vector of the encoding target block (step S3).
- the binary number conversion processing unit 105 converts the generated difference value into a binary number sequence (step S4).
- a specific conversion to a binary number sequence is given at the time of encoding.
- a Golomb code or an Exp-Golomb code is used.
- the entropy encoding processing unit 106 performs entropy encoding on the binary number sequence and outputs the result (step S5). Specific entropy coding shall be given at the time of coding.
- H.M The CABAC adopted in H.264 / AVC is used.
- the prediction value generation processing unit 107 reads the motion vector of the designated neighboring block, and predicts the second component of the motion vector of the encoding target block from the second component of the motion vector of the neighboring block. A value is generated (step S6).
- the prediction value generation method is assumed to be given in advance, and for example, the above-described spatial median prediction can be applied.
- the difference value generation processing unit 108 generates a difference value between the second component and the predicted value of the same component of the motion vector of the encoding target block (step S7).
- the binary number conversion processing unit 109 converts the generated difference value into a binary number sequence (step S8).
- a specific conversion to a binary number sequence is given at the time of encoding.
- a Golomb code or an Exp-Golomb code is used.
- the entropy encoding processing unit 110 performs entropy encoding on the binary sequence and outputs it (step S9). Specific entropy coding shall be given at the time of coding.
- H.M The CABAC adopted in H.264 / AVC is used.
- FIG. 5 is a block diagram showing a modified configuration of the vector prediction processing unit 30 shown in FIG.
- the apparatus shown in this figure is different from the apparatus shown in FIG. 3 in that a difference value generation processing unit 111 for the first component, a probability density function estimation processing unit 112 for the second component, and a binary conversion map generation processing unit 113 are provided. It is a point.
- the difference value generation processing unit 111 for the first component includes the first component of the motion vector of each neighboring block stored in the neighboring block MV storage unit 102 and the coding target block stored in the coding target block MV storage unit 100.
- the first component of the motion vector is read, and the difference value of the first component of the motion vector of each neighboring block with respect to the first component of the motion vector of the encoding target block is output.
- the probability density function estimation processing unit 112 of the second component calculates the probability of the second component of the motion vector of the encoding target block from the output difference value and the second component of the motion vector of each neighboring block according to the equation (1). Output density function. Also, parameters q and ⁇ that define the generalized Gaussian distribution are given from the outside.
- the binary conversion map generation processing unit 113 sorts the candidate values of the second component of the motion vector of the encoding target block in descending order according to the occurrence probability, and the motion vector of the encoding target block The ranks in all candidate vectors for the second component of are obtained.
- the binary number conversion processing unit 109 receives the rank of the motion vector obtained by the binary number conversion map generation processing unit 113 for the second component, and converts the rank into a binary number. It is assumed that a specific binary sequence assignment to the value of the same rank is given at the time of encoding. For example, a Golomb code or an Exp-Golomb code is used.
- FIG. 6 is a flowchart showing the processing operation of the vector prediction processing unit 30 shown in FIG.
- the predicted value generation processing unit 103 reads the motion vector of the designated neighboring block (step S1), and predicts the predicted value for the first component of the motion vector of the encoding target block from the first component of the motion vector of the neighboring block. Is generated (step S2).
- the prediction value generation method is assumed to be given in advance, and for example, the above-described spatial median prediction can be applied.
- the difference value generation processing unit 104 generates a difference value between the first component and the predicted value of the same component of the motion vector of the encoding target block (step S3).
- the binary number conversion processing unit 105 converts the generated difference value into a binary number sequence (step S4).
- a specific conversion to a binary number sequence is given at the time of encoding.
- a Golomb code or an Exp-Golomb code is used.
- the entropy encoding processing unit 106 performs entropy encoding on the binary number sequence and outputs the result (step S5). Specific entropy coding shall be given at the time of coding.
- H.M The CABAC adopted in H.264 / AVC is used.
- the difference value generation processing unit 111 for the first component reads the first component of the motion vector of each block designated as the neighboring block and the first component of the motion vector of the encoding target block, The first component difference value of the motion vector of each neighboring block with respect to the motion vector of the conversion target block is output (step S61).
- the parameters q and ⁇ that define the generalized Gaussian distribution are given from the outside.
- the binary conversion map generation processing unit 113 inputs the output probability density function, and uses the probability density function to descend the second component candidate value of the motion vector of the encoding target block in descending order according to the occurrence probability. And ranking among all candidates for the second component of the motion vector of the encoding target block is obtained (step S72). Then, the binary number conversion processing unit 109 converts the second component and the second component of the motion vector of the encoding target block into a binary number based on the obtained order (step S81). . It is assumed that a specific binary sequence assignment to the sorted value is given at the time of encoding. For example, a Golomb code or an Exp-Golomb code is used.
- the entropy encoding processing unit 110 performs entropy encoding on the binary sequence and outputs it (step S9).
- FIG. 7 is a block diagram showing a configuration of the motion vector prediction processing unit 28 shown in FIG.
- reference numeral 201 denotes a neighborhood block MV read processing unit that reads a motion vector of a designated neighborhood block.
- the neighboring block MV storage unit 202 stores the read motion vector of the neighboring block.
- the predicted value generation processing unit 203 receives the first component of the motion vector of the neighboring block stored in the neighboring block MV storage unit 202, and generates a predicted value for the first component of the motion vector of the decoding target block.
- the prediction value generation method is assumed to be given in advance. For example, the above-described spatial median prediction can be applied.
- the entropy decoding processing unit 204 receives encoded data related to the first component of the motion vector stored in the encoded data storage unit 200, performs entropy decoding processing, and generates a binary sequence.
- a specific entropy decoding process is given at the time of decoding. For example, H.M.
- the CABAC adopted in H.264 / AVC is used.
- the binary number inverse conversion processing unit 205 converts the output binary number sequence into a first component difference value.
- the addition processing unit 206 inputs the output binary number sequence and the predicted value output from the predicted value generation processing unit 203, adds both, and outputs the first component of the motion vector.
- the predicted value generation processing unit 207 receives the second component of the motion vector of the neighboring block stored in the neighboring block MV storage unit 202, and generates a predicted value for the second component of the motion vector of the decoding target block.
- the prediction value generation method is assumed to be given in advance. For example, the above-described spatial median prediction can be applied.
- the entropy decoding processing unit 208 inputs encoded data related to the second component of the motion vector stored in the encoded data storage unit 200, performs entropy decoding processing, and generates a binary sequence.
- a specific entropy decoding process is given at the time of decoding. For example, H.M.
- the CABAC adopted in H.264 / AVC is used.
- the binary number inverse conversion processing unit 209 converts the output binary number sequence into a second component difference value.
- the addition processing unit 210 receives the output binary number sequence and the predicted value output from the predicted value generation processing unit 207, adds both, and outputs the second component of the motion vector.
- FIG. 8 is a flowchart showing the processing operation of the motion vector prediction processing unit 28 shown in FIG.
- the predicted value generation processing unit 203 reads a motion vector of a designated neighboring block (step S11).
- the entropy decoding processing unit 204 receives the encoded data related to the motion vector of the first component, performs entropy decoding processing, generates a binary sequence, and outputs it (step S12).
- a specific entropy decoding process is given at the time of decoding. For example, H.M.
- the CABAC adopted in H.264 / AVC is used.
- the binary number inverse transform processing unit 205 inversely transforms the binary number sequence and outputs a first component difference value (step S13).
- the specific inverse transformation of the binary number sequence shall be given separately.
- a code table of Golomb code or Exp-Golomb code is used.
- the predicted value generation processing unit 203 generates a predicted value for the first component of the motion vector of the decoding target block from the first component of the motion vector of the neighboring block (step S14).
- the prediction value generation method is assumed to be given in advance, and for example, the above-described spatial median prediction can be applied.
- the addition processing unit 206 inputs the output first component difference value and the output prediction value, adds both, and outputs the addition value as the first component of the motion vector of the decoding target block (step). S15).
- the predicted value generation processing unit 207 reads the motion vector of the designated neighboring block (step S11).
- the entropy decoding processing unit 208 receives the encoded data related to the motion vector of the second component, performs entropy decoding processing, generates a binary sequence, and outputs it (step S16).
- a specific entropy decoding process is given at the time of decoding. For example, H.M.
- the CABAC adopted in H.264 / AVC is used.
- the binary number inverse conversion processing unit 209 performs inverse conversion on the binary number sequence and outputs a second component difference value (step S17).
- the specific inverse transformation of the binary number sequence shall be given separately.
- a code table of Golomb code or Exp-Golomb code is used.
- the predicted value generation processing unit 207 generates a predicted value for the second component of the motion vector of the decoding target block from the second component of the motion vector of the neighboring block (step S18).
- the prediction value generation method is assumed to be given in advance, and for example, the above-described spatial median prediction can be applied.
- the addition processing unit 210 inputs the output second component difference value and the output prediction value, adds both, and outputs the addition value as the second component of the motion vector of the decoding target block (step). S19).
- FIG. 9 is a block diagram showing a configuration in which the vector prediction processing unit 28 shown in FIG. 7 is modified.
- the apparatus shown in this figure is different from the apparatus shown in FIG. 7 in that a difference value generation processing unit 211 for the first component, a probability density function estimation processing unit 212 for the second component, and a conversion map generation processing unit 213 are provided. Is a point.
- the difference value generation processing unit 211 for the first component includes the first component of the motion vector of each neighboring block stored in the neighboring block MV storage unit 202 and the motion vector of the decoding target block stored in the encoded data storage unit 200.
- the first component is input, and the first component difference value of the motion vector of each neighboring block with respect to the motion vector of the decoding target block is output.
- the second component probability density function estimation processing unit 212 inputs the first component difference value of the motion vector of each neighboring block and the second component of the motion vector of each neighboring block, and follows the equation (1) to determine the decoding target block. Outputs the probability density function of the second component of the motion vector. It is assumed that parameters q and ⁇ that define the generalized Gaussian distribution are given from the outside.
- the transformation map generation processing unit 213 receives the output probability density function, and uses the probability density function to sort the second component candidate values of the motion vector of the decoding target block in descending order according to the occurrence probability.
- the correspondence (conversion map) of the second component and the order of all candidate values of the two components are obtained.
- the entropy decoding processing unit 208 inputs encoded data related to the second component of the motion vector stored in the encoded data storage unit 200, performs entropy decoding processing, and generates a binary sequence.
- a specific entropy decoding process is given at the time of decoding.
- H.M The CABAC adopted in H.264 / AVC is used.
- the binary number conversion processing unit 209 performs inverse conversion on the output binary number sequence related to the second component, and calculates the rank in all candidate vectors for the second component of the motion vector of the decoding target block. This reverse conversion is realized by reverse-conversion of a code table (for example, Golomb code or Exp-Golomb code) used at the time of encoding. Further, the calculated ranking and conversion map are input, and the ranking information is converted into the second component of the motion vector of the decoding target block.
- a code table for example, Golomb code or Exp-Golomb code
- FIG. 10 is a flowchart showing the processing operation of the vector prediction processing unit 28 shown in FIG.
- the predicted value generation processing unit 203 reads a motion vector of a designated neighboring block (step S11).
- the entropy decoding processing unit 204 receives the encoded data related to the motion vector of the first component, performs entropy decoding processing, generates a binary sequence, and outputs it (step S12).
- a specific entropy decoding process is given at the time of decoding. For example, H.M.
- the CABAC adopted in H.264 / AVC is used.
- the binary number inverse transform processing unit 205 inversely transforms the binary number sequence and outputs a first component difference value (step S13).
- the specific inverse transformation of the binary number sequence shall be given separately.
- a code table of Golomb code or Exp-Golomb code is used.
- the predicted value generation processing unit 203 generates a predicted value for the first component of the motion vector of the decoding target block from the first component of the motion vector of the neighboring block (step S14).
- the prediction value generation method is assumed to be given in advance, and for example, the above-described spatial median prediction can be applied.
- the addition processing unit 206 inputs the output first component difference value and the output prediction value, adds both, and outputs the addition value as the first component of the motion vector of the decoding target block (step). S15).
- the entropy decoding processing unit 208 inputs encoded data related to the motion vector of the second component, performs entropy decoding processing, generates and outputs a binary sequence (step S16).
- the difference value generation processing unit 211 for the first component inputs the first component of the motion vector of each block designated as the neighboring block and the first component of the motion vector of the decoding target block, and each of the motion vector of the decoding target block The first component difference value of the motion vector of the neighboring block is output (step S171).
- the second component probability density function estimation processing unit 212 inputs the output difference value and the second component of the motion vector of each neighboring block, and calculates the motion vector of the decoding target block according to Equation (1).
- a two-component probability density function is estimated and output (step S172). It is assumed that parameters q and ⁇ that define the generalized Gaussian distribution are given from the outside.
- the transform map generation processing unit 213 sorts the candidate values of the second component of the motion vector of the decoding target block in descending order according to the occurrence probability using the output probability density function, and all candidates of the second component A correspondence relationship (conversion map) between the order of the values and the second component is generated (step S181).
- the binary number conversion processing unit 209 inversely converts the binary number sequence related to the second component output in step S16, and calculates the rank in all candidate vectors for the second component of the motion vector of the decoding target block.
- This reverse conversion is realized by reverse-conversion of a code table (for example, Golomb code or Exp-Golomb code) used at the time of encoding.
- the calculated ranking and conversion map are input, and the ranking information is converted into the second component of the motion vector of the decoding target block (step S191).
- FIG. 12 is a block diagram illustrating a configuration of the image transmission system.
- a moving image input unit 601 inputs a moving image captured by a camera or the like.
- the moving image encoding device 602 is configured by the moving image encoding device shown in FIG. 1, and encodes and transmits the moving image input by the moving image input unit 601.
- the transmission path 603 transmits the encoded moving image data transmitted from the moving image encoding device 602.
- the moving picture decoding apparatus 604 includes the moving picture decoding apparatus shown in FIG.
- the moving image output unit 605 outputs the moving image decoded by the moving image decoding device 604 to a display device or the like.
- the moving image encoding device 602 inputs moving image data via the moving image input unit 601 and performs encoding by the above-described processing operation for each frame of the moving image. Then, the moving image encoding device 602 transmits the encoded moving image data to the moving image decoding device 604 via the transmission path 603. The moving image decoding device 604 decodes the encoded moving image data by the processing operation described above, and displays the moving image on a display device or the like via the moving image output unit 605.
- the amount of code of the second component value can be reduced, and moving image encoding is performed.
- the amount of generated coding in the processing can be reduced.
- a program for realizing the function of the processing unit in FIG. 1 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed, thereby executing image coding processing.
- image decoding processing may be performed.
- the “computer system” includes an OS and hardware such as peripheral devices.
- the “computer system” includes a WWW system having a homepage providing environment (or display environment).
- the “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system.
- the “computer-readable recording medium” refers to a volatile memory (RAM) in a computer system that becomes a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In addition, those holding programs for a certain period of time are also included.
- RAM volatile memory
- the program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium.
- the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
- the program may be for realizing a part of the functions described above. Furthermore, what can implement
- the moving picture encoding apparatus can be applied to applications in which it is essential to improve the encoding efficiency of motion vectors and reduce the amount of code of motion vectors as compared with the prior art.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本願は、2011年6月29日に、日本に出願された特願2011-144122号に基づき優先権を主張し、その内容をここに援用する。
規格H.264による符号化では、Bピクチャの符号化における符号化モードの一つとして、動き情報を符号化済みブロックの動き情報から予測生成し、動き情報の符号化を省略するダイレクト・モードと呼ばれる符号化モードが用いられている。ダイレクト・モードには、主として空間方向の動き情報を利用する空間ダイレクト・モードと、主として時間方向の動き情報を利用する時間ダイレクト・モードがある。この時間ダイレクト・モードにおける動きベクトルの予測では、動きベクトル予測処理部500は、次のように予測ベクトルを算出する。
動画像復号装置2において、動きベクトル予測処理部28が従来技術と異なる部分であり、他の部分は、規格H.264その他のデコーダとして用いられている従来の一般的な動画像復号装置の構成と同様である。動画像復号装置2は、図1に示す動画像符号化装置1により符号化された符号化ストリームを入力して復号することにより復号画像の映像信号を出力する。この復号のため、復号部20は、符号化ストリームを入力し、復号対象ブロックの量子化変換係数をエントロピー復号するとともに、予測誤差ベクトルを復号する。
逆量子化部21は、量子化変換係数を入力し、それを逆量子化して復号変換係数を出力する。逆直交変換部22は、復号変換係数に逆直交変換を施し、復号予測残差信号を出力する。復号信号算出部23では、動き補償部27で生成されたフレーム間予測信号と復号予測残差信号とを加算することで、復号対象ブロックの復号信号を生成する。この復号信号は、表示装置等の外部の装置に出力されるとともに、動き補償部27における動き補償の参照画像として用いるために、フレームメモリ24に格納される。
このフレーム間予測信号は、復号信号算出部23で復号予測残差信号に加算される。動きベクトル予測処理部28は、動きベクトル記憶部26に記憶された復号済みの動きベクトルを用いて、動きベクトルの予測を行い、求めた予測ベクトルを動きベクトル算出部25に出力する。
Ex=(ex (0),・・・,ex (M-1))
ここで、ex (m)=vx-ux (m)である。この第一成分差分値の大きさは、対応する近傍ブロックと符号化対象ブロックの第一成分が類似していることを示しており、同様の類似性が第二成分に対しても成り立つことが予想される。
2進数列への具体的な変換は、符号化時に与えられるものとする。例えば、Golomb符号やExp-Golomb符号を用いる。符号106は、2進数変換処理部105から出力された2進数列をエントロピー符号化するエントロピー符号化処理部である。具体的なエントロピー符号化は、符号化時に与えられるものとする。例えば、H.264/AVCで採用されたCABACを用いる。
差分値生成処理部108は、符号化対象ブロックMV記憶部100に記憶された符号化対象ブロックの動きベクトルの第二成分及び予測値生成処理部107から出力した第二成分に対する予測値を入力し、両者の差分値を出力する。2進数変換処理部109は、差分値生成処理部108から出力された差分値を2進数列に変換する。2進数列への具体的な変換は、符号化時に与えられるものとする。例えば、Golomb符号やExp-Golomb符号が用いる。エントロピー符号化処理部110は、2進数変換処理部109から出力された2進数列をエントロピー符号化する。具体的なエントロピー符号化は、符号化時に与えられるものとする。例えば、H.264/AVCで採用されたCABACを用いる。
図5において、図3に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図3に示す装置と異なる点は、第一成分に対する差分値生成処理部111、第二成分の確率密度関数推定処理部112及び2進数変換マップ生成処理部113が設けられている点である。
この図において、図7に示す装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図7に示す装置と異なる点は、第一成分に対する差分値生成処理部211、第二成分の確率密度関数推定処理部212及び変換マップ生成処理部213が設けられている点である。
図10は、図9に示すベクトル予測処理部28の処理動作を示すフローチャートである。
まず、予測値生成処理部203は、指定された近傍ブロックの動きベクトルを読み込む(ステップS11)。エントロピー復号処理部204は、第一成分の動きベクトルに関する符号化データを入力し、エントロピー復号処理を行い、2進数列を生成して出力する(ステップS12)。具体的なエントロピー復号処理は、復号時に与えられるものとする。例えば、H.264/AVCで採用されたCABACを用いる。
なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
2 動画像復号装置
100 符号化対象ブロックMV記憶部
101 近傍ブロックMV読込処理部
102 近傍ブロックMV記憶部
103 予測値生成処理部
104 差分値生成処理部
105 2進数変換処理部
106 エントロピー符号化部
109 2進数変換処理部
110 エントロピー符号化処理部
111 第一成分に対する差分値生成処理部
112 第二成分の確率密度関数推定処理部
113 2進数変換マップ生成処理部
200 符号化データ記憶部
201 近傍ブロックMV読込処理部
202 近傍ブロックMV記憶部
203 予測値生成処理部
204 エントロピー復号処理部
205 2進数逆変換処理部
206 加算処理部
208 エントロピー復号処理部
209 2進数変換処理部
211 第一成分に対する差分値生成処理部
212 第二成分の確率密度関数推定処理部
213 変換マップ生成処理部
Claims (6)
- 画像を所定サイズのブロックに分割し、符号化対象ブロックと近傍ブロックの間における動きベクトルの複数の成分値のうち、一方の成分値を第一成分値とし、他方の成分値を第二成分値とし、前記第一成分値と前記第二成分値とをそれぞれ符号化することにより前記ブロック毎の動き補償フレーム間予測を用いた動画像符号化装置であって、
前記近傍ブロックの動きベクトルの前記第一成分値から生成した前記符号化対象ブロックの動きベクトルの第一成分値の予測値と、前記符号化対象ブロックの動きベクトルの第一成分値との差分値である前記第一成分の差分値を求め、求められた前記第一成分の差分値を符号化する第一成分符号化部と、
前記近傍ブロックの動きベクトルの前記第一成分値と、前記符号化対象ブロックの動きベクトルの前記第一成分値との差分値と、前記近傍ブロックの動きベクトルの前記第二成分値に基づき、前記符号化対象ブロックの動きベクトルの第二成分値の候補値に対する発生確率を求め、前記発生確率に基づき、前記第二成分値の符号語を定め、前記第二成分値を符号化する第二成分符号化部と
を備えた動画像符号化装置。 - 画像を所定サイズのブロックに分割し、符号化対象ブロックと近傍ブロックの間における動きベクトルの複数の成分値のうち、一方の成分値を第一成分値とし、他方の成分値を第二成分値とし、前記第一成分値と前記第二成分値とをそれぞれ符号化することにより前記ブロック毎の動き補償フレーム間予測を用いて符号化された前記画像の復号を行う動画像復号装置であって、
第一成分の差分値を復号し、前記近傍ブロックの動きベクトルの第一成分値から生成した前記符号化対象ブロックの動きベクトルの第一成分値の予測値と、前記第一成分の差分値とを加算して前記第一成分値を生成する第一成分復号部と、
前記近傍ブロックの動きベクトルの前記第一成分値と、前記符号化対象ブロックの動きベクトルの前記第一成分値との差分値と前記近傍ブロックの動きベクトルの前記第二成分値に基づき、前記符号化対象ブロックの動きベクトルの第二成分値の候補値に対する発生確率を求め、前記発生確率に基づき、前記第二成分値と前記第二成分値の符号語との対応関係を同定し、符号化データとして与えられた前記第二成分値の符号語を前記第二成分値へ復号する第二成分復号部と
を備えた動画像復号装置。 - 画像を所定サイズのブロックに分割し、符号化対象ブロックと近傍ブロックの間における動きベクトルの複数の成分値のうち、一方の成分値を第一成分値とし、他方の成分値を第二成分値とし、前記第一成分値と前記第二成分値とをそれぞれ符号化することにより前記ブロック毎の動き補償フレーム間予測を用いた動画像符号化方法であって、
前記近傍ブロックの動きベクトルの前記第一成分値から生成した前記符号化対象ブロックの動きベクトルの第一成分値の予測値と、前記符号化対象ブロックの動きベクトルの第一成分値との差分値である前記第一成分の差分値を求め、前記第一成分の差分値を符号化する第一成分符号化ステップと、
前記近傍ブロックの動きベクトルの前記第一成分値と、前記符号化対象ブロックの動きベクトルの前記第一成分値との差分値と、前記近傍ブロックの動きベクトルの前記第二成分値に基づき、前記符号化対象ブロックの動きベクトルの第二成分値の候補値に対する発生確率を求め、前記発生確率に基づき、前記第二成分値の符号語を定め、前記第二成分値を符号化する第二成分符号化ステップと
を有する動画像符号化方法。 - 画像を所定サイズのブロックに分割し、符号化対象ブロックと近傍ブロックの間における動きベクトルの複数の成分値のうち、一方の成分値を第一成分値とし、他方の成分値を第二成分値とし、前記第一成分値と前記第二成分値とをそれぞれ符号化することにより前記ブロック毎の動き補償フレーム間予測を用いて符号化された前記画像の復号を行う動画像復号方法であって、
第一成分の差分値を復号し、前記近傍ブロックの動きベクトルの第一成分値から生成した前記符号化対象ブロックの動きベクトルの第一成分値の予測値と、前記第一成分の差分値とを加算して前記第一成分値を生成する第一成分復号ステップと、
前記近傍ブロックの動きベクトルの前記第一成分値と、前記符号化対象ブロックの動きベクトルの前記第一成分値との差分値と前記近傍ブロックの動きベクトルの前記第二成分値に基づき、前記符号化対象ブロックの動きベクトルの第二成分値の候補値に対する発生確率を求め、前記発生確率に基づき、前記第二成分値と前記第二成分値の符号語との対応関係を同定し、符号化データとして与えられた前記第二成分値の符号語を前記第二成分値へ復号する第二成分復号ステップと
を有する動画像復号方法。 - 画像を所定サイズのブロックに分割し、符号化対象ブロックと近傍ブロックの間における動きベクトルの複数の成分値のうち、一方の成分値を第一成分値とし、他方の成分値を第二成分値とし、前記第一成分値と前記第二成分値とをそれぞれ符号化することにより前記ブロック毎の動き補償フレーム間予測を用いた動画像符号化装置上のコンピュータに画像符号化処理を行わせる動画像符号化プログラムであって、
前記近傍ブロックの動きベクトルの前記第一成分値から生成した前記符号化対象ブロックの動きベクトルの第一成分値の予測値と、前記符号化対象ブロックの動きベクトルの第一成分値との差分値である前記第一成分の差分値を求め、前記第一成分の差分値を符号化する第一成分符号化ステップと、
前記近傍ブロックの動きベクトルの前記第一成分値と、前記符号化対象ブロックの動きベクトルの前記第一成分値との差分値と、前記近傍ブロックの動きベクトルの前記第二成分値に基づき、前記符号化対象ブロックの動きベクトルの第二成分値の候補値に対する発生確率を求め、前記発生確率に基づき、前記第二成分値の符号語を定め、前記第二成分値を符号化する第二成分符号化ステップと
を行わせる動画像符号化プログラム。 - 画像を所定サイズのブロックに分割し、符号化対象ブロックと近傍ブロックの間における動きベクトルの複数の成分値のうち、一方の成分値を第一成分値とし、他方の成分値を第二成分値とし、前記第一成分値と前記第二成分値とをそれぞれ符号化することにより前記ブロック毎の動き補償フレーム間予測を用いて符号化された前記画像の復号を行う動画像復号装置上のコンピュータに画像復号処理を行わせる動画像復号プログラムであって、
第一成分の差分値を復号し、前記近傍ブロックの動きベクトルの第一成分値から生成した前記符号化対象ブロックの動きベクトルの第一成分値の予測値と、前記第一成分の差分値とを加算して前記第一成分値を生成する第一成分復号ステップと、
前記近傍ブロックの動きベクトルの前記第一成分値と、前記符号化対象ブロックの動きベクトルの前記第一成分値との差分値と前記近傍ブロックの動きベクトルの前記第二成分値に基づき、前記符号化対象ブロックの動きベクトルの第二成分値の候補値に対する発生確率を求め、前記発生確率に基づき、前記第二成分値と前記第二成分値の符号語との対応関係を同定し、符号化データとして与えられた前記第二成分値の符号語を前記第二成分値へ復号する第二成分復号ステップと
を行わせる動画像復号プログラム。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ES12805372T ES2729106T3 (es) | 2011-06-29 | 2012-06-26 | Codificación entrópica de vectores de movimiento |
RU2013154757/08A RU2568299C2 (ru) | 2011-06-29 | 2012-06-26 | Устройство видеокодирования, устройство видеодекодирования, способ видеокодирования, способ видеодекодирования, программа видеокодирования и программа видеодекодирования |
CA2838467A CA2838467A1 (en) | 2011-06-29 | 2012-06-26 | Video encoding device, video decoding device, video encoding method, video decoding method, video encoding program, and video decoding program |
BR112013031889A BR112013031889A2 (pt) | 2011-06-29 | 2012-06-26 | dispositivo de codificação de vídeo, dispositivo de decodificação de vídeo, método de codificação de vídeo, método de decodificação de vídeo, programa de codificação de vídeo e programa de decodificação de vídeo |
KR1020137031984A KR101587886B1 (ko) | 2011-06-29 | 2012-06-26 | 동화상 부호화 장치, 동화상 복호 장치, 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 프로그램 및 동화상 복호 프로그램 |
EP12805372.5A EP2709365B1 (en) | 2011-06-29 | 2012-06-26 | Entropy coding of motion vectors |
CN201280028607.XA CN103636216B (zh) | 2011-06-29 | 2012-06-26 | 视频编码装置、视频解码装置、视频编码方法及视频解码方法 |
US14/124,331 US9693053B2 (en) | 2011-06-29 | 2012-06-26 | Video encoding device, video decoding device, video encoding method, video decoding method, and non-transitory computer-readable recording media that use similarity between components of motion vector |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011-144122 | 2011-06-29 | ||
JP2011144122A JP5729817B2 (ja) | 2011-06-29 | 2011-06-29 | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム及び動画像復号プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013002219A1 true WO2013002219A1 (ja) | 2013-01-03 |
Family
ID=47424110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/066282 WO2013002219A1 (ja) | 2011-06-29 | 2012-06-26 | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム及び動画像復号プログラム |
Country Status (11)
Country | Link |
---|---|
US (1) | US9693053B2 (ja) |
EP (1) | EP2709365B1 (ja) |
JP (1) | JP5729817B2 (ja) |
KR (1) | KR101587886B1 (ja) |
CN (1) | CN103636216B (ja) |
BR (1) | BR112013031889A2 (ja) |
CA (1) | CA2838467A1 (ja) |
ES (1) | ES2729106T3 (ja) |
RU (1) | RU2568299C2 (ja) |
TW (1) | TW201306596A (ja) |
WO (1) | WO2013002219A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11332533B2 (en) | 2007-09-26 | 2022-05-17 | Chugai Seiyaku Kabushiki Kaisha | Modified antibody constant region |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1188890A (ja) * | 1997-07-09 | 1999-03-30 | Nippon Telegr & Teleph Corp <Ntt> | 動きベクトル符号化方法および復号方法、動きベクトル符号化装置および復号装置、並びに、動きベクトル符号化プログラムおよび復号プログラムを記録した記録媒体 |
JP2000138935A (ja) * | 1998-10-29 | 2000-05-16 | Fujitsu Ltd | 動きベクトル符号化装置および復号装置 |
JP2004007775A (ja) * | 2003-07-14 | 2004-01-08 | Victor Co Of Japan Ltd | 動き補償復号化装置 |
JP2008283490A (ja) * | 2007-05-10 | 2008-11-20 | Ntt Docomo Inc | 動画像符号化装置、方法及びプログラム、並びに動画像復号化装置、方法及びプログラム |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69840082D1 (de) * | 1997-02-14 | 2008-11-13 | Nippon Telegraph & Telephone | Prädikatives Dekodierungsverfahren von Videodaten |
JP2000269821A (ja) * | 1999-03-18 | 2000-09-29 | Oki Micro Design Co Ltd | 予測符号化信号復号化装置及び雑音除去方法 |
US6658157B1 (en) | 1999-06-29 | 2003-12-02 | Sony Corporation | Method and apparatus for converting image information |
JP2004007379A (ja) * | 2002-04-10 | 2004-01-08 | Toshiba Corp | 動画像符号化方法及び動画像復号化方法 |
AU2003280512A1 (en) * | 2002-07-01 | 2004-01-19 | E G Technology Inc. | Efficient compression and transport of video over a network |
US6925123B2 (en) | 2002-08-06 | 2005-08-02 | Motorola, Inc. | Method and apparatus for performing high quality fast predictive motion search |
US7599438B2 (en) | 2003-09-07 | 2009-10-06 | Microsoft Corporation | Motion vector block pattern coding and decoding |
JP4145275B2 (ja) * | 2004-07-27 | 2008-09-03 | 富士通株式会社 | 動きベクトル検出・補償装置 |
JP2007043651A (ja) | 2005-07-05 | 2007-02-15 | Ntt Docomo Inc | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム |
US20090123066A1 (en) * | 2005-07-22 | 2009-05-14 | Mitsubishi Electric Corporation | Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein, |
CN101627634B (zh) * | 2006-10-16 | 2014-01-01 | 诺基亚公司 | 用于将可并行解码片用于多视点视频编码的系统和方法 |
US7365659B1 (en) | 2006-12-06 | 2008-04-29 | Silicon Image Gmbh | Method of context adaptive binary arithmetic coding and coding apparatus using the same |
KR101356735B1 (ko) * | 2007-01-03 | 2014-02-03 | 삼성전자주식회사 | 전역 움직임 벡터를 사용해서 움직임 벡터를 추정하기 위한방법, 장치, 인코더, 디코더 및 복호화 방법 |
JP4452733B2 (ja) | 2007-08-24 | 2010-04-21 | 日本電信電話株式会社 | 動画像符号化における動き評価装置,方法およびそのプログラム並びにその記録媒体 |
KR101695681B1 (ko) | 2008-08-19 | 2017-01-13 | 콘텐트 아머 | 상황-기반의 적응형 이진 산술 코딩(cabac)비디오 스트림 준수 |
JP5401071B2 (ja) | 2008-10-09 | 2014-01-29 | 株式会社Nttドコモ | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、動画像復号プログラム、動画像処理システムおよび動画像処理方法 |
-
2011
- 2011-06-29 JP JP2011144122A patent/JP5729817B2/ja active Active
-
2012
- 2012-06-26 CN CN201280028607.XA patent/CN103636216B/zh active Active
- 2012-06-26 RU RU2013154757/08A patent/RU2568299C2/ru active
- 2012-06-26 US US14/124,331 patent/US9693053B2/en active Active
- 2012-06-26 BR BR112013031889A patent/BR112013031889A2/pt not_active IP Right Cessation
- 2012-06-26 CA CA2838467A patent/CA2838467A1/en not_active Abandoned
- 2012-06-26 KR KR1020137031984A patent/KR101587886B1/ko active IP Right Grant
- 2012-06-26 ES ES12805372T patent/ES2729106T3/es active Active
- 2012-06-26 EP EP12805372.5A patent/EP2709365B1/en active Active
- 2012-06-26 WO PCT/JP2012/066282 patent/WO2013002219A1/ja active Application Filing
- 2012-06-27 TW TW101122950A patent/TW201306596A/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1188890A (ja) * | 1997-07-09 | 1999-03-30 | Nippon Telegr & Teleph Corp <Ntt> | 動きベクトル符号化方法および復号方法、動きベクトル符号化装置および復号装置、並びに、動きベクトル符号化プログラムおよび復号プログラムを記録した記録媒体 |
JP2000138935A (ja) * | 1998-10-29 | 2000-05-16 | Fujitsu Ltd | 動きベクトル符号化装置および復号装置 |
JP2004007775A (ja) * | 2003-07-14 | 2004-01-08 | Victor Co Of Japan Ltd | 動き補償復号化装置 |
JP2008283490A (ja) * | 2007-05-10 | 2008-11-20 | Ntt Docomo Inc | 動画像符号化装置、方法及びプログラム、並びに動画像復号化装置、方法及びプログラム |
Non-Patent Citations (1)
Title |
---|
SUMINO SHINYA ET AL.: "Impress R&D", 2008, article "H.264/AVC textbook", pages: 128 - 130 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11332533B2 (en) | 2007-09-26 | 2022-05-17 | Chugai Seiyaku Kabushiki Kaisha | Modified antibody constant region |
Also Published As
Publication number | Publication date |
---|---|
EP2709365B1 (en) | 2019-03-06 |
JP5729817B2 (ja) | 2015-06-03 |
RU2568299C2 (ru) | 2015-11-20 |
US20140105307A1 (en) | 2014-04-17 |
CN103636216A (zh) | 2014-03-12 |
ES2729106T3 (es) | 2019-10-30 |
TW201306596A (zh) | 2013-02-01 |
EP2709365A1 (en) | 2014-03-19 |
US9693053B2 (en) | 2017-06-27 |
EP2709365A4 (en) | 2014-11-26 |
CN103636216B (zh) | 2017-02-08 |
KR20140018982A (ko) | 2014-02-13 |
RU2013154757A (ru) | 2015-08-10 |
BR112013031889A2 (pt) | 2016-12-13 |
KR101587886B1 (ko) | 2016-01-22 |
CA2838467A1 (en) | 2013-01-03 |
JP2013012894A (ja) | 2013-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8254456B2 (en) | Method and apparatus for encoding video and method and apparatus for decoding video | |
KR101512324B1 (ko) | 복수의 움직임 벡터 프리딕터들을 사용하여 움직임 벡터를 추정하는 방법, 장치, 인코더, 디코더 및 복호화 방법 | |
JP5277257B2 (ja) | 動画像復号化方法および動画像符号化方法 | |
KR101366242B1 (ko) | 움직임 모델 파라메터의 부호화, 복호화 방법 및 움직임모델 파라메터를 이용한 영상의 부호화, 복호화 방법 및장치 | |
JP6726340B2 (ja) | 画像予測復号方法 | |
JP6033725B2 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム | |
KR101528361B1 (ko) | 움직임 벡터 예측 부호화 방법, 움직임 벡터 예측 복호 방법, 동화상 부호화 장치, 동화상 복호 장치 및 그들의 프로그램 | |
JP4993676B2 (ja) | 画像符号化装置及び画像符号化方法 | |
KR20130051384A (ko) | 스킵모드를 이용한 동영상 부호화 및 복호화 방법 및 장치 | |
KR101456491B1 (ko) | 복수의 참조 픽처에 기초한 영상 부호화, 복호화 방법 및장치 | |
JP5711514B2 (ja) | 符号化装置、復号装置、符号化方法、復号方法、符号化プログラム及び復号プログラム | |
KR20110048004A (ko) | 움직임 벡터 해상도 제한을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
JP6259272B2 (ja) | 映像符号化装置及び映像符号化プログラム | |
JP5729817B2 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム及び動画像復号プログラム | |
JP2017098601A (ja) | 符号化装置、撮像装置、符号化方法、及びプログラム | |
US11528485B2 (en) | Encoding apparatus and program | |
JP5281597B2 (ja) | 動きベクトル予測方法,動きベクトル予測装置および動きベクトル予測プログラム | |
JP5281596B2 (ja) | 動きベクトル予測方法,動きベクトル予測装置および動きベクトル予測プログラム | |
KR101786921B1 (ko) | 고속 움직임 추정을 위한 장치 및 방법 | |
US10972751B2 (en) | Video encoding apparatus and method, and video decoding apparatus and method | |
KR101786957B1 (ko) | 고속 움직임 추정을 위한 장치 및 방법 | |
KR20160084124A (ko) | 기본 계층의 부호화 정보를 이용하여 향상 계층의 움직임 탐색 범위를 결정하는 스케일러블 부호화 장치 및 방법 | |
JP2012191492A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム |
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: 12805372 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 20137031984 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2838467 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14124331 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012805372 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112013031889 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 2013154757 Country of ref document: RU Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 112013031889 Country of ref document: BR Kind code of ref document: A2 Effective date: 20131211 |