Projet #1: Colorisation de l'Empire Russe

Introduction

Ce premier projet de la session consiste à colorer plusieurs images de l'Empire Russe à partir d'images noirs et blancs représentant l'intensité de rouge, vert et bleu dans la scène. Pour ce faire, les images doivent être coupées, puis allignées afin de constituer une image visuellement plaisante. L'algorithme d'allignement utilisé dans ce TP est la somme des différences aux carrées pour les images de faibles résolutions. Pour les images hautes résolutions, une pyramide de l'image à plusieurs résolution permet d'alligner les images sans trop augmenter le temps de calcul de l'ordinateur.

On peut observer ci-dessous les résultats de l'algorithme des différences de carrées pour les images de faibles résolutions:

Image: 00106v.jpg
Translation rouge: 9 en y et -1 en x
Translation vert: 4 en y et 1 en x

Image: 00757v.jpg
Translation rouge: 5 en y et 5 en x
Translation vert: 2 en y et 2 en x

Image: 00888v.jpg
Translation rouge: 12 en y et 1 en x
Translation vert: 6 en y et 1 en x

Image: 00889v.jpg
Translation rouge: 4 en y et 3 en x
Translation vert: 1 en y et 2 en x

Image: 00907v.jpg
Translation rouge: 6 en y et 0 en x
Translation vert: 2 en y et 0 en x

Image: 00911v.jpg
Translation rouge: 13 en y et -1 en x
Translation vert: 1 en y et -1 en x

Image: 01031v.jpg
Translation rouge: 4 en y et 2 en x
Translation vert: 1 en y et 1 en x

Image: 01657v.jpg
Translation rouge: 12 en y et 1 en x
Translation vert: 5 en y et 1 en x

Image: 01880v.jpg
Translation rouge: 14 en y et 4 en x
Translation vert: 6 en y et 2 en x

Les résultats de l'algorithme en pyramide sont représentés ci-bas. Par contre, plusieurs images ne sont pas allignés parfaitement, causant ainsi des images "fantôme" sur la photo, ceci rend donc l'image brouillé, voir complètement déformé. La plupart des images mal allignés sont des photos de paysages ou de personnes. Il est donc possible que le mouvement des sujets entre les trois photos (i.e.: Mouvement des arbres ou des personnes) soient suffisemment grand pour fausser les résultats de l'algorithme. Les résultats plus attrayant sont souvent des objets immobiles ou la différence d'allignement entre les images est dût seulement aux mouvements de la caméra. Il est aussi possible que le code utilisé dans ce TP ne soit pas optimal et fausse les résultats de certaines images.

Image: 00029u.tif
Translation rouge: 84 en y et .. en x
Translation vert: .. en y et .. en x

Image: 00087u.tif
Translation rouge: ..en y et .. en x
Translation vert: .. en y et .. en x

Image: 00128u.tif
Translation rouge: 49 en y et 35 en x
Translation vert: 48 en y et 37 en x

Image: 00458u.tif
Translation rouge: 80 en y et 30 en x
Translation vert: 59 en y et 8 en x

Image: 00737u.tif
Translation rouge: 44 en y et 13 en x
Translation vert: 19 en y et 7 en x

Image: 00822u.tif
Translation rouge: ..en y et .. en x
Translation vert: .. en y et .. en x

Image: 00892u.tif
Translation rouge: 49 en y et -255 en x
Translation vert: 23 en y et 3 en x

Image: 01043u.tif
Translation rouge: 8 en y et 17 en x
Translation vert: -23 en y et 16 en x

Image: 01047u.tif
Translation rouge: 7 en y et 2 en x
Translation vert: 15 en y et 13 en x

Image: 00001u.tif
Translation rouge: 91 en y et -6 en x
Translation vert: 54 en y et 6 en x

Image: 00031u.tif
Translation rouge: 97 en y et -7 en x
Translation vert: 67 en y et 1 en x

Image: 00472u.tif
Translation rouge: 5 en y et 3 en x
Translation vert: 15 en y et 15 en x

Image: 00032u.tif
Translation rouge: ..en y et .. en x
Translation vert: .. en y et .. en x

Image: 00082u.tif
Translation rouge: 74 en y et 8 en x
Translation vert: 43 en y et 7 en x

Image: 00253u.tif
Translation rouge: 83 en y et 28 en x
Translation vert: 24 en y et 23 en x

Image: 00344u.tif
Translation rouge: 112 en y et 0 en x
Translation vert: 53 en y et 0 en x

Image: 00896u.tif
Translation rouge: 52 en y et 39 en x
Translation vert: 32 en y et 31 en x

Image: 00970u.tif
Translation rouge: 110 en y et -2 en x
Translation vert: 34 en y et -12 en x

Image: 00410u.tif
Translation rouge: 7 en y et 1 en x
Translation vert: 15 en y et 10 en x

Afin de réduire les bordures, il serait possible d'écrire un programme simple calculant la moyenne des couleurs sur une ligne ou une colonne. Si une ou plusieurs couleurs ont une moyenne près de 0, alors la ligne ou la colonne devrait être supprimée.

Mes images sont situées ci-dessous:

Image 1
Translation rouge: -17 en y et -14 en x
Translation vert: -15 en y et 8 en x

Image 2
Translation rouge: -1 en y et 12 en x
Translation vert: 2 en y et 8 en x

Image 3
Translation rouge: .. en y et .. en x
Translation vert: .. en y et .. en x