• Aucun résultat trouvé

Outils Math. pour l’info. - Licence 3 - IEM - Ann´ee 2007/2008 Outils Math´ematiques pour l’informatique

N/A
N/A
Protected

Academic year: 2022

Partager "Outils Math. pour l’info. - Licence 3 - IEM - Ann´ee 2007/2008 Outils Math´ematiques pour l’informatique"

Copied!
52
0
0

Texte intégral

(1)

Outils Math. pour l’info. - Licence 3 - IEM - Ann ´ee 2007/2008

Outils Math ´ematiques pour l’informatique

Jean-Luc Baril

Universit ´e de Bourgogne Labo. Le2i, UMR-CNRS 5158 http://www.u-bourgogne.fr/jl.baril

September 24, 2007

(2)

Cours outils Math. pour l’info. - Licence 3

Planning

Semaine 1: C1, C2

Semaine 2: C3, TD1

Semaine 3: TD2, TP1

Semaine 4: C4, TP2

Semaine 5: C5, TD1

Semaine 6: TD2, TP1

Semaine 7: TP2

(3)

Plan du cours

1. Introduction - D ´efinitions

2. Notions de filtres - calcul matriciel

3. Etude d’un signal continu et discret - Th ´eorie de Fourier

4. Application au traitement de l’image

6. Algorithme transform ´ee de Fourier rapide 7. Applications (tatouage d’images,

compression, ...)

(4)

Introduction - D ´efinitions Objectifs

* Acqu ´erir les bases math ´ematiques pour le traitement de l’image

* Quelques notions de traitements d’images - Acquisition (repr ´esentation d’une image, matrices...)

- Notion de filtres (produit de matrices, convolution...)

- Rehaussement d’image (recadrage d’une fonction dans un intervalle)

- Restauration d’image (notion de voisinage, fronti `ere,..)

- D ´etection de contour (voisinage, fronti `ere,...)

(5)

Introduction - D ´efinitions Objectifs

* Quelques notions de la th ´eorie du signal

