IP Library › Granted Patent US 8,941,667
Granted Patent B2
US 8,941,667 · App. 12/696,401 · Granted Jan 27, 2015

Method and apparatus for frame interpolation

Inventors: Osman Serdar Gedik (Ankara, TR); Abdullah Aydin Alatan (Ankara, TR)
Assignee: Vestel Elektronik Sanayi ve Ticaret A,S.
G06T3/4007G06T7/2033H04N7/0137H04N13/0011G06T2207/20144H04N7/0127
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,941,667
App. No.
12/696,401
Granted
Jan 27, 2015
Kind
B2
Abstract

The invention generally provides a method and apparatus for up-converting the frame rate of a digital video signal, the method comprising: receiving a digital video signal containing a first frame and a second frame; finding in one of the received frames, matches for objects in the other of the received frames; utilizing 3 dimensional position data in respect of the objects within the frames to determine 3 dimensional movement matrices for the matched objects; using the 3 dimensional movement matrices, determining the position of the objects in a temporally intermediate frame and thereby generating an interpolated frame, temporally between the first and second frame.

Claims (354)

1. A method of up-converting a frame rate of a digital video signal, the method comprising:

receiving a digital video signal containing a plurality of temporally spaced apart image frames in one view of a multiview set, the plurality of temporally spaced apart image frames include two consecutive frames comprising a first frame and a second frame;

finding in one of the received frames, a match for an object in the other of the received frames;

utilizing three-dimensional (3D) data in respect of the matched object within the received frames to determine 3D movement matrices for the matched object;

using the 3D movement matrices, determining a temporally intermediate 3D position of the matched object with respect to the received frames to enable an interpolated frame to be generated temporally between the first and second frame; and

projecting the 3D position of the matched object onto any two-dimensional view of the multiview set to thereby generate the interpolated frame at a desired time instant and view;

wherein finding a match for an object comprises segmenting a moving object by obtaining the differences between the two consecutive frames by calculating pixel-wise absolute differences between depth, D, and texture, C, frames at time instants t and t+1:

C D ( i,j )= abs ( C ( i,j,t,n )− C ( i,j,t +1 ,n ))

D D ( i,j )= abs ( D ( i,j,t,n )− D ( i,j,t +1 ,n ))

and using these frames calculating a global segmentation map.

2. The method according to claim 1 , further comprising determining the 3D position in respect of the matched object within the received frames using a calibration matrix in respect of a camera used to capture the received frames and a depth map of the received frames.

3. The method according to claim 1 , in which the 3D movement matrices comprise a 3D rotation matrix R and a 3D translation matrix T.

4. The method according to claim 3 , in which R and T are estimated using a formula of the following form:

[

X

11

Y

11

Z

11

0

0

0

0

0

0

1

0

0

0

0

0

X

11

Y

11

Z

11

0

0

0

0

1

0

0

0

0

0

0

0

X

11

Y

11

Z

11

0

0

1

…

]

⁡

[

R

11

R

12

R

13

R

21

R

22

R

23

R

31

R

32

R

33

T

1

T

2

T

3

]

=

[

X

21

Y

21

Z

21

…

]

,

in which:

(X 1l , Y 1l , Z 1l ) T are the 3D coordinates of moving object features from the first frame, i.e. a frame at time t;

(X 2l , Y 2l , Z 2l ) T are the 3D coordinates of the moving object features from the second frame, i.e. a frame at time t+1;

R ij is the rotation matrix entry at location (i, j); and

T i is the translation matrix entry at location i.

5. The method according to claim 3 , in which a 3D translation matrix (TA) for a 3D translation motion between frames at time t and at time t+Δt is calculated as:

T Δ =Δt· T,

where Δt is between 0 and 1.

6. The method according to claim 5 , in which Δ=½, such that the determined position of the matched object is midway between the 3D positions of the matched object in each of the first and second frames.

7. The method according to claim 3 , in which R is calculated using an angle-axis representation.

8. The method according to claim 7 , in which in the angle-axis representation, R is represented as a rotation through an angle a around an axis represented by a vector {right arrow over (v)}, the method further comprising:

obtaining the unit rotation axis {right arrow over (v)} as an eigenvector corresponding to a unit eigenvalue by solving:

( R−I ){right arrow over (v)}=0,

wherein I is defined as an identity matrix.

9. The method according to claim 8 , in which from R, the angle of rotation, α, is determined as follows:

cos

⁡

(

α

)

=

1

2

⁢

(

trace

⁡

(

R

)

-

1

)

sin

⁡

(

α

)

=

1

2

⁢

v

T

⁢

v

^

,

v

^

=

(

R

32

-

R

23

R

13

-

R

31

R

21

-

R

12

)

α

=

tan

-

1

⁡

(

sin

⁡

(

α

)

cos

⁡

(

α

)

)

and in which a rotation matrix R Δ is obtained by the following relation:

R Δ =(Δ·α,{right arrow over (v)}).

10. The method according to claim 3 , further comprising using the rotation matrices R and translation matrices T in respect of the matched object within a frame to calculate the 3D position of the matched object within an intermediate frame and using the calculated position to reconstruct the interpolated frame.

