traitement numérique de lde limage ’image©trait... · en discret on parlera d’histogramme...

11
Traitement Numérique de lImage de l Image T it t Pré-Traitements TELECOM Nancy 2 ème Année Vincent Bombardier è (MdC HC 61ème Section) Centre de Recherche en Automatique de Nancy -UMR CNRS 7039- Vincent Bombardier Vendredi 11 septembre 2015 ISET Département: Ingénierie des Systèmes Eco-Technique Projet Systèmes Intelligents Ambiants Pré-traitements : Modèle de vision artificielle Prétraitements Segmentation Interprétation Numérisation Mémorisation Système d’acquisition Décision Décision Produit Produit – Objet - Cible Informations ECLAIRAGE Environnement Informations Extraites = Objectif CAPTEUR Montage d'observation Vendredi 11 Septembre 2015 Vincent Bombardier t2 Pré-traitements : Modèle de vision artificielle Choisis en fonction d’un objectif précis : A éli ti R t ti Dét ti d t Amélioration, Restauration, Détection de contours, Classification, Compression, … Prétraitements Image Numérique Image Numérique Image Numérique Image Numérique traitée Vendredi 11 Septembre 2015 Vincent Bombardier t3 Pré-traitements : 3 catégories de traitements Image traitée Image origine T Traitement au niveau du pixel: g(x 0 ,y 0 )=T[f(x 0 ,y 0 )] Look Up Table Histogramme Look Up Table, Histogramme Traitement aux environs du pixel: g(x 0 ,y 0 )=T[f(V)] V:voisinage de (x 0 ,y 0 ) V voisinage de (x 0 ,y 0 ) Filtrage linéaire, non-linéaire, Morphologie mathématique Traitement global: g(x 0 ,y 0 )=T[f(x,y)] Transformée Cosinus, Fourier, d l tt Vendredi 11 Septembre 2015 Vincent Bombardier t4 ondelettes...

Upload: others

Post on 12-Feb-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Traitement Numériquede l’Image de l Image P é T it tPré-Traitements

TELECOM Nancy 2ème Année

Vincent Bombardierè(MdC HC 61ème Section)

Centre de Recherche en Automatique de Nancy -UMR CNRS 7039-

Vincent BombardierVendredi 11 septembre 2015

ISET

ntr ch rch n utomat qu Nancy M N S 7 9Département: Ingénierie des Systèmes Eco-Technique

Projet Systèmes Intelligents Ambiants

Pré-traitements : Modèle de vision artificielle

Prétraitements Segmentation InterprétationNumérisationMémorisation

Systèmed’acquisition Décisionq Décision

ProduitProduit – Objet -

Cible

Informations ECLAIRAGE Environnement

Informations Extraites= Objectif

CAPTEUR

Montaged'observation

Vendredi 11 Septembre 2015 Vincent Bombardier t2

j

Pré-traitements : Modèle de vision artificielle

Choisis en fonction d’un objectif précis :A éli ti R t ti Dét ti d tAmélioration, Restauration, Détection de contours,Classification, Compression, …

PrétraitementsImage Numérique Image Numérique Image Numérique Image Numérique

traitée

Vendredi 11 Septembre 2015 Vincent Bombardier t3

Pré-traitements : 3 catégories de traitements

Image traitéeImage origine

TTraitement au niveau du pixel:

g(x0,y0)=T[f(x0,y0)]Look Up Table HistogrammeLook Up Table, Histogramme

Traitement aux environs du pixel: g(x0,y0)=T[f(V)]

V:voisinage de (x0,y0)V voisinage de (x0,y0)Filtrage linéaire, non-linéaire, Morphologie

mathématique

Traitement global: g(x0,y0)=T[f(x,y)] Transformée Cosinus, Fourier,

d l tt

Vendredi 11 Septembre 2015 Vincent Bombardier t4

ondelettes...

Pré-traitements : Profil de ligne

0,0 511 x Ng

255

i1

255

127i2

511y 511 x00

NNg255

127

Vendredi 11 Septembre 2015 Vincent Bombardier t5511 x0

0

Pré-traitements : Contraste – Brillance - Intensité

• Mesure relative des différences dans l’image

IIBC

é

