Organisation du cours d'Imagerie
6 séances de 2h : cours + exercices + programmation
1 examen d’1h30
Introduction à l'imagerie
Contenu :
Introduction au traitement d’images et exemples d'applications
Techniques de traitement d'images
Céline Teulière – Traitement global par histogrammes
– Filtrage
[Link]@[Link]
– Morphologie mathématique
Les supports projetés en classe seront mis en ligne sur l'espace de cours.
Prep'Isima 1 - Imagerie Prep'Isima 1 - Imagerie 2
Exemples d'applications Exemples d'applications
Photographie/video : effets, filtrages, inpainting (complétion), retouches
Photographie/video : effets, filtrages
Exemple PatchMatch: A Randomized Correspondence Algorithm for Structural Image Editing
Prep'Isima 1 - Imagerie 3 Prep'Isima 1 - Imagerie 5
Exemples d'applications Exemples d'applications : colorisation
Photographie/video : effets, filtrages, inpainting (complétion), retouches
Cinéma : Postproduction de films
Zhang et al, Colorful Image Colorization, ECCV 2016
Prep'Isima 1 - Imagerie 6 Prep'Isima 1 - Imagerie 10
Manipulations d'images : pas seulement dans les films Exemples d'applications : industrie
Comptage, contrôle de conformité des pièces en sortie de production
Prep'Isima 1 - Imagerie 11 Prep'Isima 1 - Imagerie 16
Exemples d'applications : médecine Exemples d'applications : art
Imagerie médicale : aide au diagnostic
[Link]
Prep'Isima 1 - Imagerie 17 Prep'Isima 1 - Imagerie 18
Exemples d'applications : détection Exemples d'applications : automobile
Détection de visages Aide à la conduite (détection piétons, parking, ...)
Prep'Isima 1 - Imagerie 19 Prep'Isima 1 - Imagerie 20
Exemples d'applications : automobile Exemples d'applications
IT : compression d'images, indexation
Vidéo-surveillance semi-automatique
Reconnaissance de caractères
Identification de personnes : empreintes digitales
Mask RCNN COCO Object detection and segmentation
Prep'Isima 1 - Imagerie 21 Prep'Isima 1 - Imagerie 24
Exemples d'applications Exemples d'applications
Réalité augmentée
Réalité augmentée
Prep'Isima 1 - Imagerie 25 Prep'Isima 1 - Imagerie 26
Exemples d'applications Quelles sont les problématiques ?
Reconstruction 3D, localisation
Amélioration d'image pour une perception humaine
– Visée esthétique, facilitation de l'analyse…
Segmentation, détection, reconnaissance, suivi d'éléments dans l'image
– Interprétation, identification...
Reconstruction 3D, localisation
– Analyse spatiale 3D
Prep'Isima 1 - Imagerie 27 Prep'Isima 1 - Imagerie 28
De l'image à l'interprétation... De l'image à l'interprétation...
Notre cerveau sait analyser les images apparemment très facilement Le cerveau humain utilise des indices visuels, ou « primitives visuelles »
pour analyser les images formées dans l'œil : contours, couleurs, ombres…
Le cerveau a appris le lien entre ces indices et la distance ou la forme des
objets. On peut ainsi obtenir une idée de la distance même avec un seul œil.
La vision par ordinateur fait également appel très souvent à des primitives
visuelles : contours, points d'intérêt, etc.
Note : depuis quelques années les techniques d'apprentissage par réseaux de
neurones profonds permettent même d'apprendre automatiquement les
primitives les plus pertinentes pour une tâche donnée (classification,
détection etc.)
Prep'Isima 1 - Imagerie 30 Prep'Isima 1 - Imagerie 35
Primitives visuelles Différents niveaux d'analyse de l'image
Formation, acquisition d'image
Pré-traitement de l'image
Extraction d'éléments caractéristiques
Détection, segmentation
Analyse géométrique 3D
Interprétation pour la prise de décision
Prep'Isima 1 - Imagerie 36 Prep'Isima 1 - Imagerie 38
Programme de ce cours Amélioration/filtrage d'images
Focus sur l’amélioration/le filtrage d’images
1) Introduction (représentation de l'image, niveaux de traitement)
2) Traitements globaux de l'image
– Histogrammes (Étirement, égalisation,...)
3) Traitements locaux de l'image
– Filtrage spatial
– Morphologie mathématique
Prep'Isima 1 - Imagerie 39 Prep'Isima 1 - Imagerie 40
Causes possibles de défauts de l'image Objectif
Sur- ou sous-illumination Les techniques d'amélioration d'images visent à améliorer la perception
subjective que l'on peut avoir de l'image, à la rendre plus facile à interpréter.
Poussière sur objectif
Mouvement : flou de bougé Généralement on ne crée pas de nouvelle information, mais on modifie
l'information présente pour la rendre plus facile ou agréable à percevoir, ou
Distorsions géométriques (voir cours d’optique !)
plus facile à traiter par la suite.
Perturbations électromagnétiques lors de l'acquisition
Échantillonnage et quantification Ex : Nous ne sommes pas toujours capables de percevoir la différence entre
des couleurs proches, le fait d'augmenter l'écart entre deux couleurs va
Perte ou corruption des données lors de la transmission pouvoir faire apparaître des détails que nous ne pouvions pas percevoir sans
cela.
...
Prep'Isima 1 - Imagerie 41 Prep'Isima 1 - Imagerie 46
Qu'est-ce qu'une image ? Définitions
Plusieurs points de vue : Une image est représentée par :
Pour un informaticien : tableau d'unsigned char (ou 3 canaux si – Une fonction continue I(x,y), x, y
image couleur...) – Une fonction numérique I(i,j) , avec et I
Pour un physicien : observation de l'intensité lumineuse arrivant sur Le passage de l'image analogique à l'image numérique est appelé :
un plan (pellicule argentique, capteur CCD/CMOS) Numérisation
Pour un mathématicien : une fonction I(x,y) qui correspond à la La numérisation implique deux choses essentielles :
projection planaire d'un espace à 3 dimensions. – L'échantillonnage : discrétisation spatiale de l'image
– La quantification : discrétisation des valeurs de luminance I de
l'image
Une image numérique est composée d'un ensemble fini d'éléments appelés
pixels (picture elements)
Prep'Isima 1 - Imagerie 47 Prep'Isima 1 - Imagerie 48
En clair... Représentation des images numériques
Pour une image réelle de taille donnée :
- L'échantillonnage définit le nombre et la taille des pixels En niveaux de gris, une image numérique peut être représentée par une
matrice de dimension : (nb de lignes) x (nb de colonnes)
Chaque élément (i,j) de la matrice correspond à un pixel et représente son
niveau d'intensité lumineuse I(i,j), généralement entre 0 et 255 (soit 256
niveaux de gris)
0 → Noir ; 255 → Blanc j
- La quantification définit le nombre de teintes utilisées, donc le nombre de bits
Prep'Isima 1 - Imagerie 49 Prep'Isima 1 - Imagerie 50
Représentation surfacique de l'image Représentation des images numériques : couleur
Dans le cas des images couleur, l'image est représentée par 3 plans couleur
(RVB le plus souvent).
Chaque plan est codé sur 256 niveaux donc
chaque couleur est codée sur 24 bits.
On a donc 224 couleurs possibles.
L'image en niveaux de gris peut être obtenue par synthèse additive des
plans RVB : L = (R+V+B)/3
0 → Noir Note : on utilise également la relation L = 0.3R + 0.59V + 0.11B pour
255 → Blanc
prendre en compte les différences de perception des couleurs élémentaires
chez l'homme
Prep'Isima 1 - Imagerie 51 Prep'Isima 1 - Imagerie 52
Représentation des images numériques : couleur
Il existe d'autres espaces colorimétriques : HSV, XYZ, YUV, Lab
plus adaptés à la perception humaine des couleurs.
Par exemple HSV : Hue (Teinte), Saturation, Value (Luminance)
Prep'Isima 1 - Imagerie 53 Prep'Isima 1 - Imagerie 54
Différents types de traitements Plan
On peut distinguer : 1) Introduction (représentation de l'image, niveaux de traitement)
les transformations photométriques qui agissent sur la valeur 2) Traitements globaux de l'image
d'intensité des pixels – Histogrammes (Étirement, égalisation,...)
les transformations spatiales qui agissent sur la position des pixels 3) Traitements locaux de l'image
Certaines transformations peuvent bien sûr agir sur les deux – Filtrage spatial
– Morphologie mathématique
Traitements globaux : même fonction appliquée à tous les pixels de
l'image
Traitements locaux : la fonction appliquée à un pixel dépend de son
voisinage
Prep'Isima 1 - Imagerie 55 Prep'Isima 1 - Imagerie 56
Amélioration d'images : modification d'histogrammes Quelques définitions : Contraste
Problème : images trop sombres ou trop claires, manque de contraste Définition 1 : variation maximale entre la valeur de niveau de gris
maximale et minimale
Définition 2 : écart-type des variations de niveaux de gris dans l'image
Prep'Isima 1 - Imagerie 57 Prep'Isima 1 - Imagerie 58
Transformations photométriques globales Exemple simple : binarisation
Valeur finale
La nouvelle valeur du pixel s'exprime comme une fonction de la valeur 255
initiale du pixel
On peut représenter cette fonction graphiquement :
Valeur finale 0 seuil 255 Valeur initiale
Valeur initiale
Prep'Isima 1 - Imagerie 60 Prep'Isima 1 - Imagerie 62
Exemple simple : L'histogramme
Valeur finale
255
L'histogramme représente la distribution des intensités dans l'image
Pour une image en 256 niveaux de gris, l'histogramme est un vecteur h de
taille 256 défini par : h(m) = card{p, I(p) = m}
Donc h(m) est le nombre de pixels de l'image ayant l'intensité m
0 255 Valeur initiale
L'histogramme ne contient aucune information spatiale
Prep'Isima 1 - Imagerie 63 Prep'Isima 1 - Imagerie 65
L'histogramme : Etirement Réhaussement du contraste : stretching
Valeur
finale 255
Stretching (étirement) d'histogramme Réhaussement linéaire :
Etirement d'histogramme
Valeur
min max
0 255 initiale
Prep'Isima 1 - Imagerie 66 Prep'Isima 1 - Imagerie 67
Réhaussement du contraste : stretching L'histogramme : Etirement
Étirement et saturation :
Effet sur l'image
Le stretching défini précédemment étire l'histogramme en partant de
l'intervalle [min,max].
En pratique il peut y avoir quelques pixels proches de 0 ou de 255, mais
la majorité des pixels concentrée.
Dans ce cas on n'étirera pas l'intervalle [min,max] mais un intervalle [a,b]
qui contient par exemple 90 % des pixels de l'image.
Valeur finale Nb de pixels 6
255 5
4
3
2 Niveau
Valeur 1 de gris
a b initiale 0 a b
0 255 0 15
Prep'Isima 1 - Imagerie 68 Prep'Isima 1 - Imagerie 69
En pratique ? Modification d'histogramme
Valeur
Exemple d'image (pixels sur 4 bits) : finale 255
4 4 9 10 10
Valeur
7 4 7 9 10 min max
0 255 initiale
7 7 4 7 9
Effet ?
10 8 4 6 6
10 7 6 6 6
Quel est son histogramme ? Son histogramme étendu ?
Prep'Isima 1 - Imagerie 70 Prep'Isima 1 - Imagerie 75
L'histogramme cumulé L'histogramme : égalisation
L'histogramme cumulé est le vecteur dont chaque élément est la Idée : obtenir une répartition uniforme des niveaux de gris
somme des éléments précédents dans l'histogramme :
Pas spatialement !
→ même nombre de pixels de chaque niveau de gris
Donc chaque élément de l'histogramme cumulé représente le
L'histogramme et l'histogramme cumulés deviendraient ?
nombre de pixels dans l'image dont la valeur est inférieure ou égale à m.
Prep'Isima 1 - Imagerie 77 Prep'Isima 1 - Imagerie 78
L'histogramme : égalisation L'histogramme : égalisation
En pratique ? Exemple
Pour chaque valeur d'intensité m on affecte la nouvelle valeur :
Où N est le nombre de pixels et M le nombre de niveaux de gris
Prep'Isima 1 - Imagerie 79 Prep'Isima 1 - Imagerie 81
L'histogramme : égalisation Étirement vs égalisation d'histogramme ?
L'étirement et l'égalisation d'histogramme sont utilisés pour améliorer la
visualisation d'une image mais l'effet est un peu différent :
L'étirement modifie la position des « bins » de l'histogramme, mais pas
leur valeur
L'égalisation modifie les deux : plusieurs « bins » peuvent fusionner
Prep'Isima 1 - Imagerie 82 Prep'Isima 1 - Imagerie 83