11. The method according to claim 3 , in which bi-directional interpolation is performed, the method further comprising:

determining backward rotation and translation matrices R backward and T backward , such that

[

X

1

Y

1

Z

1

]

=

R

backward

⁡

[

X

2

Y

2

Z

2

]

+

T

backward

wherein, in terms of forward directional rotation matrices R and translation matrices T, R backward and T backward can be obtained as:

R backward =R −1

T backward =−R −1 T.

12. The method according to claim 11 , further comprising:

calculating rotation and translation matrices for a midway temporal location as follows:

R

backward

mid

=

R

backward

⁡

(

α

backward

2

,

v

⇀

backward

)

T

backward

mid

=

T

backward

2

.

13. The method according to claim 11 , in which any number of frames, n, can be interpolated between frames t and t+1 in an accurate manner, by modifying rotation and translation matrices as follows,

R

int

=

R

⁡

(

k

n

+

1

⁢

α

,

v

⇀

)

,

⁢

T

int

=

k

n

+

1

⁢

T

k

=

1

,

2

,

…

⁢

⁢

n

R

int

backward

=

R

backward

⁡

(

(

1

-

k

n

+

1

)

⁢

α

backward

,

v

⇀

backward

)

,

⁢

T

int

backward

=

(

1

-

k

n

+

1

)

⁢

T

backward

.

14. The method according to claim 1 , in which the position of the matched object in the interpolated frame is determined at a time temporally closer to one of the first and second frames than to the other.

15. The method according to claim 1 , in which the 3D movement matrices are determined based on the first or second frame as starting point in dependence on a temporal separation of a desired interpolated frame from the first or second frame.

16. The method according to claim 1 , in which the 3D movement matrices are determined based on both the first and second frame as starting points, the method further comprising determining average matrices based on the 3D movement matrices for use in the determination of the position of the matched object in the interpolated frame.

17. The method according to claim 1 , in which the global segmentation map is calculated as follows:

a pixel at location (i,j) is assigned to background, if it satisfies the condition

C D ( i, j )+λ D D ( i, j )<threshold

in which where, λ and threshold are constants, and assigned to foreground otherwise.

18. The method according to claim 1 , wherein the 3D data is 3D depth data and the method comprises determining the 3D depth data in respect of the matched object within the frames from multiview video data or from a monoview 2D video using a depth data extraction algorithm.

19. The method as claimed in claim 1 , further comprising:

using the 3D movement matrices and the 3D position of the matched object in one of the received frames, interpolating a 3D position of the matched object at the time of the other received frame;

comparing the interpolated 3D position at the time of the other received frame and the 3D position of the matched object in the other received frame; and

modifying the 3D movement matrices based on the comparison;

wherein determining the 3D position of the matched object in a temporally intermediate frame is based on the modified 3D movement matrices.

20. An apparatus for up-converting a frame rate of a digital video signal, the apparatus containing a processor and memory programmed to execute the method of claim 1 .

21. The apparatus according to claim 20 , in which the apparatus is a Set Top Box for receiving a digital video signal.

22. The apparatus according to claim 20 , in which the processor is a digital signal processor containing function blocks to execute the method steps of claim 1 .

23. A television set comprising:

a receiver for receiving a digital video signal;

a display for displaying images received in the digital video signal; and,

a processor arranged to up-convert a frame rate of the received digital video signal in accordance with the method of claim 1 .

24. A method of up-converting the frame rate of a digital video signal, the method comprising:

receiving a digital video signal containing a plurality of temporally spaced apart image frames in one view of a multiview set, the plurality of temporally spaced apart image frames include two consecutive frames comprising a first frame and a second frame, each frame having an associated time and comprising one or more three-dimensional (3D) objects having a position;

finding in one of the received frames, matches for the one or more objects in the other of the received frames;

utilizing 3D data in respect of the one or more matched objects within the received frames to determine 3D movement matrices for the one or more matched objects;

using the 3D movement matrices and the 3D position of the one or more matched objects in one of the received frames, interpolating a 3D position of the one or more matched objects at the time of the other received frame;

comparing the interpolated 3D position at the time of the other received frame and the 3D position of the one or more matched objects in the other received frame;

modifying the 3D movement matrices based on the comparison; and

using the modified 3D movement matrices, determining the position of the one or more matched objects in three dimensions in a temporally intermediate frame to enable an interpolated frame in any two-dimensional view of the multiview set to be generated temporally between the first and second frame;

wherein finding a match for an object comprises segmenting a moving object by obtaining the differences between the two consecutive frames by calculating pixel-wise absolute differences between depth, D, and texture, C, frames at time instants t and t+1:

C D ( i,j )= abs ( C ( i,j,t,n )− C ( i,j,t +1 ,n ))

D D ( i,j )= abs ( D ( i,j,t,n )− D ( i,j,t +1 ,n ))

and using these frames calculating a global segmentation map.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2010
From: GEDIK, OSMAN SERDAR; ALATAN, ABDULLAH AYDIN
To: VESTEL ELEKTRONIK SANAYI VE TICARET A.S.
Reel/Frame 024138/0644 →
Continuity (2)
Provisional Application 61148291 · Jan 29, 2009
Related Publication 20100245372A1 · Sep 30, 2010