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

System and method for the scaling of image streams that use motion vectors

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1995-12-13
•
Granted: 2000-06-13
•
Expires: 2015-12-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method for scaling image streams that use motion vectors is disclosed. The system combines an error term with a predicted term in order to produce a display value. The system operates on image components represented in the spatial and frequency domains. The system processes motion vectors in the spatial domain. The motion vectors are scaled. The integral part of the scaled motion vector addresses a framestore. The fractional portion of the scaled motion vector is input to a nonlinear filter which determines the value of image components for a location that does not correspond with an image location in the framestore. The output of the nonlinear filter comprises the predicted terms. Data in the frequency domain is processed more efficiently by reducing the size of a block of data by appropriate filtering. The resulting data is transformed to the spatial domain.

Inventors

  • 👤 Stephen C. Fenwick
  • 👤 Timothy J. Van Hook
  • 👤 Gregory Humpreys Efland

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 23:32
CPC Classifications
G; G06; G06T; G06T3/00; G06T3/40; G06T3/4023; H; H04; H04N; H04N19/00; H04N19/10; H04N19/102; H04N19/132; H04N19/169; H04N19/17; H04N19/176; H04N19/18; H04N19/42; H04N19/423; H04N19/426; H04N19/428; H04N19/50; H04N19/503; H04N19/51; H04N19/59; H04N19/80; H04N5/00; H04N5/44; H04N5/445; H04N5/45; H04N21/00; H04N21/40; H04N21/41; H04N21/426

Claims Analysis

