Homework 2
Motion Estimation and Compensation
Due 24/03/2002 Monday
This assignment is a team work (of at most 2 students). Each team should
prepare a web-page including required answers, observations, source codes
and results related to one of the questions given below (A, B or C). Each
web page should also include a plain text file with filename “README.txt”
to briefly explain the contribution of each team member and what each image/source
files included in the directory is. Please do this assignment using C/C++.
Please see instructor if you prefer other language.
A)Horn and Schunk Algorithm for Motion Estimation.
Implement the H&S algorithm for motion estimation (use
finite difference for derivative estimation). The example video sequence
in QCIF format can be obtained from the following
link. For each frame pair, define the first frame as the reference
frame and the second one as an anchor frame. Perform the following two sets
of motion estimation:
- Motion estimation for frame 2,4,6,8,10 with frame 1 as target frame
- Motion estimation for frame i with frame i-2 as target frame, where
i=2,4,6,8, 10.
- Put the first pair of motion estimation result (for each item) to
your web page Use the motion vectors obtained above to perform estimate of
each frame and compute the motion compensation residue. Put the first
pair of reconstructed frame and residue you obtained to your web site.
- Calculate PSNR for all pairs.
- Repeat the above steps for different smoothness factors.
- Compare and comment on forward and backward motion estimation and
compensation
- Comment on the effect of smoothness factor.
Repeat the above steps using polynomial fitting for derivative estimation.
Compare the motion compensation results. Discuss the advantages, disadvantages,
and the tradeoff for each of the algorithms.
B)Lucas and Kanade Algorithm for Motion Estimation.
Implement the L&K algorithm for motion estimation (use
finite difference for derivative estimation).. The example video sequence
in QCIF format can be obtained from the following
link. For each frame pair, define the first frame as the reference
frame and the second one as an anchor frame. Perform the following two sets
of motion estimation:
- Motion estimation for frame 2,4,6,8,10 with frame 1 as target frame
- Motion estimation for frame i with frame i-2 as target frame, where
i=2,4,6,8, 10.
- Put the first pair of motion estimation result (for each item) to
your web page Use the motion vectors obtained above to perform estimate of
each frame and compute the motion compensation residue. Put the first
pair of reconstructed frame and residue you obtained to your web site.
- Calculate PSNR for all pairs.
- Repeat the above steps for different block sizes.
- Compare forward and backward motion estimation and compensation
- Comment on the effect of block size.
Repeat the above steps using polynomial fitting for derivative estimation.
Compare the motion compensation results. Discuss the advantages, disadvantages,
and the tradeoff for each of the algorithms.
C)Konrad-Dubois Algorithm for Motion Estimation
Implement the K&D algorithm for motion estimation. Use
ICM method for optimization. Do not take the occlusion field into account.
The example video sequence in QCIF format can be obtained from the following link. For each frame pair, define
the first frame as the reference frame and the second one as an anchor frame.
Perform the following two sets of motion estimation:
- Motion estimation for frame 2,4,6,8,10 with frame 1 as target frame
- Motion estimation for frame i with frame i-2 as target frame, where
i=2,4,6,8, 10.
- Put the first pair of motion estimation result (for each item) to
your web page Use the motion vectors obtained above to perform estimate of
each frame and compute the motion compensation residue. Put the first
pair of reconstructed frame and residue you obtained to your web site.
- Calculate PSNR for all pairs.
- Repeat the above steps for different scale parameters (which scales
Ud and Ul). Comment on the results
- Compare forward and backward motion estimation and compensation
HINT (QCIF format)
The image data is stored raster-scanned in the following format.
QCIF = 176x144 luma resolution with 4:2:0 chroma subsampling
format.
176
+-------------+
|
|
| Y
| 144
|
|
|
|
+-------------+
| U |
| 88 |72
+------+
| V |
| 88 |72
+------+
The Y, U and V components are concatenated together, all images
in the
sequence in one big file.