IP Library Granted Patent US 7,064,790
Granted Patent B1
US 7,064,790 · App. 10/165,540 · Granted Jun 20, 2006

Adaptive video data frame resampling

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,064,790
App. No.
10/165,540
Granted
Jun 20, 2006
Kind
B1
Abstract

The arrangements and procedures of this invention adaptively process video data. Specifically, at least first and second fields of an interlaced frame are deinterlaced to form intermediate progressive first and second frames. The first intermediate progressive frame includes scanlines of a first temporal instant. The second intermediate progressive frame includes scanlines of a second temporal instant. The first and second temporal instants are different from one another. The first and second intermediate progressive frames are independently resampled to form respective first and second resampled frames. Scanlines from the first and second resampled frames are interleaved to generate a resampled interlaced frame.

Claims (81)

1. A computer-based method to adaptively process video data, the method comprising:

deinterlacing at least a first and a second field of an interlaced frame to form first and second frames, the first frame comprising scanlines of a first temporal instant, the second frame comprising scanlines of a second temporal instant that is different from the first temporal instant;

independently resampling the first and second frames to form respective first and second resampled frames;

interleaving scanlines from the first and second resampled frames to generate a resampled interlaced frame comprising at least first and second resampled fields;

wherein the interlaced frame further comprises a third field from a third temporal instant that is different from at least the first and/or second temporal instants, and wherein deinterlacing further comprises:

if the interlaced frame includes motion information, deinterlacing the interlaced frame using the first, second, and third fields to generate the first and second frame; and

if the interlaced frame does not include motion information, deinterlacing the interlaced frame using the first and second fields to generate the first and second frame.

2. A computer-based method to adaptively process video data, the method comprising:

deinterlacing at least a first and a second field of an interlaced frame to form first and second frames, the first frame comprising scanlines of a first temporal instant, the second frame comprising scanlines of a second temporal instant that is different from the first temporal instant;

independently resampling the first and second frames to form respective first and second resampled frames;

interleaving scanlines from the first and second resampled frames to generate a resampled interlaced frame comprising at least first and second resampled fields;

if a top and a bottom field of the resampled interlaced frame are from a same temporal instance, filtering the resampled interlaced frame with a sharp filter, and

if a top and a bottom field of the resampled interlaced frame represent different respective temporal instances, filtering the resampled interlaced frame with a smooth filter.

3. A computer-based method to adaptively process video data, the method comprising:

determining whether a frame of received video data is interlaced or progressive;

if the frame is an interlaced frame, generating a resampled interlaced frame as follows:

deinterlacing at least a first and a second field of the interlaced frame to form first and second frames, the first frame comprising scanlines of a first temporal instant, the second frame comprising scanlines of a second temporal instant that is different from the first temporal instant;

independently resampling the first and second frames to form respective first and second resampled frames;

interleaving scanlines from the first and second resampled frames to generate the resampled interlaced frame comprising at least first and second resampled fields; and

if the frame is a progressive frame, resampling the frame to generate a resampled progressive frame.

4. A method as recited in claim 3 , wherein before deinterlacing, resampling, and interleaving, the method further comprises:

determining a substantially optimal frame output format based on characteristics of a target display device;

if the frame is interlaced and the substantially optimal frame output format is interlaced, filtering the resampled frame with a smooth filter;

if the frame is interlaced and the substantially optimal frame output format is progressive:

(a) converting the resampled interlaced frame to a progressive frame; and

(b) filtering the progressive frame with a sharp filter;

if the frame is progressive and the substantially optimal frame output format is interlaced:

(c) converting the resampled progressive frame to an interlaced frame; and

(d) filtering the interlaced frame with a smooth filter;

if the frame is progressive and the substantially optimal frame output format is progressive, filtering the resampled progressive frame with a sharp filter.

5. A computer-based method to adaptively process video data, the method comprising:

deinterlacing at least a first and a second field of an interlaced frame to form first and second frames, the first frame comprising scanlines of a first temporal instant, the second frame comprising scanlines of a second temporal instant that is different from the first temporal instant;

independently resampling the first and second frames to form respective first and second resampled frames;

interleaving scanlines from the first and second resampled frames to generate a resampled interlaced frame comprising at least first and second resampled fields; and

wherein deinterlacing further comprises adapting deinterlacing from 3-field deinterlacing to 2-field deinterlacing, the interlaced frame corresponding to a scene change, the scene change being identified by substantially non-visually correlated components between at least two of the first, second, and third fields.

6. A computer-based method to adaptively process video data the method comprising:

deinterlacing at least a first and a second field of an interlaced frame to form first and second frames, the first frame comprising scanlines of a first temporal instant, the second frame comprising scanlines of a second temporal instant that is different from the first temporal instant;

responsive to determining that visual content corresponding to a set of the received video data does not change a threshold amount across the set, adapting deinterlacing from 2-field deinterlacing to 3-field deinterlacing; and/or

responsive to calculating that the set changes more than the threshold amount with respect to visual content, adapting deinterlacing from 3-field deinterlacing to 2-field deinterlacing;

independently resampling the first and second frames to form respective first and second resampled frames;

