christophe doignon - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de...

117
Vision industrielle Christophe DOIGNON Maître de Conférences HdR ENSPS Master Sciences pour l'Ingénieur spécialité Mécatronique « L'objectif de cette formation est d'acquérir des compétences dans le choix et l'exploitation des capteurs de vision pour l'analyse d'images numériques dans un contexte industriel. Les aspects relevant de la physique, de l'informatique, du traitement du signal et de la géométrie y sont notamment abordés » courriel : [email protected] site web : http://eavr.u-strasbg.fr/~christophe édition 2010

Upload: others

Post on 12-Aug-2020

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Vision industrielle

Christophe DOIGNON

Maître de Conférences HdR ENSPS

Master Sciences pour l'Ingénieurspécialité Mécatronique

« L'objectif de cette formation est d'acquérir des compétences dans le choix et l'exploitation des capteurs de vision pour l'analyse d'images numériques dans un contexte industriel. Les aspects relevant de la physique, de l'informatique, du traitement du signal et de la géométrie y sont notamment abordés »

●courriel : [email protected]●site web : http://eavr.u-strasbg.fr/~christopheédition 2010

Page 2: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 3: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Plan du cours

0. Applications

1. Formation des images

2. Introduction à la segmentation des images

3. Localisation 3D

Page 4: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Bibliographie Multiple view geometry in computer vision, Andrew Zisserman,

Introductory techniques for 3-D computer vision, Emanuele Trucco, Alessandro Verri, Prentice Hall, ISBN:0-13-261108-2, 1998, 330 pages

Geometric Invariance in Computer Vision, J. Mundy, A. Zisserman,MIT Press, ISBN: 0-262-13285-0, 1992, 540 pages

Computer and Robot Vision, R.M. Haralick, L.G. Shapiro, Addison-Wesley Publishing, 1992, 0-201-10877-1, (2 volumes), 1340 pages

Digital Image Processing, K. Castleman,Prentice Hall, ISBN: 0-13-211467-4, 1996, 650 pages

Handbook of Image and Video Processing, A. Bovik,Academic Press, ISBN:0-12-119790-5, 2000, 880 pages,

Practical Handbook on Image Processing for Scientific Applications, B. Jähne,CRC Press, ISBN: 0-8493-8906-2, 1997, 536 pages

Image Analysis for the Biological Sciences, C.A. Glasbey and G.W. Horgan,Vic Barnett Editor,Wiley & Sons, ISBN:0-471-93726-6, 1995, 210 pages

Page 5: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Chapitre 0. Applications

La vision 3-D concerne les processus associés à la vision artificielle de scènes 3D. Il s’agit :

de la projection d’un objet de la scène dans une image,

des liens entre différentes projections de cette scène,

De la reconstruction de celle-ci à partir des projections images.

Les applications sont diverses et variées :

localisation, métrologie, suivi visuel, navigation, asservissement visuelreconnaissance,modélisation,réalité augmentée et synthèse d’images.

Page 6: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Chapitre 1. Formation des images

1. Dispositifs d’acquisition

2. Les signaux analogiques vidéo

3. Numérisation des images

4. Document annexe : caméras numériques

Page 7: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Chapitre 2. Introduction à la segmentation des images

1. Réduction du bruit

2. Histogramme – égalisation

3. Binarisation et seuillage

4. Détection des contours et des coins

5. Opérations ponctuelles

6. Normalisation et comparaison d'images

7. Détection des droites

Page 8: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Chapitre 3. Transformationset Localisation 3-D

1. Transformations euclidiennes, affines et projectives,

2. Localisation 3-D

Page 9: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Chapitre 0. Applications

Page 10: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Applications – 1

Surveillance des forêts et zones agricoles

Page 11: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Applications – 2

Reconnaissance d’empreintes digitales

Page 12: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Applications – 3

Détection des flux de gaz

Page 13: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Applications – 4

Climatologie

Page 14: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Applications – 5

Détection des défauts – Contrôle de la qualité

Page 15: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Applications – 6

Mosaïque d’images – Visualisation des reliefs

Page 16: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Applications – 7

Modélisation d’objets – Rendu 3-D

Page 17: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

1. Dispositifs d’acquisition

● Caméra – Entrelacée– Progressive– Couleur– Infra-rouge

–● Objectifs

● Carte électronique d’acquisition

Chapitre 1. Formation des images

Page 18: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

2. Les signaux vidéo standards

● RS-170 (USA/Japon)– 525 lignes– 30 images/seconde

● CCIR (Europe/Australie)– 625 lignes– 25 images/seconde

NTSC (USA/Japon)– 525 lignes– 30 images/seconde

PAL (Europe/Australie)– 625 lignes– 25 images/seconde

noir et blancnoir et blanc couleur couleur signaux composites :signaux composites :

couleur couleur signal trichromatique : R,G,Bsignal trichromatique : R,G,B

Page 19: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

L'entrelacement des trames d'une image

Timing du format CCIR (industriel européen)

Page 20: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

L'entrelacement des trames d'une image

Page 21: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Effet de flou du à la conjonction d'un mouvement rapide des objets de la scène devant la caméra et à l'entrelacement des trames d'une image (format CCIR).

L'analyse de l'image entière semble délicate.

Page 22: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

La séparation des trames permet d'analyser plus facilement l'image (résolution verticale divisée par 2).

Page 23: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

