Systems and methods for enhanced error concealment in a video decoder
Abstract
The invention is related to methods and apparatus that conceal errors in images of a corrupted video bitstream. One embodiment conceals errors in a missing or corrupted intra-coded macroblock by linearly interpolating data from other macroblocks that correspond to portions of the image above and below the missing or corrupted macroblock. One embodiment can utilize substitute motion vectors for a missing or corrupted predictive-coded macroblock. Another embodiment doubles the received motion vectors and references the doubled motion vectors to a previous-previous frame. Another embodiment adaptively selects which concealment or reconstruction technique is applied according to projected error estimates. Another embodiment conceals errors by replacing corrupted or missing data by combining concealment data in a weighted sum to reduce an estimated error.
Claims
exact text as granted — not AI-modified1 - 9 . (canceled)
10 . A method of concealing errors in a video decoder comprising: detecting an error in a first portion of a video bitstream that is intra-coded; determining that a second portion of an image above the first portion and a third portion of the image below the first portion are not corrupted; and interpolating pixels in the first portion between a first horizontal row of pixels in the second portion and a second horizontal row of pixels in the third portion to conceal errors when the second portion and the third portion are not corrupted.
11 . The method as defined in claim 10 , wherein the interpolating comprises linear interpolating.
12 . The method as defined in claim 10 , further comprising: determining that the first portion corresponds to an upper boundary of the image; and copying the second horizontal row of pixels from the third portion when the third portion is not corrupted.
13 . The method as defined in claim 10 , further comprising: determining that the second portion is corrupted; determining that the third portion is not corrupted; and copying the second horizontal row of pixels from the third portion when the second portion is corrupted and the third portion is not corrupted.
14 . The method as defined in claim 10 , further comprising: determining that the second portion is corrupted; determining that the third portion is corrupted; and setting pixels in the first portion to gray when the second portion and the third portion are corrupted.
15 . The method as defined in claim 10 , wherein the detected error relates to an error in a frame.
16 . The method as defined in claim 10 , wherein the detected error relates to an error in a video object plane (VOP).
17 . The method as defined in claim 10 , wherein the detected error relates to an error in a macroblock.
18 . A method of concealing errors in a video decoder comprising: detecting an error in a first portion of a video bitstream that is predictive-coded; providing a substitute motion vector when the error relates to a standard motion vector; using a first reference portion of a previous frame with the substitute motion vector to reconstruct when the first reference portion is available; and using a second reference portion of a second frame that is prior to the previous frame when the first reference portion of the previous frame is not available.
19 . The method as defined in claim 18 , further comprising: using the standard motion vector from the video bitstream with the second reference portion of the second frame when the motion vector is available and the first reference portion is not available; and compensating a magnitude of the standard motion vector to account for a temporal difference between the previous frame and the second frame.
20 . The method as defined in claim 19 , wherein the compensating the magnitude comprises multiplying by two when the second frame is a previous-previous frame.
21 . The method as defined in claim 18 , further comprising: using the substitute motion vector with the second reference portion of the second frame when the standard motion vector is not available and the first reference portion is not available; and compensating a magnitude of the substitute motion vector to account for a temporal difference between the previous frame and the second frame.
22 . The method as defined in claim 18 , wherein the substitute motion vector is a copy of an adjacent motion vector.
23 . The method as defined in claim 18 , wherein the substitute motion vector is interpolated from adjacent motion vectors.
24 . The method as defined in claim 18 , further comprising: determining that another motion vector from the video bitstream is available; and using the other motion vector in lieu of the standard motion vector and the substitute motion vector to conceal the error claims 25 - 50 . (canceled)Join the waitlist — get patent alerts
Track US2005254584A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.