Vous êtes sur la page 1sur 59

Département de Génie Électrique

GEI-1055 : Signaux et
systèmes linéaires
FILTRAGE NUMÉRIQUE
ET

FILTRAGE ADAPTATIF
Cours de la session d’Hiver : • Systèmes de télécommunication
• Traitement numérique du signal

Par François Nougarou

1
Quizz Time
 Que permettent de faire les filtres numériques?
 Quelles sont les façons de filtrer un signal?
 Sur quels types de systèmes LTI peuvent être utilisés pour les filtres
numériques?
 À quoi sert l’ordre du filtre?
 Quels sont les genres de filtres numériques?
 Quelles sont les étapes du filtrage dans Matlab?
 Est-ce que le filtrage numérique s’applique dans le domaine temporel
ou dans le domaine fréquentiel?

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 2


Plan du cours

◼ Rappel - Filtrage numérique dans Matlab


◼ Introduction au filtrage adaptatif
◼ Objectifs des Filtres adaptatifs
◼ Lien entre Filtre Adaptatif et systèmes LTI
◼ Principe du Filtrage adaptatif
◼ Caractéristiques du Filtrage adaptatif
◼ Types de Filtres adaptatifs
◼ Filtrage adaptatif – Annulation d’interférences
◼ Filtrage adaptatif – Méthode LMS
◼ Filtrage adaptatif – Matlab et TD#8
◼ Projet de mi-session
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 3
Rappel - Filtrage numérique dans Matlab
▪ Rappel Système LTI

x  n
System y  n
LTI

▪ Système LTI discret non-récursif : ➔ Convolution

 
Dans Matlab
y  n =  x  k  h n − k  =  h k  x n − k  = x n   h n 
k =− k =−

ici h[k] sont des paramètres constants qui spécifient le système

▪ Système LTI discret récursif : ➔ Équation aux différences

N M Dans Matlab
 a y n − k  =  b x n − k 
k =0
k
k =0
k
Fonction «filter»
M N
 y  n  =  bk x  n − k  −  ak y  n − k 
k =0 k =1

ici ak et bk sont des paramètres constants qui spécifient le système

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 4


Rappel - Filtrage numérique dans Matlab
▪ Rappel Système LTI

x  n
System y  n
LTI

▪ Système LTI discret non-récursif : ➔ Convolution

 
Dans Matlab
y  n =  x  k  h n − k  =  h k  x n − k  = x n   h n 
k =− k =−

ici h[k] sont des paramètres constants qui spécifient le système

▪Faire la conception
Système d’un filtre
LTI discret récursif c’est simplement
: ➔ Équation déterminer les valeurs
aux différences
des coefficients a et b ou h pour faire la filtre que l’on veut.
N M Dans Matlab
 a y n − k  =  b x n − k 
k =0
k
k =0
k
Fonction «filter»
M N
 y  n  =  bk x  n − k  −  ak y  n − k 
k =0 k =1

ici ak et bk sont des paramètres constants qui spécifient le système

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 5


Rappel - Filtrage numérique dans Matlab
▪ Conception de filtre :
→ Dans Matlab, il y a plusieurs façons de déterminer les coefficients ak et bk d’un
filtre numérique :
▪ Faire la conception complète avec l’interface Matlab FDATOOL et exporter les
coefficients des filtres conçus.
▪ Utiliser les fonctions Matlab des filtres numériques.
▪ À la mitaine: (i) en allant dans le domaine des fréquences (fft), (ii) en annulant les
fréquences désirées et (iii) en retournant dans le domaine des fréquences (ifft).

→ Il existe plusieurs types de filtres numériques :

|H(f)| pass-band stop-band |H(f)| pass-band transition band stop-band |H(f)|


(dB) (linear)
1 Dp 1 + d p

0 1
1 − d p

pass-band
-3
ripple

stop-band
ripple
f(norm) Ds d
fc : cut-off frequency fs/2 s

f(norm)
fs/2
→ Filtres de Bessel, Chebyshev, Butterworh, Kaiser… fsb: stop-band frequency
fc : cut-off frequency
fpb: pass-band frequency
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 6
Rappel - Filtrage numérique dans Matlab
▪ Filtre numérique dans Matlab :
▪ Il existe de nombreux types de filtres et toutes une science derrière le filtrage.
Cependant nous allons nous intéresser ici à l’utilisation du filtrage de
Butterworth, identifié dans Matlab par la fonction «Butter».

