Temporal-spatial error concealment apparatus and method for video signal processors
First Claim
1. Apparatus for generating substitute blocks of pixel data for missing or corrupted blocks of pixel data, comprising:
- a source of pixel data representing respective images and a source of error data indicating blocks of said pixel data that may be missing or corrupted (hereinafter designated bad pixel data);
a controller, responsive to said error data, for accessing from said source, pixel data located spatially adjacent to a block of bad pixel data, and a temporally predicted block of data corresponding to said block of bad pixel data;
an interpolator operative upon said pixel data located spatially adjacent to a block of bad pixel data, for generating a spatially interpolated block of pixel data;
transform circuitry for providing a matrix of transform coefficients representing said spatially interpolated block of pixel data, and for generating a further matrix of transform coefficients representing said temporally predicted block of data;
a selector, responsive to a predetermined criteria, for forming a still further matrix of transform coefficients, by selecting respective coefficients in said still further matrix exclusively from said matrix of transform coefficients representing said spatially interpolated block, or from said further matrix of transform coefficients in accordance with said criteria; and
inverse transform circuitry for inverse transforming said still further matrix to generate said substitute block of pixel data.
2 Assignments
0 Petitions
Accused Products
Abstract
A video decompression system includes block error concealment means for generating substitute data for lost blocks of pixel data. An interpolator generates both spatially and temporally interpolated or predicted blocks of data for concealing a lost block. Pixel data in the respective blocks of spatially and interpolated data are transformed to coefficients representing frequency spectra. A substitute block of coefficients is assembled from coefficients from both the transformed blocks, according to a predetermined criteria. The substitute block is transformed back to the spatial domain for substitution of lost pixel values.
-
Citations
19 Claims
-
1. Apparatus for generating substitute blocks of pixel data for missing or corrupted blocks of pixel data, comprising:
-
a source of pixel data representing respective images and a source of error data indicating blocks of said pixel data that may be missing or corrupted (hereinafter designated bad pixel data); a controller, responsive to said error data, for accessing from said source, pixel data located spatially adjacent to a block of bad pixel data, and a temporally predicted block of data corresponding to said block of bad pixel data; an interpolator operative upon said pixel data located spatially adjacent to a block of bad pixel data, for generating a spatially interpolated block of pixel data; transform circuitry for providing a matrix of transform coefficients representing said spatially interpolated block of pixel data, and for generating a further matrix of transform coefficients representing said temporally predicted block of data; a selector, responsive to a predetermined criteria, for forming a still further matrix of transform coefficients, by selecting respective coefficients in said still further matrix exclusively from said matrix of transform coefficients representing said spatially interpolated block, or from said further matrix of transform coefficients in accordance with said criteria; and inverse transform circuitry for inverse transforming said still further matrix to generate said substitute block of pixel data. - View Dependent Claims (2, 3)
-
-
4. Apparatus for generating substitute blocks of pixel data for missing or corrupted blocks of pixel data, comprising:
-
a source of pixel data representing respective images and a source of error data indicating blocks of said pixel data that may be missing or corrupted (hereinafter designated bad pixel data); a controller, responsive to said error data, for accessing from said source, pixel data located spatially adjacent to a block of bad pixel data, and temporally predicted block of data corresponding to said block of bad pixel data; an interpolator operative upon said pixel data located spatially adjacent to a block of bad pixel data, for generating a spatially interpolated block of pixel data; transform circuitry for providing a matrix of transform coefficients representing said spatially interpolated block of pixel data, and for generating a further matrix of transform coefficients representing said temporally predicted block of data; a selector for forming a still further matrix of transform coefficients, including circuitry for determining respective differences between corresponding transform coefficients in said matrix of transform coefficients representing said spatially interpolated block of pixel data, and in said further matrix of transform coefficients; a comparator for comparing respective differences to a predetermined variable "e"; wherein said selector selects a corresponding coefficient from said matrix of transform coefficients representing said spatially interpolated block of pixel data, when the corresponding difference is less than said variable "e", and selects a corresponding coefficient from said further matrix of transform coefficients when the corresponding difference is greater than the variable "e"; and inverse transform circuitry for inverse transforming said still further matrix to generate said substitute block of pixel data. - View Dependent Claims (5, 6, 7)
-
-
8. Apparatus for generating substitute blocks of pixel data for missing or corrupted blocks of pixel data, comprising:
-
a source of pixel data representing respective images and a source of error data indicating blocks of said pixel data that may be missing or corrupted (hereinafter designated bad pixel data); a controller, responsive to said error data, for accessing from said source, pixel data located spatially adjacent to a block of bad pixel data, and a temporally predicated block of data corresponding to said block of bad pixel data; an interpolator operative upon said pixel data located spatially adjacent to a block of bad pixel data, for generating a spatially interpolated block of pixel data; transform circuitry for providing a matrix of transform coefficients representing said spatially interpolated block of pixel data, and for generating a further matrix of transform coefficients representing said temporally predicted block of data; a selector for forming a still further matrix of transform coefficients, by selecting respective coefficients in said still further matrix exclusively from said matrix of transform coefficients representing said spatially interpolated block, or from said further matrix of transform coefficients; apparatus responsive to data representing image information of image areas adjacent said block of bad pixel data, for determining a measure, r, of correlation of image features in said image areas adjacent said block of bad pixel data; a source of threshold value TH1; means for producing a block of substitute pixel data; a comparator for comparing said correlation measure r against the threshold value TH1 and conditioning said means for producing a block of substitute pixel data to provide said temporally predicted block of data, if the correlation measure, r, is greater than TH1, and to provide a block of data from said selector if the correlation measure, r is less than TH1; inverse transform circuitry for inverse transforming said still further matrix to generate said substitute block of pixel data. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. Apparatus for generating a substitute block of video data for a block of missing of corrupt video data in a video decompression system, comprising;
-
a source of blocks of said video data, and a source of error tokens respective ones of which indicate blocks of missing or corrupt block of pixel data; an interpolator, responsive to said error tokens, for generating a spatially interpolated block of data from video data spatially adjacent said block of missing or corrupt pixel data, and for generating a temporally predicted block of pixel data corresponding to said block of missing or corrupt pixel data; a processor responsive to video data spatially adjacent said block of missing or corrupt data for determining; a) dominant image gradients in video data spatially adjacent said block of missing or corrupt data; b) transform coefficients representing frequency spectra of said spatially interpolated block of data; c) transform coefficients representing frequency spectra of said temporally predicted block of pixel data; and said processor also forming a selected block of transform coefficients corresponding to said substitute block by selecting respective coefficients from said transform coefficients representing frequency spectra of said spatially interpolated block of data, and said transform coefficients representing frequency spectra of said temporally predicted block of pixel data according to a predetermined criteria; and
inverse transforming the selected block of transform coefficients.
-
-
15. Apparatus for generating a substitute block of video data for a block of missing of corrupt video data in a video decompression system, comprising:
-
a source of blocks of said video data, and a source of error tokens respective ones of which indicate blocks of missing or corrupt block of pixel data; an interpolator, responsive to said error tokens, for generating a spatially interpolated block of data from video data spatially adjacent said block of missing or corrupt pixel data, and for generating a temporally predicted block of pixel data corresponding to said block of missing or corrupt pixel data; a processor responsive to video data spatially adjacent said block of missing or corrupt data for determining; a) dominant image gradients in video data spatially adjacent said block of missing or corrupt data; b) transform coefficients representing frequency spectra of said spatially interpolated block of data; c) transform coefficients representing frequency spectra of said temporally predicted block of pixel data; and said processor also forming a selected block of transform coefficients corresponding to said substitute block by selecting respective coefficients from said transform coefficients representing frequency spectra of said spatially interpolated block of data, and said transform coefficients representing frequency spectra of said temporally predicted block of pixel data according to a predetermined criteria; and
inverse transforming the selected block of transform coefficients;a processor for generating a measure of correlation between respective blocks of pixel data located adjacent said block of missing or corrupt pixel data; means for providing as a said substitute block of pixel data, said temporally predicted block of pixel data if the measure of correlation exceeds a first predetermined value, said spatially interpolated block of data if the measure of correlation is less than a second predetermined value less than said first predetermined value, and inverse transformed said selected block, if the measure of correlation lies between said first and second predetermined values.
-
-
16. A method for generating a block of pixel data for a missing or corrupt block of pixel data (hereafter bad block), comprising;
-
providing blocks of pixel data and an error signal indicating which of said blocks are bad blocks; determining a dominant image gradient in blocks of pixels adjacent a bad block; spatially interpolating, in accordance with said dominant image gradient, a substitute block of data for said bad block in response to said error signal; temporally predicting a substitute block of data for said bad block in response to said error signal; converting the spatially interpolated substitute block to a block of transform coefficients, TC1, representing frequency spectra; converting the temporally predicted substitute block to a block of transform coefficients, TC2, representing frequency spectra; forming a further block of coefficients by selecting respective coefficients from said blocks of transform coefficients TC1 and TC2 according to a predetermined criteria; inverse transforming said further block of coefficients to produce a substitute block of pixel data. - View Dependent Claims (17, 18, 19)
-
Specification