Traitement du signal et Applications cours 9

Transcription

Traitement du signal et Applications cours 9
Traitement du signal et Applications
cours 9
Master Technologies et Handicaps
1ère année
Philippe Foucher
1
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
2
Étude du code et des fonctions
3
Fonctions pour récupérer des
données.
Image:
Image = imread(‘E:\repertoire1\nom.jpg’)
nom.jpg
Imshow(Image);
Im2gray(Image);
Image
Imagegris
affichage de l’image
change une image couleur en niveaux de gris
4
Différences entre:
Image = imread(‘E:\repertoire1\nom.jpg’);
Image = imread(‘E:\repertoire1\nom.jpg’)
5
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.
6
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
7
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
8
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,:)
9
Signal 1D
(sans bruit)
1.0
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0.0
0
20
40
60
80
100
120
140
10
Signal 1D
(Avec bruit)
1.2
1.0
0.8
0.6
0.4
0.2
0.0
-0.2
0
20
40
60
80
100
120
140
11
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.
12
Signal lissé
après filtrage
par TF
1.2
1.0
0.8
0.6
0.4
0.2
0.0
-0.2
0
20
40
60
80
100
120
140
13
fourier_Signal=fft(Signal);
FFT: Fast Fourier Transform: algorithme
rapide de Transformée de Fourier
14
FFT d’un
signal 1D
(non bruité)
60
50
40
30
20
10
0
-10
0
20
40
60
80
100
120
140
15
FFT d’un
signal 1D
(bruité)
60
50
40
30
20
10
0
-10
0
20
40
60
80
100
120
140
16
FFT d’un
signal 1D
(bruité)
60
50
40
30
20
Fréquences
facteur de bruit.
Donc on enlève
10
0
-10
0
20
40
60
80
100
120
140
17
FFT d’un signal
1D (les hautes
fréquence sont
enlevées)
60
50
40
30
20
10
0
-10
0
20
40
60
80
100
120
140
18
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.
19
De façon mathématique
Signal périodique (période T) = somme
pondérée de signaux sinusoïdaux
2πnt
2πnt
+ bn sin
]
f (t ) = [ a n cos
T
T
n =0
∞
1/T : fréquence fondamentale (on utilise souvent =2 /T)
n/T: harmonique
an et bn coefficients pondérateurs de Fourier
20
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).
21
Exemples (2)
Meilleure approximation
d’un Signal carré f(t):
décomposition de la façons
suivante
1
1
1
sin( 23ϖ t )
f (t ) = sin(ϖ t ) + 0 cos( 2ϖ t ) + sin( 3ϖ t ) + 0 cos( 4ϖ t ) + sin( 5ϖ t ) + ... +
3
5
23
22
Analyse spectrale (1)
Représentation des amplitudes des différentes
harmoniques (n=1,3,5,7…23) d’un signal
analyse spectrale.
23
Remarque (1)
les séries de Fourier sont une décomposition en
cosinus et sinus, on utilise souvent la notation
complexe:
2π int
f (t ) =
Fn exp(
)
T
n = −∞
∞
Avec Fn=(an+ibn)/2 et F-n=(an-ibn)/2
eix = cos x + i sin x
24
Remarque (2)
A partir de l’équation précédente, les
coefficients de Fourier se calculent de la façon
suivante:
1
2π int
Fn =
f (t ) exp(−
)dt
T −T / 2
T
T /2
Le nombre de descripteurs de Fourier calculés ainsi est en
théorie infini
25
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.
26
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:
F(υ)= f(t)exp(−2πiυt)dt
∞
−∞
On peut noter le changement de variable = n/T, ce qui explique
la disparition du facteur 1/T avant la somme.
27
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):
28
Exemple de spectre de bande
29
Vers la transformée de Fourier
discrète
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
1
Fn =
K
( K / 2 ) −1
k =− K / 2
2πink
f K exp(−
)
K
30
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
31
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)
32
1.2
60
1.0
50
0.8
40
0.6
30
0.4
20
0.2
10
ifft
0
0.0
-0.2
-10
0
0
20
40
60
80
100
120
20
40
60
80
100
120
140
140
33
Des questions ?
34

Documents pareils