▪ L’utilisation d’un filtre dans Matlab se déroule en 2 étapes :

Spécifications

1. Le calcul des coefficients du filtre

Coefficients

Signal à Filtrer

2. Utilisation des coefficients

Signal Filtré

Exemple Matlab TD#7


Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 7
Introduction au Filtrage adaptatif
Système de mesure
Objet de Résultat
Mesure, Capteur Conditionnement Conversion Reconsti- de
la (transducteur) du signal A/N tution mesure
Mesurande

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires


Introduction au Filtrage adaptatif
Système de mesure
Objet de Reconstitution Résultat
Mesure, Capteur
Condition-
nement A/N =
Reconstitution de
la du signal mesure
FITLRES NUMÉRIQUES EN CASCADE
Mesurande

Exemple : Signaux EMG

Signal EMG Analyse fréquentielle


Signal EMG - nondufiltré
signal
et EMG
filtré
2 3002
avant filtrage
1.5 après filtrage
1.5
250
1 1
200

Amplitude
Amplitude

0.5 0.5

0 FFT Amplitude 1500

-0.5 -0.5
100
-1 -1
Est-il nécessaire de traiter ce signal? 50
-1.5 -1.5
Activité musculaires dans le dos
-2 -2
0 5 10 15 20 25 30 00 50 5
100 150 10200 25015 300 350
20 400 25
450 50030
Temps en seconde Fréquence
Temps enen Hz
seconde

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires


Introduction au Filtrage adaptatif
Système de mesure
Objet de Reconstitution Résultat
Mesure, Capteur
Condition-
nement A/N =
Reconstitution de
la du signal mesure
FITLRES NUMÉRIQUES EN CASCADE
Mesurande

Exemple : Signaux EMGx  n  Système


Système y  n LTI : Linéaire et
LTI Invariant dans le temps
Signal EMG Analyse fréquentielle
Signal EMG - nondufiltré
signal
et EMG
filtré
2 3002
avant filtrage
après filtrage
Filtre à réponse impulsionnelle finie (FIR)
1.5
Filtre à réponse impulsionnelle infinie (IIR)
1.5
250
1 1
M −1 M −1 N −1
y  n  =  wk x  n − k  200
y  n  =  bk x  n − k  −  ak y  n − k 
Amplitude
Amplitude

0.5 0.5

Amplitude
k =0 FF k =0 k =1
0 1500
T
Détermination des
-0.5 - Moins performant -0.5 - Plus performant
coefficients pour
100
-1 - Nécessite plus de coefficients -1 - Nécessite moins de coefficients
faire des filtres
50
-1.5 -Activité
Aucun musculaires
problème de stabilité
dans le dos numériques -1.5 - Peut être instable
-2 (Passe haut, bas, bande,…)
-2
0 - Plus5 simple
10 15 20 25 30 00 50 5- Plus
100 complexe
150 10200 250 15 300 350
20 400 25
450 50030
Temps en seconde Fréquence
Temps enen Hz
seconde

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires


Introduction au Filtrage adaptatif
Système de mesure
Objet de Résultat
Mesure, Spectromètre Reconstitution de
la mesure
Mesurande

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires


Introduction au Filtrage adaptatif
Système de mesure
Reconstitution Résultat
Spectromètre =
Reconstitution de
mesure
FITLRE
FITLRE
FITLRES ADAPTATIF
ADAPTATIF
NUMÉRIQUES???

MESURANDE - signal x MESURE - signal y RECONSTITUTION de la mesurande


6 1 7
x
0.9
6 x estimé
5
0.8
5
0.7
4
0.6 4
Amplitude

Amplitude

Amplitude
3 0.5

0.4
? 3

2
2
0.3
1
0.2
1
0.1 0

0 0 -1
0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 20 40 60 80 100 120
Échantillons Échantillons
Longueur d’onde Échantillonsd’onde
Longueur d’onde Longueur

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires


Objectifs des Filtres adaptatifs
Système de mesure
Résultat
FITLRE ADAPTATIF
Reconstitution
Spectromètre =
Reconstitution de
«Déconvolution»
FITLRES NUMÉRIQUES??? mesure

MESURANDE - signal x MESURE - signal y RECONSTITUTION de la mesurande


