IP Library Granted Patent US 8,928,806
Granted Patent B2
US 8,928,806 · App. 13/634,674 · Granted Jan 6, 2015

Video interpolation method and apparatus with smooth fallback interpolation mode

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 8,928,806
App. No.
13/634,674
Granted
Jan 6, 2015
Kind
B2
Abstract

Evolution of a scene represented in a video sequence of input frames is analyzed. Output pixels of an output frame having a time position intermediate between time positions of the input frames are computed by combining respective input pixels of the input frames. At least three interpolation modes are provided for computing the output pixels, including (i) a first mode in which the combined input pixels for an output pixel are selected based on a position of the output pixel in the output frame and a default interpolation vector, (ii) a second mode in which the combined input pixels are selected based on the output pixel position and at least one first interpolation vector determined for the output pixel when analyzing scene evolution, and (iii) a third mode in which the combined input pixels are selected based on the output pixel position and at least one second interpolation vector that is intermediate between the default interpolation vector and a respective first interpolation vector determined for the output pixel when analyzing scene evolution.

Claims (43)

1. A video interpolation method, comprising:

analyzing evolution of a scene represented in a video sequence of input frames; and

computing output pixels of an output frame having a time position intermediate between time positions of the input frames, by combining respective input pixels of the input frames, wherein at least three interpolation modes are provided for computing the output pixels, the interpolation modes including:

a first mode in which the combined input pixels for an output pixel are selected based on a position of the output pixel in the output frame and a default interpolation vector;

a second mode in which said combined input pixels are selected based on said output pixel position and at least one first interpolation vector determined for the output pixel when analyzing scene evolution; and

a third mode in which said combined input pixels are selected based on said output pixel position and at least one second interpolation vector that is intermediate between the default interpolation vector and a respective first interpolation vector determined for said output pixel when analyzing scene evolution,

and wherein the method further comprises:

while one of the first and second interpolation modes is used at an output pixel position, making a decision to switch to the other one of the first and second interpolation modes, and starting a transition phase in response to said decision;

selecting the third interpolation mode at said output pixel position for computing output pixels at said output pixel position in successive output frames in said transition phase.

2. The video interpolation method as claimed in claim 1 , comprising:

determining a transition degree for an output pixel; and

selecting the interpolation mode for said output pixel based on the transition degree.

3. The video interpolation method as claimed in claim 2 , comprising, when the third interpolation mode is selected for said output pixel:

determining the second interpolation vector as a function of the transition degree.

4. The video interpolation method as claimed in claim 3 , wherein the transition degree, noted β, is 0 for the first interpolation mode, 1 for the second interpolation mode and a number between 0 and 1 for the third interpolation mode, and wherein when the third interpolation mode is selected for said output pixel, each second interpolation vector is

( v x ,v y )=( v x D ,v y D )+β·[( v 0x ,v 0y )−( v x D ,v y D )],

where (v x D ,v y D ) is the default interpolation vector and (v 0x , v 0y ) is a respective first interpolation vector determined for said output pixel when analyzing scene evolution.

5. The video interpolation method as claimed in claim 3 , wherein the transition degree, noted β, is 0 for the first interpolation mode, 1 for the second interpolation mode and a number between 0 and 1 for the third interpolation mode, and wherein when the third interpolation mode is selected for said output pixel, each second interpolation vector is

( v x ,v y )=( v x D ,v y D )+Min{1 ,β·v x M /|v 0x |,β·v y M /|v 0y |}·[( v 0x ,v 0y )− v x D ,v y D )],

where (v x D ,v y D ) is the default interpolation vector, (v 0x , v 0y ) is a respective first interpolation vector determined for said output pixel when analyzing scene evolution, having coordinates v 0x and v 0y along two directions of the frames, and v x M and v y M are preset positive parameters.

6. The video interpolation method as claimed in claim 2 , wherein determining a transition degree for an output pixel comprises:

obtaining confidence data relating to the first interpolation vectors determined for pixels at said output pixel position in successive output frames; and

analyzing time evolution of the confidence data to obtain the transition degree for the output pixel in a current output frame.

7. The video interpolation method as claimed in claim 1 , wherein the first interpolation vectors are motion vectors determined for the output pixels by analyzing motion in the step of analyzing evolution of the scene represented in the video sequence.

