The aim of this assignment was to align the digitized Prokudin-Gorskii glass plate images to produce a single RGB colored image. Image processing techniques were used to place the 3 color channel images acquired from Prokudin-Gorskii collection on top of each other to form the final colored image. The challenge was forming images with least visual artifacts after the automation of the process.
Image Processing Techniques
Image alignment was initially constructed through a single scale implementation with an exhaustive search over a window displacement of 30 pixels. Due to the expense of this search, I implemented a gaussian pyramid to represent the images at multiple scales. By starting from the smallest image and going down the pyramid I updated the estimate for the shifting of the images for the alignment with least visual artifacts. Further techniques include:

1.Auto Cropping: The borders of the images were cropped before the alignment by a factor of 0.1, in order to avoid long detections due to black borders.

2.Auto Contrast: I used Matlab's 'adapthisteq' method, which implements contrast-limited adaptive histogram equalization on grayscale images. This function was used in the aligned grayscale images, before concatenating them to form the colored image.

3.White Color Balance: A gray world assumption was used in the adjustment of the white color balance.