6 1 7
x
0.9
6 x estimé
5
0.8
5
0.7
4
0.6 4
Amplitude

Amplitude

Amplitude
3 0.5 3

0.4
2
2
0.3
1
0.2
1
0.1 0

0 0 -1
0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 20 40 60 80 100 120
Échantillons Échantillons
Longueur d’onde Échantillonsd’onde
Longueur d’onde Longueur

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires


Objectifs des Filtres adaptatifs
Système de mesure
Résultat
FITLRE ADAPTATIF
Reconstitution
Spectromètre =
Reconstitution de
«Déconvolution»
FITLRES NUMÉRIQUES??? mesure

x[n] Modèle du système u[n] Filtre Adaptatif ^x[n]


Inconnu h[n] w[n]

MESURANDE - signal x MESURE - signal y RECONSTITUTION de la mesurande


6 1 7
x
Objectif du filtre adaptatif :
5
0.9
6 x estimé

0.8
5
0.7

→ Déterminer les coefficients w[n] d’une structure (FIR, IIR ou autre) afin que :
4
0.6 4
Amplitude

Amplitude

Amplitude
3 0.5 3

0.4
2
x[n] h[n]*w[n] => Pulsation de Dirac
0.3
2
^
x[n]
1
0.2
1
ou
0.1 0

0
0 20 40 60 80
Échantillons
100 120 140 H [z] ×W[z] => 1
0
0 20 40 60 80
Échantillons
100 120 140
-1
20 40 60 80 100 120
Longueur d’onde Longueur d’onde Échantillonsd’onde
Longueur

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires


Lien entre Filtre Adaptatif et systèmes LTI
▪ Système LTI FIR (non-récursif)

x  n
System y  n
LTI
w n
▪ Système LTI discret non-récursif : ➔ Convolution

 Dans Matlab
y  n =  w k  x  n − k  = x  n   wn 
k =− y = conv ( x, w )

Faire la conception d’un filtre adaptatif c’est simplement déterminer


les valeurs des coefficients w pour faire de :
▪ Identification de systèmes
▪ Inversion de systèmes
La conception des filtres adaptatifs
▪ Annulation d’interférences passe par 2 phases
▪ Prédiction
▪ Machine learning : Classification / Régression
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 9
Principe du Filtrage adaptatif
➔ 2 phases de fonctionnement principales dans un filtre adaptatif :

▪ Phase d’apprentissage ou de calibration:

Objectif
x[n] Modèle du système u[n]
Inconnu Filtre Adaptatif
h[n] w[n] w[n]

▪ Phase d’estimation ou de détection

^ Objectif
x[n] Modèle du système u[n] x[n]
Inconnu Filtre Adaptatif
h[n] w[n] ^
x[n]

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 10


Principe du Filtrage adaptatif
l’erreur e[n] converge vers 0 au
cours des itérations.
➔ Principe de la phase d’apprentissage :

➔ Déterminer w[n] pour que la sortie du filtre


adaptatif y[n] soit égale à x[n]

➔ Les valeurs désirées sont les valeurs d’entrée

Valeurs désirées
d[n] d[n] = x[n]

^y[n] - +
x[n] u[n] Filtre Adaptatif x[n]
h[n] +
w[n]
?
➔ Objectif de la méthode e[n] = d[n]-y[n]  0
d’optimisation :
➔ y[n]  d[n]
minimiser l’erreur e[n] Méthode
en ajustant les d’optimisation y[n]  x[n]
coefficients w[n]
Simon Haykin, «Adaptive filter theory», Prentice-Hall, 2007.

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 11


Principe du Filtrage adaptatif
➔ et la phase d’estimation…

➔ Fonctionne pour des entrées x[n] inconnues

➔ Robuste tant que le système h[n] est invariant

x[n] u[n] ^y[n]


x[n]
Filtre Adaptatif
h[n]
w[n]
?

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 12


Caractéristiques du Filtrage adaptatif

u[n] Filtre y[n] - + d[n] Types de structures de filtres:


+
w[n]
▪ linéaire
e[n] =d[n]-y[n]
Méthode ▪ non-linéaire
d’optimisation

Structure linéaire: Structure noin-linéaire:


Filtre à réponse impulsionnelle finie (FIR) Réseau de neurone artificiel

F. Nougarou, "Structure d’Égalisation pour l’ADSL G.DMT, technologie de


