WO2011155779A2 - 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치 - Google Patents

효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치 Download PDF

Info

Publication number
WO2011155779A2
WO2011155779A2 PCT/KR2011/004234 KR2011004234W WO2011155779A2 WO 2011155779 A2 WO2011155779 A2 WO 2011155779A2 KR 2011004234 W KR2011004234 W KR 2011004234W WO 2011155779 A2 WO2011155779 A2 WO 2011155779A2
Authority
WO
WIPO (PCT)
Prior art keywords
motion vector
candidate
representative
difference
representative motion
Prior art date
Application number
PCT/KR2011/004234
Other languages
English (en)
French (fr)
Other versions
WO2011155779A3 (ko
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 에스케이텔레콤 주식회사
Publication of WO2011155779A2 publication Critical patent/WO2011155779A2/ko
Publication of WO2011155779A3 publication Critical patent/WO2011155779A3/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Definitions

  • An embodiment of the present invention provides a predictive motion vector most similar to the motion vector of the current block in order to effectively compress a motion vector obtained after block-based motion prediction in a video compression and / or reconstruction apparatus.
  • the present invention relates to an efficient motion candidate calculation technique and a motion vector encoding / decoding apparatus based on the same, and is an adaptive competition-based motion that can obtain better reconstructed picture quality at the same bit rate by improving the performance of video data compression and / or reconstruction.
  • the median predictor shows a good performance because the residual motion vector value to be encoded is greatly reduced, while the motion is similar to a block including the outline of another object.
  • the performance is limited in the case of having irregular movement patterns different from those of neighboring blocks.
  • the present invention was devised to solve the problem of indexing bits increase as more candidate prediction motion vectors and fixed motion prediction candidate problems, which are encoding performance limitation factors of the prior art, have various characteristics.
  • An apparatus and method for calculating a motion candidate vector capable of adaptively providing a motion prediction candidate to an image while minimizing additional indexing bits by variably calculating representative candidate prediction motion vectors among a plurality of candidate prediction motion vectors, and a motion vector unit using the same
  • An object of the present invention is to provide a decoding device and method.
  • the video encoding / decoding apparatus determines a motion vector of the current block, a plurality of candidates according to the characteristics of each candidate prediction motion vector based on the motion information of the neighboring block
  • An image encoder for classifying a set, selecting a representative motion vector from each classified candidate set, and adaptively selecting a predicted motion vector according to the difference between the representative motion vectors, and encoding a difference value with the determined motion vector.
  • Selects a second representative motion vector from the set adaptively selects a predicted motion vector according to the difference between each selected second representative motion vector, adds the difference vector from which the difference value is decoded, and restores the current motion vector;
  • a video decoder for reconstructing the current block by predictively decoding the video data extracted from the bitstream using the current motion vector reconstructed.
  • an apparatus for encoding an image comprising: an image encoder configured to determine a motion vector of a current block and predictively encode the current block using the determined motion vector; And classifying a plurality of candidate sets according to the characteristics of each candidate prediction motion vector based on the motion information of the neighboring block with respect to the current block, selecting a representative motion vector from each of the classified candidate sets, and selecting each representative motion. And a motion vector encoder for adaptively selecting a predicted motion vector according to the difference between the vectors and encoding a difference value with the motion vector of the current block.
  • a motion vector encoding apparatus for achieving the above object is classified into a plurality of candidate sets according to the characteristics of each candidate prediction motion vector for each candidate prediction motion vector constituting the candidate prediction motion vector set.
  • a candidate predicted motion vector classifier A representative motion vector is selected for each candidate set classified in the candidate prediction motion vector classification unit, and the difference between each representative motion vector selected from each candidate set is compared with a threshold value, and each A representative motion vector selecting unit selecting at least one of the representative motion vectors;
  • a motion vector encoder for encoding a difference value between the representative motion vector selected by the representative motion vector selector and the motion vector of the current block.
  • the representative motion vector selecting unit may select any one of the representative motion vectors selected from each candidate set as the representative motion vector when the difference between each representative motion vector selected from each candidate set is less than or equal to a threshold. .
  • the motion vector encoder when the difference between each representative motion vector selected from each candidate set is greater than a threshold value, the representative motion vector and the current one having the lowest coding cost among the representative motion vectors selected from each candidate set are present.
  • the difference value of the motion vector of the block can be encoded.
  • the candidate prediction motion vector classifier may be classified into a regular motion vector set and an irregular motion vector set according to the characteristics of each candidate predicted motion vector.
  • the representative motion vector selecting unit may encode a difference value between the representative motion vector having the smallest encoding cost and the motion vector of the current block based on a rate-distortion based discriminant expression among the plurality of representative motion vectors.
  • the rate-distortion based discriminant can be expressed as follows.
  • mv x is the actual motion vector of the current block X
  • I best is the optimal motion vector index
  • D is the sum of absolute difference between the real image obtained by performing motion prediction and the previously reconstructed image.
  • SATD Sud of Absolute Transformed Difference
  • represents a Lagrange multiplier for adjusting the balance between D and (mv x -mv i ).
  • an image decoding apparatus classifies and classifies a plurality of candidate sets according to characteristics of each candidate prediction motion vector based on motion information of neighboring blocks with respect to a current block.
  • a representative motion vector is selected from each candidate set, and the motion is restored by reconstructing the current motion vector by adaptively selecting the predicted motion vector according to the difference between the selected representative motion vectors and adding the difference vector whose difference value is decoded.
  • Vector decoder and an image decoder which decodes the difference value extracted from the bitstream, and predictively decodes the image data extracted from the bitstream by using the current motion vector to be reconstructed to reconstruct the current block.
  • a motion vector decoding apparatus for achieving the above object is classified into a plurality of candidate sets according to the characteristics of each candidate prediction motion vector for each candidate prediction motion vector constituting the candidate prediction motion vector set.
  • a candidate predicted motion vector classifier A representative motion vector is selected for each candidate set classified in the candidate prediction motion vector classification unit, and the difference between each representative motion vector selected from each candidate set is compared with a threshold value, and each A representative motion vector selecting unit selecting at least one of the representative motion vectors;
  • a motion vector decoder configured to reconstruct the current motion vector by adding the difference vector reconstructed from the bitstream to the representative motion vector selected by the representative motion vector selector.
  • the representative motion vector selecting unit may select any one of the representative motion vectors selected from each candidate set as the representative motion vector when the difference between each representative motion vector selected from each candidate set is less than or equal to a threshold. .
  • the representative motion vector selector is configured to apply the rate-distortion based representative motion vector among the representative motion vectors selected from each candidate set when the difference between each representative motion vector selected from each candidate set is greater than a threshold.
  • the difference vector can be added to restore the current motion vector.
  • an image encoding / decoding method includes determining a motion vector of a current block and performing a plurality of candidates according to characteristics of each candidate prediction motion vector based on motion information of a neighboring block. Selecting a representative motion vector from each of the classified candidate sets, adaptively selecting a predicted motion vector according to the difference between the representative motion vectors, and encoding a difference value with the determined motion vector; And decoding the difference value extracted from the bitstream, classifying the second candidate set according to the characteristics of each candidate prediction motion vector based on the motion information of the neighboring block with respect to the current block, and classifying each second candidate.
  • Selects a second representative motion vector from the set adaptively selects a predicted motion vector according to the difference between each selected second representative motion vector, adds the difference vector from which the difference value is decoded, and restores the current motion vector; And reconstructing the current block by predictively decoding the image data extracted from the bitstream using a current motion vector reconstructed.
  • a video encoding method comprising: determining a motion vector of a current block; Classifying a plurality of candidate sets according to characteristics of each candidate prediction motion vector based on motion information of neighboring blocks with respect to the current block; Selecting a representative motion vector from each of the classified candidate sets; Adaptively selecting one representative motion vector according to a difference between each selected representative motion vector; And encoding a difference value between the adaptively selected representative motion vector and the motion vector of the current block.
  • each representative motion vector selected from each of the candidate sets is less than or equal to the threshold
  • one of the representative motion vectors selected from each candidate set is selected as the representative motion vector.
  • the representative motion vector of the representative motion vectors selected from each candidate set has a minimum encoding cost and the motion vector of the current block.
  • the difference value can be encoded.
  • the candidate predicted motion vector classification step may be classified into a regular motion vector set and an irregular motion vector set according to the characteristics of each candidate predicted motion vector.
  • An image decoding method for achieving the above object includes decoding a difference value extracted from a bitstream; Classifying a plurality of candidate sets according to characteristics of each candidate prediction motion vector based on motion information of neighboring blocks with respect to the current block; Selecting a representative motion vector from each of the classified candidate sets; Adaptively selecting a predicted motion vector according to a difference between each selected representative motion vector, adding a difference vector from which a difference value is decoded, and restoring a current motion vector; And reconstructing the current block by predictively decoding the image data extracted from the bitstream using a current motion vector reconstructed.
  • one of the representative motion vectors selected from each candidate set may be selected as the representative motion vector.
  • the difference vector is added to the representative motion vector based on the rate-distortion among the representative motion vectors selected from each candidate set. You can restore the motion vector.
  • candidate prediction motion vectors having various characteristics to simultaneously solve the problem of deterioration in encoding efficiency due to fixed motion prediction candidates while minimizing the problem of increasing the indexing bit as the candidate prediction motion vectors increase.
  • the motion vector encoding performance of the current block can be greatly improved, and the compression performance of the video compression apparatus or the quality of the reconstructed image can be greatly improved.
  • FIG. 1 is a diagram schematically illustrating an image encoding apparatus according to an embodiment of the present invention.
  • FIG. 2 is a diagram schematically illustrating a motion vector encoding apparatus according to an embodiment of the present invention.
  • 3 is a diagram illustrating an example of motion information of a neighboring block.
  • FIG. 4 is a flowchart illustrating an image encoding method according to an embodiment of the present invention.
  • FIG. 5 is a flowchart illustrating a motion vector encoding method according to an embodiment of the present invention.
  • FIG. 6 is a diagram schematically illustrating an image decoding apparatus according to an embodiment of the present invention.
  • FIG. 7 is a diagram schematically illustrating a motion vector decoding apparatus according to an embodiment of the present invention.
  • FIG. 8 is a flowchart illustrating an image decoding method according to an embodiment of the present invention.
  • FIG. 9 is a flowchart illustrating a motion vector decoding method according to an embodiment of the present invention.
  • the image encoding apparatus 100 is an apparatus for encoding an image, and may include a motion vector encoder 110 and a video encoder 120.
  • the motion vector encoder 110 performs a plurality of candidate prediction motion vectors on the set of a plurality of candidate prediction motion vectors based on motion information of a neighbor block with respect to the current block. Classify a set, select a representative motion vector from each of the classified candidate sets, and adaptively select a predicted motion vector according to the difference between the selected representative motion vectors, and then make a difference that is a difference from the motion vector of the current block. Encode a vector (Differential Motion Vector). The difference vector is encoded and generated as difference vector data. Accordingly, the motion vector encoder 110 generates motion vector data including differential vector data.
  • the motion vector encoder 110 uses the current motion vector determined to predict-encode the current block by the image encoder 120 in generating the difference vector.
  • the motion vector encoder 110 will be described in detail with reference to FIG. 2 in a later process.
  • the image encoder 120 determines a current motion vector that is a motion vector of the current block, and predictively encodes the current block by using the determined current motion vector. In this way, the current block is predictively encoded to generate image data.
  • the image encoder 120 may include a predictor, a subtracter, a transformer and a quantizer, an encoder, and an inverse quantizer and an inverse transformer. and an inverse quantizer, an adder, a deblocking filter, a memory, and the like.
  • the predictor determines the current motion vector by estimating the motion of the current block and generates a predicted block by compensating the motion of the current block using the current motion vector, and the subtractor subtracts the current block and the predicted block.
  • a residual block is generated, and a transformer and a quantizer transform and quantize the residual block to generate a quantized transform coefficient, and the encoder generates image data by encoding the quantized transform coefficient.
  • the inverse quantizer and the inverse transformer inverse quantize and inverse transform the quantized transform coefficients to reconstruct the residual block
  • the adder reconstructs the current block by reconstructing the prediction block and the reconstructed residual block, and the reconstructed current block is deblocked.
  • the deblocking filter is filtered by a deblocking filter, accumulated in units of pictures in a memory, stored as a reference picture, and used to predict the next block or the next picture.
  • FIG. 2 is a diagram schematically illustrating a motion vector encoding apparatus according to an embodiment of the present invention.
  • the motion vector encoding apparatus may be implemented by the motion vector encoder 110 of the image encoding apparatus 100 described above with reference to FIG. 1.
  • the motion vector encoding apparatus according to an embodiment of the present invention will be referred to as a motion vector encoder 110.
  • the motion vector encoder 110 may include a candidate predicted motion vector classifier 112, a representative motion vector selector 114, and a motion vector encoder 116.
  • the candidate prediction motion vector classifier 112 classifies the plurality of candidate prediction motion vectors based on the motion information of the neighboring block for the current block into a plurality of candidate sets according to the characteristics of each candidate prediction motion vector.
  • the neighboring block of the current block refers to a block located around the current block among blocks that have been previously encoded, decoded, and reconstructed before the current block is encoded in the current picture including the current block.
  • the neighboring block may be an adjacent block adjacent to the current block, but is not necessarily limited to the adjacent block.
  • the motion information of the neighboring block refers to information obtained with respect to the motion vector of the neighboring block that is previously encoded, decoded, and reconstructed, and may be a motion vector and a predicted motion vector of the neighboring block.
  • FIG. 3 is a diagram illustrating an example of motion information of a neighboring block. If a block adjacent to the current block is a block A on the left side of the current block, a block A on the upper side is a block B, and a block C on the upper right side is a block C, block A, block B, and block C It can be the neighboring block of the block.
  • blocks A, B, and C are all blocks that have been encoded, decoded, and reconstructed before the current block is encoded.
  • FIG. 3 is a diagram illustrating an example of motion information of a neighboring block.
  • mv 264 , mv ext , mv a , mv b , mv c , and mv 0 exemplarily show motion vectors and predicted motion vectors of blocks A, B, and C, respectively. Since the motion vectors and the predicted motion vectors of the blocks A, B, and C are already determined when the respective blocks are encoded, they are stored in a buffer or a memory of the image encoding apparatus 100 or the motion vector encoder 110, and thus, the image encoding apparatus. 100, the information obtained by the motion vector encoder 110 or the candidate predicted motion vector classifier 112 may be obtained and used at any time when encoding the current block or encoding the motion vector of the current block.
  • the set of candidate prediction motion vectors that can be used when encoding the current block may be represented by ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ .
  • the candidate predicted motion vector classifier 112 includes a plurality of candidate predicted motion vectors based on the motion information of the neighboring block with respect to the current block ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ is classified into a plurality of candidate sets according to the characteristics of each candidate prediction motion vector.
  • the candidate predicted motion vector classifier 112 determines whether the camera moves using the motion information of the neighboring block, and sets a plurality of candidate predicted motion vectors based on the determined motion of the camera ⁇ mv 264 , mv ext , mv a , mv b , mv c , and mv 0 ⁇ are candidate sets of candidate predictive motion vectors ⁇ mv 264 , mv ext ⁇ , which represent somewhat uniform motion, and irregular motion.
  • a candidate set of candidate prediction motion vectors may be classified as ⁇ mv a , mv b , mv c , mv 0 ⁇ .
  • the representative motion vector selector 114 selects a representative motion vector for each candidate set classified by the candidate predicted motion vector classifier 112, and the difference between each representative motion vector selected from each candidate set. Is compared with a threshold and at least one of each representative motion vector is selected according to the compared result.
  • the representative motion vector selection unit 114 In set A, one of the candidate predicted motion vectors mv 264 and mv ext is selected as the representative motion vector mv A according to the presence or absence of camera movement. In set B, ⁇ One suitable motion vector among mv a , mv b , mv c , and mv 0 ⁇ can be selected as the representative motion vector mv B.
  • the representative motion vector selector 114 compares the difference between the representative motion vectors mv A and mv B selected from each candidate set with a threshold.
  • the threshold is a predetermined value in consideration of the characteristics of the candidate predicted motion vectors classifying the candidate set with respect to the candidate predicted motion vectors, and the average value, the lowest value, or the highest value for the difference between the candidate predicted motion vectors is set. Can be.
  • the setting of the threshold is not limited to the example described herein, and various threshold values may be set.
  • the threshold is not limited to the threshold for the difference between the representative motion vectors mv A and mv B selected from each candidate set, and may be set to various measure values.
  • the representative motion vector selector 114 selects one of the representative motion vectors selected from each candidate set as the representative motion vector when the difference between each representative motion vector selected from each candidate set is equal to or less than a threshold. In addition, the representative motion vector selector 114 may select all of the representative motion vectors selected from each candidate set when the difference between each representative motion vector selected from each candidate set is greater than a threshold.
  • the representative motion vector mv A selected from the set A when the difference between the representative motion vector mv A selected from the set A and the representative motion vector mv B selected from the set B is less than or equal to the threshold, the representative motion vector mv A selected from the set A May be selected as a representative motion vector for candidate prediction motion vectors ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ .
  • the representative motion selected from the set A vector mv A and set if B a represents a motion vector difference between mv B selected from greater than the threshold value
  • a representative motion selected from the representative motion vector mv A and set B selected from the set A vector mv B You can select both.
  • the motion vector encoder 116 encodes a difference value between the representative motion vector selected by the representative motion vector selector 114 and the motion vector of the current block.
  • the motion vector encoder 116 may represent a representative motion having a minimum encoding cost among the representative motion vectors selected from each candidate set.
  • the difference value between the vector and the motion vector of the current block can be encoded.
  • the motion vector encoder 116 may select a representative motion vector having a minimum encoding cost based on a rate-distortion based discriminant such as Equation (2).
  • mv x is the actual motion vector of the current block X
  • I best is the optimal motion vector index
  • D is the sum of absorptive difference (SAD) between the real image obtained by performing motion prediction and the previously reconstructed image.
  • SATD Sud of Absolute Transformed Difference
  • represents a Lagrange multiplier for adjusting the balance between D and (mv x -mv i ).
  • the motion vector encoder 116 encodes a difference value between the motion vector of the current block and the selected optimal predicted motion vector. This generates an encoded bitstream.
  • Such a bitstream generation process may use a variety of etropy coding methods such as variable length coding, Huffman, and arithmetic coding.
  • FIG. 4 is a flowchart illustrating an image encoding method according to an embodiment of the present invention. A function and an operation of an image encoding apparatus according to an embodiment of the present invention will be described in detail with reference to the drawings.
  • the image encoder 120 determines a motion vector of the current block and predictively encodes the current block by using the determined motion vector (S401).
  • the candidate prediction motion vector classifier 112 of the motion vector encoder 110 performs a plurality of candidate prediction motion vectors on the basis of the motion information of the neighboring blocks with respect to the current block, depending on the characteristics of each candidate prediction motion vector. Classified as a candidate set of (S403).
  • the candidate prediction motion vector classifier 112 determines whether the camera moves by using the motion information of the neighboring block, and based on the determined motion of the camera, the candidate predicted motion vector classifier 112 includes: ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ and candidate set of candidate predictive motion vectors ⁇ mv 264 , mv ext ⁇ that exhibit somewhat uniform motion, and irregular motion.
  • a candidate set of candidate prediction motion vectors representing ⁇ mv a , mv b , mv c , mv 0 ⁇ may be classified.
  • the representative motion vector selector 114 of the motion vector encoder 110 selects a representative motion vector for each candidate set classified by the candidate predicted motion vector classifier 112 (S405). For example, if the above-described candidate set ⁇ mv 264 , mv ext ⁇ is set A and the candidate sets mv a , mv b , mv c , mv 0 ⁇ are set B, the representative motion vector selection unit 114 In set A, one of the candidate predicted motion vectors mv 264 and mv ext is selected as the representative motion vector mv A according to the presence or absence of camera movement, and in set B, ⁇ mv One suitable motion vector among a , mv b , mv c , and mv 0 ⁇ may be selected as the representative motion vector mv B.
  • the representative motion vector selecting unit 114 compares the difference between each representative motion vector selected from each candidate set with a threshold value (S407), and selects at least one of each representative motion vector according to the comparison result. (S409). At this time, the representative motion vector selector 114 compares the difference between the representative motion vectors selected from each candidate set with a threshold value, and if the difference between each representative motion vector selected from each candidate set is less than or equal to the threshold value, One of the representative motion vectors selected from each candidate set may be selected as the representative motion vector. In addition, the representative motion vector selector 114 may select all of the representative motion vectors selected from each candidate set when the difference between each representative motion vector selected from each candidate set is greater than a threshold.
  • the representative motion vector mv A selected from the set A is selected as candidate prediction motion vectors. It can be selected as a representative motion vector for ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ .
  • the representative motion selected from the set A vector mv A and set if B a represents a motion vector difference between mv B selected from greater than the threshold value
  • a representative motion selected from the representative motion vector mv A and set B selected from the set A vector mv B You can select both.
  • the motion vector encoder 116 encodes a difference value between the representative motion vector selected by the representative motion vector selector 114 and the motion vector of the current block (S411). In this case, when the difference between each representative motion vector selected from each candidate set is greater than a threshold value, the motion vector encoder 116 may represent a representative motion having a minimum encoding cost among the representative motion vectors selected from each candidate set. A difference value between the vector and the motion vector of the current block may be encoded (S413). In this case, the motion vector encoder 116 may select a representative motion vector having a minimum encoding cost based on a rate-distortion based discriminant such as Equation 2 described above.
  • the motion vector encoder 116 encodes a difference value between the motion vector of the current block and the selected optimal predicted motion vector. This generates an encoded bitstream.
  • Such a bitstream generation process may use a variety of etropy coding methods such as variable length coding, Huffman, and arithmetic coding.
  • FIG. 5 is a flowchart illustrating a motion vector encoding method according to an embodiment of the present invention.
  • the candidate prediction motion vector classifier 112 classifies the plurality of candidate prediction motion vectors based on the motion information of the neighboring block for the current block into a plurality of candidate sets according to the characteristics of each candidate prediction motion vector ( S501).
  • the candidate prediction motion vector classifier 112 determines whether the camera moves by using the motion information of the neighboring block, and based on the determined motion of the camera, the candidate predicted motion vector classifier 112 includes: ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ and candidate set of candidate predictive motion vectors ⁇ mv 264 , mv ext ⁇ that exhibit somewhat uniform motion, and irregular motion.
  • a candidate set of candidate prediction motion vectors representing ⁇ mv a , mv b , mv c , mv 0 ⁇ may be classified.
  • the representative motion vector selector 114 of the motion vector encoder 110 selects a representative motion vector for each candidate set classified by the candidate predicted motion vector classifier 112 (S503). For example, if the above-described candidate set ⁇ mv 264 , mv ext ⁇ is set A and the candidate sets ⁇ mv a , mv b , mv c , mv 0 ⁇ are set B, the representative motion vector selection unit 114 In set A, one of the candidate predicted motion vectors mv 264 and mv ext is selected as the representative motion vector mv A according to the presence or absence of camera movement. In set B, ⁇ One suitable motion vector among mv a , mv b , mv c , and mv 0 ⁇ can be selected as the representative motion vector mv B.
  • the representative motion vector selector 114 compares the difference between each representative motion vector selected from each candidate set with a threshold (S505), and selects at least one of each representative motion vector according to the comparison result. (S507). At this time, the representative motion vector selector 114 compares the difference between the representative motion vectors selected from each candidate set with a threshold value, and if the difference between each representative motion vector selected from each candidate set is less than or equal to the threshold value, One of the representative motion vectors selected from each candidate set may be selected as the representative motion vector. In addition, when the difference between each representative motion vector selected from each candidate set is greater than a threshold, the representative motion vector selector 114 may select all of the representative motion vectors selected from each candidate set (S511). ).
  • the representative motion vector mv A selected from the set A is selected as candidate prediction motion vectors. It can be selected as a representative motion vector for ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ .
  • the representative motion selected from the set A vector mv A and set if B a represents a motion vector difference between mv B selected from greater than the threshold value
  • a representative motion selected from the representative motion vector mv A and set B selected from the set A vector mv B You can select both.
  • the motion vector encoder 116 encodes a difference value between the representative motion vector selected by the representative motion vector selector 114 and the motion vector of the current block (S509).
  • the motion vector encoder 116 may represent a representative motion having a minimum encoding cost among the representative motion vectors selected from each candidate set.
  • a difference value between the vector and the motion vector of the current block may be encoded (S511).
  • the motion vector encoder 116 may select a representative motion vector having a minimum encoding cost based on a rate-distortion based discriminant such as Equation 2 described above.
  • the motion vector encoder 116 encodes a difference value between the motion vector of the current block and the selected optimal predicted motion vector. This generates an encoded bitstream.
  • Such a bitstream generation process may use a variety of etropy coding methods such as variable length coding, Huffman, and arithmetic coding.
  • the video decoding apparatus 700 may include a motion vector decoder 610 and a video decoder 620.
  • the motion vector decoder 610 classifies a plurality of candidate sets according to the characteristics of each candidate predicted motion vector based on the motion information of the neighboring block with respect to the current block, and selects a representative motion vector from each classified candidate set. Next, the predicted motion vector is adaptively selected according to the difference between the selected representative motion vectors, and the difference vector from which the difference value is decoded is added to restore the current motion vector.
  • the motion vector decoder 610 will be described in detail with reference to FIG. 7 in a later process.
  • the image decoder 620 decodes the difference value extracted from the bitstream, and reconstructs the current block by predictively decoding the image data extracted from the bitstream using the current motion vector to be recovered.
  • the image decoder 620 may include a decoder, an inverse quantizer and an inverse converter, a predictor, an adder, a deblocking filter, a memory, and the like.
  • the decoder decodes the image data extracted from the bitstream to restore the quantized transform coefficients, the inverse quantizer and the inverse transformer inverse quantized and inverse transform the recovered quantized transform coefficients to restore the residual block, the predictor
  • the prediction block is generated by compensating for the motion of the current block by using the current motion vector of the current block reconstructed by the motion vector decoder 610, and the adder adds the reconstructed residual block and the prediction block to reconstruct the current block.
  • the reconstructed current block is deblocked filtered by a deblocking filter, accumulated in units of pictures, and output as a reconstructed image or stored in a memory so that the predictor is used to predict the next block or the next picture.
  • the detailed description of each component of the image decoder 620 is beyond the scope of the present invention, and thus the detailed description thereof will be omitted.
  • FIG. 7 is a diagram schematically illustrating a motion vector decoding apparatus according to an embodiment of the present invention.
  • the motion vector decoding apparatus may be implemented by the motion vector decoder 610 of the image decoding apparatus 600 described above with reference to FIG. 6.
  • the motion vector decoding apparatus is called a motion vector decoder 610.
  • the motion vector decoder 610 may include a candidate predicted motion vector classifier 612, a representative motion vector selector 614, and a motion vector decoder 616.
  • the candidate prediction motion vector classifier 612 classifies the plurality of candidate prediction motion vectors based on the motion information of the neighboring block for the current block into a plurality of candidate sets according to the characteristics of each candidate prediction motion vector. Since the function and operation of the candidate predicted motion vector classifier 612 are similar to those of the candidate predicted motion vector classifier 112 of FIG. 2, detailed description thereof will be omitted.
  • the representative motion vector selector 614 selects a representative motion vector for each candidate set classified by the candidate predicted motion vector classifier 612, and the difference between each representative motion vector selected from each candidate set. Is compared with a threshold and at least one of each representative motion vector is selected according to the compared result. Since the function and operation of the representative motion vector selector 614 are similar to those of the representative motion vector selector 614 of FIG. 2, a detailed description thereof will be omitted.
  • the motion vector decoder 616 reconstructs the current motion vector by adding the difference vector from which the difference value extracted from the bitstream is restored to the representative motion vector selected by the representative motion vector selector 614.
  • the motion vector decoder 616 may represent the representative motion of the rate-distortion carrier among the representative motion vectors selected from each candidate set.
  • the current motion vector can be restored by selecting the vector.
  • FIG. 8 is a flowchart illustrating an image decoding method according to an embodiment of the present invention. A function and an operation of an image decoding apparatus according to an embodiment of the present invention will be described in detail with reference to the drawings.
  • the image decoder 620 reconstructs the difference vector by decoding the difference value extracted from the bitstream (S801).
  • the candidate predicted motion vector classifier 612 of the motion vector decoder 610 performs a set of a plurality of candidate predicted motion vectors based on the motion information of the neighboring block with respect to the current block according to the characteristics of each candidate predicted motion vector. It classifies into a plurality of candidate sets (S803).
  • the candidate prediction motion vector classifier 112 determines whether the camera moves by using the motion information of the neighboring block, and based on the determined motion of the camera, the candidate predicted motion vector classifier 112 includes: ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ and candidate set of candidate predictive motion vectors ⁇ mv 264 , mv ext ⁇ that exhibit somewhat uniform motion, and irregular motion.
  • a candidate set of candidate prediction motion vectors representing ⁇ mv a , mv b , mv c , mv 0 ⁇ may be classified.
  • the representative motion vector selector 614 of the motion vector decoder 610 selects a representative motion vector for each candidate set classified by the candidate predicted motion vector classifier 612 (S805). For example, if the candidate set ⁇ mv 264 , mv ext ⁇ described above is set A and the candidate sets ⁇ mv a , mv b , mv c , mv 0 ⁇ are set B, the representative motion vector selector 614 is used. In set A, one of the candidate predicted motion vectors mv 264 and mv ext is selected as the representative motion vector mv A according to the presence or absence of camera movement. In set B, ⁇ One suitable motion vector among mv a , mv b , mv c , and mv 0 ⁇ can be selected as the representative motion vector mv B.
  • the representative motion vector selecting unit 614 compares the difference between each representative motion vector selected from each candidate set with a threshold value (S807), and selects one of each representative motion vector according to the comparison result. (S809). At this time, the representative motion vector selection unit 614 compares the difference between the representative motion vectors selected from each candidate set with a threshold value, and if the difference between each representative motion vector selected from each candidate set is less than or equal to the threshold value, One of the representative motion vectors selected from each candidate set may be selected as the representative motion vector. In addition, the representative motion vector selecting unit 614 costs based on the rate-distortion among the representative motion vectors selected from each candidate set when the difference between each representative motion vector selected from each candidate set is greater than a threshold. The smallest representative motion vector can be selected (S811).
  • the motion vector decoder 616 reconstructs the current motion vector by adding the difference vector reconstructed to the representative motion vector selected by the representative motion vector selector 614 (S813).
  • the image decoder 620 reconstructs the current block by predictively decoding the image data extracted from the bitstream using the current motion vector reconstructed (S815).
  • FIG. 9 is a flowchart illustrating a motion vector decoding method according to an embodiment of the present invention.
  • the candidate prediction motion vector classifier 612 classifies the plurality of candidate prediction motion vectors based on the motion information of the neighboring block for the current block into a plurality of candidate sets according to the characteristics of each candidate prediction motion vector ( S901).
  • the candidate prediction motion vector classifier 112 determines whether the camera moves by using the motion information of the neighboring block, and based on the determined motion of the camera, the candidate predicted motion vector classifier 112 includes: ⁇ mv 264 , mv ext , mv a , mv b , mv c , mv 0 ⁇ and candidate set of candidate predictive motion vectors ⁇ mv 264 , mv ext ⁇ that exhibit somewhat uniform motion, and irregular motion.
  • a candidate set of candidate prediction motion vectors representing ⁇ mv a , mv b , mv c , mv 0 ⁇ may be classified.
  • the representative motion vector selector 614 of the motion vector decoder 610 selects a representative motion vector for each candidate set classified by the candidate predicted motion vector classifier 612 (S903). For example, if the candidate set ⁇ mv 264 , mv ext ⁇ described above is set A and the candidate sets ⁇ mv a , mv b , mv c , mv 0 ⁇ are set B, the representative motion vector selector 614 is used. In set A, one of the candidate predicted motion vectors mv 264 and mv ext is selected as the representative motion vector mv A according to the presence or absence of camera movement. In set B, ⁇ One suitable motion vector among mv a , mv b , mv c , and mv 0 ⁇ can be selected as the representative motion vector mv B.
  • the representative motion vector selecting unit 614 compares the difference between each representative motion vector selected from each candidate set with a threshold value (S905), and selects one of each representative motion vector according to the comparison result. (S907). At this time, the representative motion vector selection unit 614 compares the difference between the representative motion vectors selected from each candidate set with a threshold value, and if the difference between each representative motion vector selected from each candidate set is less than or equal to the threshold value, One of the representative motion vectors selected from each candidate set may be selected as the representative motion vector. In addition, the representative motion vector selecting unit 614 costs based on the rate-distortion among the representative motion vectors selected from each candidate set when the difference between each representative motion vector selected from each candidate set is greater than a threshold. The smallest representative motion vector can be selected (S909).
  • the motion vector decoder 616 adds the difference vector reconstructed to the representative motion vector selected by the representative motion vector selector 614 to restore the current motion vector (S911).
  • the representative candidate prediction motion vectors among the candidate prediction motion vectors having various characteristics are simultaneously solved to solve the problem of lowering the coding efficiency due to the fixed motion prediction candidate.
  • the motion vector encoding performance of the current block can be greatly improved, thereby greatly improving the compression performance of the video compression apparatus or the quality of the reconstructed image.
  • the embodiment of the present invention is a candidate having various characteristics to simultaneously solve the problem of deterioration in encoding efficiency due to the fixed motion prediction candidate while minimizing the problem of increasing the indexing bit as the candidate prediction motion vector increases.
  • the motion vector encoding performance of the current block can be greatly improved, resulting in an effect of greatly improving the compression performance of the video compression apparatus or the quality of the reconstructed image. It is a useful invention.

