← Back to Patent Explorer
US5436666A Expired / Lapsed US ⏱️ 0.0 years remaining

Limited-domain motion estimation/compensation for video encoding/decoding

Assignee: Heathway Holdings LLC
•
Filing: 1993-05-21
•
Granted: 1995-07-25
•
Expires: 2013-05-21
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Methods and apparatuses for encoding video images using motion estimation and decoding encoded video images using motion compensation, where the motion estimation and/or the motion compensation is limited to subimages of the video images as defined by boundaries. Although motion compensation may not be used to estimate pels using data from the previous image frame that lies across the subimage boundaries, motion compensation may be used to estimate a portion of a block of the image frame being decoded using a region from the previous image frame that abuts a subimage boundary and is smaller than the block. The rest of the block may be estimated either by retaining the corresponding pels from the previous image frame or by replicating the pels from the previous image frame that lie along the subimage boundary.

Inventors

  • 👤 Brian Astle

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 23:00
CPC Classifications
H; H04; H04N; H04N19/00; H04N19/50; H04N19/503; H04N19/51; H04N5/00; H04N5/14; H04N5/144; H04N5/145

Claims Analysis

Total Claims: 64
Claim 1
Independent Claim 139 words
A method used in coding video image data, comprising the steps of: (a) providing a region of a first image, wherein said region abuts a boundary of said first image; (b) providing a non-zero motion vector corresponding to a block of a second image, said block being larger than said region; (c) estimating a first portion of said block by moving said region in accordance with said non-zero motion vector; and (d) displaying said block of said second image, wherein said step (b) comprises the steps of: (1) providing said first and second images; (2) selecting said block of said second image; (3) analyzing said first image to identify said region of said first image as corresponding to said block; and (4) generating said non=zero motion vector corresponding to a relative vector distance between said region and said block.
Claim 2
Independent Claim 139 words
A method used in coding video image data, comprising the steps of: (a) providing a region of a first image, wherein said region abuts a boundary of said first image; (b) providing a non-zero motion vector corresponding to a block of a second image, said block being larger than said region; (c) estimating a first portion of said block by moving said region in accordance with said non-zero motion vector; and (d) displaying said block of said second image, wherein said step (b) comprises the steps of: (1) providing said first and second images; (2) selecting said block of said second image; (3) analyzing said first image to identify said region of said first image as corresponding to said block; and (4) generating said non=zero motion vector corresponding to a relative vector distance between said region and said block.
Claim 3
Dependent Claim 29 words
The method of claim 1, wherein said step (c) further comprises the step of estimating a second portion of said block by retaining corresponding pels from said first image.
Claim 4
Dependent Claim 32 words
The method of claim 1, wherein said step (c) further comprises the step of estimating a second portion of said block by replicating pels of said first image lying along said boundary.
Claim 5
Dependent Claim 31 words
The method of claim 1, wherein said step (c) further comprises the step of estimating a second portion of said block by interpolating in accordance with pels of said first image.
Claim 6
Dependent Claim 25 words
The method of claim 1, wherein said first and second images are images of real-time motion video processed and displayed on a person computer system.
Claim 7
Dependent Claim 16 words
The method of claim 1, wherein said boundary corresponds to a boundary of a memory chip.
Claim 8
Dependent Claim 16 words
The method of claim 1, wherein the location of said boundary varies from image to image.
Claim 9
Dependent Claim 24 words
The method of claim 1, wherein said step (c) comprises the step of estimating said block independent of image data outside of said region.
Claim 10
Independent Claim 342 words
A method used in coding video image data, comprising the steps of: (a) providing a first and a second image to an image encoder, said first and second images each being divided into two or more subimages by one or more boundaries, wherein each subimage of said first image corresponds to a subimage of said second image; (b) performing motion estimation on each said subimage of said second image in accordance with corresponding subimage of said first image to generate one or more motion vectors for said second image; (c) providing said first image to an image decoder; (d) transmitting said one or more motion vectors to said image decoder; (e) estimating each said subimage of said second image by performing motion compensation in accordance with at least one of said motion vectors and said corresponding subimage of said first image; and (f) displaying said second image, wherein: said step (b) comprises the steps of: (1) dividing said second image into a plurality of blocks, each block lying within a subimage of said second image; (2) comparing each said block of said second image with said corresponding subimage of said first image to attempt to identify a corresponding region of said first image that closely matches said each block of said second image; and (3) generating said motion vectors, each of said motion vectors corresponding to a relative vector distance between said block of said second image and said corresponding region of said first image; and said step (e) comprises the step of estimating said each block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors, wherein said step (e) comprises the steps of: (1) estimating a first portion of said block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors; and (2) estimating a second portion of said block by replication one or more pels of said first image lying along at least one of said boundaries.
Claim 11
Independent Claim 342 words
A method used in coding video image data, comprising the steps of: (a) providing a first and a second image to an image encoder, said first and second images each being divided into two or more subimages by one or more boundaries, wherein each subimage of said first image corresponds to a subimage of said second image; (b) performing motion estimation on each said subimage of said second image in accordance with corresponding subimage of said first image to generate one or more motion vectors for said second image; (c) providing said first image to an image decoder; (d) transmitting said one or more motion vectors to said image decoder; (e) estimating each said subimage of said second image by performing motion compensation in accordance with at least one of said motion vectors and said corresponding subimage of said first image; and (f) displaying said second image, wherein: said step (b) comprises the steps of: (1) dividing said second image into a plurality of blocks, each block lying within a subimage of said second image; (2) comparing each said block of said second image with said corresponding subimage of said first image to attempt to identify a corresponding region of said first image that closely matches said each block of said second image; and (3) generating said motion vectors, each of said motion vectors corresponding to a relative vector distance between said block of said second image and said corresponding region of said first image; and said step (e) comprises the step of estimating said each block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors, wherein said step (e) comprises the steps of: (1) estimating a first portion of said block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors; and (2) estimating a second portion of said block by replication one or more pels of said first image lying along at least one of said boundaries.
Claim 12
Dependent Claim 34 words
The method of claim 9, wherein said corresponding region of said first image abuts at least one of said boundaries and said corresponding region is smaller than a corresponding block of said second image.
Claim 13
Dependent Claim 27 words
The method of claim 9, wherein said first and second images are images of real-time motion video that are processed and displayed on a personal computer system.
Claim 14
Dependent Claim 20 words
The method of claim 9, wherein at least one of said boundaries correspond to a boundary of a memory chip.
Claim 15
Dependent Claim 20 words
The method of claim 9, wherein the location of at least one of said boundaries varies from image to image.
Claim 16
Dependent Claim 40 words
The method of claim 9, wherein said step (b) comprises the step of performing motion estimation of said each subimage of said first image in parallel with the performing of motion estimation on each other subimage of said first image.
Claim 17
Dependent Claim 38 words
The method of claim 9, wherein said step (e) comprises the step of estimating each said subimage of said second image by performing motion compensation in parallel with the estimating of each other subimage of said second image.
Claim 18
Dependent Claim 34 words
The method of claim 9, wherein said step (e) comprises the step of estimating each said subimage of said second image independent of image data outside of said corresponding subimage of said first image.
Claim 19
Independent Claim 142 words
An apparatus used in coding video image data, comprising: (a) an image encoder for receiving a region of a first image and for generating a non-zero motion vector corresponding to a block of a second image, wherein said region abuts a boundary of said first image and said block is larger than said region; and (b) an image decoder for estimating a first portion of said block by moving said region in accordance with said motion vector, wherein said image encoder comprises: (1) means for receiving said first and second images; (2) means for selecting said block of said second image; (3) means for analyzing said first image to identify said region of said first image as corresponding to said block; and (4) means for generating said non-zero motion vector corresponding to a relative vector distance between said region and said block.
Claim 20
Independent Claim 142 words
An apparatus used in coding video image data, comprising: (a) an image encoder for receiving a region of a first image and for generating a non-zero motion vector corresponding to a block of a second image, wherein said region abuts a boundary of said first image and said block is larger than said region; and (b) an image decoder for estimating a first portion of said block by moving said region in accordance with said motion vector, wherein said image encoder comprises: (1) means for receiving said first and second images; (2) means for selecting said block of said second image; (3) means for analyzing said first image to identify said region of said first image as corresponding to said block; and (4) means for generating said non-zero motion vector corresponding to a relative vector distance between said region and said block.
Claim 21
Dependent Claim 28 words
The apparatus of claim 17, wherein said image decoder further comprises means for estimating a second portion of said block by retaining corresponding pels from said first image.
Claim 22
Dependent Claim 31 words
The apparatus of claim 17, wherein said image decoder further comprises means for estimating a second portion of said block by replicating pels of said first image lying along said boundary.
Claim 23
Dependent Claim 30 words
The apparatus of claim 17, wherein said image decoder further comprises means for estimating a second portion of said block by interpolating in accordance with pels of said first image.
Claim 24
Dependent Claim 29 words
The apparatus of claim 17, wherein said first and second images are images of real-time motion video processed by said image decoder and displayed on a personal computer system.
Claim 25
Dependent Claim 15 words
The apparatus of claim 17, wherein said boundary corresponds to a boundary of memory chip.
Claim 26
Dependent Claim 16 words
The apparatus of claim 17, wherein the location of said boundary varies from image to image.
Claim 27
Dependent Claim 20 words
The apparatus of claim 17, wherein said image decoder estimates said block independent of image data outside of said region.
Claim 28
Independent Claim 340 words
An apparatus used in coding video image data, comprising: (a) an image encoder: (1) for receiving a first image and a second image, said first and second images each being divided into two or more subimages by one or more boundaries, wherein each subimage of said corresponds to a subimage of said second image; and (2) for performing motion estimation on each said subimage of said second image in accordance with a corresponding subimage of said first image to generate one or more motion vectors for said second image; and (b) an image decoder: (1) for receiving said first image; (2) for receiving said one or more motion vectors; and (3) for estimating each said subimage of said second image by performing motion compensation in accordance with at least one of said motion vectors and said corresponding subimage of said first image, wherein said image encoder comprises: (1) means for dividing said second image into a plurality of blocks, each block lying within said subimage of said second image; (2) means for comparing said each block of said second image with said corresponding subimage of said first image to attempt to identify a corresponding region of said first image that closely matches said each block of said second image; and (3) means for generating said motion vectors, each of said motion vectors corresponding to a relative vector distance between said block of said second image and said corresponding region of said first image; and said image decoder comprises means for estimating said each block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors, wherein said image decoder comprises: (1) means for estimating a first portion of said block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors; and (2) means for estimating a second portion of said block by replicating one or more pels of said first image lying along at least one of said boundaries.
Claim 29
Independent Claim 340 words
An apparatus used in coding video image data, comprising: (a) an image encoder: (1) for receiving a first image and a second image, said first and second images each being divided into two or more subimages by one or more boundaries, wherein each subimage of said corresponds to a subimage of said second image; and (2) for performing motion estimation on each said subimage of said second image in accordance with a corresponding subimage of said first image to generate one or more motion vectors for said second image; and (b) an image decoder: (1) for receiving said first image; (2) for receiving said one or more motion vectors; and (3) for estimating each said subimage of said second image by performing motion compensation in accordance with at least one of said motion vectors and said corresponding subimage of said first image, wherein said image encoder comprises: (1) means for dividing said second image into a plurality of blocks, each block lying within said subimage of said second image; (2) means for comparing said each block of said second image with said corresponding subimage of said first image to attempt to identify a corresponding region of said first image that closely matches said each block of said second image; and (3) means for generating said motion vectors, each of said motion vectors corresponding to a relative vector distance between said block of said second image and said corresponding region of said first image; and said image decoder comprises means for estimating said each block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors, wherein said image decoder comprises: (1) means for estimating a first portion of said block of said second image by moving said corresponding region of said first image in accordance with one of said motion vectors; and (2) means for estimating a second portion of said block by replicating one or more pels of said first image lying along at least one of said boundaries.
Claim 30
Dependent Claim 34 words
The apparatus of claim 25, wherein said corresponding region of said first image abuts at least one of said boundaries and said corresponding region is smaller than a corresponding block of said second image.
Claim 31
Dependent Claim 31 words
The apparatus of claim 25, wherein said first and second images are images of real-time motion video that are processed by said image decoder and displayed on a personal computer system.
Claim 32
Dependent Claim 20 words
The apparatus of claim 25, wherein at least one of said boundaries correspond to a boundary of a memory chip.
Claim 33
Dependent Claim 20 words
The apparatus of claim 25, wherein the location of at least one of said boundaries varies from image to image.
Claim 34
Dependent Claim 40 words
The apparatus of claim 25, wherein said image encoder comprises a co-processor for performing motion estimation on said each subimage of said first image in parallel with the performing of motion estimation on each other subimage of said first image.
Claim 35
Dependent Claim 38 words
The apparatus of claim 25, wherein said image decoder comprises a co-processor for estimating each said subimage of said second image by performing motion compensation in parallel with the estimating of each other subimage of said second image.
Claim 36
Dependent Claim 30 words
The apparatus of claim 25, wherein said image decoder estimates each said subimage of said second image independent of image data outside of said corresponding subimage of said first image.
Claim 37
Independent Claim 86 words
A method used in coding video image data, comprising the steps of: (a) providing a first image and a second image; (b) selecting a block of said second image; (c) generating a non-zero motion vector corresponding to a relative vector distance between a region of said first image and said block of said second image, wherein said region abuts a boundary of said first image and said block is larger than said region; and (d) encoding said second image in accordance with said non-zero motion vector.
Claim 38
Independent Claim 86 words
A method used in coding video image data, comprising the steps of: (a) providing a first image and a second image; (b) selecting a block of said second image; (c) generating a non-zero motion vector corresponding to a relative vector distance between a region of said first image and said block of said second image, wherein said region abuts a boundary of said first image and said block is larger than said region; and (d) encoding said second image in accordance with said non-zero motion vector.
Claim 39
Dependent Claim 27 words
The method of claim 33, wherein said first and second images are images of real-time motion video that are processed and displayed on a personal computer system.
Claim 40
Dependent Claim 16 words
The method of claim 33, wherein said boundary corresponds to a boundary of a memory chip.
Claim 41
Dependent Claim 16 words
The method of claim 33, wherein the location of said boundary varies from image to image.
Claim 42
Dependent Claim 61 words
The method of claim 33, further comprising the steps of: (e) selecting a second block of said second image; and (f) generating a second non-zero motion vector corresponding to a relative vector distance between a second region of said first image and said second block of said second image, wherein said step (f) is performed in parallel with said step (c)
Claim 43
Dependent Claim 38 words
The method of claim 33, further comprising the steps of: (e) estimating a first portion of said block by moving said region in accordance with said non-zero motion vector; and (f) displaying said block of said second image.
Claim 44
Dependent Claim 31 words
The method of claim 38, wherein said step (e) further comprises the steps of estimating a second portion of said block by retaining one or more pels from said first image.
Claim 45
Dependent Claim 35 words
The method of claim 38, wherein said step (e) further comprises the steps of estimating a second portion of said block by replicating one or more pels of said first image lying along said boundary.
Claim 46
Dependent Claim 31 words
The method of claim 38, wherein said step (e) further comprises the steps of estimating a second portion of said block by interpolating in accordance with pels of said first image.
Claim 47
Dependent Claim 31 words
The method of claim 38, said step (e) comprises the step of estimating said first portion of said block independent of image data outside of said region of said first image.
Claim 48
Dependent Claim 83 words
The method of claim 38, further comprising the steps of: (g) selecting a second block of said second image; (h) generating a second non-zero motion vector corresponding to a relative vector distance between a second region of said first image and said second block of said second image; and (i) estimating a first portion of said second block by moving said second region in accordance with said second non-zero motion vector, wherein said step (i) is performed in parallel with said step (e).
Claim 49
Independent Claim 96 words
An apparatus used in coding video image data, comprising: (a) an image encoder: (1) for providing a first image and a second image; (2) for selecting a first block of said second image; (3) for generating a first non-zero motion vector corresponding to a relative vector distance between a region of said first image and said first block of said second image, wherein said region abuts a boundary of said first image and said first block is larger than said region; and (4) for encoding said second image in accordance with said first non-zero motion vector.
Claim 50
Independent Claim 96 words
An apparatus used in coding video image data, comprising: (a) an image encoder: (1) for providing a first image and a second image; (2) for selecting a first block of said second image; (3) for generating a first non-zero motion vector corresponding to a relative vector distance between a region of said first image and said first block of said second image, wherein said region abuts a boundary of said first image and said first block is larger than said region; and (4) for encoding said second image in accordance with said first non-zero motion vector.
Claim 51
Dependent Claim 27 words
The apparatus of claim 44, wherein said first and second images are images of real-time motion video that are processed and displayed on a person computer system.
Claim 52
Dependent Claim 16 words
The apparatus of claim 44, wherein said boundary corresponds to a boundary of a memory chip.
Claim 53
Dependent Claim 16 words
The apparatus of claim 44, wherein the location of said boundary varies from image to image.
Claim 54
Dependent Claim 70 words
The apparatus of claim 44, wherein said image encoder: (5) selects a second block of said second image; and (6) generates a second non-zero motion vector corresponding to a relative vector distance between a second region of said first image and said second block of said second image, wherein said generation of said first non-zero motion vector is performed in parallel with said generation of said second non-zero motion vector.
Claim 55
Dependent Claim 45 words
The apparatus of claim 44, further comprising: (b) an image decoder: (1) for estimating a first portion of said first block by moving said region in accordance with said first non-zero motion vector; and p2 (2) for displaying said first block of said second image.
Claim 56
Dependent Claim 27 words
The apparatus of claim 49, wherein said image decoder estimates a second portion of said first block by retaining one or more pels from said first image.
Claim 57
Dependent Claim 31 words
The apparatus of claim 49, wherein said image decoder estimates a second portion of said first block by replicating one or more pels of said first image lying along said boundary.
Claim 58
Dependent Claim 27 words
The apparatus of claim 49, wherein said image decoder estimates a second portion of said first block by interpolating in accordance with pels of said first image.
Claim 59
Dependent Claim 28 words
The apparatus of claim 49, said image decoder estimates said first portion of said first block independent of image data outside of said region of said first image.
Claim 60
Dependent Claim 96 words
The apparatus of claim 49, wherein said image decoder: (3) selects a second block of said second image; (4) generates a second non-zero motion vector corresponding to a relative vector distance between a second region of said first image and said second block of said second image; and (5) estimates a first portion of said second block by moving said second region in accordance with said second non-zero motion vector, wherein said estimation of said first portion of said second block is performed in parallel with said estimation of said first portion of said first block.
Claim 61
Independent Claim 106 words
A method used in coding video image data, comprising the steps of: (a) providing a region of a first image, wherein said region abuts a boundary of said first image; (b) providing a non-zero motion vector corresponding to a block of a second image, said block being larger than said region; (c) estimating a first portion of said block by moving said region in accordance with said non-zero motion vector; and (d) displaying said block of said second image, wherein said step (c) further comprises the step of estimating a second portion of said block by replicating pels of said first image lying along said boundary.
Claim 62
Independent Claim 106 words
A method used in coding video image data, comprising the steps of: (a) providing a region of a first image, wherein said region abuts a boundary of said first image; (b) providing a non-zero motion vector corresponding to a block of a second image, said block being larger than said region; (c) estimating a first portion of said block by moving said region in accordance with said non-zero motion vector; and (d) displaying said block of said second image, wherein said step (c) further comprises the step of estimating a second portion of said block by replicating pels of said first image lying along said boundary.
Claim 63
Independent Claim 101 words
An apparatus used in coding video image data, comprising: (a) an image encoder for receiving a region of a first image and for generating a non-zero motion vector corresponding to a block a second image, wherein said region abuts a boundary of said first image and said block is larger than said region; and an image decoder for estimating a first portion of said block by moving said region in accordance with said motion vector, wherein said image decoder further comprises means for estimating a second portion of said block by replicating pels of said first image lying along said boundary.
Claim 64
Independent Claim 101 words
An apparatus used in coding video image data, comprising: (a) an image encoder for receiving a region of a first image and for generating a non-zero motion vector corresponding to a block a second image, wherein said region abuts a boundary of said first image and said block is larger than said region; and an image decoder for estimating a first portion of said block by moving said region in accordance with said motion vector, wherein said image decoder further comprises means for estimating a second portion of said block by replicating pels of said first image lying along said boundary.

References Cited (Backward Citations)

US4985768A Cited
US5130797A Cited
US4992870A Cited
US5005077A Cited
US5155594A Cited
US5210605A Cited
US5260782A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-07-24 1999-01-23 1999-07-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-07-24 2003-01-23 2003-07-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-07-24 2007-01-23 2007-07-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag