1 Intro
1 Intro
1 Intro
Course M1 - S1
Image processing
- Introduction -
Week 1
Mohammed Hachama
[email protected]
http://hachama.github.io/home
Plan
1. Introduction
3. Numérisation
4. Transformations
Plan
1. Introduction
3. Numérisation
4. Transformations
Illusions d’optique
Illusions d’optique
Illusions d’optique
Illusions d’optique
Illusions d’optique
Traitement d’images
• Niveau 0 : Représentation d’image (acquisition,
échantillonnage, quantification, compression)
• Niveau 1 : Transformations Image/Image (débruitage,
amélioration, segmentation)
• Niveau 2 : Transformations Image/Attribus (Extractions de
points caractéristiques, contour, ...)
• Niveau 3 : Transformation Attribus/Interprétation
(Reconnaissance de formes, navigation autonome,
interpretation des scènes, ... )
• Traitement d’images (Niveaux 0 et 1) ; Analyse d’images (
Niveaux 1 et 2) ; Vision artificielle (Niveaux 2 et 3)
Traitement d’images
Problèmes fondamentaux
• Restauration
Traitement d’images
Problèmes fondamentaux
• Restauration
Traitement d’images
Problèmes fondamentaux
• Restauration
Traitement d’images
Problèmes fondamentaux
• Déconvolution
Traitement d’images
Problèmes fondamentaux
Traitement d’images
Problèmes fondamentaux
• Segmentation
Traitement d’images
Problèmes fondamentaux
• Mise en correspondance
Traitement d’images
Problèmes fondamentaux
• Inpainting
Traitement d’images
Applications
• Reconnaissance de forme
Traitement d’images
Applications
• Reconnaissance de forme
Traitement d’images
Applications
• Inspection manufacturière
Traitement d’images
Applications
• Compression
Traitement d’images
Applications
• Imagerie médicale
Traitement d’images
Applications
Traitement d’images
Applications
Plan
1. Introduction
3. Numérisation
4. Transformations
(x + 1, y ), (x − 1, y ), (x , y + 1), (x , y − 1)
• 4 diagonaux
• Ces 8 pixels
• Certains peuvent être hors image !
? ? ? ? ?
? ? ? ? ?
? ? 0 ? ?
? ? ? ? ?
? ? ? ? ?
? ? ? ? ?
? ? ? ? ?
? ? 0 ? ?
? ? ? ? ?
? ? ? ? ?
? ? ? ? ?
? ? ? ? ?
? ? 0 ? ?
? ? ? ? ?
? ? ? ? ?
Caractéristiques
Soit une image I
• Dynamique :
max I − min I
• Luminance :
Lum = Moyenne(I)
• Contraste :
(I − Moy )2 max I − min I
P
C1 = , C2 =
N max I + min I
Format et stockage
• Un bit (BinaryDigit) = l’élément de base avec lequel travaille
l’ordinateur : sa valeur est 1 ou 0.
• 8 bits = 28 = 256 valeurs possibles. (16 bits = 65.536).
• 1 Byte = 1 octet = 8 bits.
• Image binaire 512 × 512 : 512 × 512 × 1 = 262144 bits =
32768 bytes.
• 512 × 512 8-bit en niveau de gris : 512 × 512 × 1 = 262144
bytes.
• 512 × 512 couleur, avec a byte utilisee pour le stockage de
chaque couleur : 512 × 512 × 3 = 786432 bytes.
Plan
1. Introduction
3. Numérisation
4. Transformations
Numérisation
• Échantillonnage + quantification
Quantification
• Résolution tonale
Quantification
• Résolution tonale
Quantification
• Application 1 : Compression
Image originale/1
Quantification
• Application 1 : Compression
Image réduite/2
Quantification
• Application 1 : Compression
Image réduite/4
Quantification
• Application 1 : Compression
Image réduite/8
Quantification
• Application 1 : Compression//Apparition de faux contours
Image réduite/16
Quantification
• Application 1 : Compression//Dithering : rajouter du bruit
Image réduite/16
Quantification
• Application 1 : Compression (Code Matlab)
8 % Dithering
9 im1 = i m n o i s e ( im , ' g a u s s i a n ' , 0 , 0 . 0 0 0 2 ) ;
10 im2 = im1 /n ;
11 f i g u r e ; imshow ( im2 , [ 0 , 2 5 6 / n ] ) ;
Quantification
• Application 2 : Stéganographie
241 120 60 30 15 7 3 1 0
1 0 0 0 1 0 1 1 −
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 1
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 2
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 3
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 4
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 5
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 6
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 7
Quantification
• Application 2 : Stéganographie
Bitplanes : Originale / Bit 8
Quantification
• Application 2 : Stéganographie
Image originale
Quantification
• Application 2 : Stéganographie
Image + message secret
Quantification
• Application 2 : Stéganographie
Message extrait de l’image
Quantification
• Application 2 : Stéganographie (Code Matlab)
Échantillonnage
• Résolution spatiale : nombre de pixels
Échantillonnage
• Résolution spatiale : unités (1 inch = 2.54 cm)
• dpi : dots per inch (ppp : points par pouce 1 pouce)
• N pixels physiques dans un inch d’un document imprimé.
• ppc : points par centimètres ; ppm : points par millimètre
Échantillonnage
• Résolution spatiale : calcul
• Il faut mettre en relation 3 paramètres
• Dimensions physiques de l’image finale (sur un écran,
imprimée) ou de l’image source (page à scanner)- ex. 30*20 cm
• Résolution de l’image finale - ex. 118 ppc
• Taille en pixels de l’image - ex. 3072*2048 pixels
Échantillonnage
• Résolution spatiale : calcul
• Exemple1. Vous souhaitez imprimer une photo de 13 x10 cm.
Votre imprimeur vous demande de lui fournir des images dont
la résolution est de 300 dpi au moins.
• largeur minimale : 13x300/2,54=1535 pixels
• longueur minimale : 10x300/2,54=1181 pixels.
Échantillonnage
• Résolution spatiale : calcul
• Exemple2. Un écran réglé à 75ppi affiche une photo de
dimension 15x12cm. Quelle est la taille de l’image, en pixels ?
• 75ppi=75/2,54 pixels/cm
• Largeur de l’image : 15*75/2,54 = 443 px
• Hauteur de l’image : 12*75/2,54 = 354 px
Échantillonnage
• Repliement du spectre = distorsion dans le signal due à une
fréquence d’échantillonnage trop faible
Échantillonnage
• Repliement du spectre = distorsion dans le signal due à une
fréquence d’échantillonnage trop faible
Échantillonnage
• Repliement du spectre = distorsion dans le signal due à une
fréquence d’échantillonnage trop faible
Échantillonnage
• Repliement du spectre = distorsion dans le signal due à une
fréquence d’échantillonnage trop faible
Échantillonnage
• Repliement du spectre = distorsion dans le signal due à une
fréquence d’échantillonnage trop faible
Échantillonnage
1 % Read an image
2 im = i m r e a d ( ' i m a g e s / b a r b a r a . png ' ) ;
3
4 % Sampling
5 i m s a m p l e d = im ( 1 : 2 : end , 1 : 2 : end ) ;
6 imshow ( i m s a m p l e d ) ;
7
8 % Save t h e s a m p l e d image
9 i m w r i t e ( im sampled , ' barbara sampled . jpg ' ) ;
Plan
1. Introduction
3. Numérisation
4. Transformations
Transformations
Différents Types
Transformation géométriques
Transformations
Différents Types
Transformation géométriques
• Transformation directe : (i 0 , j 0 ) = T (i, j)
Transformations
Différents Types
Transformation géométriques
• Transformation directe : (i 0 , j 0 ) = T (i, j)
Transformations
Différents Types
Transformation géométriques
• Transformation directe : (i 0 , j 0 ) = T (i, j)
Transformations
Différents Types
Transformation géométriques
• Transformation directe : (i 0 , j 0 ) = T (i, j)
Transformations
Différents Types
Transformation géométriques
• Transformation directe : (i 0 , j 0 ) = T (i, j)
Transformations
Différents Types
Transformation géométriques
• Transformation directe : (i 0 , j 0 ) = T (i, j)
Transformations
Différents Types
Transformation géométriques
• Transformation directe : (i 0 , j 0 ) = T (i, j)
Transformations
Différents Types
Transformation géométriques
• Transformation inverse : (i, j) = T −1 (i 0 , j 0 )
Transformations
Différents Types
Transformation géométriques
• Translation : ! ! ! !
i0 1 0 i ti
= +
j0 0 1 j tj
• Rotation :
! ! ! !
x0 cos θ sin θ x 0
= +
y0 − sin θ cos θ y 0
Transformations
Différents Types
Transformation géométriques
• Rotation :
• Coordonnées par rapport au cente de l’image
Transformations
Différents Types
Transformation géométriques
• Rotation : Interpolation par PPV
Transformations
Différents Types
Transformation géométriques
• Rotation : Interpolation bilinéaire
Plan du cours
• Introduction (1 semaine)
• Traitement spatial (3 semaines)
• Traitement fréquentiel (3 semaines)
• Restauration (3 semaines)
• Segmentation d’images (2 semaines)
Liens utiles
• Cours
• http://github.com/hachama/introimg
• Professeur
• web : https//hachama.github.io/home/
• Email : [email protected]