Total Claims: 17
Claim 1
Independent Claim 231 words
A method for scaling an image contained in an image stream, wherein the image stream comprises a motion vector used to scale the image, and a block of error terms to scale the image, comprising the steps of: (1) separating a block of data corresponding to a frequency domain representation of the block of error terms from the image stream; (2) low pass filtering said frequency domain representation according to a scale factor to produce a reduced-size low pass filtered block; (3) inverse quantizing said reduced-size low pass filtered block to produce a reduced-size inverse quantized block; (4) selectively transforming said reduced-size inverse quantized block to a spatial domain representation according to said scale factor to produce a decimated representation of the block of error terms; (5) separating the motion vector from the image stream; (6) scaling the motion vector according to a scale factor, thereby producing a scaled motion vector; (7) addressing an image framestore with said scaled motion vector to obtain a block of image components corresponding to said scaled motion vector; (8) nonlinear filtering said block of said image components with a nonlinear filter, thereby producing a block of predicted terms; and (9) using one of said block of error terms, said block of predicted terms, or a combination of said block of error terms and said block of predicted terms to form a block of display pixels.
Claim 2
Independent Claim 231 words
A method for scaling an image contained in an image stream, wherein the image stream comprises a motion vector used to scale the image, and a block of error terms to scale the image, comprising the steps of: (1) separating a block of data corresponding to a frequency domain representation of the block of error terms from the image stream; (2) low pass filtering said frequency domain representation according to a scale factor to produce a reduced-size low pass filtered block; (3) inverse quantizing said reduced-size low pass filtered block to produce a reduced-size inverse quantized block; (4) selectively transforming said reduced-size inverse quantized block to a spatial domain representation according to said scale factor to produce a decimated representation of the block of error terms; (5) separating the motion vector from the image stream; (6) scaling the motion vector according to a scale factor, thereby producing a scaled motion vector; (7) addressing an image framestore with said scaled motion vector to obtain a block of image components corresponding to said scaled motion vector; (8) nonlinear filtering said block of said image components with a nonlinear filter, thereby producing a block of predicted terms; and (9) using one of said block of error terms, said block of predicted terms, or a combination of said block of error terms and said block of predicted terms to form a block of display pixels.
Claim 3
Dependent Claim 14 words
The method of claim 1, wherein steps (1)-(4) occur substantially simultaneously with steps (5)-(8).
Claim 4
Dependent Claim 13 words
The method of claim 1, wherein steps (1)-(4) occur asynchronously with steps (5)-(8).
Claim 5
Independent Claim 221 words
A method for scaling an image contained in an image stream according to a scale factor, wherein the image stream comprises a motion vector, comprising the steps of: (1) separating from the image stream a block of data corresponding to a frequency domain representation of a block of error terms; (2) low pass filtering said frequency domain representation according to the scale factor to produce a reduced-size low pass filtered block; (3) inverse quantizing said reduced-size low pass filtered block to produce a reduced size inverse quantized block; (4) selectively transforming said reduced-size inverse quantized block to a spatial domain representation according to the scale factor to produce a decimated representation of said block of error terms; (5) separating the motion vector from the image stream; (6) scaling the motion vector according to the scale factor to produce a scaled motion vector; (7) outputting from a framestore a block of image components identified by an integer component of said scaled motion vector; (8) filtering said block of image components outputted from said framestore using a nonlinear filter, thereby producing a block of predicted terms; and (9) using one of said block of error terms, said block of predicted terms, or a combination of said block of error terms and said block of predicted terms to form a block of display pixels.
Claim 6
Independent Claim 221 words
A method for scaling an image contained in an image stream according to a scale factor, wherein the image stream comprises a motion vector, comprising the steps of: (1) separating from the image stream a block of data corresponding to a frequency domain representation of a block of error terms; (2) low pass filtering said frequency domain representation according to the scale factor to produce a reduced-size low pass filtered block; (3) inverse quantizing said reduced-size low pass filtered block to produce a reduced size inverse quantized block; (4) selectively transforming said reduced-size inverse quantized block to a spatial domain representation according to the scale factor to produce a decimated representation of said block of error terms; (5) separating the motion vector from the image stream; (6) scaling the motion vector according to the scale factor to produce a scaled motion vector; (7) outputting from a framestore a block of image components identified by an integer component of said scaled motion vector; (8) filtering said block of image components outputted from said framestore using a nonlinear filter, thereby producing a block of predicted terms; and (9) using one of said block of error terms, said block of predicted terms, or a combination of said block of error terms and said block of predicted terms to form a block of display pixels.
Claim 7
Dependent Claim 30 words
The method of claim 4, wherein said filtering step further comprises the step of using a fractional component of said scaled motion vector to determine a set of filter coefficients.
Claim 8
Dependent Claim 29 words
The method of claim 5, wherein said fractional component of said scaled motion vector is used as an index into a look-up table comprising a plurality of filter coefficients.
Claim 9
Dependent Claim 14 words
The method of claim 4, wherein steps (1)-(4) occur substantially simultaneously with steps (5)-(8).
Claim 10
Dependent Claim 13 words
The method of claim 4, wherein steps (1)-(4) occur asynchronously with steps (5)-(8).
Claim 11
Independent Claim 208 words
A system for scaling an image contained in an image stream, wherein said image stream comprises a motion vector and a block of error terms, comprising: a framestore having image components stored therein; a scale adjustment module to scale the motion vector according to a scale factor to produce a scaled motion vector, wherein an integer component of said scaled motion vector is provided to said framestore, and said framestore outputs a block of image components identified by said integer component of said scaled motion vector; a first filter to filter said block of image components outputted from said framestore and to output a block of predicted terms, wherein said first filter is a nonlinear filter; a second filter to low pass filter a frequency domain representation of the block of error terms according to said scale factor to produce a reduced-size low pass filtered block of error terms; an IQTZ module to inverse quantize said reduced-size low pass filtered block of error terms to produce a reduced-size inverse quantized block of error terms; an IDCT module to transform said reduced-size inverse quantized block of error terms to a spatial domain representation according to said scale factor to produce a decimated representation of the block of error terms.
Claim 12
Independent Claim 208 words
A system for scaling an image contained in an image stream, wherein said image stream comprises a motion vector and a block of error terms, comprising: a framestore having image components stored therein; a scale adjustment module to scale the motion vector according to a scale factor to produce a scaled motion vector, wherein an integer component of said scaled motion vector is provided to said framestore, and said framestore outputs a block of image components identified by said integer component of said scaled motion vector; a first filter to filter said block of image components outputted from said framestore and to output a block of predicted terms, wherein said first filter is a nonlinear filter; a second filter to low pass filter a frequency domain representation of the block of error terms according to said scale factor to produce a reduced-size low pass filtered block of error terms; an IQTZ module to inverse quantize said reduced-size low pass filtered block of error terms to produce a reduced-size inverse quantized block of error terms; an IDCT module to transform said reduced-size inverse quantized block of error terms to a spatial domain representation according to said scale factor to produce a decimated representation of the block of error terms.
Claim 13
Dependent Claim 39 words
The system of claim 9, wherein a fractional component of said scaled motion vector is provided to said first filter, wherein said first filter uses said fractional component in filtering said block of image components outputted from said framestore.
Claim 14
Dependent Claim 25 words
The system of claim 10, wherein said first filter determines a set of filter coefficients based on said fractional component of said scaled motion vector.
Claim 15
Dependent Claim 39 words
The system of claim 11, wherein said first filter comprises a look-up table comprising a plurality of sets of filter coefficients, wherein said fractional component of said scaled motion vector is used as an index into said look-up table.
Claim 16
Dependent Claim 20 words
The system of claim 11, wherein said first filter comprises a computation unit to determine said set of filter coefficients.
Claim 17
Dependent Claim 54 words
The system of claim 9, further comprising: a summer to add each predicted term in said block of predicted terms with a corresponding error term to produce a block of display image components; a display framestore to store said block of display image components; and means for displaying said block of display image components.

References Cited (Backward Citations)

US5008746A Cited
US5557341A Cited
US5198901A Cited
US5485279A Cited
US5469273A Cited
US5635985A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-06-13 2003-12-13 2004-06-13 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-06-13 2007-12-13 2008-06-13 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-06-13 2011-12-13 2012-06-13 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag