Project 1 - Colorizing LoC Collections

Faustinus Kevin Gozali (fkg@andrew.cmu.edu)

Usage

In Matlab: output = colorize(imageFileName);
The function takes in the image file name as the input, and outputs the colorized (RGB) image based on the input.

Basic Approach

The colorization requires alignment on the color channels. In this project, the R and B channels are aligned with respect to G channel. To speed up the alignment process, a N-level multi-scale pyramid alignment is used, where N varies depending on the size of the input image. At each level of alignment, we search over a window of displacement to find the best fit, by finding the maximum correlation in the window. The three channels are then combined into a 3-channel RGB image as the output.

Improvement: Removing Border Artifacts

Apparently, doing only the pyramid alignment does not produce an ideal result. The most notable error is most probably caused by the white and black borders on the input images. These borders are clearly not part of our images of interest; they should be discarded somehow. The following steps define the mechanism:

Example

Original Input Image
White Border Cropped


Results

00125v.jpg
00149.jpg
00153v.jpg
00163v.jpg
00270v.jpg
00374v.jpg
00398v.jpg
00548v.jpg
00737v.jpg
00882v.jpg
01167v.jpg
01468v.jpg
01880v.jpg
01898v.jpg


The following large images are in JPEG format. Click on them to view the full sized version.
00458u.tif
00500u.tif
00911u.tif
01043u.tif
01047u.tif
01657u.tif

September 13, 2006