8. The video interpolation method as claimed in claim 1 , wherein the default interpolation vector used in the first and third modes is a zero motion vector.

9. A video interpolation apparatus, comprising:

a scene evolution analyzer for analyzing evolution of a scene represented in a video sequence of input frames; and

an interpolator for computing output pixels of an output frame having a time position intermediate between time positions of the input frames, by combining respective input pixels of the input frames, wherein at least three interpolation modes are provided for computing the output pixels, the interpolation modes including:

a first mode in which the combined input pixels for an output pixel are selected based on a position of the output pixel in the output frame and a default interpolation vector;

a second mode in which said combined input pixels are selected based on said output pixel position and at least one first interpolation vector determined for the output pixel when analyzing scene evolution; and

a third mode in which said combined input pixels are selected based on said output pixel position and at least one second interpolation vector that is intermediate between the default interpolation vector and a respective first interpolation vector determined for said output pixel when analyzing scene evolution,

wherein the apparatus is arranged, while one of the first and second interpolation modes is used at an output pixel position, to respond to a decision to switch to the other one of the first and second interpolation modes by starting a transition phase, the third interpolation mode being selected for computing output pixels at said output pixel position in successive output frames in said transition phase.

10. The video interpolation apparatus as claimed in claim 9 , comprising a transition controller for determining a transition degree for an output pixel, the interpolation mode for said output pixel being selected based on the transition degree.

11. The video interpolation apparatus as claimed in claim 10 , wherein the interpolator is configured for determining the second interpolation vector as a function of the transition degree when the third interpolation mode is selected.

12. The video interpolation apparatus as claimed in claim 11 , wherein the transition degree, noted β, is 0 for the first interpolation mode, 1 for the second interpolation mode and a number between 0 and 1 for the third interpolation mode, and wherein the interpolator is configured for determining each second interpolation vector as

( v x ,v y )=( v x D ,v y D )+β·[( v 0x ,v 0y )−( v x D ,v y D )]

when the third interpolation mode is selected, where (v x D , v y D ) is the default interpolation vector and (v 0x , v 0y ) is a respective first interpolation vector determined for said pixel when analyzing scene evolution.

13. The video interpolation apparatus as claimed in claim 11 , wherein the transition degree, noted β, is 0 for the first interpolation mode, 1 for the second interpolation mode and a number between 0 and 1 for the third interpolation mode, and wherein the interpolator is configured for determining each second interpolation vector as

( v x ,v y )=( v x D ,v y D )+Min{1 ,β·v x M /|v 0x |,β·v y M /|v 0y |}·[( v 0x ,v 0y )− v x D ,v y D )]

when the third interpolation mode is selected, where (v x D , v y D ) is the default interpolation vector, (v 0x , v 0y ) is a respective first interpolation vector determined for said output pixel when analyzing scene evolution, having coordinates v 0x and v 0y along two directions of the frames, and v x M and v y M are preset positive parameters.

14. The video interpolation apparatus as claimed in claim 10 , wherein the scene evolution analyzer is arranged for obtaining confidence data relating to the first interpolation vectors determined for pixels at an output pixel position in successive output frames, and wherein the transition controller is arranged for analyzing time evolution of the confidence data to obtain the transition degree for an output pixel at said output pixel position in a current output frame.

15. The video interpolation apparatus as claimed in claim 9 , wherein the first interpolation vectors are motion vectors determined for the output pixels by scene evolution analyzer by analyzing motion in the scene represented in the video sequence.

16. The video interpolation apparatus as claimed in claim 9 , wherein the default interpolation vector used in the first and third modes is a zero motion vector.

Assignments (3)
MERGER Recorded Jun 26, 2018
From: ZORAN (FRANCE) S.A.
To: ZORAN CORPORATION
Reel/Frame 046435/0788 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNMENT PREVIOUSLY RECORDED UNDER REEL AND FRAME 029101/0773 TO CORRECT ZORAN (FRANCE) TO ZORAN (FRANCE) S.A. PREVIOUSLY RECORDED ON REEL 029101 FRAME 0773. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 24, 2013
From: MIKHALENKOV, ALEXANDRE
To: ZORAN (FRANCE) S.A.
Reel/Frame 030888/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2012
From: MIKHALENKOV, ALEXANDRE
To: ZORAN (FRANCE)
Reel/Frame 029101/0773 →