Simon Haykin, «Adaptive filter theory», Prentice-Hall, 2007. transmission à haute vitesse", Mémoire en génie électrique, UQTR, août
2004.
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 13
Caractéristiques du Filtrage adaptatif

u[n] Filtre y[n] - + d[n] Types de structures de filtres:


+
w[n]
▪ linéaire
e[n] =d[n]-y[n]
Méthode ▪ non-linéaire
d’optimisation

Familles principales de méthodes d’optimisation


Structure linéaire: Structure noin-linéaire:
Filtre à réponse impulsionnelle finie (FIR) → PourRéseau de neurone
chaque classe, ilartificiel
existe une
▪ Stochastiques basées sur les connaissance statistiques des entrées J = E  e 2  n  
grande variété de versions.
ex: LMS (Least Mean Square), peu complexe, peu performante
Choix de la méthode
d’optimisation???
▪ Déterministes basées uniquement sur les données existantes n
J =  e 2 i 
ex: RLS (Recursive Least Square), assez complexe, très performante i =i1

▪ Heuristiques basée sur l’optimisation par essai-erreur


dépend des caractéristiques
ex: Algorithme génétique, peu complexe, performante, beaucoup de paramètres
F. Nougarou, "Structure des méthodes
d’Égalisation pour l’ADSL G.DMT, technologie de
Simon Haykin, «Adaptive filter theory», Prentice-Hall, 2007. transmission à haute vitesse", Mémoire en génie électrique, UQTR, août
2004.
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 14
Caractéristiques du Filtrage adaptatif
▪ Vitesse de convergence : ▪ Précision :

u[n] Filtre y[n] - + d[n]


+
w[n]

e[n] =d[n]-y[n]
Méthode
d’optimisation

Simon Haykin, «Adaptive filter theory», Prentice-Hall, 2007.

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 15


Types de Filtres adaptatifs
➔ Types de filtres adaptatifs:

La structure du filtre adaptatif est différente en fonction que ce dernier soit


utilisé pour faire :

▪ Identification de systèmes
▪ Prédiction
▪ Inversion de systèmes
▪ Annulation d’interférences Projet de mi-session

▪ Machine learning : Classification / Régression Cours GEI-1058 H21

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 16


Types de Filtres adaptatifs
➔ Identification de systèmes :

Filtre y  n  d  n
adaptatif
w[n]
e n → 0

-
+

+
u  n d  n
Système
inconnu h[n]

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 17


Types de Filtres adaptatifs
➔ Prédiction :

x  n x  n − 1 Filtre y  n  x  n
Délai Z-1 adaptatif
w[n]
e n → 0

-
+
x  n

+
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 18
Types de Filtres adaptatifs
➔ Inversion de systèmes ou déconvolution :

Le passage à travers les 2 systèmes


peut prend un temps τ

x  n Système h[n]
u  n Filtre y  n  x  n −  
à inverser
adaptatif
w[n]
e n → 0

-
+
xn −  

+
Délai

?
Pour assurer une
bonne synchronisation
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 19
Types de Filtres adaptatifs
➔ Inversion de systèmes ou déconvolution :

Ce système a compensé
l’effet de h[n]

x  n Système h[n]
u  n Filtre y  n  x  n −  
à inverser
adaptatif
w[n]
e n → 0

-
+
xn −  

+
Délai

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 20


Types de Filtres adaptatifs
➔ Exemple d’Inversion de systèmes ou de déconvolution :

Ce système a compensé
l’effet de h[n]

x  n Système h[n]
u  n Filtre y  n  x  n −  
à inverser
adaptatif
w[n]
e n → 0

-
+
xn −  

+
Délai

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 21


Types de Filtres adaptatifs
➔ Exemple d’Inversion de systèmes ou de déconvolution :

Séquence
Séquence Comment retrouver la [ 0,5 -0,2 0,1 0,8
[ 0 1 0 1 0 0] séquence transmise? -0,3 0,4]
Filtre
Filtre
?
Émetteur Récepteur
≠ Adaptatif
Numérique

Canal de transmission
Sequence transmise Sequence après passage dans le canal
1.4
1 1.2

0.8
➔ le canal de 1
transmission, qui est 0.8

Amplitude
Amplitude

0.6 inconnu, distorsionne le 0.6

0.4
signal transmis 0.4