Landscapes

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

Abstract

효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치가 개시된다. 본 발명에 따른 움직임벡터 부호화 장치는, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부; 후보 예측 움직임벡터 분류부에 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및 대표 움직임벡터 선택부에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 움직임벡터 부호화부를 포함하는 것을 특징으로 한다.

Description

효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치
본 발명의 실시예는 비디오 압축 및/또는 복원 장치에 있어서 블록 기반 움직임 예측 후에 얻어지는 움직임벡터(Motion Vector)를 효과적으로 압축하기 위해 현재블록의 움직임벡터와 가장 유사한 예측 움직임벡터(Predictive Motion Vector)를 제공하는 효율적인 움직임 후보 산출 기법과 이를 기반으로 한 움직임 벡터 부/복호화 장치에 관한 것으로, 비디오 데이터 압축 및/또는 복원의 성능을 향상시킴으로써 같은 비트 율에서 보다 우수한 복원 화질을 얻을 수 있는 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치에 관한 것이다.
비디오 데이터의 압축 장치에서 블록 기반 움직임 예측 후에 얻어지는 움직임 벡터의 부호화는, 기존의 H.264/AVC 문헌 1(ITU-T Recommendation H.264 and ISO/IEC 14496-10 AVC, “Advanced Video Coding for Generic Audiovisual Services”, version 3: 2005.)에서는, 주변 블록의 움직임 벡터들의 중앙값(Median)을 이용하여 예측 움직임 벡터를 생성하고, 부호화 할 움직임 벡터와 예측 움직임 벡터와의 차분을 가변 길이 부호화 (Variable Length Coding)함으로써 이루어진다.
하지만, 이러한 중앙값 예측치는 현재 블록의 움직임 벡터가 주변 움직임 벡터와 유사한 패턴을 갖는 경우에는 부호화해야 하는 잔여 움직임 벡터 값이 크게 줄어들어 그 성능이 우수한 반면에, 움직임이 다른 물체의 윤곽선을 포함한 블록과 같이, 주변 블록들이 가지는 움직임과 상이한 불규칙한 움직임 패턴을 갖는 경우에는 그 성능이 제한적이다.
이와 같은 불규칙한 움직임 패턴을 갖는 블록에서의 성능 제한 문제를 해결하기 위해, 문헌 2(S. D. Kim and J. B. Ra, "An efficient motion vector coding scheme based on minimum bitrate prediction," IEEE Trans. on Image. Proc., vol. 8, no. 8, pp. 1117?1120, Aug. 1999.)에서는 중앙값 예측치 대신 세 개의 주변 블록 움직임 벡터들 중에 현재 블록의 움직임 벡터와 가장 유사한 움직임 예측 후보를 선택하여 이를 예측치로 사용함으로써 잔여 움직임 벡터 값을 효율적으로 감소시킬 수 있는 경쟁 기반 움직임 벡터 코딩 기법을 제안하였다. 하지만, 비교적 규칙적인 움직임 패턴을 많이 포함하는 영상에서는 선택된 최적의 움직임 예측 후보를 인덱싱하는데 필요한 오버헤드가 잔여 움직임 벡터 값을 줄여 얻을 수 있는 성능 개선 량에 비해 커지게 되어 전체적인 압축 성능이 오히려 떨어질 수 있다는 한계를 갖는다.
문헌 3(J. Jung, G. Laroche, “Competition-based scheme for Motion Vector Selection and Coding”, VCEG Contribution VCEG-AC06, Klagenfurt, July 2006.)은, 이와 같은 한계를 해결하기 위해, 예측 후보를 두 개로 고정시켜 부가적인 인덱싱 비트의 증가를 최소화하고, 스킵 모드의 최적 움직임 예측 후보를 율-왜곡 관점에서 경쟁적으로 선택하는 기법을 포함하는 향상된 경쟁 기반의 움직임 벡터 코딩 기법을 제안함으로써 움직임 벡터 부호화 효율을 크게 향상 시켰다. 하지만, 이 기법은 실험적으로 선택한 두 개의 고정된 예측 후보를 사용하기 때문에, 카메라의 움직임이나 영상 내 물체의 배치, 크기, 움직임 등에 의한 영상의 특성에 따라 그 성능 개선의 정도가 매우 제한적인 경우들이 발생할 수 있다는 문제점이 있다.
본 발명은 전술한 종래 기술들의 부호화 성능 제한적 요소인 “후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제”와 “고정된 움직임 예측 후보 문제”를 해결하기 위하여 창안된 것으로서, 다양한 특성을 갖는 다수의 후보 예측 움직임 벡터 중에 대표 후보 예측 움직임 벡터들을 가변적으로 산출하여 부가 인덱싱 비트를 최소화하면서 영상에 적응적으로 움직임 예측 후보를 제공할 수 있는 움직임 후보벡터 산출 장치 및 방법, 및 그것을 이용한 움직임벡터 부/복호화 장치 및 방법을 제공하는 것을 목적으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화/복호화 장치는, 현재블록의 움직임벡터를 결정하고, 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하며, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하고, 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 결정된 움직임벡터와의 차분 값을 부호화하는 영상 부호화기; 및 비트스트림으로부터 추출되는 차분 값을 복호화하며, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 제2 후보 집합으로 분류하고, 분류된 각각의 제2 후보 집합으로부터 제2 대표 움직임벡터를 선정하며, 선정된 각각의 제2 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하며 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하고, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재블록을 복원하는 영상 복호화기를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화 장치는, 현재블록의 움직임벡터를 결정하고, 결정되는 움직임벡터를 이용하여 현재블록을 예측 부호화하는 영상 부호화기; 및 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하고, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 현재블록의 움직임벡터와의 차분 값을 부호화하는 움직임벡터 부호화기를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 부호화 장치는, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부; 후보 예측 움직임벡터 분류부에 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및 대표 움직임벡터 선택부에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 움직임벡터 부호화부를 포함하는 것을 특징으로 한다.
여기서, 대표 움직임벡터 선택부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하인 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택할 수 있다.
또한, 움직임벡터 부호화부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다.
또한, 후보 예측 움직임벡터 분류부는, 각 후보 예측 움직임벡터의 특성에 따라 규칙적인 움직임벡터 집합 및 불규칙적인 움직임벡터 집합으로 분류할 수 있다.
또한, 대표 움직임벡터 선택부는, 복수 개의 대표 움직임벡터들 중 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다.
율-왜곡 기반의 판별식은 다음과 같이 표현될 수 있다.
Figure PCTKR2011004234-appb-I000001
여기서, mvx는 현재블록 X의 실제 움직임벡터를 의미하며, Ibest는 최적의 움직임벡터 인덱스이고, D는 움직임 예측을 수행하고 얻어지는 실제 영상과 이전에 복원된 영상과의 SAD(Sum of Absolute Difference) 또는 SATD(Sum of Absolute Transformed Difference)값을 의미하며, λ는 D와 (mvx - mvi)의 균형을 조정하기 위한 라그랑지 승수를 나타낸다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 복호화 장치는, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하고, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 움직임벡터 복호화기; 및 비트스트림으로부터 추출되는 차분 값을 복호화하며, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재블록을 복원하는 영상 복호화기를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 복호화 장치는, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부; 후보 예측 움직임벡터 분류부에 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및 대표 움직임벡터 선택부에 의해 선택된 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 움직임벡터 복호화부를 포함하는 것을 특징으로 한다.
여기서, 대표 움직임벡터 선택부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하인 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택할 수 있다.
또한, 대표 움직임벡터 선택부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반의 대표 움직임벡터에 차분 벡터를 가산하여 현재 움직임벡터를 복원할 수 있다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화/복호화 방법은, 현재블록의 움직임벡터를 결정하고, 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하며, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하고, 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 결정된 움직임벡터와의 차분 값을 부호화하는 단계; 및 비트스트림으로부터 추출되는 차분 값을 복호화하며, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 제2 후보 집합으로 분류하고, 분류된 각각의 제2 후보 집합으로부터 제2 대표 움직임벡터를 선정하며, 선정된 각각의 제2 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하며 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하고, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 상기 현재블록을 복원하는 단계를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화 방법은, 현재블록의 움직임벡터를 결정하는 단계; 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하는 단계; 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 하나의 대표 움직임벡터를 선택하는 단계; 및 적응적으로 선택된 대표 움직임벡터와 현재블록의 움직임벡터와의 차분 값을 부호화하는 단계를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 부호화 방법은, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하는 단계; 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택하는 단계; 및 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 단계를 포함하는 것을 특징으로 한다.
바람직하게는, 각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치 이하인 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택한다.
또한, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다.
또한, 후보 예측 움직임벡터 분류단계는, 각 후보 예측 움직임벡터의 특성에 따라 규칙적인 움직임벡터 집합 및 불규칙적인 움직임벡터 집합으로 분류할 수 있다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 복호화 방법은, 비트스트림으로부터 추출되는 차분 값을 복호화하는 단계; 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하는 단계; 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 단계; 및 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 상기 현재블록을 복원하는 단계를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 복호화 방법은, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하는 단계; 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택하는 단계; 및 선택된 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 단계를 포함하는 것을 특징으로 한다.
여기서, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하인 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택할 수 있다.
또한, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반의 대표 움직임벡터에 차분 벡터를 가산하여 현재 움직임벡터를 복원할 수 있다.
본 발명의 실시예에 따르면, 후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제를 최소화하면서도 고정된 움직임 예측 후보로 인한 부호화 효율 저하 문제를 동시에 해결하기 위해 다양한 특성을 갖는 후보 예측 움직임 벡터들 중에 대표 후보 예측 움직임 벡터들을 적응적으로 가변 산출함으로써 현재 블록의 움직임 벡터 부호화 성능을 크게 향상시켜 비디오 압축 장치의 압축 성능 혹은 복원 영상의 화질을 크게 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 움직임벡터 부호화 장치를 개략적으로 도시한 도면이다.
도 3은 주변 블록의 움직임정보의 예를 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 움직임벡터 부호화 방법을 나타낸 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치를 개략적으로 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 영상 복호화 방법을 나타낸 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 움직임벡터 복호화 방법을 나타낸 흐름도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 도면이다. 본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 영상을 부호화하는 장치로서, 움직임 벡터 부호화기(Motion Vector Encoder, 110)와 영상 부호화기(Video Encoder, 120)를 포함하여 구성될 수 있다.
움직임 벡터 부호화기(110)는 현재블록에 대한 주변블록(Neighbor Block)의 움직임정보(Motion Information)에 기초하는 복수 개의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하고, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 현재블록의 움직임벡터와의 차이인 차분 벡터(Differential Motion Vector)를 부호화한다. 차분 벡터는 부호화되어 차분 벡터 데이터로서 생성된다. 따라서, 움직임 벡터 부호화기(110)는 차분 벡터 데이터를 포함하는 움직임 벡터 데이터를 생성한다.
여기서, 움직임 벡터 부호화기(110)는 차분 벡터를 생성하는 데 있어서, 영상 부호화기(120)에서 현재블록을 예측 부호화하기 위해 결정된 현재 움직임벡터를 이용한다. 움직임벡터 부호화기(110)에 대해서는 후술하는 과정에서 도 2를 통해 상세히 설명한다.
영상 부호화기(120)는 현재블록의 움직임벡터인 현재 움직임벡터를 결정하고, 결정된 현재 움직임벡터를 이용하여 현재블록을 예측 부호화한다. 이와 같이 현재 블록이 예측 부호화되어 영상 데이터가 생성된다.
이를 위해, 영상 부호화기(120)는 예측기(Predictor), 감산기(Subtracter), 변환기 및 양자화기(Transformer and Quantizer), 부호화기(Encoder)를 포함하여 구성될 수 있으며, 역 양자화기 및 역 변환기(Inverse Transformer and Inverse Quantizer), 가산기(Adder), 디블로킹 필터(Deblocking Filter), 메모리(Memory) 등을 추가로 포함할 수 있다. 여기서, 예측기는 현재 블록의 움직임을 추정하여 현재 움직임 벡터를 결정하고 현재 움직임 벡터를 이용하여 현재 블록의 움직임을 보상하여 예측 블록(Predicted Block)을 생성하며, 감산기는 현재 블록과 예측 블록을 감산하여 잔여 블록(Residual Block)을 생성하며, 변환기 및 양자화기는 잔여 블록을 변환 및 양자화하여 양자화된 변환 계수(Quantized Transform Coefficient)를 생성하며, 부호화기는 양자화된 변환 계수를 부호화하여 영상 데이터를 생성한다. 또한, 역 양자화기 및 역 변환기는 양자화된 변환 계수를 역 양자화 및 역 변환하여 잔여 블록을 복원하고 가산기는 예측 블록과 복원되는 잔여 블록을 복원하여 현재 블록을 복원하며, 복원된 현재 블록은 디블로킹 필터(Deblocking Filter)에 의해 디블로킹 필터링되어 메모리에 픽처 단위로 누적되어 참조 픽처로서 저장되고 다음 블록 또는 다음 픽처를 예측하는 데 활용된다. 영상 부호화기(120)의 각 구성요소에 대한 구체적인 설명은 본 발명의 요지를 벗어나는 것이므로, 여기서는 그 상세한 설명은 생략한다.
도 2는 본 발명의 일 실시예에 따른 움직임벡터 부호화 장치를 개략적으로 도시한 도면이다.
본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치는, 도 1을 통해 전술한 영상 부호화 장치(100)의 움직임 벡터 부호화기(110)로 구현될 수 있다. 이하에서는 설명의 편의를 위해, 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치를 움직임 벡터 부호화기(110)라 명명한다.
움직임 벡터 부호화기(110)는 후보 예측 움직임벡터 분류부(112), 대표 움직임벡터 선택부(114) 및 움직임벡터 부호화부(116)를 포함하여 구성될 수 있다.
후보 예측 움직임벡터 분류부(112)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다. 여기서, 현재 블록의 주변블록이란 현재블록이 포함된 현재 픽처에서 현재블록이 부호화되기 전에 이미 부호화되고 복호화되어 기 복원된 블록 중 현재블록의 주변에 위치한 블록을 말한다. 주변블록은 현재블록과 인접한 인접 블록이 될 수도 있지만 반드시 인접한 블록만으로 한정되지는 않는다. 또한, 주변블록의 움직임정보란 기 부호화되고 복호화되어 복원된 주변블록에 대해 움직임벡터와 관련하여 획득된 정보들을 말하며, 주변블록의 움직임 벡터와 예측 움직임 벡터 등이 될 수 있다.
도 3은 주변 블록의 움직임정보의 예를 나타낸 도면이다. 현재 블록의 주변에 위치한 블록들 중에서 현재 블록의 왼쪽에 인접한 블록을 블록 A, 위쪽에 인접한 블록을 블록 B, 위쪽 오른쪽에 인접한 블록을 블록 C라고 가정하면, 블록 A, 블록 B 및 블록 C가 현재 블록의 주변블록이 될 수 있다. 이때, 블록 A, 블록 B 및 블록 C는 모두 현재블록이 부호화되기 전에 이미 부호화되고 복호화되어 복원된 블록들이다. 도 3에는 블록 A, 블록 B 및 블록 C만이 현재 블록의 주변 블록인 것으로 도시하였지만, 이에 한정되지 않고 현재블록의 위쪽 왼쪽에 위치한 블록 등과 같이 다른 블록들도 주변 블록으로 이용될 수 있다.
도 3에서 mv264, mvext, mva, mvb, mvc , mv0은 블록 A, 블록 B 및 블록 C 각각의 움직임벡터 및 예측 움직임벡터를 예시적으로 나타낸다. 블록 A, 블록 B 및 블록 C의 움직임벡터 및 예측 움직임벡터는 각 블록을 부호화할 때 이미 결정되어 영상 부호화 장치(100) 또는 움직임 벡터 부호화기(110)의 버퍼 또는 메모리 등에 저장되어 있으므로, 영상 부호화 장치(100), 움직임 벡터 부호화기(110) 또는 후보 예측 움직임벡터 분류부(112)가 현재 블록을 부호화하거나 현재 블록의 움직임 벡터를 부호화할 때 언제든지 획득하여 이용할 수 있는 정보이다. 이 경우, 현재블록을 부호화할 때 이용할 수 있는 후보 예측 움직임벡터의 집합은 {mv264, mvext, mva, mvb, mvc , mv0}로 나타낼 수 있다.
후보 예측 움직임벡터 분류부(112)는, 이와 같은 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다.
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
대표 움직임벡터 선택부(114)는 후보 예측 움직임벡터 분류부(112)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다.
예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(114)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터 mvA와 mvB 사이의 차이를 임계치와 비교한다. 여기서, 임계치는 후보 예측 움직임벡터들에 대하여 후보 집합을 분류하는 후보 예측 움직임벡터의 특성을 고려하여 기 설정된 값으로서, 각 후보 예측 움직임벡터들 사이의 차이에 대한 평균치이거나 최저치, 또는 최고치 등이 설정될 수 있다. 그러나 임계치의 설정은 여기에 기재된 예에 한정되는 것이 아니며, 다양한 임계치 값이 설정될 수 있다. 또한, 임계치는 각각의 후보 집합으로부터 선정한 대표 움직임벡터 mvA와 mvB 사이의 차이에 대한 임계값에 한정되지 않으며, 다양한 측도 값으로 설정될 수도 있다.
대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택한다. 또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 모두를 선택할 수 있다. 예를 들어, 수학식 1에 나타낸 바와 같이, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치 이하인 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA를 후보 예측 움직임벡터들 {mv264, mvext, mva, mvb, mvc , mv0}에 대한 대표 움직임벡터로 선택할 수 있다. 또는, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치보다 큰 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA 및 집합 B로부터 선정된 대표 움직임벡터 mvB 모두를 선택할 수 있다.
[수학식 1]
Figure PCTKR2011004234-appb-I000002
움직임벡터 부호화부(116)는 대표 움직임벡터 선택부(114)에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화한다. 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 부호화부(116)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다. 이 경우, 움직임벡터 부호화부(116)는 수학식 2와 같은 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터를 선택할 수 있다.
[수학식 2]
Figure PCTKR2011004234-appb-I000003
여기서 mvx는 현재블록 X의 실제 움직임벡터를 의미하며, Ibest는 최적의 움직임벡터 인덱스이고, D는 움직임 예측을 수행하고 얻어지는 실제 영상과 이전에 복원된 영상과의 SAD(Sum of Absolute Difference) 또는 SATD(Sum of Absolute Transformed Difference)값을 의미하며, λ는 D와 (mvx - mvi)의 균형을 조정하기 위한 라그랑지 승수를 나타낸다.
대표 움직임벡터 선택부(114)로부터 전송된 예측 움직임 후보 중 하나의 최적 예측 움직임 후보가 결정되면, 움직임벡터 부호화부(116)는 현재블록의 움직임벡터와 선택된 최적 예측 움직임벡터 사이의 차분 값을 부호화함으로써 부호화 비트스트림을 생성한다. 이와 같은 비트스트림 생성과정은 가변길이 부호화(Variable Length Coding) 및 허프만(Huffman), 산술 부호화(Arithmetic coding) 등의 다양한 에트로피 부호화 방법이 사용될 수 있다.
도 4는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸 흐름도이다. 도면을 참조하여 본 발명의 실시예에 따른 영상 부호화 장치의 기능 및 동작을 상세하게 설명한다.
영상 부호화기(120)는 현재블록의 움직임벡터를 결정하고, 결정된 움직임벡터를 이용하여 현재블록을 예측 부호화한다(S401).
움직임벡터 부호화기(110)의 후보 예측 움직임벡터 분류부(112)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S403).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 부호화기(110)의 대표 움직임벡터 선택부(114)는 후보 예측 움직임벡터 분류부(112)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S405). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(114)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S407), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다(S409). 이때, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 모두를 선택할 수 있다. 예를 들어, 전술한 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치 이하인 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA를 후보 예측 움직임벡터들 {mv264, mvext, mva, mvb, mvc , mv0}에 대한 대표 움직임벡터로 선택할 수 있다. 또는, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치보다 큰 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA 및 집합 B로부터 선정된 대표 움직임벡터 mvB 모두를 선택할 수 있다.
움직임벡터 부호화부(116)는 대표 움직임벡터 선택부(114)에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화한다(S411). 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 부호화부(116)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다(S413). 이 경우, 움직임벡터 부호화부(116)는 전술한 수학식 2와 같은 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터를 선택할 수 있다.
대표 움직임벡터 선택부(114)로부터 전송된 예측 움직임 후보 중 하나의 최적 예측 움직임 후보가 결정되면, 움직임벡터 부호화부(116)는 현재블록의 움직임벡터와 선택된 최적 예측 움직임벡터 사이의 차분 값을 부호화함으로써 부호화 비트스트림을 생성한다. 이와 같은 비트스트림 생성과정은 가변길이 부호화(Variable Length Coding) 및 허프만(Huffman), 산술 부호화(Arithmetic coding) 등의 다양한 에트로피 부호화 방법이 사용될 수 있다.
도 5는 본 발명의 일 실시예에 따른 움직임벡터 부호화 방법을 나타낸 흐름도이다.
후보 예측 움직임벡터 분류부(112)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S501).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 부호화기(110)의 대표 움직임벡터 선택부(114)는 후보 예측 움직임벡터 분류부(112)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S503). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(114)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S505), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다(S507). 이때, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 모두를 선택할 수 있다(S511). 예를 들어, 전술한 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치 이하인 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA를 후보 예측 움직임벡터들 {mv264, mvext, mva, mvb, mvc , mv0}에 대한 대표 움직임벡터로 선택할 수 있다. 또는, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치보다 큰 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA 및 집합 B로부터 선정된 대표 움직임벡터 mvB 모두를 선택할 수 있다.
움직임벡터 부호화부(116)는 대표 움직임벡터 선택부(114)에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화한다(S509). 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 부호화부(116)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다(S511). 이 경우, 움직임벡터 부호화부(116)는 전술한 수학식 2와 같은 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터를 선택할 수 있다.
대표 움직임벡터 선택부(114)로부터 전송된 예측 움직임 후보 중 하나의 최적 예측 움직임 후보가 결정되면, 움직임벡터 부호화부(116)는 현재블록의 움직임벡터와 선택된 최적 예측 움직임벡터 사이의 차분 값을 부호화함으로써 부호화 비트스트림을 생성한다. 이와 같은 비트스트림 생성과정은 가변길이 부호화(Variable Length Coding) 및 허프만(Huffman), 산술 부호화(Arithmetic coding) 등의 다양한 에트로피 부호화 방법이 사용될 수 있다.
도 6은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 도시한 도면이다. 본 발명의 일 실시예에 따른 영상 복호화 장치(700)는 움직임 벡터 복호화기(Motion Vector Decoder, 610) 및 영상 복호화기(Video Decoder, 620)를 포함하여 구성될 수 있다.
움직임벡터 복호화기(610)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하고, 분류된 각각의 후보집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다. 움직임벡터 복호화기(610)에 대해서는 후술하는 과정에서 도 7을 통해 상세하게 설명한다.
영상 복호화기(620)는 비트스트림으로부터 추출되는 차분 값을 복호화하며, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재 블록을 복원한다. 이를 위해, 영상 복호화기(620)는 복호화기(Decoder), 역 양자화기 및 역 변환기, 예측기, 가산기, 디블로킹 필터, 메모리 등을 포함하여 구성될 수 있다. 여기서, 복호화기는 비트스트림으로부터 추출되는 영상 데이터를 복호화하여 양자화된 변환 계수를 복원하고, 역 양자화기 및 역 변환기는 복원되는 양자화된 변환 계수를 역 양자화 및 역 변환하여 잔여 블록을 복원하며, 예측기는 움직임 벡터 복호화기(610)에 의해 복원되는 현재 블록의 현재 움직임벡터를 이용하여 현재 블록의 움직임을 보상함으로써 예측 블록을 생성하며, 가산기는 복원되는 잔여 블록과 예측 블록을 가산하여 현재블록을 복원할 수 있다. 복원되는 현재블록은 디블로킹 필터에 의해 디블로킹 필터링되고 픽처 단위로 누적되어 복원 영상으로서 출력되거나 메모리에 저장되어 예측기가 다음 블록 또는 다음 픽처를 예측하는데 활용된다. 영상 복호화기(620)의 각 구성요소에 대한 구체적인 설명은 본 발명의 요지를 벗어나는 것이므로, 여기서는 그 상세한 설명은 생략한다.
도 7은 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치를 개략적으로 도시한 도면이다.
본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치는, 도 6을 통해 전술한 영상 복호화 장치(600)의 움직임 벡터 복호화기(610)로 구현될 수 있다. 이하에서는 설명의 편의를 위해, 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치를 움직임벡터 복호화기(610)라 명명한다.
움직임 벡터 복호화기(610)는 후보 예측 움직임벡터 분류부(612), 대표 움직임벡터 선택부(614) 및 움직임벡터 복호화부(616)를 포함하여 구성될 수 있다.
후보 예측 움직임벡터 분류부(612)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다. 후보 예측 움직임벡터 분류부(612)의 기능 및 동작은 도 2의 후보 예측 움직임벡터 분류부(112)의 기능 및 동작과 유사하므로 그 상세한 설명을 생략한다.
대표 움직임벡터 선택부(614)는 후보 예측 움직임벡터 분류부(612)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다. 대표 움직임벡터 선택부(614)의 기능 및 동작은 도 2의 대표 움직임벡터 선택부(614)의 기능 및 동작과 유사하므로 그 상세한 설명을 생략한다.
움직임벡터 복호화부(616)는 대표 움직임벡터 선택부(614)에 의해 선택된 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다. 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 복호화부(616)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 가반의 대표 움직임벡터를 선택하여 현재 움직임벡터를 복원할 수 있다.
도 8은 본 발명의 일 실시예에 따른 영상 복호화 방법을 나타낸 흐름도이다. 도면을 참조하여 본 발명의 실시예에 따른 영상 복호화 장치의 기능 및 동작을 상세하게 설명한다.
영상 복호화기(620)는 비트스트림으로부터 추출되는 차분 값을 복호화하여 차분 벡터를 복원한다(S801).
움직임벡터 복호화기(610)의 후보 예측 움직임벡터 분류부(612)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S803).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 복호화기(610)의 대표 움직임벡터 선택부(614)는 후보 예측 움직임벡터 분류부(612)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S805). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(614)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S807), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택한다(S809). 이때, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반으로 비용이 최소인 대표 움직임벡터를 선택할 수 있다(S811).
움직임벡터 복호화부(616)는 대표 움직임벡터 선택부(614)에 의해 선택된 대표 움직임벡터에 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다(S813).
영상 복호화기(620)는 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재블록을 복원한다(S815).
도 9는 본 발명의 일 실시예에 따른 움직임벡터 복호화 방법을 나타낸 흐름도이다.
후보 예측 움직임벡터 분류부(612)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S901).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 복호화기(610)의 대표 움직임벡터 선택부(614)는 후보 예측 움직임벡터 분류부(612)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S903). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(614)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S905), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택한다(S907). 이때, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반으로 비용이 최소인 대표 움직임벡터를 선택할 수 있다(S909).
움직임벡터 복호화부(616)는 대표 움직임벡터 선택부(614)에 의해 선택된 대표 움직임벡터에 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다(S911).
이로써, 후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제를 최소화하면서도 고정된 움직임 예측 후보로 인한 부호화 효율 저하 문제를 동시에 해결하기 위해 다양한 특성을 갖는 후보 예측 움직임 벡터들 중에 대표 후보 예측 움직임 벡터들을 적응적으로 가변 산출함으로써 현재 블록의 움직임 벡터 부호화 성능을 크게 향상시켜 비디오 압축 장치의 압축 성능 혹은 복원 영상의 화질을 크게 향상시킬 수 있게 된다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같이 본 발명의 실시예는, 후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제를 최소화하면서도 고정된 움직임 예측 후보로 인한 부호화 효율 저하 문제를 동시에 해결하기 위해 다양한 특성을 갖는 후보 예측 움직임 벡터들 중에 대표 후보 예측 움직임 벡터들을 적응적으로 가변 산출함으로써 현재 블록의 움직임 벡터 부호화 성능을 크게 향상시켜 비디오 압축 장치의 압축 성능 혹은 복원 영상의 화질을 크게 향상시킬 수 있는 효과를 발생하는 매우 유용한 발명이다.
CROSS-REFERENCE TO RELATED APPLICATION
본 특허출원은 2010년 6월 11일 한국에 출원한 특허출원번호 제10-2010-0055678호에 대해 미국 특허법 119(a)조(35 U.S.C §119(a))에 따라 우선권을 주장하면, 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다. 아울러, 본 특허출원은 미국 이외의 국가에 대해서도 위와 동일한 이유로 우선권을 주장하면 그 모든 내용은 참고 문헌으로 본 특허출원에 병합된다.

