P
US8711939B2ActiveUtilityPatentIndex 52

Method and apparatus for encoding and decoding video based on first sub-pixel unit and second sub-pixel unit

Assignee: ALSHINA ELENAPriority: Apr 5, 2010Filed: Apr 5, 2011Granted: Apr 29, 2014
Est. expiryApr 5, 2030(~3.8 yrs left)· nominal 20-yr term from priority
Inventors:ALSHINA ELENAALSHIN ALEXANDERCHEON MIN-SUHAN WOO-JINLEE TAMMY
H04N 19/96H04N 19/46H04N 19/44H04N 19/513H04N 19/523H04N 19/30H04N 19/105H04N 19/533H04N 19/176H04N 19/53H04N 19/52
52
PatentIndex Score
1
Cited by
8
References
32
Claims

Abstract

Methods and apparatuses for encoding and decoding video are provided. The encoding method includes: performing motion estimation on a current block according to a first sub-pixel unit, and obtaining a motion vector in the first sub-pixel unit with respect to the current block; interpolating a reference picture indicated by the motion vector according to a second sub-pixel unit smaller than the first sub-pixel unit; using the interpolated reference picture, selecting a second sub-pixel in the second sub-pixel unit adjacent to a first sub-pixel in the first sub-pixel unit of the reference picture; selecting a corresponding region that has a smaller error with the current block, from among a first corresponding region of the reference picture and obtained with respect to the first sub-pixel, and a second corresponding region of the current block and obtained with respect to the selected second sub-pixel; and encoding information of the selected corresponding region.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method of encoding video, the method comprising:
 performing motion estimation on a current block according to a first sub-pixel unit, and obtaining a motion vector in the first sub-pixel unit with respect to the current block; 
 interpolating a reference picture indicated by the obtained motion vector according to a second sub-pixel unit smaller than the first sub-pixel unit; 
 selecting a second sub-pixel from among sub-pixels in the second sub-pixel unit adjacent to a first sub-pixel in the first sub-pixel unit of the reference picture indicated by the obtained motion vector, wherein the selecting is performed using the interpolated reference picture; 
 selecting a corresponding region that has a smaller error with the current block from among a first corresponding region and a second corresponding region, wherein the first corresponding region is of the reference picture indicated by the obtained motion vector and is obtained with respect to the first sub-pixel in the first sub-pixel unit, and the second corresponding region is of the current block and is obtained with respect to the selected second sub-pixel in the second sub-pixel unit; and 
 encoding information of the selected corresponding region, 
 wherein: 
 the current block is comprised in an image; 
 the image is hierarchically split from a plurality of maximum coding units according to the information about a maximum size of a coding unit into coding units of coded depths according to depths; 
 wherein a coding unit of a current depth is one of rectangular data units split from a coding unit of a upper depth; 
 wherein the coding unit of a current depth are split into coding units of a lower depth, independently from neighboring coding units; and 
 wherein the coding units of a hierarchical structure comprise encoded coding units among the coding units split from the maximum coding unit. 
 
     
     
       2. The method of  claim 1 , wherein the obtaining the motion vector comprises:
 selecting, as the first sub-pixel unit, an accuracy from among at least two accuracies; 
 interpolating the reference picture according to the selected first sub-pixel unit; and 
 searching, in the interpolated reference picture, a most similar corresponding region to the current block, and obtaining the motion vector indicating a position of the searched corresponding region. 
 
     
     
       3. The method of  claim 2 , wherein the encoding the information comprises encoding accuracy information of the motion vector indicating the accuracy selected as the first sub-pixel unit from among the at least two accuracies. 
     
     
       4. The method of  claim 2 , wherein the at least two accuracies comprise a 1/4 sub-pixel unit and a 1/8 sub-pixel unit. 
     
     
       5. The method of  claim 1 , wherein, when the first sub-pixel unit is 1/(2^p), where p is an integer equal to or greater than 0, and the second sub-pixel unit is a 1/[(2a+1)*(2^p)] sub-pixel unit, where a is an integer equal to or greater than 0. 
     
     
       6. The method of  claim 5 , wherein the second sub-pixel unit is a 1/12 sub-pixel unit. 
     
     
       7. The method of  claim 1 , wherein the encoding the information comprises encoding information of the motion vector in the first sub-pixel unit, and information indicating whether the second corresponding region is selected. 
     
     
       8. The method of  claim 7 , wherein, when the second corresponding region is selected as the corresponding region, the encoding the information further comprises encoding position information of the selected second sub-pixel in the second sub-pixel unit. 
     
     
       9. The method of  claim 8 , wherein the encoding the position information comprises:
 estimating the position information of the selected second sub-pixel in the second sub-pixel unit of the current block by using position information of a sub-pixel in the second sub-pixel unit used to estimate and compensate for motion of adjacent blocks to the current block; and 
 encoding a difference value between the estimated position information of the selected second sub-pixel in the second sub-pixel unit of the current block and the position information of the sub-pixel in the second sub-pixel unit used to estimate and compensate for the motion of adjacent blocks. 
 
     
     
       10. The method of  claim 7 , wherein the encoding the information further comprises:
 obtaining an estimation motion vector of the current block by using a motion vector of an adjacent block to the current block; and 
 encoding a difference value between the obtained estimation motion vector of the current block and a motion vector of the current block. 
 
     
     
       11. A video encoding apparatus comprising:
 a motion estimator which performs motion estimation on a current block according to a first sub-pixel unit, and obtains a motion vector in the first sub-pixel unit with respect to the current block; 
 a motion compensator which interpolates a reference picture indicated by the obtained motion vector according to a second sub-pixel unit smaller than the first sub-pixel unit, which selects, by using the interpolated reference picture, selecting a second sub-pixel from among sub-pixels in the second sub-pixel unit adjacent to a first sub-pixel in the first sub-pixel unit of the reference picture indicated by the obtained motion vector, and which selects a corresponding region that has a smaller error with the current block from among a first corresponding region and a second corresponding region, wherein the first corresponding region is of the reference picture indicated by the obtained motion vector and is obtained with respect to the first sub-pixel in the first sub-pixel unit, and the second corresponding region is of the current block and is obtained with respect to the selected second sub-pixel in the second sub-pixel unit; and 
 an encoder which encodes information of the selected corresponding region, 
 wherein: 
 the current block is comprised in an image; 
 the image is hierarchically split from a plurality of maximum coding units according to the information about a maximum size of a coding unit into coding units of coded depths according to depths; 
 wherein a coding unit of a current depth is one of rectangular data units split from a coding unit of a upper depth; 
 wherein the coding unit of a current depth are split into coding units of a lower depth, independently from neighboring coding units; and 
 wherein the coding units of a hierarchical structure comprise encoded coding units among the coding units split from the maximum coding unit. 
 
     
     
       12. The video encoding apparatus of  claim 11 , wherein the motion compensator performs motion estimation by selecting, as the first sub-pixel unit, an accuracy from among at least two accuracies and by interpolating the reference picture according to the selected first sub-pixel unit. 
     
     
       13. The video encoding apparatus of  claim 12 , wherein the encoder encodes accuracy information of the motion vector indicating the accuracy selected as the first sub-pixel unit from among the at least two accuracies. 
     
     
       14. The video encoding apparatus of  claim 12 , wherein the at least two accuracies comprise a 1/4 sub-pixel unit and a 1/8 sub-pixel unit. 
     
     
       15. The video encoding apparatus of  claim 11 , wherein, when the first sub-pixel unit is 1/(2^p), where p is an integer equal to or greater than 0, the second sub-pixel unit is a 1/[(2a+1)*(2^p)] sub-pixel unit, where a is an integer equal to or greater than 0. 
     
     
       16. The video encoding apparatus of  claim 15 , wherein the second sub-pixel unit is a 1/12 sub-pixel unit. 
     
     
       17. The video encoding apparatus of  claim 11 , wherein the encoder encodes information of the motion vector in the first sub-pixel unit, and information indicating whether the second corresponding region is selected. 
     
     
       18. The video encoding apparatus of  claim 17 , wherein, when the second corresponding region is selected as the corresponding region, the encoder encodes position information of the selected second sub-pixel in the second sub-pixel unit. 
     
     
       19. The video encoding apparatus of  claim 17 , wherein the encoder:
 estimates the position information of the selected second sub-pixel in the second sub-pixel unit of the current block by using position information of a sub-pixel in the second sub-pixel unit used to estimate and compensate for motion of adjacent blocks to the current block; and 
 encodes a difference value between the estimated position information of the selected second sub-pixel in the second sub-pixel unit of the current block and the position information of the sub-pixel in the second sub-pixel unit used to estimate and compensate for motion of the adjacent blocks. 
 
     
     
       20. The video encoding apparatus of  claim 17 , wherein the encoder obtains an estimation motion vector of the current block by using a motion vector of an adjacent block to the current block, and encodes a difference value between the obtained estimation motion vector of the current block and a motion vector of the current block. 
     
     
       21. A method of decoding video, the method comprising:
 decoding and obtaining a motion vector in a first sub-pixel unit with respect to a current block from a bitstream; 
 obtaining information from the bitstream, wherein the information indicates whether motion compensation is performed on the current block by using a corresponding region obtained with respect to a second sub-pixel in a second sub-pixel unit that is smaller than the first sub-pixel unit adjacent to a first sub-pixel in the first sub-pixel unit of a reference picture indicated by the obtained motion vector in the first sub-pixel unit; 
 if the motion compensation is performed on the current block by using information of the corresponding region obtained with respect to the second sub-pixel in the second sub-pixel unit, extracting position information of the second sub-pixel in the second sub-pixel unit from the bitstream; and 
 performing the motion compensation on the current block by using the motion vector in the first sub-pixel unit, and the extracted position information of the second sub-pixel in the second sub-pixel unit, 
 wherein: 
 the current block is comprised in an image; 
 the image is hierarchically split from a plurality of maximum coding units according to the information about a maximum size of a coding unit into coding units of coded depths according to depths; 
 wherein a coding unit of a current depth is one of rectangular data units split from a coding unit of a upper depth; 
 wherein the coding unit of a current depth are split into coding units of a lower depth, independently from neighboring coding units; and 
 wherein the coding units of a hierarchical structure comprise encoded coding units among the coding units split from the maximum coding unit. 
 
     
     
       22. The method of  claim 21 , wherein the obtaining the motion vector comprises:
 obtaining an estimation motion vector by using a motion vector of an adjacent block to the current block; and 
 obtaining the motion vector in the first sub-pixel unit by using the obtained estimation motion vector of the current block, and a difference value between the estimation motion vector comprised in the bitstream and a motion vector of the current block. 
 
     
     
       23. The method of  claim 21 , wherein, when the first sub-pixel unit is 1/(2^p), where p is an integer equal to or greater than 0, the second sub-pixel unit is a 1/[(2 a+1)*(2^p)] sub-pixel unit, where a is an integer equal to or greater than 0. 
     
     
       24. The method of  claim 23 , wherein the second sub-pixel unit is a 1/12 sub-pixel unit. 
     
     
       25. The method of  claim 21 , wherein the extracting the position information comprises:
 estimating the position information of the second sub-pixel in the second sub-pixel unit of the current block by using position information of a sub-pixel in the second sub-pixel unit used to estimate and compensate for motion of adjacent blocks to the current block; and 
 obtaining the position information of the second sub-pixel in the second sub-pixel unit of the current block by using the estimated position information of the second sub-pixel in the second sub-pixel unit, and a difference value between the estimated position information of the second sub-pixel in the second sub-pixel unit and the extracted position information of the second sub-pixel in the second sub-pixel unit extracted from the bitstream. 
 
     
     
       26. The method of  claim 21 , wherein the performing the motion compensation comprises:
 interpolating the reference picture indicated by the motion vector in the first sub-pixel unit according to the second sub-pixel unit; 
 determining the second sub-pixel in the second sub-pixel unit adjacent to the first sub-pixel in the first sub-pixel unit of the reference picture indicated by the motion vector in the first sub-pixel unit, by using the extracted position information of the second sub-pixel in the second sub-pixel unit; and 
 obtaining a region corresponding to the current block with respect to the determined second sub-pixel in the second sub-pixel unit. 
 
     
     
       27. A video decoding apparatus comprising:
 an entropy decoder which decodes and obtains a motion vector in a first sub-pixel unit with respect to a current block from a bitstream, which obtains information indicating whether motion compensation is performed on the current block by using a corresponding region obtained with respect to a second sub-pixel in a second sub-pixel unit that is smaller than the first sub-pixel unit adjacent to a first sub-pixel in the first sub-pixel unit of a reference picture indicated by the obtained motion vector in the first sub-pixel unit, and which, if the motion estimation is performed on the current block by using information of the corresponding region obtained with respect to the second sub-pixel in the second sub-pixel unit, extracts position information of the second sub-pixel in the second sub-pixel unit from the bitstream; and 
 a motion compensator which performs the motion compensation on the current block by using the motion vector in the first sub-pixel unit, and the extracted position information of the second sub-pixel in the second sub-pixel unit, 
 wherein: 
 the current block is comprised in an image; 
 the image is hierarchically split from a plurality of maximum coding units according to the information about a maximum size of a coding unit into coding units of coded depths according to depths; 
 wherein a coding unit of a current depth is one of rectangular data units split from a coding unit of a upper depth; 
 wherein the coding unit of a current depth are split into coding units of a lower depth, independently from neighboring coding units; and 
 wherein the coding units of a hierarchical structure comprise encoded coding units among the coding units split from the maximum coding unit. 
 
     
     
       28. The video decoding apparatus of  claim 27 , wherein the motion compensator obtains an estimation motion vector by using a motion vector of an adjacent block to the current block, and obtains the motion vector in the first sub-pixel unit by using the obtained estimation motion vector of the current block, and a difference value between the estimation motion vector comprised in the bitstream and a motion vector of the current block. 
     
     
       29. The video decoding apparatus of  claim 27 , wherein, when the first sub-pixel unit is 1/(2^p), where p is an integer equal to or greater than 0, the second sub-pixel unit is a 1/[(2a+1)*(2^p)] sub-pixel unit, where a is an integer equal to or greater than 0. 
     
     
       30. The video decoding apparatus of  claim 29 , wherein the second sub-pixel unit is a 1/12 sub-pixel unit. 
     
     
       31. The video decoding apparatus of  claim 27 , wherein the motion compensator:
 estimates the position information of the second sub-pixel in the second sub-pixel unit of the current block by using position information of a sub-pixel in the second sub-pixel unit used to estimate and compensate for motion of adjacent blocks to the current block; and 
 obtains the position information of the second sub-pixel in the second sub-pixel unit of the current block by using the estimated position information of the second sub-pixel in the second sub-pixel unit, and a difference value between the estimated position information of the second sub-pixel in the second sub-pixel unit and the extracted position information of the second sub-pixel in the second sub-pixel unit extracted from the bitstream. 
 
     
     
       32. The video decoding apparatus of  claim 27 , wherein the motion compensator:
 interpolates the reference picture indicated by the motion vector in the first sub-pixel unit according to the second sub-pixel unit; 
 determines the second sub-pixel in the second sub-pixel unit adjacent to the first sub-pixel in the first sub-pixel unit of the reference picture indicated by the motion vector in the first sub-pixel unit, by using the extracted position information of the second sub-pixel in the second sub-pixel unit; and 
 obtains a region corresponding to the current block with respect to the determined second sub-pixel in the second sub-pixel unit.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.