0.2
0.2 ➔ On ne retrouve pas la 0
séquence transmisse. -0.2
0
-0.4
0 5 10 15 20 25 30 35 40 45 50 0 5 10 15 20 25 30 35 40 45 50
Échantillons Échantillons

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 22


Types de Filtres adaptatifs
➔ Exemple d’Inversion de systèmes ou de déconvolution :

d[n]
Séquence
w[n]
connue au
récepteur d[n]
[ 0 1 0 1 0 0] Filtre
Émetteur Adaptatif +
w[n]

Canal de Méthode
transmission h[n] d’optimisation e[n]

x  n Système h[n] à u  n Filtre


y  n  x  n −  
inverser adaptatif w[n]

-
e n → 0
+
xn −  

+
Délai

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 23


Types de Filtres adaptatifs
➔ Exemple d’Inversion de systèmes ou de déconvolution :

Séquence
w[n]
connue au
récepteur d[n]
[ 0 1 0 1 0 0] Filtre d[n]
Émetteur Adaptatif
w[n]

Canal de
transmission h[n]

x  n Système h[n] à u  n Filtre


y  n  x  n −  
inverser adaptatif w[n]

-
e n → 0
+
xn −  

+
Délai

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 24


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 1 : Annulation du son d’un hélicoptère

? Micro2

Rock Hélicop.
Micro1

Rock +
Hélicop. MAIS Julien entend sa
musique et BEAUCOUP le
Julien aime le rock et
moteur de l’hélicoptère…
veut écouter une
chanson dans son
hélicoptère

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 25


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 1 : Annulation du son d’un hélicoptère

➔ Cet algorithme adaptatif Hélicop.1 SYSTÈMES


mets à jour des coefficients - D’ANNULATION
en temps réel et permet de D’INTERFÉRENCES
transformer Hélicop.2 et en (ANC)
Hélicop.1
Micro2

Rock Hélicop.2
Hélicop.
Micro1

Rock +
Hélicop.
Hélicop.1 MAIS Julien entend sa
musique et BEAUCOUP le
Julien aime le rock et
moteur de l’hélicoptère…
veut écouter une
son pas si facile…
chanson dansMAIS
hélicoptèrePourquoi???
Exemple«Les
Matlab
sons d’hélicoptères des deux micros
Département de génie électrique et informatique sont différents pour les deux
GEI-1055 -micros»
Signaux et systèmes linéaires 26
Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Analyse du rythme respiratoire :

EMG des muscles respiratoires pour l’analyse des


mécanismes de la respiration

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 27


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Analyse du rythme respiratoire :

EMG des muscles respiratoires pour l’analyse des


mécanismes de la respiration

▪ La présence inévitable de l’ECG (pulsations cardiaques) affecte l’interprétation des


données EMG
➔ Nécessité de supprimer les pulsations cardiaques tout en conservant l’EMG

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 28


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (1):

▪ Les signaux ECG possèdent des fréquences comprises entre 0 et 60Hz.


➔ En appliquant un filtre bas haut de 60Hz, on élimine donc totalement
l’ECG!

Filtre
Passe haut
60Hz

▪ Or les signaux EMG possèdent des fréquences entre 10 et 450Hz.

➔ Il existe un important chevauchement des spectres.


➔ Le filtre de 60Hz détériore beaucoup le signal EMG!

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 29


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (2):
EMG + ECG ECG

E1 E2

Muscles Directement la
intercostaux poitrine sur le cœur

Électrode
Référence
primaire

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 30


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (2):
EMG + ECG ECG

E1 - E2

EMG

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 31


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (2):
EMG + ECG1 ECG2
ECG

EMG + ECG1 ECG2


E1 - E2

≠ EMG

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 32


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (3):
EMG + ECG1 ECG2

EMG + ECG1 ECG1 ECG2


E1 - Système E2

EMG

➔ C’est quoi ce système?


➔ Comment est-il ajusté pour
passer de ECG2 à ECG1?
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 33
Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (3):
EMG + ECG1 ECG2

M −1
ECG1  n  =  w  k  ECG 2  n − k 
k =0

EMG + ECG1 ECG1 Filtre LTI ECG2


E1 - Système
FIR
E2

Coefficients
w[n]
EMG

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 34


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (3):

EMG + ECG1 y=ECG2*w Filtre FIR ECG2


E1 - w
E2

Méthode
d’optimisation
e = (EMG + ECG1)-y