Claims (22)

  1. 영상 부호화/복호화 장치에 있어서,
    현재블록의 움직임벡터를 결정하고, 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하며, 분류된 각각의 상기 후보 집합으로부터 대표 움직임벡터를 선정하고, 각각의 상기 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 결정된 상기 움직임벡터와의 차분 값을 부호화하는 영상 부호화기; 및
    비트스트림으로부터 추출되는 상기 차분 값을 복호화하며, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 제2 후보 집합으로 분류하고, 분류된 각각의 상기 제2 후보 집합으로부터 제2 대표 움직임벡터를 선정하며, 선정된 각각의 상기 제2 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하며 상기 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하고, 상기 비트스트림으로부터 추출되는 영상 데이터를 복원되는 상기 현재 움직임벡터를 이용하여 예측 복호화하여 현재블록을 복원하는 영상 복호화기
    를 포함하는 것을 특징으로 하는 영상 부호화/복호화 장치.
  2. 영상 부호화 장치에 있어서,
    현재블록의 움직임벡터를 결정하고, 결정되는 상기 움직임벡터를 이용하여 상기 현재블록을 예측 부호화하는 영상 부호화기; 및
    상기 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하고, 분류된 각각의 상기 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 상기 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 상기 현재블록의 움직임벡터와의 차분 값을 부호화하는 움직임벡터 부호화기
    를 포함하는 것을 특징으로 하는 영상 부호화 장치.
  3. 움직임벡터 부호화 장치에 있어서,후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 상기 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부;
    상기 후보 예측 움직임벡터 분류부에 분류된 각각의 상기 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 상기 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및
    상기 대표 움직임벡터 선택부에 의해 선택된 상기 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 움직임벡터 부호화부
    를 포함하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  4. 제 3항에 있어서,
    상기 대표 움직임벡터 선택부는,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치 이하인 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  5. 제 3항에 있어서,
    상기 움직임벡터 부호화부는,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치보다 큰 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 상기 현재블록의 움직임벡터의 차분 값을 부호화하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  6. 제 3항에 있어서,
    상기 후보 예측 움직임벡터 분류부는,
    상기 각 후보 예측 움직임벡터의 특성에 따라 규칙적인 움직임벡터 집합 및 불규칙적인 움직임벡터 집합으로 분류하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  7. 제 3항에 있어서,
    상기 움직임벡터 부호화부는,복수 개의 상기 대표 움직임벡터들 중 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터와 상기 현재블록의 움직임벡터의 차분 값을 부호화하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  8. 제 7항에 있어서,
    상기 율-왜곡 기반의 판별식은 다음과 같이 표현되는 것을 특징으로 하는 움직임벡터 부호화 장치:
    Figure PCTKR2011004234-appb-I000004
    여기서 mvx는 현재블록 X의 실제 움직임벡터를 의미하며, Ibest는 최적의 움직임벡터 인덱스이고, D는 움직임 예측을 수행하고 얻어지는 실제 영상과 이전에 복원된 영상과의 SAD(Sum of Absolute Difference) 또는 SATD(Sum of Absolute Transformed Difference)값을 의미하며, λ는 D와 (mvx - mvi)의 균형을 조정하기 위한 라그랑지 승수를 나타냄.
  9. 영상 복호화 장치에 있어서,
    현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하고, 분류된 각각의 상기 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 상기 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 움직임벡터 복호화기; 및
    상기 비트스트림으로부터 추출되는 상기 차분 값을 복호화하며, 상기 비트스트림으로부터 추출되는 영상 데이터를 복원되는 상기 현재 움직임벡터를 이용하여 예측 복호화하여 상기 현재블록을 복원하는 영상 복호화기
    를 포함하는 것을 특징으로 하는 영상 복호화 장치.
  10. 움직임벡터 복호화 장치에 있어서,
    후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 상기 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부;
    상기 후보 예측 움직임벡터 분류부에 분류된 각각의 상기 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 상기 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및
    상기 대표 움직임벡터 선택부에 의해 선택된 상기 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 움직임벡터 복호화부
    를 포함하는 것을 특징으로 하는 움직임벡터 복호화 장치.
  11. 제 10항에 있어서,
    상기 대표 움직임벡터 선택부는,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치 이하인 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택하는 것을 특징으로 하는 움직임벡터 복호화 장치.
  12. 제 10항에 있어서,
    상기 움직임벡터 복호화부는,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치보다 큰 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 율-왜곡 기반의 대표 움직임벡터에 상기 차분 벡터를 가산하여 상기 현재 움직임벡터를 복원하는 것을 특징으로 하는 움직임벡터 복호화 장치.
  13. 영상 부호화/복호화 방법에 있어서,
    현재블록의 움직임벡터를 결정하고, 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하며, 분류된 각각의 상기 후보 집합으로부터 대표 움직임벡터를 선정하고, 각각의 상기 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 결정된 상기 움직임벡터와의 차분 값을 부호화하는 단계; 및
    비트스트림으로부터 추출되는 상기 차분 값을 복호화하며, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 제2 후보 집합으로 분류하고, 분류된 각각의 상기 제2 후보 집합으로부터 제2 대표 움직임벡터를 선정하며, 선정된 각각의 상기 제2 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하며 상기 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하고, 상기 비트스트림으로부터 추출되는 영상 데이터를 복원되는 상기 현재 움직임벡터를 이용하여 예측 복호화하여 상기 현재블록을 복원하는 단계
    를 포함하는 것을 특징으로 하는 영상 부호화/복호화 방법.
  14. 영상 부호화 방법에 있어서,
    현재블록의 움직임벡터를 결정하는 단계;
    상기 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계;
    분류된 각각의 상기 후보 집합으로부터 대표 움직임벡터를 선정하는 단계;
    선정된 각각의 상기 대표 움직임벡터 사이의 차이에 따라 적응적으로 하나의 대표 움직임벡터를 선택하는 단계; 및
    적응적으로 선택된 상기 대표 움직임벡터와 상기 현재블록의 움직임벡터와의 차분 값을 부호화하는 단계
    를 포함하는 것을 특징으로 하는 영상 부호화 방법.
  15. 움직임벡터 부호화 방법에 있어서,후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 상기 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계;
    분류된 각각의 상기 후보 집합에 대하여 대표 움직임벡터를 선정하는 단계;
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 상기 대표 움직임벡터 중의 하나를 선택하는 단계; 및
    선택된 상기 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 단계
    를 포함하는 것을 특징으로 하는 움직임벡터 부호화 방법.
  16. 제 15항에 있어서,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치 이하인 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택하는 것을 특징으로 하는 움직임벡터 부호화 방법.
  17. 제 15항에 있어서,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치보다 큰 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 상기 현재블록의 움직임벡터의 차분 값을 부호화하는 것을 특징으로 하는 움직임벡터 부호화 방법.
  18. 제 15항에 있어서,
    상기 후보 예측 움직임벡터 분류단계는,
    상기 각 후보 예측 움직임벡터의 특성에 따라 규칙적인 움직임벡터 집합 및 불규칙적인 움직임벡터 집합으로 분류하는 것을 특징으로 하는 움직임벡터 부호화 방법.
  19. 영상 복호화 방법에 있어서,
    비트스트림으로부터 추출되는 차분 값을 복호화하는 단계;
    현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계;
    분류된 각각의 상기 후보 집합으로부터 대표 움직임벡터를 선정하는 단계;
    선정된 각각의 상기 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 상기 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 단계; 및
    상기 비트스트림으로부터 추출되는 영상 데이터를 복원되는 상기 현재 움직임벡터를 이용하여 예측 복호화하여 상기 현재블록을 복원하는 단계
    를 포함하는 것을 특징으로 하는 영상 복호화 방법.
  20. 움직임벡터 복호화 방법에 있어서,
    후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 상기 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계;
    분류된 각각의 상기 후보 집합에 대하여 대표 움직임벡터를 선정하는 단계;
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 상기 대표 움직임벡터 중의 하나를 선택하는 단계; 및
    선택된 상기 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 단계
    를 포함하는 것을 특징으로 하는 움직임벡터 복호화 방법.
  21. 제 20항에 있어서,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치 이하인 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택하는 것을 특징으로 하는 움직임벡터 복호화 방법.
  22. 제 20항에 있어서,
    각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치보다 큰 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 율-왜곡 기반의 대표 움직임벡터에 상기 차분 벡터를 가산하여 상기 현재 움직임벡터를 복원하는 것을 특징으로 하는 움직임벡터 복호화 방법.
