US2007183505A1PendingUtilityA1

Motion vector predictive encoding method, motion vector decoding method, predictive encoding apparatus and decoding apparatus, and storage media storing motion vector predictive encoding and decoding programs

Assignee: NIPPON TELEGRAPH & TELEPHONEPriority: Jun 25, 1997Filed: Mar 22, 2007Published: Aug 9, 2007
Est. expiryJun 25, 2017(expired)· nominal 20-yr term from priority
H04N 19/517H04N 19/537H04N 19/527H04N 19/52H04N 19/51
55
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A motion vector predictive encoding method, a motion vector decoding method, a predictive encoding apparatus, a decoding apparatuses, and storage media storing motion vector predictive encoding and decoding programs are provided, thereby reducing the amount of generated code with respect to the motion vector, and improving the efficiency of the motion-vector prediction. If the motion-compensating mode of the target small block to be encoded is the global motion compensation, the encoding mode of an already-encoded small block is the interframe coding mode, and the motion-compensating mode of the already-encoded small block is the global motion compensation, then the motion vector of the translational motion model is determined for each pixel of the already-encoded small block, based on the global motion vector (steps S 1 -S 5 ). Next, the representative motion vector is calculated as the predicted vector, based on the motion vector of each pixel of the already-encoded small block (step S 6 ). Finally, the prediction error is calculated for each component of the motion vector and each prediction error is encoded (steps S 7 and S 8 ).

Claims