122Nombre de champs (field)

Non-entrelacé

entrelacéentrelacéType de balayage484577485Nb de lignes visibles

48422-310336-623

21-26320-262

Lignes visibles525625525Nombre de lignes262,5312,5262,5Fh / Fv

59,9401 Hz50,0 Hz59,9401 HzFréquence de balayage vertical Fv

16,6833 ms20,0 ms16,6833 msDurée du balayage verticale15,734 kHz15,625 kHz15,734 kHzFréquence de balayage horizontal Fh

63,5556 us64,0 us63,5556 usDurée du balayage horizontalVGACCiRRS-170

Caractéristiques des différents formats

Autres formats : Ethernet, Video USB, IIDC Firewire, CamLink,...

Page 24: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Caractéristiques spectrales d'une caméra CCIR

● Le spectre du visible s’étend de 400 à 700 nm environ.

Page 25: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Caractéristiques spectrales d'une caméra couleurpar rapport à celles de l'oeil humain

● norme CIE : λR = 700 nm,

λG = 546,1 nm, λ

B = 435.8 nm

Page 26: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Diagramme de chromaticité (x,y)

y= 32

B−RRGB

−12

x= 32

GRGB

−12

• z = 1-x-y

• Blanc : x=y=z (point d'énergie équi-répartie)

• Proche du bord : couleur pure

Page 27: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Synoptique générale de l’acquisition d’images

3. Numérisation d’images

Page 28: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Exemple de numérisation d’une image en niveaux de gris

Le niveau de gris d'un pixel reflète la quantité de lumière arrivant surune cellule CCD de la caméra : 0 => noir ; 255 => blanc (256 niveaux)

Page 29: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Numérisation d’une image en couleur

La plupart du temps, les pixels sont codés sur 16 bits ou 24 bits.

Pour le codage sur 24 bits, chaque canal R, G ou B contient une valeurallant de 0 à 255 (256 niveaux/canal) et les octets sont rangés en mémoirede manière séquentielle : R,G,B,R,G,B,R,G,B,...

60251128 =

Page 30: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Image originale Composante R

Composante G Composante B

Exemple d’une image RG,B

Page 31: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Codage numérique compressé d’une imageen couleur provenant d'un signal composite

Pour le codage sur 16 bits de chaque pixel, la luminance est codée sur 8bits et la couleur (chrominance bleue Cb ou chrominance rouge Cr) sur 8bits. Lecodage de la couleur est généralement la même pour deux pixels adjacents.

Ainsi, pour deux pixels P0 et P1 successifs, la luminancede chacun est propre, mais pas la chrominance qui est commune. On a alorsla séquence de codage YCbCr (de 8 bits) suivante:Y0 Cb0 Y1 Cr0 pour les deux premiers pixels, puis Y2 Cb2 Y3 Cr2,.....

Le contenu informatif de la couleur est bien moindre avec le codage YCbCrqu'avec le codage RGB. Il existe une formule de convertion liant ces deuxcodages (norme ITU-R BT.601) :

Y = 65.481 R + 128.553 G + 24.966 B + 16Cb = -37.797 R - 74.203 G + 112.0 B + 128Cr = 112.0 R - 93.786 G - 18.214 B + 128

Page 32: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Codage numérique d’une image en couleurprovenant d'un signal composite

Pour le codage appelé YUV utilisé par les systèmes PAL (PhaseAlternation Line), NTSC (National Television System Commitee) etSECAM (Séquentiel Couleur Avec Mémoire) qui diffuse les donnéesTV, l'information de luminance est contenue dans la composante Y,et la couleur dans les composantes U et V.C'est un espace qui est lié à l'espace cartésien RGB par une trans-formation linéaire :

Y = 0.299 R + 0.587 G + 0.144 BU = -0.147 R - 0.289 G + 0.439 BV = 0.615 R - 0.515 G - 0.100 B

La pureté de la couleur (saturation, S) est représentée par le rayonet la teinte (hue, H)par l'angle avecl'horizontaleS=U 2V 2 H=arctanV /U

Page 33: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

L'espace HSI (Hue, Saturation ,Intensity)

Dans la représentation HSI, l'intensité lumineuse est contenue dans lacomposante I, et la couleur dans les composantes H et S. Contrairement àYUV qui n'est qu'un codage électronique, HSI reflète bien la façon dontl'oeil humain perçoit les couleurs. C'est un espace de couleur qui est lié àl'espace cartésien RGB par la transformation non-linéaire suivante :

x= 162R−G−B z=I= 1

3RGB

S= max

=1−3 min R ,G , BRGB

y= 12G−B

=arc cos[

12R−GR−B

R−G 2R−BG−B] H= si G≥B

2− sinon

=x2y2=x2y2

Page 34: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

L'espace HSI (Hue, Saturation ,Intensity)

(gauche) Image originale; (centre) diminution de 20% de la saturation (droite) augmentation de 40% de la saturation

Page 35: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Documents annexes :

- Les caméras (document Imasys)- La vision 3D par lumière structurée (Laser 2000)

Page 36: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Chapitre 2. Introduction à la segmentationL'analyse des images regroupe plusieurs disciplines que l'on classe endeux catégories :

Les processus de bas-niveaux, qui nécessitent très peu d'informations surle contenu des images. Il s'agit des processus de filtrage, d'amélioration etde restauration d'images, processus que l'on regroupent sous le terme detraitement d'images, ainsi que l'extraction d'indices.

Les processus de haut-niveaux, qui fonctionnent en aval de deux de bas-niveaux, et qui peuvent nécessiter des informations sur le contenu desimages. Il s'agit de la reconnaissance de formes, de la reconstruction 3-D,les processus cognitifs de façon générale.

SegmentationAcquisitiond'images

InterprétationPrétraitement

L'analyse d'images est une chaîne de traitements de l'information

Page 37: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 38: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Exemples

Page 39: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Echantillonnageet Résolution

Page 40: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Exemples dequantification

Page 41: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Exemples

Différents types d'image :

• image à niveaux de gris,

• image binaire,

• image couleur,

canaux de couleurs

(niveaux d'intensité)

Page 42: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

1. Réduction du bruit

Le prétraitement d'images regroupe l'ensemble des processus visant àaméliorer les caractéristiques iconiques d'une image. Le résultat est toujoursune image.

Le lissage local : il s'agit de diminuer le bruit, ou les petites variationsprésentes dans une image. L'intensité d'un pixel est transformée en fonctiondes intensités sur un petit voisinage du pixel.

Une première classe d'approches est basée sur la redondance d'informationspar l'emploi du filtrage linéaire. Dans le cas du moyennage, la nouvelle valeurd'un pixel est calculée par un moyennage des valeurs sur un voisinage. Cetteopération correspond à la convolution discrète de l'image I par un filtre linéaireà réponse impulsionnelle finie (FIR) de masque h :

où I est l'intensité de l'image d'origine, I' est l'intensité de l'image filtrée.W est le voisinage utilisé et h est le masque de convolution.

∑m , n ∈W

hm , n =1I ' i , j = ∑m , n ∈W

h m , n I i−m , j−n

Page 43: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Pixel traité

Voisinage• Le moyennage sur un voisinage 3x3 :

Le moyennage est : un filtre passe-bas, il rend l'image floue, en particulier les contours, il élimine les dégradations locales de faibles dimensions et est validelorsque les objets présents dans l'image sont de dimensions supérieuresaux dégradations,

Autre filtre de moyennage : approximation d'unfiltre gaussien discret, adapté au filtrage des bruitsgaussiens.

h=1 /16[1 2 12 4 21 2 1]

h=1 /9[1 1 11 1 11 1 1]

Réduction du bruit (2)

Page 44: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Illustration de la convolution pour W = 3 (filtre FIR).

Page 45: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 46: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 47: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Exemple de filtrage non linéaire : le filtre médian

Les filtres de moyennage ont tendance à rendre l'image floue et donc àperdre de l'informations sur les contours caractérisés par des fortesvariations de l'intensité. Afin de diminuer cet effet, on ne moyenne plus levoisinage, mais on prend la valeur médiane sur ce voisinage.

Exemple sur un voisinage monodimensionel :

Exemple sur un voisinage bi-dimensionnel :

C'est un filtre non linéaire,

Il élimine le bruit impulsionnel,

Il préserve l'information sur le contour et peut être appliqué itérativement,

Il élimine les contours très fins. Un voisinage adapté permet de limiter cet effet.

I=[2 12 122 12 602 2 12] 12

L=1,6 ,3 ,12 ,9 6

Réduction du bruit (3)

Page 48: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Réduction du bruit (4)

A B

Résultat d'un filtrage médian

(A) : Image originale – (B) image bruitée

Résultat d'un filtrage linéaire de moyennage

Page 49: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 50: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

2. Moyenne et contraste

Page 51: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

2. Contraste (non linéaire) et énergie

Energie de l'image f (x,y) (r lignes et c colonnes)

E f =∑x=1

x=c

∑y=1

y=r

f x , y2

Page 52: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

3. HistogrammesL'histogramme d'une image hist(i) est la fonction qui associe à une valeur

d'intensité i (ou de couleur) , le nombre de pixels de l'image ayant cette valeur.

Page 53: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

3. Histogrammes

Histogramme de couleur (variable H de HSI)

Page 54: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

L'amélioration d'images consiste à modifier les caractéristiques visuelles de l'image (contraste,...) pour faciliter son interprétation par un oeil humain.

Il peut s'agir de rehausser les contrastes, d'accentuer certaines intensités pour mettre en valeur une région,... Les histogrammes sont fréquemment utilisés pour effectuer ce type d'opérations.

3. Modification d'histogrammes

Page 55: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Application à la suppression d'un fond non-uniforme

La soustraction de l'imageoriginale par l'image du fondpermet de faire ressortir lescaractéristiques bimodales etdonc les objets d'intérêts.

Page 56: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Pour une image couleur, il y a un histogramme par composante, L'histogramme peut être normalisé pour donner une estimation de la densité

de probabilité des pixels :

et

Un histogramme peut avoir un pic (unimodal), deux pics (bimodal) ou plusieurs pics d'intensité (multimodal).

Modifications d'histogrammesPour modifier les caractéristiques de l'image (accentuer les contrastes en

général), une approche consiste à appliquer une fonction qui associe à chaque valeur d'intensité dans l'image une nouvelle valeur. Cette fonction va modifier l'histogramme de l'image. Soient i,i' < MaxInt , les valeurs d'intensité de l'image traitée, on considère alors les transformations du type : i' = T(i) qui donne une nouvelle valeur d'intensité i' pour chaque valeur de i de l'image.

Histogrammes – égalisation (1)

∑i

p i =1p i =hist i /∑j

hist j

Page 57: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Histogrammes – égalisation (2)On suppose que la fonction T() est telle que :

T(i) est monotone sur l'intervalle considéré. Cette condition assurant que l'ordre des intensités est préservé après transformation.

0 < T(i) < MaxInt pour 0 < i < MaxInt qui garantie que la nouvelle image est cohérente avec les niveaux d'intensité autorisés.

La transformation inverse satisfait les deux conditions précédentes.

Parmi les transformations linéaires, nous présentons ici le réhaussement de contraste (contrast stretching) qui consiste à modifier l'intervalle des valeurs d'intensité (la dynamique) de façon à obtenir pour l'image améliorée un intervalle de valeurs maximal. Si [i1,i2] est l'intervalle de l'image traitée, alors la transformation équivalente s'écrit :

Typiquement (MaxInt =255, i1 = max, i2=min) :

T i =MaxInt i−i2 / i1−i2

I ' x , y = 255max−min

I x , y−min

Page 58: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Histogrammes – égalisation (3)

Exemple d'égalisation d'histogrammes

Page 59: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 60: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 61: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Réhaussement de contrastes (par Laplacien)

Traitement local prenant en compte le voisinage de chaque pixel balayage systématique de l’image par une fenêtre d’analyse (convolution discrête avecLe L a pla c ie n )

Principe en 1 D Principe en 2 D

S : signal

D2 : dérivée seconde

D2 = S(i-1) - 2 * S(i) + S(i+1)

Sm = S - K * D 2

D = D2i + D2j

= S(i-1,j) - 2* S(i,j) + S(i+1,j)

+ S(i,j-1) - 2* S(i,j) + S(i,j+1)

Sm ( i, j ) = S(i , j ) - K * D

Page 62: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Réhaussement de contrastes (par Laplacien)

Page 63: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Histogrammes – linéarisation (1)Une modification d'histogramme très répandue pour augmenter le contrastede manière automatique est la linéarisation d'histogramme. Il s'agit d'unetransformation non-linéaire. Le principe est de transformer l'image de manièreà obtenir un histogramme plat, soit une distribution uniforme des intensités.Cela revient à maximiser l'entropie de l'image et donc à obtenir théoriquementune image présentant une information maximale. La fonction de distributionidéale après transformation est :

Supposons tout d'abord que l'on se place dans le cas continu et que la transfor-mation T soit strictement croissante, alors :

D'où :

avec i' = T(i). On a :

soit :

Dans le cas discret, latransformation s'écrit :

di '=MaxInt p i di

p ' i ' =1/MaxInt

p ' i ' =p i didi '

T i =MaxInt∑j=0

i

hist j / ∑j=0

MaxInt

hist j

i'=T i =MaxInt∫0

i

p w dw

Page 64: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Histogrammes – linéarisation (2)

Dans le cas discret, et du fait que l'histogramme soit une approximationd'une fonction de densité de probabilité, l'histogramme résultant est trèsrarement parfaitement plat.

Pour une image majoritairement claire, la linéarisation va augmenter ladynamique de la partie sombre de l'histogramme au détriment de la partieclaire.

La linéarisation d'histogramme permet d'effectuer des comparaisonsd'images sur une même base d'images.

Cette opération peut s'effectuer par région : linéarisation adaptative.

Page 65: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Histogrammes–linéarisation (3)

Exemple de linéarisationd'histogramme :

Page 66: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

3. Binarisation - Seuillage

Le seuillage est une opération qui permet de distinguer les pixels dontla valeur de l'intensité est supérieure à un seuil I0 de ceux dont la valeurde l'intensité est inférieure à I0. La binarisation consiste à remplacer lavaleur d'intensité des pixels supérieure à I0 par MaxInt et à remplacer lavaleur d'intensité des pixels inférieure à I0 par 0 : la binarisation est doncune opération (non-linéaire) particulière de seuillage.

Le principal problème est de déterminer la valeur du seuil I0.

Page 67: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Binarisation – Seuillage (2)

A

B

C

D

Histogramme du connecteur BNC-T et images binaires de ce mêmeconnecteur pour 4 valeurs du seuil I0 : 110 (A), 130 (B), 150 (C) et 170 (D)

image d'un connecteur BNC-T

Page 68: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

A

B

C

D

Page 69: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

A

B

C

D

Page 70: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Binarisation – Seuillage (3)Méthode du minimum de variance intra-groupe (Méthode d'Otsu, 1979)Cette méthode permet, à partir d'une image bimodale (généralement unfond et un objet d'intérêt), de déterminer le seuil de binarisation I0=t.On suppose que l'histogramme est composé de deux groupes d'intensitémutuellement exclusifs et homogènes. Chaque groupe formant alors unhistogramme unimodal. La mesure de l'homogénéïté d'un groupe estdonnée par la variance (le carré de l'écart-type) : un groupe très homogènepossède une faible variance.

Notons la somme pondérée des variances des groupes 1 et 2, c'est-à

dire la variance intra-groupe, est la variance pour le groupe dont

les valeurs d'intensité sont inférieures ou égales à t (groupe 1), est la

variance pour le groupe de pixels dont les valeurs d'intensité sont supé-

rieures à t (groupe 2), est la probabilité (pondération) correspondant

au groupe 1, est la probabilité pour le groupe 2, est la moyenne

du groupe 1, est la moyenne du groupe 2.

On a : où :

1 t

W2 =q1t 1

2 t q2 t 22 t

12 t

22 t

q2 t

2 t

W2

q1 t

Page 71: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Binarisation – Seuillage (4)

q2 t =∑i=t1

MaxInt

p i 2 t =∑i=t1

MaxInt

i p i /q2 t

q1 t =∑i=1

t

p i

22 t = ∑

i= t1

MaxInt

[ i−2 t ]2 p i /q2 t

1 t =∑i=1

t

i p i /q1 t 12 t =∑

i=1

t

[ i−1 t ]2 p i /q1 t

Le meilleur seuil t = I0 peut alors être déterminé par une simple recherche

séquentielle au sein de toutes les valeurs possibles de t (entre et

, < 256 valeurs)

qui minimise .

2 t 1 t

W2

Image binaire du connecteur BNC-T avec un seuildéterminé par la méthode d'Otsu (t = 148).

Page 72: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Exercice : Concevoir un programme informatiquequi permet de :

- a) dissocier les billes grises des billes noires,

- b) qui compte automatiquement le nombre de billes et détermine (pour chaque groupe de billes) leur rayon moyen (en pixel),

à partir du fichier « billes.pgm », lorsqu'on ne Dispose pas de l'image de l'arrière-plan seul

Exercice

Page 73: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Nous avons déjà vu qu'il était aisé d'extraire ces billes lorsque l'on disposaitde l'image du fond (seule), ce qui n'est pas le cas ici. Dans cet exercice, lesbilles noires sont facilement extraites par l'emploi d'un seuil global surl'image (cf. histogramme).Cependant, ce n'est pas le cas des billes grises qui ne peuvent pas êtreextraites de la même manière à cause d'une non-uniformité du fond. Onappliqué alors un seuillage adaptatif. Le seuil est calculé localement dansun voisinage entourant chaque pixel (ici, un filtre de moyennage estemployé), la valeur de l'intensité du pixel est comparée à la valeur moyenneobtenue dans le voisinage. Cettedifférence est alors soustraite à lavaleur moyenne du bruit estimé surtoute l'image (ici, NG_bruit = 7).

Page 74: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Exercice : Concevoir un programme informatiquequi permet de :

- a) binariser l'image ci-contre (on visualisera l'histogramme),

- b) déterminer la surface de la feuille (en pixel x pixel),

à partir du fichier « feuille.pgm »

Exercice

Page 75: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 76: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

4. Détection des contours

Les contours représentent des variations (sauts brusques ou transition)de l'intensité lumineuse. Dans le cas d'une scène plane, ils représentent laprojection des contours des objets de la scène. Dans le cas d'une scène3-D, les contours des objets dans une image sont supposés être égale-ment les projections des contours délimitantdes objets de la scène.

Page 77: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détection des contours (2)

Page 78: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détection des contours (2)

Page 79: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détection des contours (2)

Détecteur de Sobel : les contours étant considérés comme marquant les transitionsfortes de niveaux de gris, on applique une dérivation spatiale (gradient) sur l'image.Les opérateurs de détection de contours, basés sur le gradient (dérivée première),permettent de quantifier la largeur de la transition (amplitude du gradient obtenu) etsa direction (direction du gradient) en examinant, pour chaque pixel, un voisinage.Le détecteur de Sobel est uneapproximation discrète de cettedérivée sur un voisinage (3x3) :

détecte les composantes du gradient selon l'horizontale

détecte les composantes du gradient selon la verticaleGv=∂ I∂ v≈I u , v ∗Ov

Gu=∂ I∂u≈I u ,v ∗Ou