- D ´ecomposition d’une image en somme de signaux sinusoidaux(th ´eorie de Fourier, transform ´ee de Fourier continue et discr `ete)

- Filtrage selon les fr ´equences d’un signal (transform ´ee de Fourier, algorithme transform ´ee de Fourier rapide, r ´ecursivit ´e,...)

(6)

1. Introduction - D ´efinitions

Traitement de l’image

* M ´ethodes pour la transformation d’images - Am ´elioration de l’apparence

- Extraction d’informations

- Compression pour la transmission

* Exemples

- Reconnaissance automatique des adresses

- Contr ˆole automatique de vision dans une chaˆıne de fabrication

- Reconnaissance de formes (domaine militaire) - Compression d’image (internet et t ´el ´e num ´erique)

(7)

D ´efinition d’une image:

• repr ´esentation d’une sc `ene par la peinture, la sculpture, le dessin, photographie, film...

• Ensemble structur ´e d’informations qui apr `es affichage sur un support ( ´ecran, toile, papier, ...) ont une signification pour l’oeil humain.

Si x et y sont les coordonn ´ees spatiales d’un point de l’image, I (x , y ) est une fonction de l’intensit ´e lumineuse et de la couleur.

I (x , y ) signal analogique continue

Inexploitable par la machine = ⇒ num ´erisation

(8)

D ´efinition : Image num ´erique Image = Matrice de nombres entiers Dans un Pixel (2D) (picture element)

* Scalaires = 1 valeur (niveaux de gris)

* Vecteurs = plusieurs valeurs (couleurs) (3 RGB) (Red - Green - Blue)

Lors de l’acquisition, le signal analogique continu est num ´eris ´e (discr ´etis ´e)

Perte d’informations lors de la discr ´etisation

* L’ ´echantillonnage (s ´election des points)

* La quantification (s ´election de couleurs)

(9)

1. Introduction - D ´efinitions

1.2.1 Images binaires

D ´efinition : Image = Tableau de 0 et de 1 (0 noir, blanc 1)

1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345 1234567890123456789012345678901212345

1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789 1234567890123456789012345678901212345678901234567890123456789

Image Binaire

12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012 12345678901234567890123456789012123456789012

sous scilab

M= [0 1 0; 1 0 1; 0 1 0] imshow(M)

(10)

D ´efinition : image en niveaux de gris

Image = Tableau d’entiers compris entre 0 et Lmax

En g ´en ´eral, Lmax est de la forme de 2n−1.

Qualit ´e d’une image + Qualit ´e visuelle : Nombre de niveaux

+ R ´esolution : Capacit ´e `a distinguer deux d ´etails proches.

Fonction du nombre de niveaux et du nombre de Pixels

(11)

Images en niveaux de gris

Place m ´emoire

Si n =512, et s’il y a 256=28niveaux de gris alors:

Si on code les niveaux de gris sur 8 bits (1 octet) alors la place m ´emoire utilis ´ee est :

512x512x1= 0.25 Megaoctets sous scilab

Sous Scilab:

I=ones(4,1)*[(0:6)]

imshow(I)

I=imread(’image.jpg’) imshow(I)

(12)

D ´efinition : Images en couleur

combinaison de trois images (RGB) (Red, green , blue)

Place m ´emoire image RGB = 3 fois celle pour le niveau de gris.

Par exemple, avec 8 bits pour une couleur, on peut coder(28)3 niveaux de couleurs.

(13)

Formats d’images

* Image Bitmap (.bmp): Matrice 2D de points (pixel - picture element)

- Adapt ´e `a l’affichage sur ´ecran - Adapt ´e au traitement de l’image

* Image GIF (.gif): Fichier fortement compress ´es (m ´ethode LWZ) - Conservation d’une qualit ´e tr `es correcte.

- Le nombre maximal de couleurs contenu dans une image au format GIF est de 256.

(14)

* Image TIFF (.tif): Fichier fortement compress ´es (m ´ethode Run Length Encoding) - AAAAAHHHHTTTTTTT 5A4H7T

* Image JPEG (.jpg): Fichier fortement compress ´es, mauvaise conservation de la qualit ´e de l’image (Huffman) Exemple de la phrase COMMENT CA MARCHE

(15)

Echantillonage R ´esolution spatiale

La r ´esolution spatiale ou g ´eom ´etrique est la distance la plus petite permettant de discriminer deux objets voisins.

Par exemple, pour une image `a 20 m `etres de r ´esolution, chaque pixel repr ´esente une superficie correspondant 20 x 20 m `etres.

R ´esolution relative

Nombre de pr ´el `evements que fait l’appareil sur une longueur de 1 pouce (DPI, Dots per inch - 1 pouce=2,54cm)

+ Imprimante 300 DPI, Scanner 1200 DPI...

- R ´esolution absolue associ ´ee au capteur + Moniteur 1600x1200 pixels

(16)

1.4 Echantillonage

* Discr ´etisation du rep `ere spatial

- Passage `a un nombre de donn ´ees (Pixels) finis - Adapt ´e au traitement de l’image

- R ´esolution relative associ ´ee `a la r ´esolution spatiale

(17)

1.5 Quantification

* Discr ´etisation du rep `ere colorim ´etrique

- Passage d’un signal analogique (infinit ´e de couleurs) `a un signal discret `a 2N niveaux de couleurs

+ Pixels cod ´es sur N bits + 8 bits⇒256 niveaux + 16 bits⇒65536 niveaux + 24 bits⇒16M de niveaux

(18)

1.5bis Vocabulaire

* Bruit Ph ´enom `ene de brusque variation de l’intensit ´e d’un pixel / pixels voisin

* Contours Fronti `ere entre deux objets ou zones de l’images

* Luminance Degr ´e de luminosit ´e des points de l’image∼ brillance

* Contraste Opposition marqu ´ee entre une r ´egion sombre L1 et claire L2

C= L1L2 L1+L2

(19)

Op ´erations g ´eom ´etriques sur les images

+ Translation de vecteur(X0,Y0)

(X,Y) =⇒(X+X0,Y +Y0)

+ Passage en coordonn ´ees universelles(X,Y,Z)On rajoute une coordonn ´ee fictive Z

Expression matricielle X’

Y’

1

=

1 0 X0 0 1 Y0

0 0 1

X Y 1

(20)
(21)

Op ´erations g ´eom ´etriques sur les images

+ Mise `a l’ ´echelle A=

Sx 0 0

0 Sy 0

0 0 1

+ Rotation d’angleθ A=

cos(θ) sin(θ) 0

−sin(θ) cos(θ) 0

0 0 1

(22)
(23)

Histogramme d’une image

- Fonctions repr ´esentant la fr ´equence d’apparition d’un niveau de gris

H(Niv. gris) =card{pixels de ce niv. de gris}

(24)

Histogramme d’une image Sous Scilab utiliser histplot(I);

0 50 100 150 200 250

0 20 40 60 80 100 120 140 160

(25)

Rehaussement d’image

- Accentuer certaines caract ´eristiques pour analyser ou visualiser (contraste, contours, ..)

- Transformation de chaque niveau de gris en un autre + Exemples : ´eclaircissement, assombrissement + Exemples : ´egalisation histogramme (augmente les nuances)

+ Exemples : ´etirement d’histogramme

+ Transformation de voisinage (Th ´eorie de Fourier)

(26)

Etirement

- Utilisation au mieux de l’echelle des niveaux p(x,y) =α+β·p(x,y)

On modifie chaque pixel en lui appliquant une transformation lin ´eaire

+ Exemples: ´egalisation, tassement, rehaussement de l’histogramme

(27)

Exemple

(28)

Exemples

Identité Négatif Seuillage Puits

Translation Recadrage Non linéaire 0 255

255

0 255

255

(29)

Etirement du contraste

On pose v =f(u)le niveau de gris de l’image r ´esultat qui remplace le niveau de gris de l’image initiale.

Augmentation du contraste

v =

αu 0≤ua

β(u−a) +cste1 aub γ(u−b) +cste2 bu≤255

a b

0 255

255

cste1 cste2

(30)

D ´ecoupage de l’image

On reprend la fonction pr ´ec ´edente avecα=γ =0.

v =

0 0≤ua

β(u−a) aub cste2 bu≤255

Compression de la dynamique des gris

v =cste.Log(1+u) Eclaircit le fonc ´e

(31)

Lin ´earisation de l’histogramme

v = (gmaxgmin)P(u) +gmin P(u)histogramme cumul ´e

Augmentation de la clart ´e de l’image par augmentation du contraste

Histogramme exponentiel

v =gmin+ln(1P(u))/cste

Histogramme logarithmique

v =gmin(gmax/gmin)P(u)

(32)

Lin ´earisation de l’histogramme

Exemple: h(u) =1−u pour u∈[0..1]et La lin ´earisation donne

P(u) =u−1 2u2

(33)

1.8 Restauration d’images

- Minimisation des d ´egradations - Suppression de flou

Att ´enuation des bruits

Correction des distorsions g ´eom ´etriques

(34)

1.9 Analyses d’images

- Faire des mesures quantitatives + Lecture ´etiquettes

+ Mesure de la taille de cellules sanguines + Utilisation robotique, arm ´ee

+ Utilisation de la segmentation pour l’isolement d’un objet

(35)

1.10 Reconstruction d’images `a partir de projections - Tomographie

- Images radar

- Images m ´edicales, scanner...

(36)

1.11 Compression de donn ´ees

- Stockage d’images, LWZ, Shannon, ...

- Image vid ´eo

- R ´eduction `a stocker sans perte significative d’information

- Exemples : Transmission TV, visioconf ´erences, ...

(37)

Notions de filtres

Filtrage - D ´efinition

Le filtrage est une op ´eration qui consiste `a appliquer une transformation `a tout ou partie d’une image num ´erique.

Il y a deux sortes de filtrages:

+ Filtrage lin ´eaire : L’op ´eration est lin ´eaire

+ Filtrage non lin ´eaire : L’op ´eration n’est pas lin ´eaire

(38)

Exemple du filtre m ´edian

On donne au pixel de coordonn ´ee(x,y)la valeur m ´ediane des voisins.

Exemple:

I=

4 10 11

5 6 8

10 7 3

La valeur m ´ediane est 7

Remarque: transformation non lin ´eaire, difficult ´e de mise en place

Effet: Lissage en pr ´eservant les contours

(39)

Filtre de convolution

D ´efinition

Un produit de convolution est un op ´erateur math ´ematiques entre deux matrices.

I(x,y) = X

k,l∈{1,2,3}

I(x+k−2,y +l−2)K(k,l) sous Scilab : I’=imconv(I,K);

(40)

2.2 Filtre passe haut

Ils permettent notamment d’accentuer les d ´etails et le contraste, c’est la raison pour laquelle le terme de ”filtre d’accentuation” est parfois utilis ´e.

0 -1 0 -1 5 -1 0 -1 0

(41)

2.2 Filtre passe haut - Exemple Image 5x5 d’une ´etoile dans le noir

(42)

2.2 Filtre passe haut

(43)

2.3 Filtre passe bas

A contrario, il adoucit les d ´etails et r ´eduit les bruits granuleux.

1 1 1

1 4 1

1 1 1

(44)

2.3 Filtre passe bas - Exemple Image 5x5 d’un bruit dans le noir

(45)

2.3 Filtre passe bas

(46)

2.3 Filtre moyenne

Cas particulier du passe bas, il remplace chaque pixels par la moyenne des pixels adjacents et du pixel central.

1

1 1

1 1 1

1 1 1

9* 1

(47)

2.3 Filtre directionnel

Rehausse les caract ´eristiques suivant une direction donn ´ee

-1 0 -1

0 5 0

-1 0 -1

(48)

2.3 Filtre directionnel

(49)

2.3 Filtre Laplacien

Met en valeur les d ´etails qui ont une variation rapide de luminosit ´e. D ´etecteur de contour, reconnaissance de formes (arm ´ee, satellites,...)

Filtre passe-haut tr ´es efficace

4

1 4

1 1

1 0 -1 0

-1 -1

0 -1 0

-1 -1 -1 -1 8 -1 -1 -1 -1

-2

-2 -2

-2

(50)

2.3 Filtre Laplacien

(51)

D ´etection de contour

Filtres horizontal et vertical de Prewitt

I=

1 1 1

0 0 0

-1 -1 -1

I=

-1 0 1 -1 0 1 -1 0 1

Detecteurs de contours quelconques, on calcule G=q

G2h+G2v.

(52)

D ´etection de contour Filtre diagonal de Roberts

I= 1 0 0 -1 I= 0 1 -1 0

Références

Documents relatifs

Cepen- dant, on peut montrer qu’il existe une fonction f ∈ C 0 ([0, 1]) strictement croissante qui est d´erivable presque partout et dont la d´eriv´ee est nulle presque partout..

Exercice 7.9 Montrer que l’ensemble des endomorphismes cycliques est un ouvert connexe (que le corps soit R ou C ).. Montrer que l’ensemble des applications lin´ eaires continues,

Dans cette premi` ere partie, on va rappeler les diff´ erents points de syntaxe Scilab permettant de d´ efinir et de repr´ esenter graphiquement des fonctions d’une variable.. (a)

Universit´ e Pierre et Marie Curie Licence de Math´ ematiques LM 383 Ann´ ee universitaire 2006-2007. Premi` ere s´

Dans la pratique, il suffit donc de d´ eterminer la dimension du noyau ou celle de l’image d’une application lin´ eaire pour avoir les deux dimensions..

– Ilias Amrani hilias.amrani@epfl.chi – Jan Brunner hjan.brunner@epfl.chi – Ratiba Djelid hratiba.djelid@epfl.chi – M´elanie Favre hmelanie.favre@epfl.chi – Nicolas

Si le signal n’est pas ´etendu (irr ´egulier) dans le domaine temporel, alors le spectre du signal poss `ede des hautes fr ´equences.. Si le signal est ´etendu (r ´egulier) dans

Pour calculer des int´ egrales g´ en´ eralis´ ees, on peut utiliser l’int´ egration par parties. La seule m´ ethode simple et efficace est de faire cette int´ egration par