The objective of this project is to generate a colored imagen from three different images. Almost all the images presented here form part of Prokudin-Gorskii’s collection. In order to generate a RGB images, we must adjust the three different channels in the correct order, also we have to line up all the images to generate a single one in 3D, with colors like in real life.
00106v
Blue Offset : x = -2, y = -3
Red Offset : x = -2, y = 6
0757v
Blue Offset : x = -3, y = 2
Red Offset : x = 1, y = 6
00888v
Blue Offset : x = -3, y = -17
Red Offset : x = -4, y = 6
00889v
Blue Offset : x = 0, y = -1
Red Offset : x = 1, y = 2
00907v
Blue Offset : x = 0, y = -1
Red Offset : x = 0, y = 2
00911v
Blue Offset : x = 1, y = -1
Red Offset : x = 0, y = 12
001031v
Blue Offset : x = -2, y = -1
Red Offset : x = 0, y = -2
01657v
Blue Offset : x = 0, y = -6
Red Offset : x = 0, y = 6
01850v
Blue Offset : x = -3, y = -6
Red Offset : x = 2, y = 8
For this point, I have taken some pictures of common articles finding them adequate to explain the process followed by Prokudin-Gorskii. In fact it’s not difficult but the main problem is not to take a picture but take it at the same distance, angle and illumination.
As we can see, the images taken by me are not that good. I find three different problems:
The first is the proximity to the object. When we have an object near to the camera almost every little change in relation with the next picture affect the final result. Taking a picture with a longer distance between the object and the camera could eliminate these changes or at least make them less evident.
Bounded to the first problem, the angle of the camera can also affect the final result. If the three pictures are not taken with the same angle in X axis, the difference will eventually make impossible to have a reference point, resulting in a RGB picture with specters on each channel.
The third problem is not to make a rotating angle over X axis. In the examples made by Prokudin-Gorskii, he used three cameras with three different shots but a single central point. In my experience, I only had one camera so I decided to make three shots. In the example of Prokudin-Gorskii, even if it is not appreciated, there is a little angle between the three cameras so each camera had the same central point. If this central point is not well adjusted, the result will be a mismatch between the three channels.
The algorithm necessary to reconstruct the base image depend on the size of the image. If good results want to be obtained, it is necessary to take a picture on a bigger place. The use of a recursive method allows to avoid numerous calculations but take a lot of time, so a secondary method such as resize the image is helpful to this kind of task.