Page 80: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détection des contours (3)

Ov=1/4 [−1 −2 −10 0 01 2 1 ]=Ou

t

Gv u ,v ≈ [−I u−1, v−1 −2I u , v−1 −I u1, v−1 I u−1, v1 2 I u ,v1 I u1, v1 ]/4

Gu u , v ≈[−I u−1, v−1I u1, v−1−2I u−1, v 2 I u1, v −I u−1, v1I u1, v1 ]/4

Ou=1/4 [−1 0 1−2 0 2−1 0 1]

arg G =arctan Gv /Gu G=Gu2Gv

2≈∣Gu∣∣Gv∣

Masques de convolution :

Profils de contours (toit à gauche et marche à droite) idéaux et bruités

Page 81: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détection des contours (4)

Résultats de l'application du filtre deSobel (l'amplitude G est visualisé) :

On voit clairement que l'opération dedérivation (filtrage passe-haut) aaccentué le bruit dans l'image.

Les contours dont la réponse (l'amplitude du gradient) est la plus élevée correpondent auxbilles noires : un seuillage peut être envisagé(par exemple) pour les distinguer.

Page 82: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détecteur de Laplace : les opérateurs linéaires basés sur la dérivée première(gradient) sont tous directionnels : ils privilégient des directions (le détecteur deSobel privilégie les horizontales et les verticales). Le détecteur de Laplace est unopérateur linéaire isotrope utilisant une approximation discrète de la dérivéeseconde spatiale (laplacien) sur un voisinage (3x3). Seule, l'amplitude peut êtredéterminée :

Voici deux masques de convolution du détecteur de Laplace correspondant à deuxapproximations possibles de la dérivée seconde spatiale dans un voisinage (3x3) :

Détection des contours (5)

OL=1/8[ 0 −1 −1−1 8 −1−1 −1 −1]OL=1/4[ 0 −1 0

−1 4 −10 −1 0 ]

L u ,v =∇ 2 I u , v =∂2 I∂u2

∂2 I∂ v2≈I u , v ∗OL

Page 83: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détection des contours (6)Image originale

Amplitude du gradient (Sobel) Laplacien

- Les contours correspondent aux passagesà zéro du Laplacien de l'image.

- Etant basé sur la dérivée seconde, le Laplacienamplifie plus le bruit que le filtre de Sobel.

Page 84: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détection des contours (7)

Affinement des contours : les contours sont réduits à un pixel d'épaisseur parla méthode de la suppression des non-maxima locaux.

Grossissement d'une portion de l'image de droite

Page 85: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Détecteur de Harris (1986) :

où I(u,v) est l’intensitélumineuse au point (u,v)

Si , en certains points, les valeurs singulières de la matrice M sont élevées,alors un petit déplacement dans n’importe quelle direction induira uneimportante modification sur l’intensité des niveaux de gris. Cela indique queces points sont des coins. La fonctionproposée par Harris est la suivante :

où k est une constante, dont la valeur dépend de l’échelle de la localisationdu coin (k=0.04 est une suggestion de Harris, mais une approchemulti-échelle est plus appropriée).

r=det M −k [ traceM ]2

M=[ ∂ I∂u

2

∂ I∂u ∂ I

∂ v ∂ I∂u ∂ I

∂ v ∂ I∂ v

2 ]Détection des coins (1)

Page 86: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Remarques : un coin est défini comme un maximum local de la fonction r ,

un coin a un contenu informatif important et sa détection par le détecteurde Harris est invariant par rotation et par changement affine de la luminosité.

une précision sub-pixel peut être obtenue pour la localisation par approx-imation quadratique du voisinage du coin,

afin d’éviter de détecter des « faux » coins (outliers) conséquemment àdu bruit dans l’image, il peut être judicieux de filtrer les images (contenantles composantes de M) avec une fonction gaussienne.

Détection des coins (2)

Page 87: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Application à l'appariement d'un couple d'images (640x480) par mise en correspondance géométrique de points (approx. 500 pts détectés par le filtre de Harris)

Détection des coins (3)

Page 88: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Opérations ponctuelles entre les images

Page 89: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Opérations ponctuelles entre les images (2)

Page 90: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 91: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Normalisation et comparaison entre images

Une manière simple de comparer deux images Ii et Ij (de dimensions NxN)consiste à calculer la corrélation croisée normalisée C

ij définie en chaque

pixel (xi,yi) de Ii et (xj,yj) de Ij . Celle-ci est définie de manière incrémentale,tout d'abord par- la moyenne :

- le produit scalaire :

- la norme L2 :

I i xi , y i=1

2 N12∑u=−N

u=N∑v=−N

v=NI ix iu , y iv

I i , I j xi , yi , x j , y j=1

2 N12∑u=−N

u=N∑v=−N

v=N I ix iu , y iv − I ix i , y i .

I j x ju , y jv − I j x j , y j

∣I i∣x i , y i=I i , I ixi , yi , xi , yi

Page 92: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Normalisation et comparaison entre images (2)

La corrélation croisée normalisée Cij :

On essaie de touver le correspondant dans l'image Ij par corrélation. Pour unpixel (xi,yi) de Ii, on estime la ressemblance du pixel (xj,yj) de Ij. Pour cela, oncompare les pixels autour de (xi,yi) et de (xj,yj). Plus précisément, on mesurela corrélation entre deux fenêtres autour de ces points.

C ij xi , yi , x j , y j=I i , I jx i , y i , x j , y j

∣I i∣ xi , y i ∣I j∣ x j , y j

Page 93: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Normalisation et comparaison entre images (3)

Exemple : comparaison des images droites et gauche par calcul de lacorrélation croisée normalisée des voisinages (en bleu) ci-dessous :

Page 94: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Normalisation et comparaison entre images (4)

PPV dans les 5 voisinages (7x7) définis de la figure précédente

0.9870.280-0.4540.5040.0830.2080.7860.1640.488-0.272-0.7460.1470.773-0.390-0.1820.7190.511-0.4670.750-0.0530.191-0.387-0.163-0.3990.964

Valeurs de la corrélation (croisée) c pour toutes les combinaisonspossibles des 5 voisinages

Page 95: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Une autre manière de comparer deux images (ou une image et une imagette ou une image et un objet) est d'utiliser les moments,en continue :

en discret :

f(x,y) est la fonction de caractérisation de la distribution de l'intensité au sein de la région R.

Les moments centrés :

mpq=∫−∞∞

∫−∞∞

x p yq f x , y dx dy

pq=∑x∈R∑y∈R x−x p y−y q f x , y

mpq=∑x∈R∑y∈R

x p yq f x , y

Page 96: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

En formant la matrice symétrique J ci-contreet correspondant aux moments centrées d'unerégion, il est possible d'en déterminer son orien-tation : celle-ci est donnée par la direction duvecteur propre de la matrice J associée à laplus petite valeur propre.

J=[ 02 −11

−11 20 ]

Page 97: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Les moments centraux normalisés (pour p+q = 2,3,...,) :

Les moments centraux normalisés sont invariants par changement d'échelle de la région R

Les moments de Hu (invariants par translation, changement d'échelle et rotation):

, = pq21etha pq=

pq

00

Page 98: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 99: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 100: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,
Page 101: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Chapitre 3. Transformationset Localisation 3-D

1. Transformations géométriques

transformationseuclidiennes similitudes transformations

affines

transformationsprojectives

Page 102: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

3 (3)Projectif 1-D

2 (2)Affine 1-D

1 (2)Euclidien 1-D

Transformations(coordonnées homogènes)

Degrés de liberté (nb de points définissant une base)

Espaces

w [x '1 ]=[1 t x

0 1 ][x1 ]

w[x '1 ]=[a11 a12

0 1 ][x1 ]w [x '

1 ]=[a11 a12

a21 1 ][x1 ]

Géométrie mono-dimensionnelle

Transformations géométriques (2)

Page 103: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

6 (3 non colinéaires)Affine 2-D

8 (4, aucun triplet colinéaire)

Projectif 2-D

4 (3 non colinéaires)Similitude 2D

3 (3 non colinéaires)Euclidien 2-D

Transformations(coordonnées homogènes)

Degrés de liberté (nb de points définissant une base)

Espaces

w [x 'y '1 ]=[a11 a12 a13

a21 a22 a23

a31 a32 a33][xy1 ]=[ A t

vT a33 ]xy1,det≠0

Géométrie bi-dimensionnelle

w [x 'y '1 ]=[r11 r12 t x

r 21 r22 t y

0 0 1 ][xy1 ], RT R=I ,det R =1

w [x 'y '1 ]=[sr 11 sr12 t x

sr 21 sr 22 t y

0 0 1 ][xy1 ] , RT R=I ,det R =1

w [x 'y '1 ]=[a11 a12 a13

a21 a22 a23

0 0 1 ][xy1 ] ,

Transformations géométriques (3)

Page 104: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

12 (4 non coplanaires)Affine 3-D

15 (5, aucun quadruplet coplanaire)

Projectif 3-D

7 (4 non coplanaires)Similitude 3-D

6 (4 non coplanaires)Euclidien 3-D

Transformations(coordonnées homogènes)

Degrés de liberté (nb de points définissant une base)

Espaces

w[x 'y 'z '1 ]=[

a11 a12 a13 a14

a21 a22 a23 a24

a31 a32 a33 a34

a41 a42 a43 a44]⋅[xyz1 ],det≠0

w [x 'y 'z '1 ]=[ R t

0T 1 ]⋅[xyz1 ] , RT R=I ,det R =1

w [x 'y 'z '1 ]=[sR t

0T 1 ]⋅[xyz1 ], RT R=I ,det R =1

w [x 'y 'z '1 ]=[

a11 a12 a13 a14

a21 a22 a23 a24

a31 a32 a33 a34

0 0 0 1]⋅[xyz1 ],

Géométrie tri-dimensionnelle

Transformations géométriques (4)

Page 105: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

La géométrie projective simplifie l’étude des processus de vision. Nous nous intéresserons tout particulièrement à deux types de transformations projectives :

• La projection perspective qui est une transformation linéaire d’un espace projectif Pn vers un espace projectif Pn-1,(exemple: P3 vers P2 ) :

• L’homographie (ou collinéation) qui est une transformation linéaire bijective d’un espace projectif Pn vers lui-même ,(exemple: P2 vers P2 ) :

w⋅[x 'y'1 ]=[h11 h12 h13

h21 h22 h23

h31 h32 h33]⋅[xy1 ]

w⋅[x 'y'1 ]=[1 0 0 0

0 1 0 00 0 1 0 ]⋅[xyz1 ]

Transformations géométriques (5)

Page 106: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

x1 , x2 , . . . , xn ,0

• Une homographie de Pn a (n+1)x(n+1)-1 degrés de liberté et peut être déterminée à partir de la correspondance entre n+2 points.

• Une base projective de Pn est constituée de n+2 points, tout ensemble de n+1 de ces points étant linéairement indépendant.

• Les points à l’infini de Pn sont les points de coordonnées homogènes :

• Un point à l’infini est équivalent à une direction de Pn.

• Une transformation affine transforme un point à l’infini en un autre point à l’infini.

Transformations géométriques (6)

Page 107: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Transformations géométriques (7)

[A tvT a33 ]⋅xy0=Axy vT xy

A partir d’une transformation affine 2-D :

A partir d’une transformation projective 2-D :

[ A t0T 1 ]⋅xy0 =Axy 0

Page 108: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

2. Estimation de pose (1)

•La relation géométrique entre une scène 3-D et un plan imagela plus courante (issue des modèles de lentilles minces) est baséesur la projection perspective :

• une translation 3-D, une rotation 3-D (objet caméra)• une projection perspective canonique (caméra image)• une transformation affine ( image pixel : matrice triangulaire).

C Q

Centre optique

PPlan image

Scène

objetaxe optique

x c

yc

z c

1=[ R t

0T 1 ]⋅x o

y o

z o

1z c uv1=[G x 0 uc 0

0 Gy vc 00 0 1 0 ]⋅x

c

y c

z c

1

• Modèle perspectif

Page 109: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Estimation de pose (2)

• Les principales hypothèses sous lesquelles ce modèle est validesont les suivantes :

• conditions de Gauss (inclinaison faible et rayons paraxiaux)• lumière monochromatique,• image plane,• plan image perpendiculaire à l’axe optique de l’objectif

• Les paramètres Gx, Gy, uc et vc sont les paramètres intrinsèques ausystème de vision matrice K.

• La transformation entre un objet rigide et le repère de la caméra est unetransformation euclidienne : les paramètres extrinsèques.

Gx=sx f / l x

G y= f / ly

z c u s

vs

1 =[1 0 0 00 1 0 00 0 1 0 ]

Π

⋅ xc

y c

z c

1uv1=[s x f / l x 0 uc

0 f /l y v c

0 0 1 ]K

⋅us

v s

1

Page 110: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Estimation de pose (3)

• Effets non-linéaires :

• ils sont essentiellement dus à la forte courbure aux bordsdes lentilles de l’objectif,plus la longueur focale est faible, plus ces effets sont significatifs

Distorsion radiale

us=udDx

v s=vdD y

avec :Dx=ud κ1r2κ2 r 4. . .

D y=vd κ1 r2κ2 r4 . . . et :r=u

d 2vd 2

Page 111: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Estimation de pose (4)

Page 112: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Estimation de pose (5)

Cela consiste à déterminer les paramètres extrinsèques à partir desdonnées de l’image et d’un modèle géométrique de l’objet (et ensupposant que les paramètres intrinsèques sont connus).

localisation 3-D de l’objet.

La matrice réelle 3x4 M a 11 degrés deliberté. Il faut donc 6 correspondancesentre points de l’objet et points imagespour déterminer cette matrice.

La transformation euclidienne Mco (avec tz > 0) peut être déterminée àpartir de plusieurs correspondances entre points objets et pointsimages.

Un cas particulier très usuel : l’objet contient au moins 4 pointscoplanaires.

w⋅uv1=M⋅ x o

yo

zo

1=K⋅[R t ]

M co

⋅x o

y o

z o

1

• Problème inverse à partir du modèle perspectif

Page 113: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Estimation de pose (6)

Une homographie H = (hij) de plans existe entre 4 points coplanaires del’objet et le plan image. Elle est totalement déterminée (à un facteur près,h33 = 1) par la correspondance de ces 4 points et de leurs projections dansl’image.

Il s’agit de déterminer R = (c1, c2, c3) et t connaissant K :

et c3=c1∧c2

w⋅uv1 =H⋅ x o

yo

1 =K⋅[R t ]M co [1 0 0

0 1 00 0 10 0 0 ]

projection sur le plan z o =0

xo

y o

1

H=K⋅[c1 c2 t ]

• Problème inverse à partir du modèle perspectif : cas plan

Page 114: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Estimation de pose (7)

Chaque correspondance de points Pi Qi fournit deux équations du type :

avec et

, U est un vecteur arbitraire.

[−x − y −1 0 0 0 ux uy0 0 0 −x − y −1 vx vy ]

mT

⋅h11

h12

h13

h21

h22

h23

h31

h32

=[−u−v ]

k

k= k1T , k

2T , . . . , knT

Th=MT M −1 M T

M ¿

KV M=m1T , m

2T , . . . , mnT

T

V= I−M # M U

Page 115: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Estimation de pose (8)

On en déduit que : et

Pb : H est définie à un facteur d’échelle près,

on peut normaliser c1 ou c2 , mais la matrice R obtenue n’est pasforcément une matrice de rotation car

solution alternative : décomposer R en valeurs singulières (SVD) etforcer celles-ci à 1.

[c1 c2 t ]=K−1 H

RT R≠I

c3=c1∧c2

Page 116: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Problème

Les données constructeur d'un système de vision classique composé d'unobjectif, d'une caméra CCD analogique et d'une carte d'acquisition d'imagessur PC sont les suivantes:

focale 25 mmnombre éléments CCD 659 (H) x 494 (V)taille d'un élément CCD 10 x 10 (micro-mètres)taille de l'image (mémoire vidéo) 640 (H) x 480 (V)

En prenant le centre de projection comme origine du repère caméra, et les axes(u,v) du repère image comme direction et sens pour les axes (xc,yc) du repère caméra (l'axe zc pointant vers la scène), indiquer les valeurs des quatre composantes non nulles de la matrice A des paramètres intrinsèques dans les deux cas suivants:

a) le convertisseur analogique-numérique exploite le signal horloge-pixel délivré par la caméra (donc à un élément CCD dans la direction horizontale correspond un pixel),

b) le CAN n'exploite pas ce signal (tous les éléments CCD selon la direction horizontale (659) sont utilisés pour fournir 640 pixels.

Page 117: Christophe DOIGNON - unistra.freavr.u-strasbg.fr/~christophe/cours/mecatron_vi/vi_10.pdf · de restauration d'images, processus que l'on regroupent sous le terme de traitement d'images,

Problème (suite)

On dispose sur un plan parallèle au plan image un ensemble de pastilles de 10 mm de rayon. Ce plan est à une distance de 400 mm (du centre de projection) de la caméra. Quel est la longueur focale de l'objectif à choisir (et donc éventuellement changer l'objectif de longueur focale f=25 mm) afin que les images des pastilles forment des cercles (ou éventuellement des ellipses quasiment circulaires) de périmètre supérieur à 250 pixels ?