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

Block motion video coding and decoding

Assignee: Aido LLC
•
Filing: 1999-09-02
•
Granted: 2001-02-13
•
Expires: 2019-09-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract During transform-based video compression processing, motion vectors, which are identified during motion estimation and then used during motion-compensated inter-frame differencing, are constrained to coincide with block boundaries in the reference data. Block-based motion vectors have components that correspond to integer multiples of block dimensions. For example, for (8×8) blocks, allowable motion vector components are ( . . . , −16, −8, 0, +8, +16, . . . ). Constraining motion vectors in this way enables the resulting encoded video bitstream to be further processed in the transform domain without having to apply inverse and forward transforms. In particular, an existing input bitstream is partially decoded to recover the motion vectors and prediction error (i.e., dequantized transform coefficients). Because the motion vectors coincide with block boundaries in the corresponding reference data, motion-compensated inter-frame addition can then performed in the transform domain to generate transform data for subsequent processing (which may ultimately involve re-encoding the transform data into another encoded video bitstream). Because motion compensation can be performed in the transform domain, the bitstream data can be further processed in the transform domain and without having to apply expensive and lossy inverse and forward transforms.

Inventors

  • 👤 Robert Norman Hurst

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 16:25
CPC Classifications
H; H04; H04N; H04N19/00; H04N19/90; H04N19/10; H04N19/102; H04N19/103; H04N19/105; H04N19/107; H04N19/134; H04N19/136; H04N19/137; H04N19/169; H04N19/186; H04N19/50; H04N19/503; H04N19/51; H04N19/60; H04N19/61

Claims Analysis

