Computational Photography, project 1

Severin Hacker, ETH/CMU

Problem description

The problem is to colorize a photo that is taken with three different color filters (RGB) with a black/white camera into a true color picture. The pictures come from the Prokudin-Gorskii photo collections.

INPUT:

OUTPUT:

Algorithm

Results

Here are the mandatory pictures. I have added some nice pictures from the collection.

Smalls

[10,1],[6,1]
R = [10,1], G = [6,1]


R = [9,1], G = [4,2]


R = [14,2], G = [7,2] (using a slightly different set of cropping parameters)


R = [-4,1], G = [-2,1]


R = [14,0], G = [4,0]


R = [9,-4], G = [4,-1]


R = [8,4], G = [4,2]


This picture is from Lugano, Switzerland. (It is quite close to where I live!) R = [9,-3], G = [4,-2]


R = [12,-1], G = [4,-1]


R = [12,1], G = [3,1]


R = [15,1], G = [7,0]


R = [11,4], G = [5,3]


R = [14,0], G = [7,1]


R = [8,-4], G = [2,-2]


R = [12,-2], G = [5,0]


R = [12,-1], G = [2,0]


R = [14,4], G = [6,2]


R = [11,0], G = [4,0]

Large

Those take each about 6 min to process on a modern PC.


R = [87,31], G = [43,50]


R = [133,-18], G = [59,-2]


R = [10,17], G = [-17,10]


R = [72,33], G = [24,20]


R = [117,10], G = [53,8]

Discussion

In my opinion one can say: good cropping = good quality. Neither the metric (SSD or NCC) nor the sliding window size have a significant influence on the quality of the picture. I had some problems with 00153v (the guy that sits on a chair). I have found out, that this particular image is very sensitive to cropping. Changing cropping parameters slightly can lead to bad/good results. The parameters I use in my program work well for all except 00153v.

I have (experimentally) implemented an auto-cropper that crops out the nasty borders that arise from circular shifting. It just deletes low-entropy rows/columsn. Sometimes it crashes (I know why ;-)) but when it does not, it does a pretty good job. The implementation is loop-free!