interleaving scanlines from the first and second resampled frames to generate a resampled interlaced frame comprising at least first and second resampled fields.

7. A method as recited in claim 6 , wherein adapting deinterlacing is performed at a scene change identified by substantially non-visually correlated components between at least two fields of three fields of the interlaced frame.

8. A computer-readable medium comprising computer-program instructions executable by a processor to adaptively process video data, the computer-program instructions comprising instructions for:

selecting a particular deinterlacing criterion based on whether portions of video data in proximity to the interlaced frame include a threshold amount of motion compensation information, the particular deinterlacing criterion being selected from a first and a second deinterlacing criterion, selecting the particular deinterlacing criterion is being performed at a scene change identified by substantially non-visually correlated components between at least two fields of three fields of the interlaced frame; and

deinterlacing the interlaced frame based on the particular deinterlacing criterion to generate at least one progressive frame.

9. A computer-readable medium comprising computer-program instructions executable by a processor to adaptively process video data, the computer-program instructions comprising instructions for:

selecting a particular deinterlacing criterion based on whether portions of video data in proximity to the interlaced frame include a threshold amount of motion compensation information, the particular deinterlacing criterion being selected from a first and a second deinterlacing criterion; and

deinterlacing the interlaced frame based on the particular deinterlacing criterion to generate at least one progressive frame, the at least one progressive frame is a first frame and a second frame, the first frame comprising scanlines from a first temporal instant, the second frame comprising scanlines from a second temporal instant, the first and second temporal instants being different from one another;

resampling the first and second frames to form respective first and second resampled frames; and

interleaving scanlines from the first and second resampled frames to generate a resampled interlaced frame.

10. A computer-readable medium comprising computer-program instructions executable by a processor to adaptively process video data, the computer-program instructions comprising instructions for:

selecting a particular deinterlacing criterion based on whether portions of video data in proximity to the interlaced frame include a threshold amount of motion compensation information, the particular deinterlacing criterion being selected from a first and a second deinterlacing criterion;

deinterlacing the interlaced frame based on the particular deinterlacing criterion to generate at least one progressive frame; and

selectively filtering a resampled frame with a particular filter of a plurality of filters, the resampled frame being based on the at least one progressive frame, the particular filter being selected based on whether the resampled frame is a progressive or an interlaced frame.

11. A computing-device to adaptively process video data, the computing device comprising:

a Processor coupled to a memory, the memory comprising computer-program instructions executable by the processor, the computer-program instructions comprising instructions for:

adaptively resampling a frame of video data based on whether the frame is progressive or interlaced to generate a resampled frame;

determining an output data format based on characteristics of a target display device, the output data format being a progressive or interlaced data format;

if the corresponding resampled frame is not of the output data format, converting the resampled frame to the output data format;

selecting a particular filter of a plurality of filters based on the output data format such that:

if the output data format is interlaced and the resampled frame is interlaced, the particular filter is a smooth filter;

if the output data format is progressive and an input frame corresponding to the resampled frame was interlaced, creating a resampled progressive frame from the resampled frame, the resampled progressive frame being the resampled frame, the particular filter being a sharp filter;

if the output data format is interlaced and the resampled frame is progressive converting the resampled progressive frame to a resampled interlaced frame, the resampled interlaced frame being the resampled frame, and the particular filter being a smooth filter;

if the output data format is progressive and the resampled frame is progressive, the particular filter being a sharp filter;

filtering the resampled frame with the particular filter.

12. A computing device to adaptively process video data, the computing device comprising:

a processor coupled to a memory, the memory comprising computer-program instructions executable by the processor, the computer-program instructions comprising instructions for:

adaptively resampling a interlaced frame of video data to generate a resampled frame by:

deinterlacing the interlaced frame to generate a plurality of intermediate frames;

resampling the intermediate frames; and

interlacing scanlines of the intermediate frames to generate the resampled frame;

determining an output data format based on characteristics of a target display device, the output data format being a progressive or interlaced data format;

if the corresponding resampled frame is not of the output data format, converting the resampled frame to the output data format;

selecting a particular filter of a plurality of filters based on the output data format; and

filtering the resampled frame with the particular filter.

13. A computing device as recited in claim 12 , wherein deinterlacing the interlaced frame to generate a plurality of intermediate frames further comprises:

selecting a particular deinterlacing criterion based on whether portions of video data in proximity to the interlaced frame include a threshold amount of motion compensation information, the particular deinterlacing criterion being selected from a first and a second deinterlacing criterion; and

wherein the intermediate frames are progressive frames.

14. A computer-readable medium as recited in claim 12 , wherein the particular deinterlacing criterion is a 2-field deinterlacing criterion or a 3-field deinterlacing criterion.

15. A computer-readable medium as recited in claim 12 , wherein the particular deinterlacing criterion is independent of motion compensation calculations.

16. A computer-readable medium as recited in claim 12 , wherein selecting the particular deinterlacing criterion is performed at a scene change identified by substantially non-visually correlated components between at least two fields of three fields of the interlaced frame.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2002
From: VARMA, ANKUR; WALTERS, ANDREW WAYNE
To: MICROSOFT CORPORATION
Reel/Frame 012987/0559 →