← Back to Patent Explorer
EP0691789A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Method and apparatus for motion field estimation, segmentation and coding

Assignee: AT&T Inc
•
Filing: 1995-06-28
•
Granted: —
•
Expires: 2015-06-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention discloses an improved method and apparatus for prediction coding with motion estimation, in which the frame-to-frame changes resulting from motion in an image depicted in a video frame are detected and coded for transmission to a video receiver. The motion estimation technique of the present invention uses a hierarchical approach in which a motion vector updating routine is performed with respect to multiple levels of smaller and smaller regions of a frame. The motion vector updating routine updates the motion vector of a smaller region by assigning to it a best motion vector selected from among an initial motion vector assigned to the smaller region, motion vectors of neighboring regions, and a matched motion vector obtained by performing a block matching technique for the smaller region. The best motion vector for each region is selected according to a priority scheme and a predetermined threshold value. Adjacent regions having the same motion vector are then merged together, and a region shape representation routine is used to specify contour pixels that will allow the merged regions to be recovered by a decoder. A contour coding routine is then used to encode the contour pixels for transmission to the decoder. The present method requires less information about the motion field to be sent to the decoder and results in an improved prediction error compared to the H.261 standard currently used. The present invention is particularly advantageous for very low bit-rate applications.

Inventors

  • 👤 Touradj Ebrahimi

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-09 17:37
CPC Classifications
G; G06; G06T; G06T9/00; G06T9/20; H; H04; H04N; H04N19/00; H04N19/50; H04N19/503; H04N19/51; H04N19/537; H04N19/543; H04N19/20

Claims Analysis

