CSE 576 Project 2:
Panoramic Mosaic Stitching
Seong Jae Lee
seongjae at cs dot washington dot edu
April 26, 2008
Test "pano1"
Stitched image.
For panorama embedded in a viewer, click the image above.
The illumination varies greatly according to the direction taken, which makes image blending unnatural (the sky in the pictures with CSE building is blue, while it's white on the other pictures).
St. James Cathedral
Photos taken.
For original size photos, click the image above.
Stitched image.
For panorama embedded in a viewer, click the image above.
St. James Cathedral is located in the First Hill area, built in 1907. It is notable for its grand scale, fine architecture, a Renaissance painting of the Virgin and Child, and its relics of Mother Cabrini, the first American saint.
Erik and I took photos near the altar. A person in a white jacket moved while taking the photos, and he is ghosted in the panorama image.
Canon Powershot A10, tag CS30012717 is used with aid of a Kaidan head. The original photos can be downloaded from
here.
St. Mark's Episcopal Cathedral
Photos taken.
For original size photos, click the image above.
Stitched image.
For panorama embedded in a viewer, click the image above.
St. Mark's Episcopal Cathedral, located on Capitol Hill, is built on 1931. The church is beloved by Seattlite, since one can't miss its magnificent outfit on the hill while following I-5.
Canon Powershot A10, tag CS30012717 is used with aid of a Kaidan head. The Kaidan head was shaken a lot (I didn't know how to fix the head part at this moment), so the image is not clearly stitched as the one from St. James Cathedral. The original photos can be downloaded from
here.
Alki Beach (Hand Held)
Photos taken.
For original size photos, click the image above.
Stitched image.
For panorama embedded in a viewer, click the image above.
Alki beach. Can you find Erik in a red jacket in this image? :)
Fujifilm Finepix F40fd is used. Hand-held sequence. Focal length is 8mm. Sensor size is 1/1.6". I assumed it's approximately 8.2mm.
The image size is 480x640, therefore the focal length is approximately 421.46341 pixel (640 * 5.4 / 8.2). I did not calculate constants for radial distortion.
You can see the guard rail pointing Seattle downtown (which is the closest point from the viewer) is not matching correctly. It might be caused by wrong focal length or wrong radial distortion constants.
You can see ghosts of a man in a white shirts on the beach.
The original photos can be downloaded from
here.
Extra Credit
Brightness adjusted image.
For bigger picture, click the image above.
Brightness adjusted image, grayscaled.
For bigger picture, click the image above.
Brightness Adjustment: Each feature's data contains the average brightness of the grayscaled, window-size cropped image.
I calculated the average difference of brightness on matching features for each pair of images.
After adjusting the sum of differences to be zero, I added the difference to one of the image in each pair so that the matching features have similar illumination.
Unfortunately, it didn't work well for the following reasons:
First,
the range of illumination a photo can represent is non-linear and limited.
If it's outside of the range, it's value is either 255 or 0.
For example, you can see the color of the sky on the left is gray.
Let's assume the color in the original image as (255, 255, 255) and the actual color of the sky as (300, 300, 260).
So, if we adjust the image by -50, the adjusted color should be (250, 250, 210).
But due to the limit of brightness representation, it is actually adjusted to (205, 205, 205).
Second,
we are using a grayscaled image to calculate the difference of brightness. Since the mapping from actual brightness to the value of represented color is not linear (as we learned from the class),
just subtracting/adding a constant value to each color does not work.
For example, some grass looks more yellower than the others. It's because the image's R value is higher than the others.
In this case, we should have subtracted R value more than G or B value.
Instead, we subtracted average of RGB difference, resulting R value being still higher than the other images.
Actually, the adjusted image seems much smoother in grayscaled version.
References