Traitement du signal et Applications cours 9 - univ … · 2 Traitement du signal sous Scilab...

Preview:

Citation preview

1

Traitement du signal et Applicationscours 9

Master Technologies et Handicaps1ère année

Philippe Foucher

2

Traitement du signal sous Scilab� Scilab : Programmer

en utilisant les fonctions.

� SIP Toolboxes: Boite à outils de traitement d’images qui regroupe des fonctions spécifiques

3

Étude du code et des fonctions

4

Fonctions pour récupérer des données.� Image:

Image = imread(‘E:\repertoire1\nom.jpg’)

nom.jpg Image

Imshow(Image); � affichage de l’imageIm2gray(Image); � change une image couleur en niveaux de gris

Imagegris

5

� Différences entre:Image = imread(‘E:\repertoire1\nom.jpg’); Image = imread(‘E:\repertoire1\nom.jpg’)

6

Quelques fonctions graphiques� xdel([0:5]) efface les fenêtres graphiques de 0:5.� xset (‘window’, n) crée la fenêtre graphique n.� plot2d (x,y) affiche un graphique avec les

données x en abscisse et y en ordonnée. x et y doivent être de même taille.� on peut directement utiliser plot2d(y) et un graphique affiche le vecteur y.

7

Ajout de bruit� On peut ajouter du bruit aux images.

Image_bruit=imnoise(image_gris,'gaussian',0,0.02);

Salt & pepper:Ajout de bruit selon une certaine densité

gaussien:Densité gaussienne

Speckle:bruit multiplicatif

8

2 sortes de bruit� Bruit additif (le plus souvent), noté n(x)

g(x) = f(x) + n(x) en général, gaussien: probabilité que la valeur s’écarte de la moyenne

� Bruit multiplicatif, noté m(x)g(x) = f(x)* m(x)Exemple: speckle

9

Problème.� Image = signal en deux dimensions.� Dans le cours, plutôt des signaux 1D.� Extraction d’un signal 1D

Je prends une ligne du de l’image

Signal=Imagegris (38,:)

10

� Signal 1D(sans bruit)

0 20 40 60 80 100 120 1400.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0

11

� Signal 1D(Avec bruit)

0 20 40 60 80 100 120 140-0.2

0.0

0.2

0.4

0.6

0.8

1.0

1.2

12

Enlever le bruit� On peut enlever le bruit en utilisant la

Transformée de Fourier.� Permet d’enlever les hautes fréquences� Problème: on lisse souvent le signal.

13

0 20 40 60 80 100 120 140-0.2

0.0

0.2

0.4

0.6

0.8

1.0

1.2� Signal lisséaprès filtrage

par TF

14

� fourier_Signal=fft(Signal);� FFT: Fast Fourier Transform: algorithme

rapide de Transformée de Fourier

15

� FFT d’un signal 1D (non bruité)

0 20 40 60 80 100 120 140-10

0

10

20

30

40

50

60

16

� FFT d’un signal 1D (bruité)

0 20 40 60 80 100 120 140-10

0

10

20

30

40

50

60

17

� FFT d’un signal 1D (bruité)

0 20 40 60 80 100 120 140-10

0

10

20

30

40

50

60

Fréquences facteur de bruit. Donc on enlève

18

� FFT d’un signal 1D (les hautes fréquence sont enlevées)

0 20 40 60 80 100 120 140-10

0

10

20

30

40

50

60

19

� Ce type de filtre s’appelle passe-bas, il laisse passer les basses fréquences.

� En fait les filtres sont basées sur des techniques appelées produits de convolution.

20

De façon mathématique

�∞

=

+=0

]2

sin2

cos[)(n

nn Tnt

bTnt

atfππ

� Signal périodique (période T) = somme pondérée de signaux sinusoïdaux

1/T : fréquence fondamentale (on utilise souvent �=2�/T)n/T: harmoniquean et bn coefficients pondérateurs de Fourier

21

Exemples (1)

Somme pondérée de deux signaux de fréquence f et 3f (H3) � signal résultant (b): addition point par point des deux courbes de (a).

22

Exemples (2)

� Meilleure approximation d’un Signal carré f(t): décomposition de la façons suivante

)23sin(231

...)5sin(51

)4cos(0)3sin(31

)2cos(0)sin()( tttttttf ϖϖϖϖϖϖ ++++++=

23

Analyse spectrale (1)

� Représentation des amplitudes des différentes harmoniques (n=1,3,5,7…23) d’un signal �analyse spectrale.

24

Remarque (1)� les séries de Fourier sont une décomposition en

cosinus et sinus, on utilise souvent la notation complexe:

� Avec Fn=(an+ibn)/2 et F-n=(an-ibn)/2� eix = cos x + i sin x

�∞

−∞=

=n

n TFtf )

int2exp()(

π

25

Remarque (2)

� A partir de l’équation précédente, les coefficients de Fourier se calculent de la façon suivante:

dtT

tfT

FT

Tn )

int2exp()(

1 2/

2/

π−= �−

Le nombre de descripteurs de Fourier calculés ainsi est en théorie infini

26

Interprétation

� Plus n est grand, plus les fonctions sinusoïdales varient rapidement.� une fonction lisse (c.a.d qui ne varient pas beaucoup) aura des coefficients an et bn qui prendront rapidement (hautes fréquences) des valeurs faibles� une fonction très perturbée et très changeante (ou bruitée) auront des composantes importantes dans les hautes fréquences.

27

Transformée de Fourier (1)

� Souvent fonctions non périodiques et non bornées, la transformée de Fourier permet de généraliser le concept de séries de Fourier à ce type de fonction:

dttitfF �∞

∞−−= )2exp()()( υπυ

On peut noter le changement de variable � = n/T, ce qui explique la disparition du facteur 1/T avant la somme.

28

Interprétation

� De façon peu rigoureuse, on pourrait considérer un signal analogique non périodique comme un signal dont la période tendrait vers l’infini, la fréquence tendrait alors vers 0 (dν)

� et on obtient un spectre de Fourier continu appelé spectre de bande (et non un spectre de raies):

29

Exemple de spectre de bande

30

� En pratique, signal non borné: très rare !on définit une fenêtre d’application [-T/2,T/2]

� Échantillonnage à une fréquence f telle que T=K/f

Vers la transformée de Fourier discrète

�−

−=

−=1)2/(

2/

)2

exp(1 K

KkKn K

inkf

KF

π

31

Remarque � Le signal numérique est décomposé en K

segments. Le nombre total de coefficients de Fourier sera K.

� En traitement de signal, on utilise la FFT (Fast Fourier Transform) qui, sous certaines conditions, permet d’accélérer le calcul

32

TF inverse� A partir d’un signal fréquentiel, on retrouve

le signal initial (temporel ou spatial) par la transformée de Fourier inverse.

� On parle souvent d’espace dual (temps/fréquence)

33

0 20 40 60 80 100 120 140-10

0

10

20

30

40

50

60

0 20 40 60 80 100 120 140-0.2

0.0

0.2

0.4

0.6

0.8

1.0

1.2

ifft

34

� Des questions ?

Recommended