Traitement du Signal -...
Embed Size (px)
Transcript of Traitement du Signal -...

Traitement du SignalSignaux discrets - Compléments autour de la fréquence
24 octobre 2017
Nancy Bertin - [email protected]

Changement de Fe TFCT Estimation de fréquence Conclusion
Changement de fréquence d’échantillonnage
1 Changement de fréquence d’échantillonnageIntroductionSous-échantillonnage (décimation)Sur-échantillonnage (interpolation)Changement quelconque
2 Transformée de Fourier à Court Terme
3 Estimation de fréquence
4 Conclusion
2 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Introduction
Quelle est la meilleure fréquence d’échantillonnage ?
Le théorème de Shannon nous dit qu’elle doit être “assezélevée”.Plus on a d’échantillons, meilleure sera notre résolutionfréquentielle.Mais un signal très échantillonné est volumineux (1 heure deson CD = 300 Mo) et son traitement requiert d’avoir deséquipements capables de supporter cette cadence.Il n’est pas toujours possible de savoir au moment de laconversion analogique-numérique quelle est la bonne fréquencede travail.Les collections ne sont pas toujours harmonisées.⇒ besoin de savoir “ré”-échantillonner en numérique.
3 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Décimation : définition
Le sous-échantillonnage consiste à fabriquer un signalcomportant moins d’échantillons qu’un signal d’origine.Il faut “enlever” des échantillons, d’où le nom décimation.En anglais : downsamplingOn parle de sous-échantillonnage d’un facteur D quand lesignal d’origine x comporte N échantillons et le signalsur-échantillonné xD en comporte N/D, avec xD[n] = x[n/D]
Représentation usuelle :
↓ Dx[n] xD[n]
Le sous-échantillonnage cherche à “mimer” un échantillonnaged’origine à la fréquence Fe/D.
4 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Décimation : méthode naïve
Le sous-échantillonnage naïf consiste à se débarrasser deD − 1 échantillons sur D.Cela revient à avoir échantillonné directement à Fe/D.Problème : rien de garantit que Fe/D > B/2
Il y a donc un risque de repliement spectral.
5 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Décimation : méthode propre
Pour sous-échantillonner proprement il va falloir supprimer lecontenu fréquentiel de x[n] entre Fe/(2D) et Fe/D.
↓ DPasse-basx[n] xD[n]
6 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Sur-échantillonnage : définition
Le sur-échantillonnage (mal-nommé) consiste à fabriquer unsignal de même durée mais comportant davantaged’échantillons qu’un signal d’origine.Il faut “rajouter” des échantillons absents, d’où le nom(préférable) interpolation.En anglais : upsamplingOn parle de sur-échantillonnage d’un facteur M quand lesignal d’origine x comporte N échantillons et le signalsur-échantillonné xM en comporte MN , avec xM [Mn] = x[n]
Représentation usuelle :
↑Mx[n] xM [n]
Le sur-échantillonnage cherche à “mimer” un échantillonnaged’origine à la fréquence MFe.
7 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Interpolation : méthodes
Théoriquement, si le signal d’origine a été bien échantillonné, lareconstruction parfaite est possible, donc le sur-échantillonnageaussi. Cependant, la formule de reconstruction (avec les sinuscardinaux) est compliquée à mettre en pratique. On fait appel àdes idées plus simples :
Intercaler des zéros (interpolation zéro)Recopier la valeur de l’instant précédent (interpolationéchelon)Tracer une droite entre deux échantillons disponibles adjacents(interpolation linéaire)Avoir un modèle de signal plus perfectionné.
8 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Méthodes d’interpolation
Exemple avec M = 2.
Illustration de Gabriel Cormier.
9 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Conséquences de l’interpolation
Le signal d’origine n’a pas de contenu fréquentiel au-delà deFe/2 (s’il a été bien échantillonné, ce qu’on suppose).Le processus d’interpolation est susceptible d’en ajouter.On le fait donc suivre d’un filtrage passe-bas à la coupureFe/2D pour supprimer le contenu ajouté.C’est la raison pour laquelle la méthode d’interpolation n’a pasbeaucoup d’importance.Exercice : vérifier que l’interpolation zéro préserve le spectredu signal.
10 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Changement quelconque
Si la fréquence de destination n’est ni un multiple, ni undiviseur de Fe, on doit combiner les deux opérations.Afin de préserver le maximum d’information, on commence parinterpoler (au ppcm) puis on décime.Le filtre passe-bas s’intercale logiquement entre les deuxopérations.
11 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Exercice (TP1 exercice 2.1)
1 Charger le son phrase.wav et l’écouter (module à importerpar la commande from scipy.io.wavfile import read aswavread).
2 Observer sa TFD.3 Le décimer “naïvement” (sans filtre passe-bas), l’écoutez et
observer le spectre du résultat.4 Chercher une fonction python réalisant un “vrai”
sous-échantillonnage et comparer le résultat avec la méthodeprécédente.
Vous pouvez faire le même exercice avec les signaux synthétiquesdu TP du cours 3.
12 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Transformée de Fourier à Court Terme
1 Changement de fréquence d’échantillonnage
2 Transformée de Fourier à Court TermeObservations et motivationsTransformée de Fourier à Court-TermeIncertitude temps-fréquenceTFCT inverse
3 Estimation de fréquence
4 Conclusion
13 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Observations et motivations
Quelle est la transformée de Fourier de ce signal ?
0 100 200 300 400 500 600 700 800 900 1000−1.5
−1
−0.5
0
0.5
1
1.5
14 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
On exprime le signal comme la somme de deux portions desinusoïdesLes portions étant multipliées par des portes de support disjointOn utilise la linéarité de la TF et la propriété de convolutionOn dessine ...
−0.1 −0.08 −0.06 −0.04 −0.02 0 0.02 0.04 0.06 0.08 0.10
50
100
150
200
250
300
15 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Problème
Si je vous montre cette TFD, retrouverez-vous le signald’origine ?Quelle différence avec la somme de deux sinusoïdes actives surtoute la durée ?
−0.1 −0.08 −0.06 −0.04 −0.02 0 0.02 0.04 0.06 0.08 0.10
50
100
150
200
250
300
350
400
450
500
16 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
L’astuce
La TFD est conservative : il existe une formule inverse,reconstruisant parfaitement le signalDeux signaux différents ne peuvent donc pas avoir la mêmeTFD... à condition de ne pas oublier la phase de la TFD dans lareprésentation.Ce n’est pas très facile à visualiser et à interpréter
17 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Fourier et durée
La TFD se fait sur toute la durée du signal. Intuitivement,c’est un spectre moyen.L’intuition est vite perdue si le signal “change tout le temps”(signal “non stationnaire”)
0 2000 4000 6000 8000 10000 12000 14000 16000−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
“Des gens se sont levés dans les tribunes”, deux secondes de parole à 8000 Hz.
18 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Transformée de Fourier à Court-Terme
Illustration de Gaël Richard, d’après Jean Laroche.
19 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Les paramètres de la TFCT
L’idée générale de la TFCT est de découper le signal entrames, de faire la TFD de chacune de ces trames, et de lesranger dans un tableau.Il n’existe pas qu’une seule TFCT puisqu’elle dépend de :
La durée I de la fenêtre (on essaie de la choisir telle que lesignal ait des chances d’être à peu près stationnaire sur cettedurée)La forme de la fenêtre (en fonction du compromislargeur-hauteur des lobes)Le recouvrement entre les fenêtres (forme de lissage). Peuts’exprimer :
en période (hopsize, nombre d’échantillons séparant le débutde deux fenêtres consécutives)en pourcentage ou nombre de recouvrement (overlap, nombred’échantillons ou proportion de longueur de fenêtreappartenant à deux fenêtres consécutive)
20 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Expression et représentation
L’expression analytique de la TFCT est :
X(r, k) =
N−1∑n=0
x[rT + n]wa[n]e−2πnk/N
wa est la fenêtre d’analyse. Elle est à support fini, pluscourte que le signal lui-même, et généralement symétrique.Zero-padding du signal pour avoir un nombre entier defenêtres.Remarques :
Attention, l’indice r est un indice de trame (et plus un indice d’échantillontemporel), à convertir en temps en tenant compte du recouvrement desfenêtres. On le note (trop) souvent n quand même.On note aussi (trop souvent) l’indice de fréquence par f et la TFCT parX(n, f) (méfiance).Appellations alternatives : TF locale, TF à fenêtre glissante, STFT(Short-Time Fourier Transform), spectrogramme (plutôt pour le module).
21 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Représentation
La TFCT est représentée sous forme d’image. A chaque point n, f(point temps-fréquence) on associe une couleur proportionnelle àla valeur du module de TFCT (ou son module au carré).
5 10 15 20 25 30
20
40
60
80
100
120
0.5
1
1.5
2
2.5
22 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Analogie
Dans le domaine du traitement du signal audio, la STFT estanalogue à une partition !
On parle plus généralement de représentationtemps-fréquence.La TFCT est un pavage régulier de ce qu’on appelle “le plantemps-fréquence”.
23 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Incertitude temps-fréquence
La longueur de la fenêtre conditionne le nombre de pointsfréquentiels (résolution fréquentielle).La longueur de la fenêtre conditionne également la résolutiontemporelle (spectre moyen sur la fenêtre).On peut montrer que (principe d’incertitude d’Heisenberg)
∆t∆f >1
4π
La fenêtre qui réalise le meilleur compromis temps-fréquenceest la fenêtre gaussienne (ce qui ne veut pas dire que c’est lameilleure à utiliser).
24 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Exercice (TP1 exercice 5)
1 Créer une fonction calculant la TFCT (spectrogramme) d’unsignal. (On pourra utiliser une fenêtre de Hamming avec unrecouvrement de 50%. La fonction prendra en paramètre lalongueur de la fenêtre).
2 Tester cette fonction sur les signaux ’bat.wav’ et’bruant.wav’.
3 Comparer avec la TFD de l’ensemble du signal.
25 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
TFCT inverse
La TFCT est bien une transformation conservative etinversible.En raison du recouvrement des fenêtres et de la redondance,l’inversion est moins directe que pour les transformées deFourier précédemment vues.La méthode de resynthèse du signal à partir de sa STFT estappelée méthode de l’overlap-add (OLA)Le principe est de calculer la TFD inverse de chaque colonnede X, puis fenêtrer, décaler et additionner ces TFD inverses :
x[n] =∑r
N−1∑k=0
X[rI, k]ws[n− rI]e2iπkn/N
ws est la fenêtre de synthèse et doit être bien choisie.
26 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Condition de reconstruction parfaite
La méthode OLA reconstruit parfaitement le signal d’origine àla condition que :∑
r
wa[n− rI]ws[n− rI] = 1
Il “suffit” de construire une fenêtre de synthèse la respectant.Exemple : la fenêtre de Hann
wa[n] =1
2(1− cos(2π n
N) pour 0 6 n < N
permet la reconstruction parfaite avec ws = ΠN .Exercice : le vérifier.
27 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Estimation de fréquence
1 Changement de fréquence d’échantillonnage
2 Transformée de Fourier à Court Terme
3 Estimation de fréquenceMotivationDétection de picsMéthodes temporellesMéthodes spectralesD’autres méthodes
4 Conclusion
28 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Motivation
Détecter la présence d’une périodicité dans le signal est une tâcheomniprésente en traitement du signal :
Signal musical : hauteur (pitch), rythmeTraitement de la parole : voisement (voyelles), timbre(locuteur)Géologie : détecter une onde sismique, une poche de pétroleMédecine : suivi du rythme cardiaque, échographieRadar : détection d’une émission radar dans une certainedirection
29 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Approche naïve
Avec Fourier, c’est facile :il suffit de chercher le pic maximal du spectre !
0 200 400 600 800 1000−1.5
−1
−0.5
0
0.5
1
1.5
50 100 150 200 250 300 350 400 450 500−10
0
10
20
30
40
50
30 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Dans la vraie vie
Voici une note de musique en entier et vue de près :
0 1000 2000 3000 4000 5000 6000 7000 8000 9000−1
−0.5
0
0.5
1
2450 2500 2550 2600 2650 2700 2750 2800 2850
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
Voici sa (demi) transformée de Fourier :
500 1000 1500 2000 2500 3000 3500 40000
10
20
30
40
50
60
70
31 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Dans la vraie vie
Voici une note de musique en entier et vue de près :
0 1000 2000 3000 4000 5000 6000 7000 8000 9000−1
−0.5
0
0.5
1
2450 2500 2550 2600 2650 2700 2750 2800 2850
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
Voici sa (demi) transformée de Fourier :
500 1000 1500 2000 2500 3000 3500 40000
10
20
30
40
50
60
70
31 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Différents problèmes de la vraie vie
Il y a plusieurs raisons de ne pas se contenter de chercher lemaximum du spectre :
Signaux non idéaux : pas exactement périodiques, fluctuationdu contenu fréquentielPrésence de nombreux pics ; la fréquence recherchée necorrespond pas forcément au plus haut d’entre euxPrésence de bruit qui peut considérablement masquer les raiesspectralesNon exploitation d’information pertinente (par exemple laprésence d’harmoniques)
32 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Détection de pics
La détection et l’estimation de fréquence font souvent appel à larecherche de pics :
Dans le spectre de Fourier.Dans des fonctions dites “de contraste”, formulées pourqu’elles présentent un pic à la valeur recherchée.Mais comment définit-on un pic et comment sedébarrasse-t-on des faux (spurious) pics ?
33 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Détection de pics
La détection de pics (en anglais peak-picking) est un sujet ensoi !Il existe de nombreux algorithmes, plus ou moins robustes(seuillages, dérivation...)On espère éliminer les faux pics grâce au fait qu’ils ne serontpas présents dans toutes les trames.Les pics peuvent être interpolés pour améliorer la précision del’estimation.
34 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Méthodes temporelles
Une première famille d’estimation de fréquence (enl’occurrence, de périodicité) se déroule dans le domainetemporel.Elles reposent essentiellement sur l’idée simple qu’un signalpériodique, ou presque périodique, doit “ressemblermaximalement à lui-même quand on le décale d’un nombred’échantillons au plus proche de sa période”.Le bruit, lui, n’a pas de raison de se ressembler à lui-mêmetemporellement.
35 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Une première approche de l’autocorrélation
Pour formaliser ce concept de “ressemblance avec soi-même”, ondéfinit l’autocorrélation d’un signal :
AutocorrélationLa fonction d’autocorrélation d’un signal x[n] est (à unenormalisation près) la suite définie par :
Rxx[k] ∝ 1
N
N−1−k∑n=0
x[k]x[n+ k]
Cette méthode (ou des dérivés) ont été très utilisées avantl’algo de FFT (Fourier coûtait cher)La fonction d’autocorrélation a en réalité un lien très fort avecla transformée de Fourier (notion de densité spectrale depuissance). On en reparlera dans le cadre des signauxaléatoires.
36 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
D’autres méthodes temporelles
ASDF : average square difference functionAMDF : average magnitude difference function
37 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Méthodes spectrales
Les méthodes spectrales se situent dans le domaine de Fourieret cherchent notamment à exploiter la présence de pics à desfréquences multiples de la fondamentale (cf. séries de Fourier)Par exemple, la somme spectrale :
S[k] =H∑h=1
|X[hk]|
Exercice : dessiner l’effet de la somme spectrale sur un spectrede raies.
38 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
D’autres méthodes
Il existe de très nombreuses autres méthodes d’estimation de lafréquence :
Méthode dites “à haute résolution” (projections sur dessous-espaces, MUSIC, ESPRIT)Modélisation source-filtre et cepstre (notions d’enveloppespectrale)Maximum de vraisemblance (avec des lois de probabilités)
La plupart des méthodes efficaces combinent plusieurs idées.Beaucoup d’entre elles s’appuient sur une modélisation aléatoire dusignal.
39 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Conclusion
1 Changement de fréquence d’échantillonnage
2 Transformée de Fourier à Court Terme
3 Estimation de fréquence
4 Conclusion
40 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Conclusion
Ces compléments mettent en lumière nos besoins d’outils :
en filtrage numériqueen modélisation des signaux aléatoiresen représentations temps-fréquence
Ils constitueront l’essentiel de la suite du cours.
41 M1 RI Traitement du Signal 24/10/2017

Changement de Fe TFCT Estimation de fréquence Conclusion
Exercice
Pour une première approche de l’estimation de f0...
1 Téléchargez le son piano.wav sur la page du cours2 Chargez-le dans python et écoutez-le.3 Observez son spectre.4 Faites une hypothèse “manuelle” sur la f0.5 Cherchez la correspondance entre cette fréquence et l’échelle
musicale. Votre estimation vous semble cohérente ?6 Programmez une méthode automatique simple d’estimation de
la f0. Conclusions ?
42 M1 RI Traitement du Signal 24/10/2017