➔ L’objectif d’une méthode d’optimisation consiste à ajuster les coefficients w


du filtre FIR afin de minimiser une fonction de coût basée sur l’erreur e.

➔ Cela se fait au cours de plusieurs itérations. Au début, les coefficients w sont


nulles.
➔ Au fur et à mesure des itérations, on a :
▪ ^
y=ECG2*w tend vers y=ECG 1
^
▪ e=(EMG + ECG1)-y tend vers e=(EMG + ECG1)-ECG1 , soit e=EMG
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 35
Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (3):
EMG + ECG1 ECG2

EMG + ECG1 ^ ECG2


ECG1 Filtre FIR
E1 - w
E2

Méthode
d’optimisation
^
EMG

➔ Donc, comme plus on itère :


^ ^
y ➔ ECG1 e ➔ EMG

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 36


Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (3):
EMG + ECG1 ECG2

EMG + ECG1 ^ ECG2


ECG1 Filtre FIR
E1 - w
E2

Méthode
d’optimisation
^
EMG

De quoi
dépendent les ➔ Donc, comme plus on itère :
performances ^ ^
y ➔ ECG1 e ➔ EMG
d’annulation?
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 37
Filtrage adaptatif – Annulation d’interférences
➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG
Pistes de solution (3):

EMG + ECG1 ^ ECG2


ECG1 Filtre FIR
E1 - w
E2

De quoi
dépendent les Méthode
performances d’optimisation
d’annulation? ^
EMG

▪ Stochastique basée sur les connaissance statistiques des entrées


(LMS, peu complexe, peu performante)

▪ Déterministe basée uniquement sur les données existantes


(RLS, assez complexe, très performante)

▪ Heuristique basée sur l’optimisation par essai-erreur


(Algorithme génétique, peu complexe, performante, paramètres)

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 38


Filtrage adaptatif – Annulation d’interférences EMG+ECG1

➔ Exemple 2 : Annulation des pulsations cardiaques sur l’EMG


Pistes de solution (3):

EMG + ECG1 ^ ECG2


ECG1 Filtre FIR
0.5
E1
Méthode Stochastique - LMS - EMG vs EMG
- 0.5
E2
wMéthode Déterministe - RLS - EMG vs EMG
^ ^
EMG EMG
0.4
De quoi EMG 0.4
EMG

dépendent les
0.3 Méthode
0.3

performances
0.2 d’optimisation
0.2

d’annulation?
0.1 ^
EMG 0.1
Amplitude

Amplitude
0 0

-0.1 -0.1
▪ Stochastique basée sur les connaissance statistiques des entrées
-0.2 -0.2
(LMS, peu complexe, peu performante)
-0.3 -0.3

▪ -0.4Déterministe basée uniquement sur les données existantes


-0.4

-0.5(RLS, assez complexe, très performante) -0.5


0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000
Nombre d’échantillons Nombre d’échantillons

▪ Erreur Relative - EMG vs EMG+ECG1 ➔ ER = 99,91%


▪ ▪ Erreur
Heuristique basée
Relative sur l’optimisation
- EMG vs EMG estimé par avec
essai-erreur
stochastique ➔ ER= 1,45%
(Algorithme génétique, peu complexe, performante, paramètres)
▪ Erreur Relative - EMG vs EMG estimé avec déterministe ➔ ER = 0,28%
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 39
Filtrage adaptatif – Méthode LMS
➔ Méthode LMS (Least Mean Square)
Modèle général (pas spécifique à l’annulation d’interférences):

- + Avec :
w  n  =  w0  n  , w1  n  , wM −1  n 
u[n] Filtre FIR y[n] d[n] T
+
w[n]
M le nombre de coéfficients du système LTI
u  n  = u  n  , u  n − 1 , u  n − M + 1
T

Méthode LMS
→ Attention les caractères en gras sont des
e[n]=d[n]-y[n] vecteurs et les autres des scalaires

y  n = w  n u  n
T
▪ La phase apprentissage est → Passage dans le FIR
e n = d  n − y n
définit par ces trois lignes de
code qu’il faut répéter dans → Calcul d’erreur
une boucle d’itérations. w  n + 1 = w  n  +  e  n  u  n  → Mise à jour des coef.

→ Précision sur le calcul du passage dans le FIR


M −1
y  n  =  wk  n  u  n − k  équivaut à la multiplication de vecteurs suivante y  n  = w  n  u  n 
T