PCT/KR2011/004234 2010-06-11 2011-06-09 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치 WO2011155779A2 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2010-0055678 2010-06-11
KR1020100055678A KR101678654B1 (ko) 2010-06-11 2010-06-11 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치

Publications (2)

Publication Number Publication Date
WO2011155779A2 true WO2011155779A2 (ko) 2011-12-15
WO2011155779A3 WO2011155779A3 (ko) 2012-05-03

Family

ID=45098541

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2011/004234 WO2011155779A2 (ko) 2010-06-11 2011-06-09 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치

Country Status (2)

Country Link
KR (1) KR101678654B1 (ko)
WO (1) WO2011155779A2 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102546142B1 (ko) * 2016-03-18 2023-06-21 로즈데일 다이나믹스 엘엘씨 비디오 코딩 시스템에서 블록 구조 도출 방법 및 장치
WO2019209050A1 (ko) * 2018-04-25 2019-10-31 엘지전자 주식회사 변환 타입에 기초하여 비디오 신호를 처리하는 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990005282A (ko) * 1997-06-30 1999-01-25 배순훈 웨이브렛 변환 영역에서의 패턴 분류를 이용한 계층적 움직임 추정 방법
KR20030029933A (ko) * 2001-07-06 2003-04-16 코닌클리케 필립스 일렉트로닉스 엔.브이. 움직임 또는 깊이 추정 방법들 및 유닛들과 이러한 움직임추정 유닛이 제공된 이미지 처리 장치
KR20070079411A (ko) * 2006-02-02 2007-08-07 삼성전자주식회사 블록 기반의 움직임 추정 방법 및 장치
KR20090022377A (ko) * 2007-08-30 2009-03-04 삼성전자주식회사 움직임 추정과 움직임 보상을 이용한 동영상의 프레임률변환 시스템 및 방법
KR20100001078A (ko) * 2008-06-26 2010-01-06 에스케이 텔레콤주식회사 움직임벡터 부호화/복호화 방법 및 그 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990005282A (ko) * 1997-06-30 1999-01-25 배순훈 웨이브렛 변환 영역에서의 패턴 분류를 이용한 계층적 움직임 추정 방법
KR20030029933A (ko) * 2001-07-06 2003-04-16 코닌클리케 필립스 일렉트로닉스 엔.브이. 움직임 또는 깊이 추정 방법들 및 유닛들과 이러한 움직임추정 유닛이 제공된 이미지 처리 장치
KR20070079411A (ko) * 2006-02-02 2007-08-07 삼성전자주식회사 블록 기반의 움직임 추정 방법 및 장치
KR20090022377A (ko) * 2007-08-30 2009-03-04 삼성전자주식회사 움직임 추정과 움직임 보상을 이용한 동영상의 프레임률변환 시스템 및 방법
KR20100001078A (ko) * 2008-06-26 2010-01-06 에스케이 텔레콤주식회사 움직임벡터 부호화/복호화 방법 및 그 장치