Total Claims: 27
Claim 1
Independent Claim 124 words
A method for compressing video data, comprising the steps of: (a) performing motion estimation on a frame of the video data based on corresponding reference data to identify a set of motion vectors for the frame, wherein the motion estimation is constrained to identify only block-based motion vectors that coincide with block boundaries in the reference data and at least one of the block-based motion vectors is a non-zero motion vector; (b) applying motion-compensated inter-frame differencing to the video data based on the reference data and the block-based motion vectors to generate inter-frame difference data; and (c) applying one or more additional video compression steps to the inter-frame difference data to generate encoded data for an encoded video bitstream corresponding to the video data.
Claim 2
Independent Claim 124 words
A method for compressing video data, comprising the steps of: (a) performing motion estimation on a frame of the video data based on corresponding reference data to identify a set of motion vectors for the frame, wherein the motion estimation is constrained to identify only block-based motion vectors that coincide with block boundaries in the reference data and at least one of the block-based motion vectors is a non-zero motion vector; (b) applying motion-compensated inter-frame differencing to the video data based on the reference data and the block-based motion vectors to generate inter-frame difference data; and (c) applying one or more additional video compression steps to the inter-frame difference data to generate encoded data for an encoded video bitstream corresponding to the video data.
Claim 3
Dependent Claim 19 words
The method of claim 1 , wherein one or more of the block-based motion vectors are zero motion vectors.
Claim 4
Dependent Claim 55 words
The method of claim 1 , wherein steps (a) and (b) are performed in a pixel domain and step (c) comprises the steps of: (1) applying a transform to the inter-frame difference data to generate transform coefficient data in a transform domain; and (2) quantizing the transform coefficient data to generate quantized transform coefficient data.
Claim 5
Dependent Claim 26 words
The method of claim 3 , wherein the encoded video bitstream conforms to an MPEG codec algorithm and the transform is a discrete cosine transform (DCT).
Claim 6
Dependent Claim 46 words
The method of claim 3 , wherein step (c) further comprises the steps of: (3) run-length encoding the quantized transform coefficient data to generate run-length encoded (RLE) data; and (4) variable-length encoding the RLE data to generate variable-length encoded (VLE) data for the encoded video bitstream.
Claim 7
Dependent Claim 49 words
The invention of claim 1 , wherein step (a) further comprises the step of applying a transform to pixel data to generate transform coefficient data in a transform domain, wherein the motion estimation is applied to the transform coefficient data based on the reference data in the transform domain.
Claim 8
Dependent Claim 24 words
The method of claim 6 , wherein the encoded video bitstream conforms to an MPEG codec algorithm and the transform is a DCT transform.
Claim 9
Dependent Claim 20 words
The method of claim 1 , wherein the reference data is based on forward prediction, backward prediction, or bidirectional prediction.
Claim 10
Dependent Claim 137 words
A machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements the steps of: (a) performing motion estimation on a frame of video data based on corresponding reference data to identify a set of motion vectors for the frame, wherein the motion estimation is constrained to identify only block-based motion vectors that coincide with block boundaries in the reference data and at least one of the block-based motion vectors is a non-zero motion vector; (b) applying motion-compensated inter-frame differencing to the video data based on the reference data and the block-based motion vectors to generate inter-frame difference data; and (c) applying one or more additional video compression steps to the inter-frame difference data to generate encoded data for an encoded video bitstream corresponding to the video data.
Claim 11
Dependent Claim 137 words
A machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements the steps of: (a) performing motion estimation on a frame of video data based on corresponding reference data to identify a set of motion vectors for the frame, wherein the motion estimation is constrained to identify only block-based motion vectors that coincide with block boundaries in the reference data and at least one of the block-based motion vectors is a non-zero motion vector; (b) applying motion-compensated inter-frame differencing to the video data based on the reference data and the block-based motion vectors to generate inter-frame difference data; and (c) applying one or more additional video compression steps to the inter-frame difference data to generate encoded data for an encoded video bitstream corresponding to the video data.
Claim 12
Independent Claim 96 words
A method for processing an existing input encoded video bitstream, comprising the steps of: (a) applying one or more decoding steps to the input bitstream to recover transform coefficient data in a transform domain and corresponding block-based motion vectors, wherein the block-based motion vectors are constrained to coincide with block boundaries in corresponding reference data; (b) performing motion-compensated inter-frame addition in the transform domain based on the block-based motion vectors and the reference data to generate prediction-error-corrected (PEC) transform coefficient data; and (c) performing subsequent processing on the PEC transform coefficient data in the transform domain.
Claim 13
Independent Claim 96 words
A method for processing an existing input encoded video bitstream, comprising the steps of: (a) applying one or more decoding steps to the input bitstream to recover transform coefficient data in a transform domain and corresponding block-based motion vectors, wherein the block-based motion vectors are constrained to coincide with block boundaries in corresponding reference data; (b) performing motion-compensated inter-frame addition in the transform domain based on the block-based motion vectors and the reference data to generate prediction-error-corrected (PEC) transform coefficient data; and (c) performing subsequent processing on the PEC transform coefficient data in the transform domain.
Claim 14
Dependent Claim 20 words
The method of claim 10 , wherein at least one of the block-based motion vectors is a non-zero motion vector.
Claim 15
Dependent Claim 19 words
The method of claim 11 , wherein one or more of the block-based motion vectors are zero motion vectors.
Claim 16
Dependent Claim 17 words
The method of claim 10 , wherein all of the block-based motion vectors are zero motion vectors.
Claim 17
Dependent Claim 27 words
The method of claim 10 , wherein the encoded video bitstream conforms to an MPEG codec algorithm and the transform domain corresponds to a DCT transform domain.
Claim 18
Dependent Claim 28 words
The method of claim 10 , wherein step (c) comprises the step of applying one or more video compression steps to generate a processed output encoded video bitstream.
Claim 19
Dependent Claim 36 words
The method of claim 15 , wherein the one or more video compression steps comprise the step of applying motion-compensated inter-frame differencing to processed transform coefficients in the transform domain to generate transform coefficient difference data.
Claim 20
Dependent Claim 31 words
The method of claim 16 , wherein the one or more video compression steps further comprise the step of performing motion estimation on the processed transform coefficients in the transform domain.
Claim 21
Dependent Claim 32 words
The method of claim 16 , wherein the one or more video compression steps further comprises the step of applying quantization, run-length encoding, and variable-length encoding to the transform coefficient difference data.
Claim 22
Dependent Claim 28 words
The method of claim 10 , wherein step (a) comprises the steps of applying variable-length decoding, run-length decoding, and dequantization to generate the block of transform coefficient data.
Claim 23
Dependent Claim 20 words
The method of claim 10 , wherein the reference data is based on forward prediction, backward prediction, or bidirectional prediction.
Claim 24
Dependent Claim 109 words
A machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements the steps of: (a) applying one or more decoding steps to an existing input encoded video bitstream to recover transform coefficient data in a transform domain and corresponding block-based motion vectors, wherein the block-based motion vectors are constrained to coincide with block boundaries in corresponding reference data; (b) performing motion-compensated inter-frame addition in the transform domain based on the block-based motion vectors and the reference data to generate prediction-error-corrected (PEC) transform coefficient data; and (c) performing subsequent processing on the PEC transform coefficient data in the transform domain.
Claim 25
Dependent Claim 109 words
A machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements the steps of: (a) applying one or more decoding steps to an existing input encoded video bitstream to recover transform coefficient data in a transform domain and corresponding block-based motion vectors, wherein the block-based motion vectors are constrained to coincide with block boundaries in corresponding reference data; (b) performing motion-compensated inter-frame addition in the transform domain based on the block-based motion vectors and the reference data to generate prediction-error-corrected (PEC) transform coefficient data; and (c) performing subsequent processing on the PEC transform coefficient data in the transform domain.
Claim 26
Independent Claim 132 words
A method for compressing video data, comprising the steps of: (a) performing motion estimation on a frame of the video data based on corresponding reference data to identify a set of motion vectors for the frame, wherein the motion estimation is constrained to identify only block-based motion vectors that coincide with block boundaries in the reference data and all of the block-based motion vectors are zero motion vectors; (b) applying motion-compensated inter-frame differencing to the video data based on the reference data and the block-based motion vectors to generate inter-frame difference data; and (c) applying one or more additional video compression steps to the inter-frame difference data to generate encoded data for an encoded video bitstream corresponding to the video data, wherein the encoded video bitstream conforms to an MPEG codec algorithm.
Claim 27
Independent Claim 132 words
A method for compressing video data, comprising the steps of: (a) performing motion estimation on a frame of the video data based on corresponding reference data to identify a set of motion vectors for the frame, wherein the motion estimation is constrained to identify only block-based motion vectors that coincide with block boundaries in the reference data and all of the block-based motion vectors are zero motion vectors; (b) applying motion-compensated inter-frame differencing to the video data based on the reference data and the block-based motion vectors to generate inter-frame difference data; and (c) applying one or more additional video compression steps to the inter-frame difference data to generate encoded data for an encoded video bitstream corresponding to the video data, wherein the encoded video bitstream conforms to an MPEG codec algorithm.

References Cited (Backward Citations)

US4245248A Cited
EP0713339A2 Cited
US5838827A Cited
EP0794674A2 Cited
US5708732A Cited
US6025880A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-02-13 2004-08-14 2005-02-13 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-02-13 2008-08-14 2009-02-13 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-02-13 2012-08-14 2013-02-13 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag