slicktail
8th May 2010, 08:52
Good day!
I deal with interpolated frame, the same algorithm Vatolin MSU FRC.
Frame is divided into blocks.
Once found motion vectors must smoothly move blocks in the interpolated frames from the current frame to the next. The problem in this move smoothly. I tried to make a linear interpolation:
1. Selects the current frame L (t) and the next frame L (t +1) with the found motion vectors to move the block B (x, y)
2. Let n - number of interpolated frames to be inserted between frames L (t) and L (t +1). We consider each pixel block C1 B (x, y) in the current frame L (t) and C2 each pixel block B (x, y) in the next frame L (t +1).
Under the direction of motion vector for each pixel of an interpolated frame this gradually changes its value for each color component (Y, U, V) Cn.
For the smooth interpolated frames using the expression
c = c1 + (c2-c1) * t, 0 <t <1
where C1 - meaning the color components Y pixel (x, y) Block B (x, y) in the current frame L (t), C2 - the value of color components Y pixel (x, y) Block B (x, y) in the next frame L (t +1), Cn - meaning the color components Y pixel (x, y) Block B (x, y) in the interpolated frame n, t - parameter that specifies the linear displacement of pixels on each interpolated frame.
parameter t varies for each interpolated frame from 0 to 1
3. Step 2 is repeated for the color components U, V.
4. In the frame L (t) and L (t +1) takes the next block. Repeat steps 2-3 for as long as all the blocks will not be interpolated. Thus, you will receive n interpolated frames.
11039 11040 11042 11043 11044
This method, as we see, is not effective. Image doubles (left trace of the current frame). Tell my best methods to gradually move the blocks?
I deal with interpolated frame, the same algorithm Vatolin MSU FRC.
Frame is divided into blocks.
Once found motion vectors must smoothly move blocks in the interpolated frames from the current frame to the next. The problem in this move smoothly. I tried to make a linear interpolation:
1. Selects the current frame L (t) and the next frame L (t +1) with the found motion vectors to move the block B (x, y)
2. Let n - number of interpolated frames to be inserted between frames L (t) and L (t +1). We consider each pixel block C1 B (x, y) in the current frame L (t) and C2 each pixel block B (x, y) in the next frame L (t +1).
Under the direction of motion vector for each pixel of an interpolated frame this gradually changes its value for each color component (Y, U, V) Cn.
For the smooth interpolated frames using the expression
c = c1 + (c2-c1) * t, 0 <t <1
where C1 - meaning the color components Y pixel (x, y) Block B (x, y) in the current frame L (t), C2 - the value of color components Y pixel (x, y) Block B (x, y) in the next frame L (t +1), Cn - meaning the color components Y pixel (x, y) Block B (x, y) in the interpolated frame n, t - parameter that specifies the linear displacement of pixels on each interpolated frame.
parameter t varies for each interpolated frame from 0 to 1
3. Step 2 is repeated for the color components U, V.
4. In the frame L (t) and L (t +1) takes the next block. Repeat steps 2-3 for as long as all the blocks will not be interpolated. Thus, you will receive n interpolated frames.
11039 11040 11042 11043 11044
This method, as we see, is not effective. Image doubles (left trace of the current frame). Tell my best methods to gradually move the blocks?