k =0

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 40


Filtrage adaptatif – Méthode LMS
➔ Méthode LMS (Least Mean Square)
Modèle général (pas spécifique à l’annulation d’interférences):

- + Avec :
w  n  =  w0  n  , w1  n  , wM −1  n 
u[n] Filtre FIR y[n] d[n] T
+
w[n]
M le nombre de coéfficients du système LTI
u  n  = u  n  , u  n − 1 , u  n − M + 1
T

Méthode LMS
→ Attention les caractères en gras sont des
e[n]=d[n]-y[n] vecteurs et les autres des scalaires

y  n = w  n u  n
T
▪ La phase apprentissage est → Passage dans le FIR
e n = d  n − y n
définit par ces trois lignes de
code qu’il faut répéter dans → Calcul d’erreur
une boucle d’itérations. w  n + 1 = w  n  +  e  n  u  n  → Mise à jour des coef.

▪ Une fois la 1ère phase


y  n = w  n u  n
T
terminée, la phase de → Uniquement le passage
dans le FIR
détection peut être réalisée
comme suit :  
Ici w n sont les coefficients de la
dernière itération de l’apprentissage
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 41
Filtrage adaptatif – Méthode LMS
➔ Paramètres de la méthode LMS (Least Mean Square)

→ Équations de l’algorithme LMS :


- +
u[n] Filtre FIR y[n] d[n]
+
y  n = w  n u  n
T w[n]
Iterations

e  n = d  n − y n
w  n + 1 = w  n  +  e  n  u  n 
Méthode LMS
e[n]=d[n]-y[n]

→ Paramétrage

✓ Initialisation des coefficients


✓ Choix du nombre d’itérations
✓ Choix du pas de convergence µ
▪ Si µ est grand : convergence rapide et erreur grande
▪ Si µ est faible: convergence lente et erreur faible

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 42


Filtrage adaptatif – Méthode LMS
➔ Exemple de performance en fonction du pas de convergence pour le LMS
→ Équations de l’algorithme LMS : - +
u[n] Filtre FIR y[n] d[n]
y  n = w  n u  n
T +
w[n]
Iterations

e  n = d  n − y n
w  n + 1 = w  n  +  e  n  u  n 
Méthode LMS
e[n]=d[n]-y[n]

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 43


Filtrage adaptatif – Matlab et TD#8
➔ Contexte du TD#8: Inversion de systèmes en spectrométrie

Système de mesure
Résultat
FITLRE ADAPTATIF
Reconstitution
Spectromètre =
Reconstitution de
«Déconvolution»
FITLRES NUMÉRIQUES??? mesure

MESURANDE - signal x MESURE - signal y RECONSTITUTION de la mesurande


6 1 7
x
0.9
6 x estimé
5
0.8
5
0.7
4
0.6 4
Amplitude

Amplitude

Amplitude
3 0.5 3

0.4
2
2
0.3
1
0.2
1
0.1 0

0 0 -1
0 20 40 60 80 100 120 140 0 20 40 60 80 100 120 140 20 40 60 80 100 120
Échantillons Échantillons Échantillons
Longueur d’onde Longueur d’onde Longueur d’onde

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 44


Filtrage adaptatif – Matlab et TD#8
➔ Énoncé du TD#8: Inversion de systèmes en spectrométrie

Q1 - À partir des données contenues dans le fichier «GEI1055_Data_TD8.mat».


Tracez la courbe suivante :

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 45


Filtrage adaptatif – Matlab et TD#8
➔ Énoncé du TD#8: Inversion de systèmes en spectrométrie

Q2 - Des coefficients, nommés W_adapt, vous sont fournis dans


«GEI1055_Data_TD8.mat». Effectuez une boucle qui permet de passer les
données Mesure_brute dans W_adapt, pour obtenir l’estimée de la mesurande,
nommée Mesurande_estim. Puis, tracez la courbe suivante.

Attention il faut Mesure_brute Système LTI Mesurande_estim


ajouter des zéros à W_adapt
Mesure brute

%-- Correction Q2 ---------------------------------------------


Nw = length(W_adapt);
Mesure_Brute_P = [];
Mesure_Brute_P = [zeros(Nw-1,1);Mesure_Brute];

%-- Détection filtre LMS --------------------------------------