exact text as granted — not AI-modified
1 - 96 . (canceled)  
   
   
       97 . A motion vector predictive encoding method in which a target frame to be encoded is divided into target small blocks and a motion-compensating method is applied to each target small block to be encoded, a motion vector of a target small block is predicted and calculated (S 7 ) based on a motion vector of already-encoded small blocks to produce a predicted vector, and a prediction error of the motion vector is encoded, 
 characterized in that the motion-compensating method used for the target small block is a local motion-compensating method (LMV) and the motion-compensating method used for the already-encoded small blocks for the prediction is a global motion-compensating method (GMC), then the motion vector of the target small block is predicted by converting (S 6 ) a global motion vector used in the global motion-compensating method and obtained from the already-encoded small blocks for the prediction into a local motion vector used in the local motion-compensating method to produce the predicted vector, and clipping (S 21 ) the predicted vector to a value within a predetermined range if the predicted vector is not within the predetermined range, and providing the error of the motion vector using the clipped prediction vector.    
   
   
       98 . A motion vector predictive encoding method as claimed in  claim 97 , wherein if the value of the predicted vector with respect to the motion vector of the target small block is not within a predetermined range, the value of the predicted vector is set to 0.  
   
   
       99 . A motion vector decoding method for decoding a motion vector which was encoded using a motion vector predictive encoding method, in which a target frame to be encoded is divided into target small blocks and a motion-compensating method is applied to each target small block to be encoded, a motion vector of the target small block is predicted and calculated (S 17 ) based on a motion vector of already-encoded small blocks to produce a predicted vector and a prediction error of the motion vector is encoded, 
 characterized in that the motion-compensating method used for the target small blocks is the local motion-compensating method (LMV) and the motion-compensating method used for the already-encoded small blocks for the prediction is the global motion-compensating method (GMC), then the motion vector of the already-decoded small block is predicted by converting a global motion vector used in the global motion-compensating method and obtained from the already-encoded small blocks into a local motion vector used in the local motion-compensating method to produce the predicted vector, the predicted motion vector is clipped (S 23 ) to a determined value if the predicted vector is not within the predetermined range, and the motion vector is decoded by adding the prediction error to the predicted vector (S 18 ).    
   
   
       100 . A motion vector decoding method as claimed in  claim 99 , wherein if the value of the predicted vector is not within a predetermined range, the predicted vector is clipped so as to have a value within the predetermined range.  
   
   
       101 . A motion vector decoding method as claimed in  claim 99 , wherein if the value of the predicted vector is not within a predetermined range, the value of the predicted vector is set to 0.  
   
   
       102 . A motion vector predictive encoding method as claimed in  claim 97 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters with respect to the motion vector than parameters of the above motion model, a representative motion vector of the small block is calculated based on the motion vector in the other motion model determined for each pixel in the small block.  
   
   
       103 . A motion vector predictive encoding method as claimed in  claim 98 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters with respect to the motion vector than parameters of the above motion model, a representative motion vector of the small block is calculated based on the motion vector in the other motion model determined for each pixel in the small block.  
   
   
       104 . A motion vector decoding method as claimed in  claim 99 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters with respect to the motion vector than parameters of the above motion model, a representative motion vector of the small block is calculated based on the motion vector in the other motion model determined for each pixel in the small block.  
   
   
       105 . A motion vector decoding method as claimed in  claim 100 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters with respect to the motion vector than parameters of the above motion model, a representative motion vector of the small block is calculated based on the motion vector in the other motion model determined for each pixel in the small block.  
   
   
       106 . A motion vector decoding method as claimed in  claim 101 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters with respect to the motion vector than parameters of the above motion model, a representative motion vector of the small block is calculated based on the motion vector the other motion model determined for each pixel in the small block.  
   
   
       107 . A motion vector predictive encoding method as claimed in  claim 97 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, a representative motion vector of the small block is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.  
   
   
       108 . A motion vector predictive encoding method as claimed in  claim 98 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, a representative motion vector of the small block is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.  
   
   
       109 . A motion vector decoding method as claimed in  claim 99 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, a representative motion vector of the small block is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.  
   
   
       110 . A motion vector decoding method as claimed in  claim 100 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, a representative motion vector of the small block is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.  
   
   
       111 . A motion vector decoding method as claimed in  claim 101 , wherein when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, a representative motion vector of the small block is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.  
   
   
       112 . A motion vector predictive encoding method as claimed in  claim 107 , wherein in the calculation of the representative motion vector, each component of the representative motion vector is set to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.  
   
   
       113 . A motion vector predictive encoding method as claimed in  claim 108 , wherein in the calculation of the representative motion vector, each component of the representative motion vector is set to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion mode of each pixel in the small block.  
   
   
       114 . A motion vector decoding method as claimed in  claim 109 , wherein in the calculation of the representative motion vector, each component of the representative motion vector is set to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.  
   
   
       115 . A motion vector decoding method as claimed in  claim 110 , wherein in the calculation of the representative motion vector, each component of the representative motion vector is set to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.  
   
   
       116 . A motion vector decoding method as claimed in  claim 111 , wherein in the calculation of the representative motion vector, each component of the representative motion vector is set to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.  
   
   
       117 . A computer-readable storage medium storing a motion vector predictive encoding program for executing a motion vector predictive encoding program in which a target frame to be encoded is divided into small blocks and a motion-compensating method is applied to each target small block to be encoded, a motion vector of a target small block is predicted and calculated based on a motion vector of already-encoded small blocks to produce a predicted vector, and prediction error of the motion vector is encoded, 
 the encoding program being characterized in that, the motion-compensating method used for the target small block being a local motion-compensating method (LMV) and the motion-compensating method used for the already-encoded small blocks for the prediction being a global motion-compensating method (GMC), it includes the steps of:    calculating a predicted motion vector of the target small block by converting a global motion vector used in the global motion-compensating method and obtained from the already-encoded small blocks for the prediction into a local motion vector;    clipping the predicted vector to have a value within a predetermined range if the value of the predicted vector is not within the predetermined range.    
   
   
       118 . A computer-readable storage medium storing a motion vector predictive encoding a program as claimed in  claim 117 , including the step of: 
 setting the value of the predicted vector with respect to the motion vector of the target small block to 0 if the value of the predicted vector is not within a predetermined range.    
   
   
       119 . A computer-readable storage medium storing a motion vector decoding program for decoding the motion vector which was encoded by executing a motion vector predictive encoding program, in which a target frame to be encoded is divided into target small blocks and a motion-compensating method is applied to each target small block to be encoded, a motion vector of the target small block is predicted and calculated based on a motion vector of already-encoded small blocks to produce a predicted vector, and a prediction error of the motion vector is encoded, 
 the decoding program being characterized in that, the motion compensating method used for the target small blocks being the local motion-compensating method (LMV) and the motion-compensating method used for the already-encoded small blocks for the prediction being the global motion-compensating method (GMC), it includes the steps of:    calculating (S 17 ) a predicted vector with respect to the motion vector of the target small block;    clipping (S 23 ) the predicted vector to a determined value if the predicted vector is not within the predetermined range; and    decoding the motion vector by adding the prediction error to the predicted vector (S 18 ).    
   
   
       120 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 119  including the step of: 
 clipping the predicted vector so as to have a value within a predetermined range if the value of the predicted vector is not within the predetermined range.    
   
   
       121 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 119 , including the step of: 
 setting the value of the predicted vector to 0 if the value of the predicted vector is not within a predetermined range.    
   
   
       122 . A computer-readable storage medium storing a motion vector predictive encoding program as claimed in  claim 117 , including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters of the motion vector than parameters of the above motion model, wherein the representative motion vector is calculated based on the motion vector in the other motion model determined far each pixel in the small block.    
   
   
       123 . A computer-readable storage medium storing a motion vector predictive encoding program as claimed in  claim 118 , including the step of 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters of the motion vector than parameters of the above motion model, wherein the representative motion vector is calculated based on the motion vector in the other motion model determined for each pixel in the small block.    
   
   
       124 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 119 , including the step of 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters of the motion vector than parameters of the above motion model, wherein the representative motion vector is calculated based on the motion vector in the other motion model determined for each pixel in the small block.    
   
   
       125 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 120 , including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters of the motion vector than parameters of the above motion model, wherein the representative motion vector is calculated based on the motion vector in the other motion model determined for each pixel in the small block.    
   
   
       126 . A computer-readable storage medium storing a motion vector decoding program, as claimed in  claim 121 , including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in another motion model having fewer parameters of the motion vector than parameters of the above motion model, wherein the representative motion vector is calculated based on the motion vector in the other motion model determined for each pixel in the small block.    
   
   
       127 . A computer-readable storage medium storing a motion vector predictive encoding program as claimed in  claim 117 , including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, wherein the representative motion vector is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.    
   
   
       128 . A computer-readable storage medium storing a motion vector predictive encoding program as claimed in  claim 118 , including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, wherein the representative motion vector is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.    
   
   
       129 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 119 , including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, wherein the representative motion vector is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.    
   
   
       130 . A computer-readable storage medium storing a motion vector-decoding program as claimed in  claim 120  including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, wherein the representative motion vector is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.    
   
   
       131 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 121 , including the step of: 
 calculating a representative motion vector of the small block when the motion vector of the small block in any motion model is converted into a motion vector in a translational motion model, wherein the representative motion vector is calculated based on the motion vector in the translational motion model determined for each pixel in the small block.    
   
   
       132 . A computer-readable storage medium storing a motion vector predictive encoding program as claimed in  claim 127 , including the step of: 
 calculating the representative motion vector by setting each component thereof to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.    
   
   
       133 . A computer-readable storage medium storing a motion vector predictive encoding program as claimed in  claim 128 , including the step of: 
 calculating the representative motion vector by setting each component thereof to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.    
   
   
       134 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 129 , including the step of: 
 calculating the representative motion vector by setting each component thereof to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.    
   
   
       135 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 130 , including the step of: 
 calculating the representative motion vector by setting each component thereof to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.    
   
   
       136 . A computer-readable storage medium storing a motion vector decoding program as claimed in  claim 131 , including the step of: 
 calculating the representative motion vector by setting each component thereof to one of the average, intermediate value, median, mode, maximum value, and minimum value, which is calculated for each component of the motion vector in the translational motion model of each pixel in the small block.

Join the waitlist — get patent alerts

Track US2007183505A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.