View Transformation
Xue-wen Chen
In this project, view transformation was performed. First, I used the Minolta Vivid 700 scanner, which is a 3D laser range finder, to obtain a 3D model and a registered color image with resolution of 200 x 200 for the point set. Then I performed the warping based on McMillan’s paper. Specially, I connected four adjacent points in the reference image with a quadrilateral, and warped them to the destination image. To determine the visible surface, I used the so called back-to-front occlusion compatible algorithm, which generated a proper enumeration order based on the projection of the desired center of projection onto the reference view plane. I produced results for nine cases of visibility orders as discussed in McMillan’s paper.
original image
results
from nine visibility orders
|
|
|
|
||
|
|
|
The following picture is a profile view.
An interface is provided for allowing the user to
interactively rotate the camera and change its position. The interface window
is shown below. The shown image was zoomed. For some reasons, the text in buttons
didn’t show here (but it worked well). At bottom from left to right, there are
four buttons: Load image button, Close button, Zoom in button, and Zoom out
button. They are six sliders on the right of the window (X/Y/Z rotation +
translation). User can select any combination they want, and then push “APPLY”
button (long one below the six sliders), the window will show the corresponding
image.
Notes:
1. To warp and draw a projected image, the algorithm need
about 0.4s.
2. If I have time, I will try to get the depth and color information
of pixels between our normal pixels using interpolation technique, so that I
can work on a higher resolution image (for example 400 x 400), and expect to
get better results.