for n = 1:length(Mesure_Brute)
Mesurande_estim(n,1) = W_adapt(1,:)*Mesure_Brute_P(n:n+Nw-1);
end

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 46


Filtrage adaptatif – Matlab et TD#8
➔ Énoncé du TD#8: Inversion de systèmes en spectrométrie
Q3 - L’objectif est maintenant de programmer la méthode LMS afin de déterminer les
coefficients W_adapt, nul au départ, qui permettent de retrouver l’estimation de
Mesurande à partir de la mesure brute.
Étape1 – Initialiser les coefficients à 0, appelez-les w_LMS et sa taille est noté Nw = 70.
Créez également le pas de convergence mu = 0,25.
%- Etape 1
W_LMS=zeros(1,Nw);
Nw = 70;
mu=0.25;

Étape2 – Il y a pas assez de données avec les données fournies. Alors allongez les
vecteurs Mesure_brute et Mesurande en les répétant 1000 fois. Vous obtenez
ainsi Vect_input_temp et vect_calib.

%- Etape 2
vect_input_temp = [];
vect_calib = [];
for rep = 1 : 1000
vect_input_temp = [vect_input_temp;Mesure_Brute];
vect_calib = [vect_calib;Mesurande];
end

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 46


Filtrage adaptatif – Matlab et TD#8
➔ Énoncé du TD#8: Inversion de systèmes en spectrométrie

Étape3 – Tout comme fait en Q2 ajouter des zéros Vect_input_temp et obtenez


Vect_input.

Étape4 – Créez une boucle qui va de n = 1 : length(Vect_input_temp). C’est la


boucle de votre algorithme LMS.

Étape5 – Comme fait en Q2, calculez output_LMS avec cette boucle qui est le
résultat du passage de Vect_input à travers w_LMS à chaque instant n.

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 46


Filtrage adaptatif – Matlab et TD#8
➔ Énoncé du TD#8: Inversion de systèmes en spectrométrie

Étape6 – À partir ce qui a été fait à l’étape 5. Terminez la suite de la méthode LMS
sachant que le signal désiré est vect_calib.

y  n = w  n u  n
T

Iterations e  n = d  n − y n
w  n + 1 = w  n  +  e  n  u  n 

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 46


Filtrage adaptatif – Matlab et TD#8
➔ Énoncé du TD#8: Inversion de systèmes en spectrométrie
Étape7 – Calculez l’erreur au carré, (erreur_LMS).^2, afin d’observer si la méthode LMS
converge ou pas.

Q4 - Que permet d’observer cette courbe?

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 46


Filtrage adaptatif – Matlab et TD#8
➔ Énoncé du TD#8: Inversion de systèmes en spectrométrie
Q5 - À partir des coefficients w_LMS que vous venez de calculez, faites un code qui
permet de faire la phase de détection du filtre adaptatif. Pour cela servez vous du
code de la question Q2.
Q6 - À partir de cette phase de détection, observez la qualité de votre estimation, en
traçant la courbe suivante :

Q7 - Calculez les erreurs relatives :


Err_relat_no_LMS = (sum((Mesurande-Mesure_Brute).^2,1)/sum((Mesurande).^2,1));
Err_relat_LMS = (sum((Mesurande-Mesurande_estim).^2,1)/sum((Mesurande).^2,1));

Q8 - Comparez Err_relat_no_LMS et Err_relat_LMS, que permet de dire ce calcul?


Q9 - Que se passe-t’il au niveau de la courbe (erreur_LMS).^2 et de l’erreur relative si
vous mettez le pas de convergence à : mu = 0,91 et mu = 0,0045?
Q10 - Que ce passe-t’il si vous mettez 3 répétitions et 2500 répétitions pour l’étape 2.
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 46
Projet de Mi-Session
Annulation des pulsations cardiaques sur un signal EMG :

EMG + ECG1 ECG2

EMG + ECG1 ^ ECG2


ECG1 Filtre FIR
E1 - w
E2

Méthode
d’optimisation
^
EMG

Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 46


Merci.

Référence :
S. Haykin and B. Van Veen, Signals and Systems, 2nd edition, John Wiley & Sons, 2005.
S. Haykin, Adaptative Filter Theory, 4e edition, Prentice Hall, 2002.
Département de génie électrique et informatique GEI-1055 - Signaux et systèmes linéaires 37

Vous aimerez peut-être aussi