I

))((1

:sdéfinition Autres

21 1

IjiICN M

)),(( 2

0 0IjiI

NMC moy

i j

)(min)(max

),(min),(maxjiIjiIjiIjiIC

Vendredi 11 Septembre 2015 Vincent Bombardier

),(min),(max jiIjiI

Pré-traitements : Histogramme

Histogramme

Un histogramme représente le nombre(ou la proportion) de pixels en fonctiondu niveau de gris

Histogramme Cumulatif Normalisédu niveau de gris

Distribution des valeurs de niveaux degris dans une image

H(x) = Nb de pixels dont le NG =x

HC(x) = Taux de pixels dont

Vendredi 11 Septembre 2015 Vincent Bombardier t7

le NG est inférieur à x

Pré-traitements : Histogramme

Histogrammes normalisés

255,0, iiH

I

255,0,

NbLigNbColiHiH

iiH

n

Vendredi 11 Septembre 2015 Vincent Bombardier t8

255I In

Pré-traitements : Exemples d’histogrammes

Exemple d’histogramme bien répartiExemple d histogramme bien réparti

Une image mal contrastée a un histogramme concentré sur une sous partie des intensités disponiblespartie des intensités disponibles

Des regroupements ou pics dans l’histogrammepeuvent indiquer des structuresou objets dans l’image

Vendredi 11 Septembre 2015 Vincent Bombardier t9

Pré-traitements : Table de Transfert (LUT)

Utilisation d’une Table de Transfert ou LUT (Look Up Table)

/* I i i li i d l LUT à i *//* Initialisation de la LUT à rampe croissante */Pour i=0 à 255

LUT[i] = i;

/* Application de la LUT */Pour i=1 à nblig

Pour j=1 à nbcolI’

Pour j=1 à nbcolI’(i,j) =LUT[I(i,j)]; 255

I : Niveau de Gris d’entrée

I’ : Niveau de Gris de SortieI : Niveau de Gris de Sortie

I’(x,y) = F(I(x,y)) I0

2550

Vendredi 11 Septembre 2015 Vincent Bombardier t10

2550

Pré-traitements : Expansion de dynamique

255%

LUT Identité

255

0 255255 0 255min max

LUT Expansion de Dynamique255

Vendredi 11 Septembre 2015 Vincent Bombardier t11

min max255 0 255

Pré-traitements : Expansion de dynamique

I’

2NG 1 Implémentation

2NG - 1/* Initialisation de la LUT */Pour i=0 à 2NG - 1

LUT[i]= (2NG 1 )*(i minI)/(maxI minI);I’(i,j)

LUT[i]= (2NG - 1 )*(i-minI)/(maxI-minI);

/* Application de la LUT */Pour i=1 à nblig

Imin max0

I(i,j)

Pour i 1 à nbligPour j=1 à nbcol

I’(i,j) =LUT[I(i,j)];

0)('0)12(

min)(minmax

jiIjiI

NG

min))(()12('

0),(min),(

jiIAlors

jiIjiI

NG

Vendredi 11 Septembre 2015 Vincent Bombardier t12

1,0minmaxmin)),(( min)),((

minmax)12(),('

jiIavecjiIiiI

Pré-traitements : Expansion de dynamique

Vendredi 11 Septembre 2015 Vincent Bombardier t13

Pré-traitements : Transformation linéaire avec saturation

255%

255 0 255Smin Smax

255

0 255i255

Vendredi 11 Septembre 2015 Vincent Bombardier t14

0 255min maxSmin Smax

Pré-traitements : Transformation linéaire par morceaux

255%

255 0 255Smin Smax

255

0 255min max255

Vendredi 11 Septembre 2015 Vincent Bombardier t15

0 255Smin Smax

S

Pré-traitements : Transformation non-linéaire

Ex: Correction Ex: Correction gamma (g)

1

émise nkI

0331'

1

nn

11

0.3,3.1

àoeil

écran

32àoeil

Vendredi 11 Septembre 2015 Vincent Bombardier t16

Pré-traitements : Re - Quantification255

r3

O t tifi l l i i l N i L l d t iti Tk t

b = 255t3 t4a = 0

On veut quantifier les valeurs originales en N niveaux. Les valeurs de transition Tk etde reconstruction Rk sont données par :

/)(*)1( NabWavecWkTk

N1kpour*

/)( *)1(

NTkRk

NabWavecWkTk

L’intervalle (b-a)/N = Tk – T(k-1) est constant, et est appelé l’intervalle detifi ti

N..1 k pour 1

N

TkRk

Vendredi 11 Septembre 2015 Vincent Bombardier t17

quantification.

Pré-traitements : Quantification : exemple

Vendredi 11 Septembre 2015 Vincent Bombardier t18

Pré-traitements : Quantification non-uniforme

Vendredi 11 Septembre 2015 Vincent Bombardier t19

Pré-traitements : Autres

255LUT Inverse

255

LUT Rehaussementde contraste

LUT Rehaussementparties claires

LUT HomogénéisationLUT Rehaussementparties sombres

255 255 255 255pp

Vendredi 11 Septembre 2015 Vincent Bombardier t20

255 255 255 255

Pré-traitements : Binarisation - Seuillage

255

LUT Binarisation

255

255S 255S

I’(i,j) = 255 si I(i,j) > seuil I’(i,j) = 0 sinon

255LUT Seuillage

I’(i,j) = 255 si s2 > I(i,j) > s1 I’(i,j) = 0 sinon

Vendredi 11 Septembre 2015 Vincent Bombardier t21255S1 S2

Pré-traitements : Choix de seuil par histogramme

Vendredi 11 Septembre 2015 Vincent Bombardier t22

seuil seuil

Pré-traitements : Choix des seuils optimaux (1 seuil)(minimisation de la probabilité d’erreur)

seuil

Vendredi 11 Septembre 2015 Vincent Bombardier t23

Pré-traitements : Choix des seuils (optimaux)

2 surfaces (arrière-plan et objet) dans une imageSi nous supposons des modèles mathématiques pour Si nous supposons des modèles mathématiques pour

les distributions (gaussiennes etc.)On peut déterminer la probabilité d’erreur de p m p

classification dans les classes 1 et 2 (surfaces 1 et 2)On cherche alors un seuil S qui causera une erreur

i i lminimaleClasse 1

Classe 2

E1 E2

Vendredi 11 Septembre 2015 Vincent Bombardier t24

S1 E2

Pré-traitements : Algorithme de Otsu On balaie toutes les valeurs de seuil

possible S P h s il S : Pour chaque seuil S :

On calcule les moyennes et les variances de chaque classe

O ’i té à l i i t On s’intéresse à la variance intra-classes

S

122

1 10

1 ( )S

iH i

S

:

2 1:2 1:

22

classesIntraVarianceetVariancesetMoyennes

0255

222 2

1 1

1 ( )2561 1

i

i SS S

H iS

i i d icelui est optimal seuil Le

.P .P

222

211

2w

classesIntraVariance

Basé sur le fait que les classest bi défi i t é

1 1

1 10 0

255 255

1 1( ) ( )

1 1( ) ( )

S S

i ih i P H i

S NbLig NbCol

h i P H i

minimum donne qui w

Vendredi 11 Septembre 2015 Vincent Bombardier t25

sont bien définies et regroupées 2 2( ) ( )256 i S i S

h i P H iS NbLig NbCol

Pré-traitements : Égalisation d’histogramme

%%

min max 0 255

Vendredi 11 Septembre 2015 Vincent Bombardier t26

Pré-traitements : Cas continu

Définition : Pour une variable aléatoire continue, et dans le cas courant où est un intervalle [a, b] R, on définit la notion de fonction de où est un intervalle [a, b] R, on définit la notion de fonction de répartition F de X comme :

x

)()()()( xHCdttpxXPxFa

x

En discret on parlera d’histogramme cumulé

p (x) ps(s). pr(x) ps( )

1

d ds 1

Vendredi 11 Septembre 2015 Vincent Bombardier t27

dx 1 r ds 1 s

Pré-traitements : Interprétation intuitive L’égalisation revient à grouper par paquets de L éléments les intensités de

l’image de départ. L’image par HC de deux niveaux de gris successifs est séparée par la même L image par HC de deux niveaux de gris successifs est séparée par la même

distance. L’image par HC de xk (k < N/L) est dans l’intervalle [0, 1/L].

Vendredi 11 Septembre 2015 Vincent Bombardier t28

Pré-traitements : Implémentation cas discret

jiIHCNG ))(()12()('NbColNbLig

jiIHCjiI NG

.)),(().12(),('

Image I,S ;float H[256],phi[256] ;% Calcul de l’histogramme (densité de probabilité)% Calcul de l histogramme (densité de probabilité)H = Histogramme(I) ;% Calcul de HCP k 0 k 256 kPour k=0 ; k<256 ; k++

kjj

NG jHkHC0

][).12(][% Appliquer la transformation S=HC[I]

Pour (i,j) dans l’image

Vendredi 11 Septembre 2015 Vincent Bombardier t29

( ,j) gS[i,j] = (int) HC[I[i,j]]

Pré-traitements : Cas discret

12

14• Histogramme aussi plat que possible• L’ordre des NdG est maintenu

68

10 • L ordre des NdG est maintenu (monotone croissante)

• Les rectangles (barres) ne sont pas f é ( i )

0 1 2 3 4 5 6 7

2

4 fragmentés (monotone croissante)

14

Valeur moyenne idéale: 51 pixels/8 NG=6.375

8101214

10/51*7=1.37 29/51*7=3.98 49/51*7=6.7318/51*7= 2.47 43/51*7=5.90 51/51*7=7.027/51*7=3.7 44/51*7=6.04

246

normaliséhistoHavecjHiHCi

Vendredi 11 Septembre 2015 Vincent Bombardier t30

0 1 2 3 4 5 6 7 normaliséhistoHavecjHiHC n

jn .

0

Pré-traitements : Exemple sur image réelle

Vendredi 11 Septembre 2015 Vincent Bombardier t31

Pré-traitements : Exemple sur image réelle

Vendredi 11 Septembre 2015 Vincent Bombardier t32

Pré-traitements : Spécification d’histogramme(histogram matching)

On ajuste l’histogramme d’une image à celui de l’image de On ajuste l histogramme d une image à celui de l image de référence

Par ex : pouvoir comparer 2 images

Principe : Principe : On utilise l’histogramme d’une image comme référence, et on modifie l’histogramme de l’autre image afin que les on modifie l histogramme de l autre image afin que les images soient similaires

Vendredi 11 Septembre 2015 Vincent Bombardier t33

Pré-traitements : Spécification d’histogramme : Principe

Vendredi 11 Septembre 2015 Vincent Bombardier t34http://lasig.epfl.ch/recherche/rapports/xp1999.pdf<

Pré-traitements : Spécification d’histogramme : Exemple

Vendredi 11 Septembre 2015 Vincent Bombardier t35« Digital Image Processing », Gonzalez, Woods, 2002

Pré-traitements : Spécification d’histogramme : Exemple

Vendredi 11 Septembre 2015 Vincent Bombardier t36« Digital Image Processing », Gonzalez, Woods, 2002

Pré-traitements : Spécification d’histogramme : Exemple

Vendredi 11 Septembre 2015 Vincent Bombardier t37« Digital Image Processing », Gonzalez, Woods, 2002

Pré-traitements : Suppression du bruit[sommation d’images et moyenne]

+2 +8(a) (b) (c)

(d) (e) (f )

+128+32+16

Vendredi 11 Septembre 2015 Vincent Bombardier t38

(d) (e) (f )Recalage adéquat!

Pré-traitements : Opérations logiques : + - * / ET OU XOR NON

* =* =

f(x y)=i(x y)*r(x y) 1/i(x y) f(x,y)f(x,y)=i(x,y)*r(x,y) 1/i(x,y) ( ,y)

Vendredi 11 Septembre 2015 Vincent Bombardier t39

Pré-traitements : Soustraction d’images

| I C t I Réfé | S il| ImageCourante – ImageRéférence | > Seuil

Vendredi 11 Septembre 2015 Vincent Bombardier t40

Pré-traitements : Exemple : vidéo surveillance

Image courante Image de fond Soustraction d’images

Seuillage Fermeture Affichage

Vendredi 11 Septembre 2015 Vincent Bombardier t41