Also Published As

Publication number Publication date
KR20110135761A (ko) 2011-12-19
WO2011155779A3 (ko) 2012-05-03
KR101678654B1 (ko) 2016-11-22

Similar Documents

Publication Publication Date Title
WO2011062392A2 (ko) 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2013070006A1 (ko) 스킵모드를 이용한 동영상 부호화 및 복호화 방법 및 장치
WO2013002549A2 (ko) 영상 부호화/복호화 방법 및 장치
WO2011052897A2 (ko) 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2013069932A1 (ko) 영상의 부호화 방법 및 장치, 및 복호화 방법 및 장치
WO2010050706A2 (ko) 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2010087620A2 (ko) 보간 필터를 적응적으로 사용하여 영상을 부호화 및 복호화하는 방법 및 장치
WO2013005941A2 (ko) 영상 부호화 및 복호화 방법과 장치
WO2012015275A2 (ko) 블록 분할예측을 이용한 영상 부호화/복호화 방법 및 장치
WO2013002550A2 (ko) 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치
WO2011068331A2 (ko) 비디오 인코딩 장치 및 그 인코딩 방법, 비디오 디코딩 장치 및 그 디코딩 방법, 및 거기에 이용되는 방향적 인트라 예측방법
WO2011145819A2 (ko) 영상 부호화/복호화 장치 및 방법
WO2012011672A2 (ko) 확장된 스킵모드를 이용한 영상 부호화/복호화 방법 및 장치
WO2011037337A2 (ko) 저주파수 성분을 고려한 영상 부호화/복호화 방법 및 장치
WO2012033344A2 (ko) 효과적인 화면내 예측모드 집합 선택을 이용한 영상 부호화/복호화 방법 및 장치
WO2013141671A1 (ko) 인터 레이어 인트라 예측 방법 및 장치
WO2010077071A2 (ko) 블록 모드 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2013069996A1 (ko) 변환을 이용한 주파수 도메인 상의 적응적 루프 필터를 이용한 영상 부호화/복호화 방법 및 장치
WO2011108879A2 (ko) 영상 부호화 장치, 그 영상 부호화 방법, 영상 복호화 장치 및 그 영상 복호화 방법
WO2013157814A1 (ko) 영상의 레퍼런스 픽쳐 세트를 결정하기 위한 방법 및 장치
WO2019135628A1 (ko) 영상을 부호화 또는 복호화하는 방법 및 장치
WO2012021040A2 (ko) 필터링모드 생략가능한 영상 부호화/복호화 방법 및 장치
WO2011052990A2 (ko) 적응적인 해상도 기반의 영상 부호화/복호화 방법 및 장치
WO2012033343A2 (ko) 참조 화소들의 특성을 이용하여 예측모드 정보의 전송을 생략할 수 있는 화면 내 예측 부호화/복호화 장치 및 그 방법
WO2011068332A2 (ko) 공간적 예측장치 및 그 예측방법, 그것을 이용한 영상 부호화 장치 및 방법, 및 영상 복호화 장치 및 방법

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

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase in:

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS (EPO FORM 1205A DATED 28-03-2013

122 Ep: pct application non-entry in european phase

Ref document number: 11792690

Country of ref document: EP

Kind code of ref document: A2