Total Claims: 16
Claim 1
Independent Claim 165 words
An improved method of motion field estimation for use in motion compensated frame-to-frame prediction coding comprising the steps of: dividing a frame having a plurality of pixels into a plurality of smaller regions to form a first segmentation level; assigning to each of said plurality of smaller regions an initial motion vector; and performing for each of said plurality of smaller regions a motion vector updating routine which updates the motion vector of a smaller region by assigning to it a best motion vector selected from among the initial motion vector assigned to the smaller region, a matched motion vector obtained by performing a block matching technique for the smaller region, and motion vectors of the smaller region's neighboring regions, wherein the best motion vector is selected according to a priority scheme and a predetermined threshold value, and wherein the threshold value reflects the amount of improvement, obtained by assigning a particular motion vector as the best motion vector, relative to a smallest matching error.
Claim 2
Dependent Claim 284 words
The method of claim 1 wherein the motion vector routine includes the steps of: determining the smallest matching error from among the matching errors obtained respectively by assigning to the smaller region the following motion vectors: (a) the initial motion vector assigned to the smaller region; (b) the matched motion vector obtained by performing a block matching technique for the smaller region; and (c) the motion vectors of the smaller region's neighboring regions; selecting the initial motion vector as the best motion vector if the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is less than the predetermined threshold value; selecting the motion vector of one of the neighboring regions as the best motion vector if: (a) the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is not less than the predetermined threshold value; and (b) the absolute value of the difference between the smallest matching error and the matching error obtained by assigning to the smaller region the motion vector of the neighboring region is less than the predetermined threshold value; and selecting the matched motion vector as the best motion vector if: (a) the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is not less than the predetermined threshold value; and (b) the absolute value of the difference between the smallest matching error and each of the matching errors obtained by assigning to the smaller region the motion vector of one of the neighboring region is not less than the predetermined threshold value.
Claim 3
Dependent Claim 24 words
The method of claim 2 wherein the initial motion vector assigned to each smaller region in the first segmentation level has the value zero.
Claim 4
Dependent Claim 86 words
The method of claim 3 further including the steps of: (a) dividing each smaller region in the previous segmentation level into a plurality of smaller regions of predetermined shape and size to form a subsequent segmentation level; (b) assigning to each of the plurality of smaller regions in the subsequent segmentation level an initial motion vector equal to the motion vector of its parent region; and (c) performing the motion vector updating routine for each of said plurality of smaller regions in the subsequent segmentation level.
Claim 5
Dependent Claim 28 words
The method of claim 4 further comprising the step of repeatedly performing the steps (a), (b) and (c) specified in claim 4 until a stop condition is reached.
Claim 6
Dependent Claim 14 words
The method of claim 5 wherein the shape of each smaller region is rectangular.
Claim 7
Dependent Claim 24 words
The method of claim 6 wherein the size of the smaller regions is the same for each smaller region in a particular segmentation level.
Claim 8
Dependent Claim 20 words
The method of claim 7 wherein the stop condition is a lower bound on the size of the smaller regions.
Claim 9
Dependent Claim 21 words
The method of claim 7 wherein the stop condition is a predetermined value of a total matching error for the frame.
Claim 10
Dependent Claim 27 words
The method of claim 7 wherein the stop condition is a predetermined number of segmentation levels with respect to which the motion vector updating routine is performed.
Claim 11
Dependent Claim 63 words
The method of claim 7 further comprising the steps of: merging adjacent regions having similar motion vectors; assigning a region label to each of said plurality of pixels; performing a region shape representation routine for each of said plurality of pixels to define a plurality of contour pixels; and performing a contour coding routine to encode each of said plurality of contour pixels.
Claim 12
Independent Claim 335 words
An apparatus for use in improved motion field estimation of a video image, said apparatus comprising: a previous decoded frame memory unit for storing a monochrome intensity for each pixel in a preceding frame; a current frame memory unit for storing a monochrome intensity for each pixel in a current frame; a motion field memory unit for storing a motion vector for each pixel in the current frame; a motion refinement unit for performing a block matching technique for a block of pixels in the current frame and for providing a matched motion vector; a candidate motion vector memory unit for storing motion vectors which are candidates for updating the motion vector of said block of pixels, wherein the candidate motion vector memory unit is connected to said motion field memory unit for receiving and storing an initial motion vector assigned to said block of pixels and motion vectors of regions neighboring said block of pixels, and wherein the candidate motion vector memory unit is further connected to said motion refinement unit for receiving and storing the matched motion vector; a matching error computing unit for computing matching errors obtained by assigning to said block of pixels the motion vectors stored in the candidate motion vector memory unit; a matching error memory unit for storing the matching errors computed by said matching error computing unit; a minimum detector unit for determining the value of the smallest matching error among the matching errors stored in the matching error memory unit; a best motion vector selection unit, connected to the motion field memory unit, for determining, according to a priority scheme and a predetermined threshold value, a best motion vector for refining the motion vector of the block of pixels, wherein the best motion vector is selected from among the motion vectors stored in the candidate motion vector memory unit; and a control unit for controlling the other units and their interaction, wherein the control unit is connected to each of the other units in the apparatus.
Claim 13
Dependent Claim 227 words
The apparatus of claim 12 wherein the best motion vector selection unit performs the following functions: selecting the initial motion vector as the best motion vector if the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is less than the predetermined threshold value; selecting the motion vector of one of the neighboring regions as the best motion vector if: (a) the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is not less than the predetermined threshold value; and (b) the absolute value of the difference between the smallest matching error and the matching error obtained by assigning to the smaller region the motion vector of the neighboring region is less than the predetermined threshold value; and selecting the matched motion vector as the best motion vector if: (a) the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is not less than the predetermined threshold value; and (b) the absolute value of the difference between the smallest matching error and each of the matching errors obtained by assigning to the smaller region the motion vector of one of the neighboring region is not less than the predetermined threshold value.
Claim 14
Independent Claim 266 words
A system for performing motion field estimation and coding of a video image, said system comprising: a motion estimation unit for refining a motion vector assigned to a block of pixels in a current frame by assigning to the block of pixels a best motion vector selected from among a plurality of candidate motion vectors, wherein said best motion vector is selected according to a priority scheme and a predetermined threshold value that reflects the amount of improvement, obtained by assigning a particular motion vector as the best motion vector, relative to a smallest matching error, and wherein said plurality of candidate motion vectors includes an initial motion vector assigned to said block of pixels, a matched motion vector obtained by performing a block matching technique for said block of pixels, and motion vectors of regions neighboring said block of pixels; a merge and label unit for merging adjacent regions of the current frame that have similar motion vectors to form merged regions and for assigning to each pixel in the current frame a region label; a first region label memory unit for storing a motion vector associated with each merged region; a second region label memory unit for storing the region label assigned to each pixel in the current frame; a region shape representation unit for forming a set of contour pixels that defines the merged regions; a contour coding unit for encoding the set of contour pixels; and a control unit for controlling the other units and their interaction, wherein the control unit is connected to each of the other units in the system.
Claim 15
Dependent Claim 305 words
The system of claim 14 wherein the motion estimation unit comprises: a previous decoded frame memory unit for storing a monochrome intensity for each pixel in a preceding frame;    a current frame memory unit for storing a monochrome intensity for each pixel in a current frame; a motion field memory unit for storing a motion vector for each pixel in the current frame; a motion refinement unit for performing a block matching technique for a block of pixels in the current frame and for providing a matched motion vector; a candidate motion vector memory unit for storing motion vectors which are candidates for updating the motion vector of said block of pixels wherein the candidate motion vector memory unit is connected to said motion field memory unit for receiving and storing an initial motion vector assigned to said block of pixels and motion vectors of regions neighboring said block of pixels, and wherein the candidate motion vector memory unit is further connected to said motion refinement unit for receiving and storing the matched motion vector; a matching error computing unit for computing matching errors obtained by assigning to said block of pixels the motion vectors stored in the candidate motion vector memory unit; a matching error memory unit for storing the matching errors computed by said matching error computing unit; a minimum detector unit for determining the value of the smallest matching error among the matching errors stored in the matching error memory unit; and a best motion vector selection unit, connected to the motion field memory unit, for determining, according to a priority scheme and a predetermined threshold value, a best motion vector for refining the motion vector of the block of pixels, and wherein the best motion vector is selected from among the motion vectors stored in the candidate motion vector memory unit.
Claim 16
Dependent Claim 227 words
The system of claim 15 wherein the best motion vector selection unit performs the following functions: selecting the initial motion vector as the best motion vector if the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is less than the predetermined threshold value; selecting the motion vector of one of the neighboring regions as the best motion vector if: (a) the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is not less than the predetermined threshold value; and (b) the absolute value of the difference between the smallest matching error and the matching error obtained by assigning to the smaller region the motion vector of the neighboring region is less than the predetermined threshold value; and selecting the matched motion vector as the best motion vector if: (a) the absolute value of the difference between the smallest matching error and the matching error obtained by using the initial motion vector is not less than the predetermined threshold value; and (b) the absolute value of the difference between the smallest matching error and each of the matching errors obtained by assigning to the smaller region the motion vector of one of the neighboring region is not less than the predetermined threshold value.

References Cited (Backward Citations)

US4307420A Cited

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag