Localisation haute-résolution de sources sonores à
raies spectrales non-stationnaire
Mémoire
Simon Bouchard
Maîtrise en génie électrique - avec mémoire
Maître ès sciences (M. Sc.)
Localisation haute-résolution de sources sonores à
raies spectrales non-stationnaires
Mémoire
Simon Bouchard
Sous la direction de:
Résumé
Ce mémoire présente trois algorithmes qui ensemble, ont pour objectifs d’estimer la direction d’arrivée de sources sonores composées de raies spectrales non-stationnaires. Ces algorithmes permettent de faire une localisation à haute-résolution qui surpasse les performances d’un corrélateur. Le premier algorithme a comme objectifs d’estimer et de pister les composantes fréquentielles contenues dans un spectre échantillonné par un réseau linéaire uniforme. Le second utilise une version adaptée de l’algorithme MUSIC afin d’estimer la direction d’arrivée de chacune des raies spectrales pistées. Le troisième permet de focaliser les directions d’arrivée de chacune des raies spectrales vers la source qui les a émises afin de la localiser de façon précise. Finalement, ce mémoire présente des mesures expérimentales et des simulations afin de valider le fonctionnement des algorithmes.
Table des matières
Résumé ii
Table des matières iii
Liste des tableaux v
Liste des figures vi
Liste des acronymes et notations ix
Liste des symboles x
Remerciements xv
Introduction 1
1 Estimation de la direction d’arrivée 5
1.1 Formulations des signaux . . . 5
1.2 Matrice de covariance des signaux. . . 7
1.3 Méthodes de détection . . . 10
1.4 Détermination du nombre de sources . . . 17
1.5 Corrélation des sources . . . 18
1.6 Conclusion . . . 21
2 Estimation du contenu fréquentiel 22 2.1 Modélisation du signal . . . 22
2.2 Estimation de la fréquence des composantes fréquentielles . . . 24
2.3 Estimation de la puissance des composantes fréquentielles . . . 25
2.4 Conclusion . . . 26
3 Suivi du contenu fréquentiel 27 3.1 Détermination du nombre de composantes fréquentielles . . . 27
3.2 Algorithme d’estimation du contenu fréquentiel . . . 28
3.3 Modélisation d’une composante fréquentielle . . . 28
3.4 Pistage d’une composante fréquentielle . . . 29
3.5 Initialisation du filtre de Kalman . . . 31
3.6 Assignation des mesures . . . 31
4 Adaptation de MUSIC 34
4.1 Représentation des signaux . . . 34
4.2 Décomposition IQ des composantes spectrales . . . 35
4.3 Estimation des matrices de covariance . . . 36
4.4 Estimation du nombre de sources . . . 37
4.5 Estimation des DOA . . . 38
4.6 Algorithme . . . 38
4.7 Conclusion . . . 39
5 Focalisation spectrale des DOA 40 5.1 Méthode de focalisation spectrale . . . 40
5.2 Sélection de la fréquence de focalisation . . . 42
5.3 Estimation du nombre de sources . . . 43
5.4 Algorithme . . . 43
5.5 Conclusion . . . 43
6 Simulations 44 6.1 Estimation du spectre et suivi . . . 44
6.2 Estimation de la DOA des composantes fréquentielles. . . 53
6.3 Focalisation spectrale des DOA . . . 59
6.4 Comparaison avec GCC . . . 62
6.5 Conclusion . . . 64
7 Mesures expérimentales 65 7.1 Montage expérimental . . . 65
7.2 Estimation de la DOA d’un drone stationnaire devant le réseau . . . 67
7.3 Estimation de la DOA d’un drone stationnaire à côté du réseau . . . 69
7.4 Estimation de la DOA d’un drone en mouvement devant le réseau. . . 71
7.5 Conclusion . . . 72
Conclusion 74 Bibliographie 78 A Décomposition harmonique de Pisarenko 80 A.1 Représentation du signal . . . 80
A.2 Représentation du signal échantillonné . . . 82
A.3 Obtention des composantes fréquentielles. . . 83
A.4 Analogie avec Root-MUSIC . . . 83
B Discrétisation du filtre Butterworth 85 B.1 Définition du filtre . . . 85
B.2 Transformation bilinéaire . . . 86
B.3 Application de la transformation . . . 86
B.4 Déformation de fréquence (frequency warping). . . 87
B.5 Filtre discrétisé . . . 87
Liste des tableaux
Liste des figures
i Spectrogrammes de différentes sources sonores (échantillons sonores provenant
de https://samplefocus.com affichés dans Sonic Visualizer).. . . 2 1.1 Réseau de capteurs à espacement uniforme recevant le signal sm(t). . . 6
1.2 Décomposition du réseau complet en sous-réseaux pour la méthode de lissage
spatial. Chaque point noir est un capteur du réseau. . . 19 3.1 Assignation des mesures de fréquences angulaires aux pistes (filtres de Kalman) 32 6.1 Signal simulé pour le capteur 1 contenant une seule composante à 1 kHz avec
un SNR de 0 dB . . . 45 6.2 Spectre estimé en fonction du temps pour le signal de la figure 6.1 . . . 45 6.3 Spectre estimé et suivi en fonction du temps pour le signal de la figure 6.2 . . . 46 6.4 Erreur quadratique moyenne en fonction du SNR pour l’estimation du spectre
d’une composante à 1 kHz avec et sans pistage . . . 47 6.5 Spectre estimé en fonction du temps pour le signal non stationnaire avec un
SNR de 0 dB . . . 47 6.6 Erreur sur le spectre estimé et suivi en fonction du temps pour un signal non
stationnaire de la figure 6.5 . . . 48 6.7 Erreur quadratique moyenne en fonction du SNR pour l’estimation du spectre
d’une composante non stationnaire avec et sans pistage. . . 49 6.8 Spectre estimé (carré) et pisté (ligne pleine) en fonction du temps pour 5
com-posantes à des fréquences différentes avec un SNR de -3 dB . . . 49 6.9 Erreur sur le spectre estimé et suivi en fonction du temps pour les signaux de
la figure 6.8 . . . 50 6.10 Erreur quadratique moyenne des 5 composantes en fonction du SNR pour
l’es-timation du spectre de la figure 6.8 . . . 50 6.11 Spectrogramme d’un chant d’oiseau effectué sur Sonic Visualizer . . . 51 6.12 Spectre estimé (carré) et pisté (ligne pleine) en fonction du temps pour un
enregistrement du chant d’un oiseau . . . 52 6.13 Spectre corrigé de la figure 6.12 avec la solution proposée . . . 52 6.14 Estimation de la DOA pour un signal composé d’une seule fréquence de 1 kHz
provenant de 30° avec un SNR de -3 dB. . . 53 6.15 Estimation de la DOA pour un signal composé d’une seule fréquence de 1 kHz
provenant de 4 angles différents (0, 10, 20 et 30°) avec un SNR de -3 dB. . . 54 6.16 Estimation de la DOA pour un signal composé de 4 composantes fréquentielles
6.17 Estimation de la DOA pour un signal composé de 2 composantes fréquentielles
de 1 et 3 kHz à 30° et de 2 et 4 kHz à -10° avec un SNR de -3 dB. . . 56 6.18 Erreur quadratique moyenne en fonction du SNR pour différentes fréquences.
L’EQM diminue avec la fréquence. . . 56 6.19 Fonction θ(φ) = arcsin( v
ωdφ) avec deux intervalles identiques projetés sur la
fonction pour montrer la variation en θ et graphique de sensibilité de θ(φ) avec
ω = 2000π rad/s, d = 5 cm et v = 340 m/s. . . 57 6.20 Erreur quadratique moyenne en fonction du SNR pour différente DOA. La
courbe du bas correspond à 0° et celle du haut à 90° (EQM augmente avec
l’angle). . . 58 6.21 Erreur quadratique moyenne en fonction du SNR pour différentes erreurs sur
la fréquence estimée. La courbe du bas correspond à 0 Hz d’erreur et celle du
haut à 60 Hz (EQM augmente avec l’erreur). . . 59 6.22 Erreur quadratique moyenne en fonction du SNR pour un nombre différent de
composantes suivies dans le spectre de la source (EQM diminue avec nombre
de composantes). . . 60 6.23 Fusion de DOA pour deux sources de 3 composantes spectrales avec des DOA
éloignées et un SNR de -3 dB. Les lignes pleines représentent les DOA focalisées
et les lignes pointillées la vérité terrain (40° et 60°) . . . 61 6.24 Fusion de DOA pour deux sources de 3 composantes spectrales avec des DOA est
très près et un SNR de -3 dB. Les lignes pleines représentes les DOA focalisées
et les lignes pointillées la vérité terrain (28° et 32°) . . . 62 6.25 Comparaison entre la méthode GCC et MUSIC adapté pour une source
com-posée de trois raies spectrales (500 Hz, 1 kHz et 2 kHz) à 30°. . . 63 6.26 Résultat de l’algorithme GCC en présence de 2 sources à 30 et 60°. La courbe
représente la somme des fonctions de corrélation entre les différents capteurs.
Celle-ci contient deux pics qui sont fusionnés l’un dans l’autre. . . 63 7.1 Schéma du parcours du signal provenant d’un microphone [9] . . . 66 7.2 Photo présentant le montage expérimental utilisé pour mesurer la DOA d’un
drone . . . 66 7.3 Spectre estimé (carrés) et pisté (lignes) du drone stationnaire à 0° en fonction
du temps pour les signaux échantillonnés sur le montage expérimental. . . 67 7.4 DOA des raies spectrales du drone stationnaire à 0° en fonction du temps
dé-terminées à partir du spectre estimé de la figure 7.3. . . 68 7.5 DOA du drone stationnaire à 0° en fonction du temps déterminée à partir des
DOA de la figure 7.4 . . . 68 7.6 Spectre estimé du drone stationnaire à -45° en fonction du temps pour les
si-gnaux échantillonnés sur le montage expérimental. . . 69 7.7 DOA des raies spectrales du drone stationnaire à -45° en fonction du temps
déterminées à partir du spectre estimé de la figure 7.6 . . . 70 7.8 DOA du drone stationnaire à -45° en fonction du temps déterminée à partir des
DOA de la figure 7.7 . . . 70 7.9 Schéma représentant le déplacement du drone pour l’expérience 3. Le
déplace-ment du drone est centré sur l’axe du réseau. . . 71 7.10 Spectre estimé du drone en déplacement en fonction du temps pour les signaux
7.11 DOA des raies spectrales du drone en déplacement en fonction du temps
déter-minées à partir du spectre estimé de la figure 7.10 . . . 73 7.12 DOA du drone en déplacement en fonction du temps déterminées à partir des
Liste des acronymes et notations
Acronyme Définition
AICe Akaike Information Criterion estimator DOA Direction Of Arrival
DTFT Discrete Time Fourier Transform EQM Erreur Quadratique Moyenne
FBSS Forward-Backward Spatial Smoothing FFT Fast Fourier Transform
GCC General Cross-Correlation
I/Q In-phase and Quadrature components MDL Minimum Description Length
MUSIC MUltiple SIgnal Classification MUSIC-S MUSIC Spectrum
MUSIC-SD MUSIC Spectral Decomposition PHD Pisarenko Harmonic Decomposition SNR Signal to Noise Ratio
STFT Short-Time Fourier Transform ULA Uniform Linear Array
Notation Définition x Scalaire x Vecteur X Matrice Xij Élément ij ˜
x Vecteur pisté dans le temps ˆ
x Transformée de Fourier en temps court du vecteur E{f (t)} Opérateur d’espérance mathématique sur f(t)
> Opérateur de transposition
† Opérateur de transposition conjugaison | · | Opérateur de cardinalité (nombre d’éléments)
Liste des symboles
Symbole Définition
a(θm) Vecteur directeur de la source m à la fréquence ωc
a(ω, θm) Vecteur directeur de la source m en fonction de la fréquence
an(θm) Élément n de a(θm)
A Matrice directrice des sources à la fréquence ωc
¯
A Assemblage des matrices directionnelles normalisées ¯Am pour chaque fréquence m
A(ω) Matrice directrice des sources en fonction de la fréquence
ak Accélération de la fréquence angulaire à l’instant pour le modèle de déplacement
Ar Matrice constituée des Nr premières lignes de A
Am Matrice A(ω) évaluée à ωm
¯
Am Matrice directionnelle normalisée pour la fréquence m
ai, bi Coefficient représentant le filtre h(t)
β Constante de propagation de l’onde Cpq Élément à la position [p, q] de Pn
Cn Somme des éléments de la n-ième diagonale de Pn
d Distance inter éléments d’un réseau de capteurs
D Matrice contenant l’information de déphasage entre les éléments de chacune des sources
D(z) Polynôme représentant le pseudo-spectre de MUSIC
Dm(z) Polynôme représentant le pseudo-spectre de MUSIC pour la fréquence ωm
d2s(θ) Carré de la distance euclidienne entre un vecteur d’analyse a(θ) et le sous-espace source
d2
s(ωk, θ) Fonction d2s(θ) en fonction de la fréquence
e Constante d’Euler
F Matrice de transition d’état pour le filtre de Kalman fs Fréquence d’échantillonnage des signaux
G Matrice de bruit de procédé pour le filtre de Kalman Γij(ω) Fonction de cohérence entre le spectre Xi(ω) et Xj(ω)
h(t) Réponse à l’impulsion d’un filtre H(s) Fonction de transfert d’un filtre
Hi(ω) Fonction de pondération fréquentielle appliquée sur le spectre Xi(ω) pour la
corré-lation généralisée
hi(t) Fonction de pondération temporelle appliquée sur le signal xi(t) pour la corrélation
généralisée I Matrice identité j Unité imaginaire
J Matrice miroir de I contenant seulement une anti-diagonale de 1 K Nombre d’épreuves (en temps ou en fréquence)
K Gain du filtre de Kalman à l’instant k k Indice de l’échantillon de temps Λ Diagonalisation d’une matrice Λs Matrice de corrélation des sources
M Nombre de sources ¯
M Nombre estimé de sources
m Indice de la source ou de la composante spectrale (commence à 1) Mf Nombre de fréquences angulaires considérées
Ms Nombre de sources
Msm Nombre de signaux modulés à la fréquence ωm émis par l’ensemble des sources
N Nombre de capteurs dans le réseau
Nr Nombre d’éléments dans sous-réseau pour le lissage spatial
n Indice du capteur (commence à 1) n(t) Vecteur de bruit additif
ˆ
n(τ, ω) Transformée de Fourier en temps court de n(t) nbb(t) Vecteur bruit en bande de base
P Nombre de points par fenêtre
Pk Matrice de covariance de l’erreur a posteriori pour filtre de Kalman
Pk|k−1 Matrice de covariance de l’erreur a priori pour filtre de Kalman Pn Projecteur dans le sous-espace bruit
Ps Projecteur dans le sous-espace source
¯
Pn Projecteur dans le sous-espace bruit normalisé
Ψij Fonction de pondération généralisée en fréquence pour les spectres Xi(ω)et Xj(ω)
Q Nombre de fenêtres
Q Matrice de covariance du bruit de procédé pour le filtre de Kalman qs Vecteur propre du sous-espace source
qn Vecteur propre du sous-espace bruit
r Seuil pour l’estimation du nombre de sources
R Matrice de covariance du bruit de mesure pour le filtre de Kalman ¯
R Matrice de pondération pour la focalisation spectrale Matrice de covariance de la composante ω sous forme I/Q
RmIQ− Matrice de covariance sans-bruit de la composante ωm sous forme I/Q
Rnn Matrice de covariance spatiale du bruit à une seule fréquence
Rnn(ω) Matrice de covariance spatiale du bruit en fonction de la fréquence
Rxx Matrice de covariance spatiale à une seule fréquence
Rxx− Matrice de covariance spatiale sans bruit à une seule fréquence
Rxx(ω) Matrice de covariance spatiale en fonction de la fréquence
Rxxr Matrice de covariance reçue par le sous-réseau r
Rfxxr Matrice de covariance reçue par le sous-réseau r dans la direction avant
Rb
xxr Matrice de covariance reçue par le sous-réseau r dans la direction arrière
Rf bxxr Matrice de covariance reçue par le sous-réseau r avant et arrière
Rg(τ ) Corrélation généralisée en fonction de τ
Rgij(τ ) Corrélation généralisée entre le signal xi(t)et xj(t)en fonction de τ
sbb(t) Vecteur des signaux provenant des sources en bande de base
sm(t) Signal envoyé par la source m
sm(t) Signaux modulés à la fréquence ωm provenant des directions représentées par Am
∆tn(θm) Décalage en temps de la source m au capteur n
ˆ
sm(τ, ω) Transformée de Fourier en temps court de sm(t)
S Matrice de l’enveloppe complexe des sources ˆ
S(τ, ω) Transformée de Fourier en temps court de S σ2s Valeur propre de l’espace-source
σn2 Valeur propre de l’espace-bruit σ2z Variance du bruit de mesure
σ2a Variance de l’accélération de la fréquence angulaire t Valeur de temps
θm Vecteur des directions d’arrivée à la fréquence ωm mesurées par rapport à l’axe du
réseau ¯
θ Vecteur des DOA des sources, mesuré par rapport à l’axe du réseau ¯
θi Direction d’arrivée de la source i, mesurée par rapport à l’axe du réseau
θm
i Direction d’arrivée de la composante i à la fréquence ωm, mesurée par rapport à l’axe
du réseau
υ Vitesse de propagation de l’onde υ Bruit de mesure de fréquence angulaire V Espace vectoriel d’une décomposition propre Vs Sous-espace source
¯
Vs Sous-espace source normalisée
Vn Sous-espace bruit
ω Valeur de fréquence angulaire
ω0 Valeur de fréquence angulaire pour la focalisation des DOA
ωk Fréquence angulaire à l’instant k pour le modèle de déplacement
ωk Modèle de l’état d’une composante fréquentielle à l’instant k
˜
ωk Vecteur des fréquences pistées à la fenêtre q
˜
ωk Modèle ωk estimé par le filtre de Kalman
˜
ωk|k−1 Modèle ωk estimé a priori par le filtre de Kalman
˙
ωk Vitesse de variation de la fréquence angulaire à l’instant k pour le modèle de
dépla-cement
ωL,ωH Fréquences angulaires minimale et maximale pour le spectre de MUSIC-S
˜
ωq Estimation des fréquences présentes dans la fenêtre d’analyse q
ωs Fréquence angulaire d’échantillonnage des signaux
ωth Seuil pour le gating des assignations de fréquence angulaire
∆ωkij Distance entre la mesure zi
k et la prédiction ˜ω j
k à l’instant k
Ω Matrice des Mf fréquences estimées pour chaque fenêtre q
˜
Ω Matrice des Mf fréquences pistées pour chaque fenêtre q
x(t) Vecteur des signaux reçus par le réseau (épreuve) xn(t) Signal reçu par le capteur n
ˆ
xn(τ, ω) Transformée de Fourier en temps court de xn(t)
xk Vecteur des signaux reçus au temps kT
xr(t) Vecteur des signaux reçus du r-ième sous-réseau
ˆ
x(τ, ω) Transformée de Fourier en temps court de xk
X Matrice des signaux reçus échantillonnés ˆ
X(ω) Matrice des échantillons de ˆx(τ, ω) sur plusieurs fenêtres ym(t) Décomposition de x(t) à la fréquence ωm
zk Mesure de fréquence à l’instant k pour le filtre de Kalman
˜
zk|k−1 Mesure estimée a priori à l’instant k par le filtre de Kalman
zm m-ième zéro du polynôme D(z)
zm Vecteur des zéros du polynôme Dm(z)
¯
Always take a banana to a party.
The Doctor (10th), Doctor Who, épisode The Girl in the Fireplace, 2006
Remerciements
Je tiens à remercier tous ceux qui m’ont encouragé et aidé durant mon passage à la maîtrise. Particulièrement mes amis, ma famille, mes parents et ma soeur qui m’ont permis de me rendre où je suis. Je remercie également ceux qui m’ont enduré lors des moments difficiles et qui étaient là pour fêter avec moi lors des meilleurs moments.
Je veux aussi remercier les professeurs du Département et les étudiants que j’ai rencontrés durant mon parcours qui ont rendu mes visites à l’Université plus plaisantes ! Je remercie aussi le FRQNT et le CRSNG qui ont financé en partie ce projet.
Finalement, je souhaite remercier mon directeur de recherche Dominic Grenier pour ses nom-breux conseils et son support qui m’ont aidé à terminer ce mémoire. Nos nombreuses discus-sions sur divers sujets ont rendu mes études très agréables. Je le remercie également de m’avoir encouragé dans mes activités hors recherche et dans mon implication pour le projet étudiant RoboCup ULaval.
Introduction
La localisation de sources sonores a plusieurs applications dans divers domaines. Elle permet entre autres de déterminer la position de personnes ou d’objets dans une pièce, de repérer des animaux dans un environnement ou de faire de la surveillance avec l’aide d’une caméra qui suit la source sonore. La plupart des méthodes d’estimation de la direction d’arrivée (DOA) utilisent un réseau de microphones afin de capter le son à plusieurs endroits au même instant. L’idée de base est d’estimer le décalage temporel des signaux entre chacun des capteurs et ainsi inférer les DOA. Par contre, la plupart des méthodes « à haute-résolution » présument que le spectre sonore peut être représenté comme un signal à bande étroite modulé à une fréquence unique. Ceci est assez contraignant puisque la plupart des spectres sonores d’intérêt ont un spectre large bande, composé de raies spectrales (contenu harmonique), de signaux limités en bande (contenu percussif, bruit) ou un mélange des deux. Les principaux problèmes de l’estimation de DOA pour un spectre large bande sont les suivants :
1. La phase de chacune des composantes fréquentielles dépend de la fréquence. La relation entre la phase du signal et le décalage temporel n’est donc pas constante ;
2. La corrélation entre les diverses composantes fréquentielles nuit à la plupart des algo-rithmes à haute-résolution ;
3. La complexité des algorithmes augmente rapidement ce qui augmente la quantité de calculs et le temps d’exécution ;
4. Les différentes sources sont plus facilement corrélées entre elles, ce qui nuit à la résolution en angle des DOA ;
5. Le contenu fréquentiel des signaux est non stationnaire et peut varier dans le temps. L’estimation des DOA pour des sources sonores avec un spectre large bande a fait l’objet de plusieurs articles scientifiques. Par contre, la plupart de ces algorithmes requièrent une charge de calculs importante à l’aide de méthodes itératives [3;19] ou le calcul de statistique d’ordres élevés [5], une caractérisation complète des sources sonores à identifier [16] (connaissance a priori des spectres des sources) ou une perte de fidélité dans l’estimation [13] (méthode par corrélateur telle celle de la corrélation croisée généralisée (GCC)).
Au lieu de s’attaquer au cas général, ce mémoire développe le cas particulier des sources avec un spectre large bande composé de raies fréquentielles non stationnaires. Ceci permet d’obtenir un algorithme plus spécialisé qui, en théorie, devrait être plus efficace pour ce type de source. L’analyse de diverses sources sonores pertinentes, telle que présentée à la figure i, permet de conclure à la présence de raies fréquentielles dans leur spectrogramme. Certains laboratoires ont tenté une approche sur ce genre de spectre, tel le laboratoire IntRoLaB de l’Université de Sherbrooke [10], afin de faire la localisation d’un drone dont le spectre est composé d’une composante fondamentale et d’harmoniques. Par contre, des méthodes qui ne sont pas à haute-résolution, tel un corrélateur, ont été utilisées ce qui engendre une perte de fidélité. Le Laboratoire d’Acoustique de l’Université du Maine a aussi travaillé sur un spectre contenant des harmoniques à l’aide d’une approche qui utilise l’apprentissage machine, mais les sources ne sont composées que d’une seule composante spectrale connue [16].
Figure i – Spectrogrammes de différentes sources sonores (échantillons sonores provenant de https://samplefocus.com affichés dans Sonic Visualizer).
Ainsi, les objectifs du mémoire sont les suivants :
1. Développer un algorithme permettant d’estimer les DOA de sources dont le spectre est composé de raies spectrales non stationnaires ;
3. Obtenir un algorithme qui évite de faire un double balayage 2D en fréquence et en angle ; 4. Limiter les effets de la corrélation entre les sources et les raies spectrales.
Certains aspects ne sont pas considérés dans ce mémoire, telle l’obtention d’un algorithme qui fonctionne en temps réel ou sur un système embarqué. Les algorithmes seront exécutés « hors-ligne » afin de pouvoir comparer plusieurs algorithmes sur une même acquisition et simplifier la programmation de ces algorithmes. De plus, le nombre de composantes fréquentielles et de sources est présumé constant (mais pas nécessairement connu) durant une même acquisition.
Plan du mémoire
L’algorithme développé dans ce mémoire se résume en trois parties distinctes : 1. Estimation et pistage des raies spectrales dans le signal échantillonné ; 2. Estimation de la direction d’arrivée pour chacune des raies spectrales ; 3. Fusion des DOA provenant d’une même source (focalisation spectrale).
Afin d’expliquer en détail l’algorithme d’estimation des DOA, le mémoire suit la structure suivante :
Au chapitre 1, un modèle général pour les signaux reçus par un réseau de capteurs est présenté. Ce modèle permet de mettre en évidence le cas où les signaux reçus sont à bande étroite. Ce cas représente la situation la plus analysée dans la littérature à cause de sa simplicité et de son utilisation dans les réseaux à radiofréquence. Par la suite, des algorithmes pour estimer les DOA de sources à large bande et à bande étroite à partir du modèle établi sont présentés. Finalement, deux méthodes de décorrélation et d’estimation du nombre de sources sont présentées afin de régler le problème de corrélation entre les sources et de pouvoir faire l’estimation de DOA sans intervention.
Au chapitre 2, le signal sonore des sources est modélisé par une somme de composantes spectrales monochromatiques (raies spectrales). Ce modèle permet de calculer les statistiques de deuxième ordre sur ceux-ci afin d’obtenir une méthode d’estimation du spectre dite « haute-résolution ». La puissance des composantes est également estimée afin de déterminer les com-posantes principales du spectre.
Au chapitre 3, un modèle dynamique des raies spectrales est établi afin de considérer l’aspect non-stationnaire de celles-ci. Des filtres de Kalman sont utilisés afin de faire le pistage des raies dans le temps. Les mesures obtenues par l’algorithme d’estimation du spectre sont utilisées afin de mettre à jour les filtres.
Au chapitre 4, une adaptation de l’algorithme de MUSIC est présentée. Celle-ci permet de faire l’estimation de la DOA de chacune des raies spectrales pistées lors du chapitre 3.
Au chapitre 5, les algorithmes d’estimation du spectre, de pistage et de localisation sont combinés afin de faire la localisation haute résolution des sources sonores. Les estimations de DOA de chacune des raies du chapitre 4 sont combinées afin d’obtenir une DOA unique par source sonore.
Au chapitre 6, des simulations sont effectuées afin d’analyser les différents algorithmes développés lors du mémoire. Des analyses plus approfondies sur les résultats obtenus sont éga-lement effectuées et une comparaison avec l’algorithme corrélation croisée généralisée (GCC) est réalisée.
Au chapitre 7, les différents algorithmes présentés sont testés sur des mesures expérimen-tales afin de valider leur fonctionnement sur un système réel. Des signaux sont également échantillonnés lorsqu’un drone vole devant un réseau de microphones afin d’estimer sa DOA dans le temps.
Chapitre 1
Estimation de la direction d’arrivée
Ce chapitre présente le modèle du signal dans le cas général ainsi que dans le cas à bande étroite qui est largement utilisé en pratique. La structure du réseau linéaire sera présentée afin d’établir la relation entre chacun des capteurs et le délai de propagation. Ensuite, une analyse de la matrice de covariance des signaux sera présentée afin d’établir la base pour les méthodes dites à « haute résolution » comme MUSIC.
1.1
Formulations des signaux
Considérons le réseau uniforme présenté à la figure1.1. Celui-ci comporte N éléments numéro-tés de 1 à N avec un espacement uniforme d. Le sous-indice n indique le numéro de l’élément tandis que le sous-indice m indique le numéro de la source. Pour simplifier, le signal sm(t)
arrive à l’élément 1 sans délai soit ∆t1(θm) = 0. Afin d’obtenir une estimation de l’angle θm –
qui correspond à la direction d’arrivée du signal sm(t)– une estimation du délai ∆tn(θm)est
nécessaire. En analysant la géométrie et en présumant une vitesse de propagation υ constante, le temps d’arrivée à l’élément n se calcule par :
∆tn(θm) =
nd sin θm
υ . (1.1)
En présumant M signaux et un bruit gaussien uniforme nn(t), le signal reçu à l’élément n
s’obtient ainsi : xn(t) = M X m=1 sm(t − ∆tn(θm)) + nn(t) (1.2)
Il est également possible d’exprimer le signal reçu en fréquence avec une transformée de Fourier en temps court (STFT) par :
Figure 1.1 – Réseau de capteurs à espacement uniforme recevant le signal sm(t). ˆ xn(τ, ω) = M X m=1 ˆ sm(τ, ω) · e−jω∆tn(θm)+ ˆnn(τ, ω) (1.3) = M X m=1 ˆ sm(τ, ω) · e−jβ(ω)d sin θm+ ˆnn(τ, ω) (1.4) = M X m=1 ˆ sm(τ, ω) · e−jφm(ω)+ ˆnn(τ, ω) (1.5) = M X m=1 ˆ sm(τ, ω) · an(ω, θm) + ˆnn(τ, ω) (1.6) où β(ω) = ω
υ est la constante de propagation et φm(ω) représente le déphasage de la
com-posante spectrale du signal à la fréquence ω entre l’élément 1 et n du réseau. Une STFT est requise puisque les signaux peuvent changer dans le temps. La transformée de Fourier est donc calculée sur une fenêtre de longueur arbitraire centrée à τ. L’impact du fenêtrage est inclus dans le signal ˆsm. De plus amples précisions concernant le choix de la STFT sont présentées
à la section 1.2.2. Il est alors possible d’exprimer les signaux reçus (aussi appelé « épreuve » par chacun des capteurs sous forme vectorielle :
ˆ x(τ, ω) =hxˆ1(τ, ω) xˆ2(τ, ω) . . . xˆN(τ, ω) i> (1.7) = M X m=1 ˆ sm(τ, ω) · a(ω, θm) + ˆn(τ, ω) (1.8)
Le vecteur a(ω, θm)est appelé vecteur directeur, car il indique la direction du signal ; il montre
traduit par un déphasage selon la composante spectrale. Ceci sera exploré davantage dans la section1.2.2. Il est possible de simplifier davantage l’équation (1.8) en utilisant les définitions suivantes :
A(ω) =ha(ω, θ1) a(ω, θ2) . . . a(ω, θM)
i (1.9) a(ω, θm) = h 1 e−jφm e−j2φm . . . e−j(N −1)φm i> (1.10) ˆ s(τ, ω) =hˆs1(τ, ω) sˆ2(τ, ω) . . . sˆM(τ, ω) i> . (1.11)
pour obtenir l’équation matricielle :
ˆ
x(τ, ω) = A(ω)ˆs(τ, ω) + ˆn(τ, ω). (1.12)
1.2
Matrice de covariance des signaux
Le principe de base des méthodes d’estimation des DOA haute résolution est de déterminer l’espérance mathématique des signaux reçus x(t) sous la forme d’une matrice de covariance qui est définie ainsi :
Rxx = E
n
x(t)x†(t)o. (1.13)
Par contre, cette définition de la matrice de covariance permet seulement de récupérer les DOA si le signal reçu représente l’enveloppe complexe d’un signal à bande étroite modulé à une porteuse fc(la sous-section1.2.2précise les détails de ce cas). En effet, puisque les vecteurs
directeurs sont modifiés selon la fréquence du signal, il est impossible d’obtenir une matrice indépendante de la fréquence puisque les vecteurs a(ω, θm) varient selon ω. Afin de régler ce
problème, il est possible de décomposer en fréquence la matrice de covariance. L’espérance est alors calculée en fonction du paramètre temporel τ. En présumant que les signaux ne sont pas corrélés avec le bruit :
Rxx(ω) =E n ˆ x(τ, ω) ˆx†(τ, ω)o (1.14) =E n A(ω)ˆs(τ, ω) + ˆn(τ, ω) A(ω)ˆs(τ, ω) + ˆn†(τ, ω) o (1.15) =A(ω)Ens(τ, ω)ˆˆ s(τ, ω)†oA†(τ, ω) + Enn(τ, ω) ˆˆ n(τ, ω)†o (1.16) =A(ω)Rss(ω)A†(ω) + Rnn(ω) (1.17)
où Rss(ω)représente la matrice de covariance des signaux et Rnn(ω) celle du bruit.
1.2.1 Structure de la matrice de covariance
En considérant l’équation (1.17) pour une seule fréquence ωc et un bruit blanc gaussien
uni-forme de variance σ2
n, la matrice de covariance se simplifie ainsi :
Rxx = A(ωc)Rss(ωc)A†(ωc) + Rnn(ωc) = ARssA†+ σn2IN ×N. (1.18)
où IN ×N représente la matrice identité de dimension N × N. Puisque la matrice Rxx est
Hermitienne par construction, elle engendre un espace propre orthonormé et ses valeurs propres sont purement réelles. En analysant les vecteurs propres de Rxx , il est possible de constater
que n’importe quel vecteur qn qui est orthogonal aux colonnes de A est nécessairement un
vecteur propre de Rxx avec une valeur propre de σ2n :
Rxxqn=
ARssA†+ σ2nI
qn= σn2qn. (1.19)
Les vecteurs qn sont dits vecteurs propres du bruit, car leur valeur propre correspond à la
variance du bruit. Puisque la matrice A a une dimension de N × M, il existe N − M vecteurs propres de ce type qui sont orthogonaux à toutes les colonnes de A. D’autre part, un vecteur propre qs de ARssA† avec valeur propre de σs2 donne :
Rxxqs=
ARssA†+ σ2nI
qs = (σ2s+ σ2n)qs. (1.20)
Les vecteurs qs sont dits vecteur source, car leur valeur propre fait intervenir la puissance de
chacune des sources. Il existe M vecteurs propres orthogonaux à ceux du bruit pour un total de N vecteurs propres de la matrice Rxx. L’équation (1.20) montre également que le vecteur
qs est un vecteur propre de Rxx avec une valeur propre de σs2+ σ2n. De plus, un bruit gaussien
uniforme ne fait qu’augmenter uniformément les valeurs propres de Rxx . En considérant les
deux types de vecteurs propres, la matrice Rxx peut être décomposée en deux sous-espaces
orthonormaux Vset Vn, correspondant respectivement au sous-espace source et au sous-espace
bruit : Rxx = V ΛV†= h Vs Vn i " Λs 0 0 σ2nI # " Vs Vn # . (1.21)
En pratique, le sous-espace source est composé des M vecteurs propres ayant les plus grandes valeurs propres et l’espace-bruit des N−M autres vecteurs. La matrice Λsreprésente la matrice
diag(σ2
m). Sinon, des éléments extra diagonaux non nuls aux coordonnées [i, j] apparaissent
faisant intervenir le facteur de corrélation entre la source i et la source j ainsi que σiσj. La
matrice Rxxn’est alors plus diagonalisable et des problèmes de corrélation font leur apparition.
Ces problèmes seront analysés plus en détail dans la section1.5.
1.2.2 Estimation de la matrice de covariance
Afin d’estimer la matrice de covariance dans le cas général, il est préférable d’analyser le cas à bande étroite. Puisqu’une seule fréquence ωcest considérée, l’équation (1.13) peut être utilisée.
En effet, il suffit de considérer que les sources et le bruit sont constitués de signaux en bande de base sbb(t)et nbb(t)modulés à la porteuse ωc :
ˆ x(τ, ω) =A(ω)ˆs(τ, ω) + ˆn(τ, ω) (1.22) =A(ωc) ˆ sbb(τ, ω) ∗ δ(w − wc) + ˆ nbb(τ, ω) ∗ δ(w − wc) (1.23) x(t) =Asbb(t)e−jωct+ nbb(t)e−jωct. (1.24)
En présumant que les sources et le bruit ne sont pas corrélés, Rxx se calcule ainsi :
Rxx = E n x(t)x†(t)o (1.25) = E Asbb(t)e−jωct+ n(t)e−jωct Asbb(t)e−jωct+ n(t)e−jωct † (1.26) = AEnsbb(t)s † bb(t) o A†+ Enn(t)n†(t)o (1.27) = ARssA†+ Rnn (1.28) = Rxx−+ Rnn. (1.29)
où Rxx− est la matrice de covariance des signaux sans bruit. L’équation précédente montre
qu’il est possible de calculer la matrice de covariance en utilisant directement le signal en bande de base (forme I/Q). Ceci simplifie les calculs puisqu’il n’est plus nécessaire de faire une décomposition fréquentielle. En pratique, il n’est pas possible de calculer la matrice de covariance en temps continu et un échantillonnage du vecteur x(t) est nécessaire. En présumant une période d’échantillonnage de T secondes, la matrice X de K épreuves peut être construite de la manière suivante : X(N ×K)= h x(T ) x(2T ) x(3T ) . . . x(KT ) i (1.30) = h x1 x2 x3 . . . xK i . (1.31)
Une épreuve est constituée de N échantillons acquis simultanément au temps kT à la sortie de chacun des N éléments du réseau. Il est alors possible d’estimer la matrice de covariance à partir des épreuves en faisant la moyenne des produits xkx†k :
Rxx≈ 1 K K X k=1 xkx†k= XX† K . (1.32)
Pour le cas général en fréquence, le même principe peut être appliqué. L’échantillonnage est effectué en τ qui représente la position temporelle de la fenêtre pour la STFT. Avec un fenêtrage à tous les Q points, la matrice de K épreuves se calcule ainsi :
ˆ X(ω)(N ×K)=hx(Q, ω)ˆ x(2Q, ω)ˆ x(3Q, ω)ˆ . . . x(KQ, ω)ˆ i (1.33) = h ˆ x1(ω) xˆ2(ω) xˆ3(ω) . . . xˆK(ω) i . (1.34)
Il est alors possible d’estimer la matrice de covariance en fréquence à partir des échantillons du signal en faisant la moyenne des produits ˆxk(ω) ˆx†k(ω) :
Rxx(ω) ≈ 1 K K X k=1 ˆ xk(ω) ˆx†k(ω) = ˆ X(ω) ˆX†(ω) K . (1.35)
En pratique, il est impossible de travailler en fréquence continue comme présenté ci-dessus. Il faut alors échantillonner le spectre de la transformée de Fourier. Pour ce faire, une transformée de Fourier discrète en temps discret (DTFT) est utilisée. La matrice Rxx(ω) est calculée pour
chaque fréquence de la DTFT. Ceci est réalisé par une transformée de Fourier rapide (FFT) du signal échantillonné et fenêtré.
1.3
Méthodes de détection
Les premières méthodes d’estimation de la direction d’arrivée se basaient sur un filtrage spatial comme la méthode par Minimum Variance Distortionless Response. Bien que cette méthode permette d’obtenir un bon estimé des directions d’arrivées, sa variance est élevée et le bruit dégrade rapidement les performances. Une nouvelle classe d’algorithme se basant sur la décom-position en sous-espaces a permis de régler ces problèmes. Cette section présentera la méthode de MUltiple Signal Classification (MUSIC) qui s’applique aux signaux à bande étroite ainsi que la corrélation croisée généralisée (GCC) et MUSIC fréquentiel (MUSIC-S) qui s’appliquent aux signaux à large bande.
1.3.1 Estimation pour signaux à bandes étroites
Les méthodes présentées ci-dessous assument que la matrice d’épreuves X a été construite en échantillonnant les signaux x(t) en bande de base après une démodulation I/Q.
Projection dans sous-espace orthogonal (MUSIC)
Développée indépendamment par G. Bienvenu en 1979 [8] et par R.O. Schmidt en 1986 [18], cette méthode exploite la propriété d’orthogonalité entre les vecteurs directionnels et le sous-espace bruit. L’idée est de projeter un vecteur d’analyse sur le sous-sous-espace bruit et de calculer le carré de la distance euclidienne entre le vecteur d’analyse et le sous-espace source. Cette distance s’obtient ainsi :
d2(θ) = ||Vn†a(θ)||2= 1 Na †(θ)V nVn†a(θ) = 1 Na †(θ)P na(θ) (1.36)
où Pn correspond au projecteur dans l’espace bruit1. Dans le cas sans bruit, la quantité d2s(θ)
s’annule chaque fois que a(θ) pointe dans une direction orthogonale au sous-espace bruit. Cela indique que le vecteur d’analyse est entièrement dans le sous-espace signal. À ce moment-là, le vecteur a(θ) correspond à l’un des vecteurs directionnels. Pour obtenir la direction d’arrivée correspondante, il suffit de déterminer l’angle avec lequel le vecteur directionnel a été construit. Le sous-espace bruit est utilisé puisqu’il permet d’obtenir une résolution plus fine. Par contre, le calcul numérique des vecteurs Vn peut parfois être instable. Afin de régler ce problème, il
est possible d’utiliser la propriété d’orthonormalité entre les vecteurs propres et calculer Pn
en fonction de Ps dont le calcul est plus stable :
Pn+ Ps= VnVn†+ VsVs†= I (1.37)
Pn= I − Ps (1.38)
La section1.2.1montre qu’il existe M valeurs où la distance ds(θ)va s’annuler. Cela correspond
au nombre de colonnes de A qui forme le même sous-espace que Vs tant que le nombre de
capteurs N est strictement inférieur au nombre de sources M.
Afin de déterminer la direction d’arrivée de toutes les sources, des vecteurs d’analyse sont construits sur toute la plage allant de 0 à 180°. Pour chacun des vecteurs d’analyse, l’inverse de la distance euclidienne est calculée afin d’obtenir un pseudo-spectre en fonction de θ contenant M pics. Par la suite, un algorithme de recherche de sommets est appliqué sur le spectre. En présence de bruit idéal, c’est-à-dire un bruit gaussien non corrélé et de mêmes puissances sur tous les capteurs, la matrice de covariance du bruit tendra vers σ2
nI et les vecteurs propres
1. Le espace bruit est appelé ainsi à tort, cela correspond plutôt au espace orthogonal au sous-espace source.
des sous-espaces ne sont pas affectés. Le bruit affecte seulement les valeurs propres de ces derniers, ce qui n’a pas d’importance pour la méthode. Par contre, si le bruit est corrélé, la présence d’éléments extra diagonaux dans la matrice de covariance de bruit viendra ajouter un biais sur la position estimée des sources. De plus, si les signaux sont corrélés entre eux, c’est-à-dire que la matrice de covariance des signaux Λscontient des éléments extra diagonaux,
les sources corrélées vont alors se fondre en une seule à une position moyenne avec un pic peu élevé dans le pseudo-spectre. Ceci correspond au plus grand défaut de la méthode MUSIC. L’algorithme MUSIC est résumé par :
Algorithme 1 MUSIC
1: Estimer la matrice de covariance à partir de la matrice des épreuves Rxx= XX
†
K
2: Effectuer la décomposition propre de Rxx
3: Déterminer le sous-espace bruit Pnà partir des vecteurs propres 4: pour θ = 0◦ à 180◦ :
5: Former le vecteur d’analyse a(θ) = 1 e−jφ e−j2φ . . . e−j(N −1)φ>avec φ = βd cos θ 6: Calculer d−2(θ) = a†(θ)PN
na(θ)
7: Déterminer la position des M plus hauts sommets.
Version “racines” de MUSIC (Root-MUSIC)
La méthode précédente nécessite la recherche des pics dans un spectre. Cette recherche peut parfois être ambiguë si les pics sont confondus l’un dans l’autre. Afin d’éliminer le tracé du pseudo-spectre, une version appelée Root-MUSIC par Barabell [2] permet d’obtenir directe-ment les positions estimées des sources. L’idée repose sur la construction particulière des vec-teurs directionnels dans le cas d’un réseau linéaire uniforme (ULA). En exprimant la distance d2s(θ) de l’équation (1.36) sous la forme d’une double sommation et en utilisant la définition de a(θ), la distance euclidienne non normalisée se calcule ainsi :
d2s(θ) = a†(θ)Pna(θ) (1.39) = N X p=1 N X q=1 ej(p−1)φ Cpq e−j(q−1)φ (1.40) = N −1 X n=−(N −1) Cnejnφ (1.41)
où Cpq est l’élément à la position [p, q] de Pnafin d’alléger la notation et Cnest la somme des
éléments de la n-ième diagonale de Pn
Cn=
X
p−q=n
Un polynôme D(z) peut alors être construit comme suit : D(z) = N −1 X n=−(N −1) Cnz−n. (1.43)
Le polynôme D(z) évalué sur le cercle unitaire est équivalent au spectre de MUSIC. Puisque le spectre possède M pics, D(z) possède M zéros sur le cercle unitaire (en absence de bruit) qui correspondent aux positions des sources φm. Ces zéros viennent en paires conjuguées avec un
module unitaire. Les autres zéros ne forment pas de paire et ne sont pas sur le cercle unitaire. L’estimation des DOA est donc réduite à la recherche des racines du polynôme D(z) qui sont situées sur le cercle unitaire. En présence de bruit, les solutions ne sont plus exactement sur le cercle unitaire, mais elles sont tout de même proches. Il suffit de sélectionner les M zéros les plus proches avec un argument entre 0 et 180°. L’obtention des DOA à partir des zéros dans le cas d’un ULA s’obtient alors par :
θm= arccos(− arg (zm)/(βd)) (1.44)
où zmest l’une des racines de D(z) avec un module près de l’unité. L’algorithme Root-MUSIC
est résumé par :
Algorithme 2 Root-MUSIC
1: Estimer la matrice de covariance à partir de la matrice des épreuves Rxx= XX
†
K
2: Effectuer la décomposition propre de Rxx
3: Déterminer le sous-espace bruit Pnà partir des vecteurs propres 4: Construire le polynôme D(z) à partir des diagonales de Pn
5: Trouver les M zéros les plus près du cercle unitaire avec un argument inférieur à 180° 6: Calculer les directions d’arrivée à partir des zéros avec θm= arccos(− arg (zm)/(βd))
1.3.2 Estimation pour signaux à large bande
Les méthodes présentées ci-dessous ne présument aucune hypothèse sur la matrice d’épreuves X. Les signaux x(t) sont échantillonnés directement à la sortie de chacun des éléments du réseau.
Corrélation croisée généralisée (GCC)
La corrélation croisée généralisée (GCC) a été développée afin de déterminer le délai entre deux capteurs pour un signal donné en présence de bruits non corrélés [15]. Cette technique consiste à pré-filtrer le signal provenant de chacun des capteurs et de calculer la corrélation croisée entre les signaux. Ainsi, le délai peut être estimé en trouvant les valeurs où la corrélation est maximale. Le but du pré-filtrage est d’accentuer les fréquences où le SNR est à son plus haut et de réduire la puissance du bruit. Pour deux signaux xi(t) et xj(t)provenant de deux
capteurs différents (i 6= j) et les filtres hi(t) et hj(t) appliqués aux signaux, la corrélation
croisée se calcule ainsi
Rgxixj(τ ) = E {(xi(t + τ ) ∗ hi(t))(xj(t) ∗ hj(t))} (1.45) = Z ∞ −∞ Hi(ω)Hj∗(ω)Xi(ω)Xj∗(ω)ejωτdω (1.46) = Z ∞ −∞ Ψij(ω)Gxixj(ω)e jωτdω (1.47)
où Ψij = Hi(ω)Hj∗(ω) représente la fonction de pondération généralisée en fréquence et Gxixj
la corrélation croisée en fréquence entre xi(t)et xj(t). La fonction de pondération sert à faciliter
l’estimation des délais entres les signaux. En présumant une seule source, la corrélation croisée en fréquence des signaux est donnée par
Gxixj(ω) = Gss(ω)e
−jω∆t+ G
ninj(ω) (1.48)
où Gss(ω)représente l’autocorrélation de la source et, Gninj(ω)représente la corrélation croisée
du bruit ni(t)et nj(t). Si ni(t)et nj(t)ne sont pas corrélées, Gninj(ω) = 0. Une fonction qui
est couramment utilisée en pratique est celle de transformation de phase. L’idée est d’annuler l’impact de l’autocorrélation du signal qui fait en sorte que les pics sont élargis. En exprimant l’équation (1.48) en temps et en présumant un bruit non corrélé, l’impact de l’autocorrélation des sources est clairement visible :
Gxixj(ω) = Gss(ω)e
−jω∆t (1.49)
Rgx
ixj(τ ) = Rss(τ ) ∗ δ(τ − ∆t) (1.50)
où Rss(τ )est l’autocorrélation de la source en temps. Si Rss(τ )est large, les pics de Rgxixj(τ )
seront larges également. Dans le cas où plusieurs délais seraient présents dans la fonction de corrélation croisée généralisée, les pics peuvent se confondre et l’estimation du délai est alors difficile. Afin d’annuler cet effet, la fonction de pondération suivante peut être choisie :
Ψij(ω) = 1 Gss(ω) = 1 |Gxixj(ω)| = 1 |Xi(ω)Xj∗(ω)| . (1.51)
Rgxixj(τ ) = Z ∞ −∞ Gxixj(ω) |Gxixj(ω)|e jωτdω (1.52) = Z ∞ −∞ e−jω∆tejωτdω (1.53) = δ(τ − ∆t). (1.54)
L’impact de l’autocorrélation des sources est alors annulé. Cette fonction de pondération est très utilisée en pratique pour cette raison et se nomme « pondération par transformation de phase (PHAT) ». La Table 1.3.2 montre différentes fonctions de pondération utilisées en pratique. La fonction Γij(ω) est la cohérence entre les signaux xi(t)et xj(t)exprimée par
Γij(ω) =
Xi(ω)Xj∗(ω)
q
Xi(ω)Xi∗(ω)Xj(ω)Xj∗(ω)
(1.55)
Table 1.1 – Fonction de pondération pour la méthode de corrélation croisée généralisée (GCC) Méthode Fonction de pondération Ψij(ω)
Corrélation croisée (CC) 1
Transformation de phase (PHAT) 1
|Xi(ω)Xj∗(ω)| Maximum de vraisemblance (ML) 1 |Xi(ω)Xj∗(ω)| |Γij(ω)|2 1−|Γij(ω)|2 Roth 1 Xi(ω)Xi∗(ω)
Transformation de cohérence lissée (SCOT) Γij(ω)
|Xi(ω)Xj∗(ω)|
Finalement, quelques méthodes existent afin de combiner les estimations de chaque paire de signaux et obtenir une solution unique pour la DOA. Si une seule source est présente, il est possible d’estimer la DOA par la méthode des moindres carrés en solutionnant l’équation
θ = arcsin(d>d)−1d>(−υτ ) (1.56) où τ est un vecteur avec les estimés de chaque combinaison [i, j] et d est un vecteur de dimension 2×N qui contient la distance entre chaque paire de capteurs correspondant au délai dans le vecteur τ . Une autre méthode consiste à faire la somme des fonctions de corrélation
croisée en interpolant chacune d’entre elles d’un facteur j − i. Ceci est important puisque les capteurs plus éloignés ont un délai plus important à cause de la distance entre ceux-ci. La corrélation croisée sommée est donnée par
Rg(τ ) = 2N N − 1 N −1 X i=1 N X j=i+1 Rgij τ j − i . (1.57)
Le facteur devant la double somme sert à normaliser la fonction de corrélation entre 0 et 1. Ensuite, les délais sont estimés en trouvant les sommets de la fonction Rg(τ )et les DOA sont
calculées à partir de l’équation (1.1) :
θm= arcsin
υ∆tm
d
(1.58)
Le principal avantage de cette méthode est qu’il est possible de détecter plus d’une source à la fois. L’algorithme de GCC utilisant cette méthode est résumé par la procédure suivante : Algorithme 3 Corrélation croisée généralisée
1: Sélectionner une fonction de pondération Ψij(ω)
2: pour i de1 à N-1 : 3: pour j de i à N :
4: Calculer Rgij(τ ) à partir de la TF de xi(t)et xj(t)
5: Interpoler Rgij(τ )par un facteur j−i1 pour obtenir Rgij(j−iτ ) 6: Rg(τ ) = Rg(τ ) + Rgij(j−iτ )
7: Déterminer la position des M plus hauts pics de Rg(τ ) 8: Calculer la DOA pour chacun des délais estimés
Un autre avantage de cet algorithme est qu’il fonctionne pour des sources à large bande, contrairement à MUSIC. Par contre, celui-ci souffre tout de même des problèmes de corrélation du bruit et des sources. Le pré-filtrage permet de mitiger les problèmes de corrélation lorsque celle-ci est faible. Finalement, l’estimation du nombre de sources est assez difficile puisque la fonction de corrélation croisée généralisée peut contenir plusieurs pics correspondant à la même source.
MUSIC-S
Il existe une méthode dite non-cohérente afin de généraliser MUSIC au cas à bande large [12]. Celle-ci consiste à utiliser l’algorithme à bande étroite pour chacune des matrices Rxx(ωk)
avec ωk allant de ωL à ωH qui représentent les bornes maximale et minimale en fréquence.
En pratique, les bornes [0,ωs
signaux. Une STFT discrète est utilisée afin d’estimer les matrices X(ωk) et la matrice de
covariance est estimée par
Rxx(ωk) =
X(ωk)X†(ωk)
K/Q =
X(ωk)X†(ωk)
P (1.59)
où P représente le nombre d’épreuves dans chaque fenêtrage de la STFT. Ce calcul présume que K est un multiple de Q. Par la suite, les pseudo-spectres sont sommés et une recherche de sommets est effectuée. L’algorithme est résumé par :
Algorithme 4 MUSIC-S
1: Effectuer une STFT sur la matrice des épreuves X avec un fenêtrage aux Q épreuves 2: pour ωk de ωLà ωH :
3: Construire la matrice X(ωk) à partir de la fréquence ωk dans chaque fenêtrage
4: Estimer la matrice de covariance Rxx(ωk) = X(ωk)X
†(ω k)
P
5: Effectuer la décomposition propre de Rxx(ωk)
6: Déterminer le sous-espace bruit Pn(ωk)à partir des vecteurs propres
7: pour θ = 0◦ à 180◦ :
8: Former le vecteur d’analyse a(θ) = 1 e−jφ . . . e−j(N −1)φ>
avec φ = ωk υ d cos θ 9: Calculer d−2s (ωk, θ) = a†(ω N k,θ)Pn(ωk) a(ωk,θ) 10: Calculer d−2s (θ) =P ωkd −2 s (ωk, θ)
11: Déterminer la position des M plus hauts pics de d−2s (θ)
1.4
Détermination du nombre de sources
Afin de faire la discrimination entre les sous-espaces sources et bruits dans les méthodes par sous-espaces telles que MUSIC et MUSIC-S, plusieurs tests peuvent être appliqués selon les hypothèses choisies. Le test le plus utilisé est le critère d’Akaike [1] noté AICe pour « Akaike Information Criterion estimate ». L’idée est de maximiser la fonction de vraisemblance sui-vante : AICe( ¯M ) = K(N − ¯M ) log a0 g0 + ¯M (2N − ¯M ) (1.60) avec a0 = 1 N − ¯M N X i= ¯M +1 λi (1.61) g0 = N Y i= ¯M +1 λi 1 N − ¯M (1.62)
où λila i-ème valeur propre de Rxx. Un autre critère couramment utilisé est celui de Rissanen
[11] noté MDL pour « Minimum Description Length ». Celui-ci peut fournir une estimation consistante lorsque AICe n’y parvient pas. La fonction à maximiser est la suivante :
M DL( ¯M ) = K(N − ¯M ) log a0 g0
+ 0.5 ¯M (2N − ¯M + 1) log K. (1.63) Il est important de noter qu’il vaut toujours mieux de choisir une estimation ¯M ≥ M en cas de doute.
1.5
Corrélation des sources
Dans la section 1.3.1, l’effet de la corrélation des sources sur l’estimation des DOA a été présenté. La corrélation cause l’apparition de sources imaginaires, positionnées dans le spectre MUSIC à un angle moyen pondéré par les puissances des signaux corrélés. De plus, les pics sont très larges par rapport au cas sans corrélation. Le problème est que les sources corrélées entre elles agissent comme une seule source. Ceci est causé par la matrice de covariance des sources Rssqui n’est plus diagonale. La décomposition propre de Rxx telle que présentée à l’équation
(1.21) n’est plus valide. Afin de remédier à ce problème, de nombreuses méthodes ont été développées. La méthode du lissage spatiale et sa variante appelée « forward-backward » sont présentées dans ce chapitre puisqu’elles sont les méthodes les plus utilisées en pratique à cause de leur simplicité.
1.5.1 Lissage spatial
Pour contrer l’effet de la corrélation des sources, la méthode la plus utilisée dans la littérature est celle du lissage spatial, qui fut développée par Shan [6]. L’idée est de séparer le réseau de capteurs en R sous-réseaux, contenant chacun Nr capteurs comme montré sur la figure 1.2.
La relation entre le nombre de capteurs N, le nombre de capteurs par sous-réseau Nr et le
nombre de sous-réseaux est :
R = N − Nr+ 1. (1.64)
Le signal reçu par le r-ième sous-réseau dans le cas sans bruit est exprimé par :
xr(t) = ArD(r−1)s(t) (1.65)
Figure 1.2 – Décomposition du réseau complet en sous-réseaux pour la méthode de lissage spatial. Chaque point noir est un capteur du réseau
La matrice Ar est la matrice des vecteurs directeurs pour le premier sous-réseau, tandis que
la matrice D contient l’information de déphasage entre les éléments de chacune des sources. La matrice de covariance reçue pour le r-ième sous-réseau est donnée par :
Rxxr−= E n xr(t)x†r(t) o =ArD(r−1) Rss ArD(r−1) † (1.67) Les matrices de covariance des sous-réseaux sont alors moyennées afin de calculer la matrice de covariance globale : ˆ Rxx−= 1 R R X r=1 Rxxr−. (1.68)
Si la matrice de covariance des sources ˆRss est définie par
ˆ Rss= 1 R R X r=1 D(r−1)Rss D(r−1)†, (1.69)
la matrice de covariance lissée s’exprime par : ˆ
Rxx− = ArRˆssA†r. (1.70)
La matrice de covariance des sources devient alors régulière lorsque R ≥ M peu importe le degré de corrélation entre les sources. Les problèmes de corrélation intrinsèques aux méthodes par sous-espaces sont alors réglés. En pratique, le lissage est un moyennage des blocs de dimensions (Nr× Nr) le long de la diagonale principale de Rxx− selon (1.68). Il est nécessaire
de faire cela en pratique, car on ne connaît pas D puisque cela exigerait la connaissance de la position des sources.
1.5.2 Forward-Backward Spatial Smoothing Technique (FBSS)
Le lissage spatial a été amélioré par Pillai et Kwon [7]. Leur technique consiste à calculer la matrice de corrélation lissée dans deux directions différentes dites avant et arrière. La matrice en direction avant est calculée de la même manière que le lissage spatial avec l’équation (1.69) et la direction arrière est calculée en invertissant la position de tous les éléments du réseau et en conjuguant la matrice obtenue. La matrice en direction arrière peut également être calculée à partir de celle en direction avant ainsi :
ˆ
Rbxx−= J ( ˆRfxx−)∗J (1.71) où ˆRfxx−est la matrice obtenue en direction avant selon (1.68) et J est la matrice anti-diagonale suivante : J = 0 0 . . . 0 1 0 0 . . . 1 0 ... ... ... ... ... 0 1 . . . 0 0 1 0 . . . 0 0 . (1.72)
La matrice de covariance lissée avant-arrière est obtenue avec la moyenne des deux directions :
ˆ
Rf bxx− = ˆRfxx−+ ˆRxx−b = ˆ
Rfxx−+ J ( ˆRfxx−)∗J
2 . (1.73)
Cette matrice peut ensuite être utilisée à la place de Rxx. Celle-ci devient régulière lorsque
R ≥ M2 peu importe le degré de corrélation entre les sources.
1.5.3 Nombre de capteurs minimal
Les différentes conditions pour garantir la décorrélation de M sources (peu importe le niveau de corrélation) pour les méthodes présentées sont :
R ≥ ( M forward M 2 forward-backward (1.74)
À partir de l’équation (1.64) et de la condition de résolution des sources pour les méthodes à sous-espaces (Nr≥ M + 1), la borne minimale du nombre de capteurs pour chaque méthode
peut être calculée en fonction du nombre de sources N et de sous-réseaux R :
En présumant Mc sources corrélées et Mu sources non corrélées (M = Mc+ Mu) le nombre
de capteurs minimal est donné par :
N > ( 2Mc+ Mu forward 3Mc 2 + Mu forward-backward . (1.76)
L’avantage de la méthode de forward-backward est que moins de capteurs sont nécessaires afin de décorréler la matrice de covariance.
1.6
Conclusion
Ce chapitre a présenté une revue de quelques méthodes qui permettent d’obtenir la direction d’arrivée de sources à bande étroite et à bande large. Un modèle général en fréquence du réseau linéaire uniforme a été présenté suivi d’une analyse de la matrice de covariance créée à partir des signaux captés. La décomposition en sous-espaces de la matrice de covariance a permis de montrer le fonctionnement des méthodes présentées. Ceci a également mis en lumière les défauts des méthodes à bande large, soit la faible résolution ou la complexité des calculs. Ensuite, 2 méthodes d’estimation du nombre de sources ont été présentées afin de pouvoir automatiser l’estimation de DOA sans intervention. Finalement, 2 méthodes de décorrélation ont été présentées afin de réduire l’impact de la corrélation des sources dans le cas des méthodes à sous-espaces. Les prochains chapitres montreront une méthode qui permet de repousser les limites présentées dans ce chapitre.
Chapitre 2
Estimation du contenu fréquentiel
Ce chapitre présente le modèle d’un signal composé de raies spectrales stationnaires ainsi qu’une méthode permettant l’estimation de la fréquence angulaire de celles-ci. Ensuite, une méthode de suivi des raies spectrales dans le temps basé sur un filtre de Kalman sera présentée lorsque celles-ci sont non-stationnaires. Finalement, l’estimation des fréquences initiales pour l’initialisation des filtres est présentée.
2.1
Modélisation du signal
Afin d’estimer le spectre de x[k], le signal est modélisé par une somme de Mf exponentielles
complexes affectées par un bruit gaussien n[k] de variance σ2 n : x[k] = s[k] + n[k] = Mf X i=1 Aiej(ωiT k+φi)+ n[k]. (2.1)
Un vecteur composé des échantillons passés est construit ainsi :
xk =
h
x[k] x[k − 1] x[k − 2] ... x[k − N ]. i>
(2.2) La variable N indique ici le nombre d’échantillons pris pour estimer la fréquence. Ce nombre est analogue au nombre d’éléments du réseau dans l’estimation de la DOA. Le vecteur xkest
l’équivalent du vecteur des signaux reçus (ou « épreuve ») sur le réseau d’antenne. Les vecteurs sk et nk sont construits de la même manière. Le vecteur xk peut être représenté sous forme
matricielle de la façon suivante :
avec A = 1 1 . . . 1 ejω1T ejω2T . . . ejωmT ej2ω1T ej2ω2T . . . ej2ωmT ... ... ... ej(N −1)ω1T ej(N −1)ω2T . . . ej(N −1)ωmT , (2.4) Φ = A1ejφ1 0 . . . 0 0 A2ejφ2 . . . 0 ... ... ... 0 0 0 . . . ArejφMf (2.5) et e = ejω1T k ejω2T k ... ejωmT k (2.6)
où A représente la matrice de délais des échantillons, Φ l’amplitude complexe et e la partie temporelle des composantes spectrales. Ainsi, la matrice de covariance des signaux s’exprime par : Rxx = E n xkx†k o (2.7) = E n (AΦe + nk) (AΦe + nk)† o (2.8) = En(AΦe) (AΦe)†o+ Ennkn†k o (2.9) = AΦE n ee† o Φ†A†+ σn2I (2.10) = AΦΦ†A†+ σ2nI (2.11) = ARssA†+ Rnn (2.12)
avec la matrice de covariance du signal
Rss= ΦΦ†= A21 0 . . . 0 0 A2 2 . . . 0 ... ... ... ... 0 0 . . . A2M f (2.13) et celle du bruit Rnn= σn2I. (2.14)
2.2
Estimation de la fréquence des composantes fréquentielles
La méthode utilisée afin d’estimer les fréquences et la puissance des composantes spectrales se base sur la décomposition harmonique de Pisarenko (PHD). Cette décomposition est similaire à la méthode de Root-MUSIC de la section 1.3.1. L’annexe A explique cette relation plus en détail et montre comment la méthode de PHD fonctionne. L’idée de cette méthode modifiée est d’améliorer l’estimation de fréquence en présence d’un bruit qui ne serait pas idéal à l’aide de plusieurs vecteurs bruits plutôt qu’un seul, comme dans la méthode de PHD. De façon analogue à la méthode de MUSIC classique, la matrice de covariance est décomposée en sous-espace source et bruit :Rxx= V ΛV†= h Vs Vn i " Λs 0 0 σn2I # " Vs Vn # . (2.15)
En considérant un vecteur d’analyse : a(ω) =
h
1 ejωT . . . ej(N −1)ωT i>
, (2.16)
un spectre analogue à celui de MUSIC peut être construit :
d2s(ω) = a†(ω)VnVn†a(ω) = a†(ω)Pna(ω) (2.17)
Comme expliqué à la section 1.3.1, le polynôme D(z) peut alors être construit de la manière suivante : D(z) = N −1 X n=−(N −1) Cnz−n= Mf Y m=1 1 − ejωmTz−1 . (2.18)
où Cn est la somme des éléments de la n-ième diagonale de Pn. Les fréquences angulaires
ωm des composantes sont ensuite estimées en trouvant les Mf zéros de D(z) situés sur le
cercle unitaire (en absence de bruit) dont l’argument est entre 0 et 180°. En présence de bruit, les solutions ne sont plus exactement sur le cercle unitaire, mais elles sont tout de même proches. Il suffit de sélectionner les Mf zéros les plus proches avec un argument entre 0 et
180°. L’obtention des fréquences angulaires à partir des zéros se fait par :
ωi=
arg (zi)
2.3
Estimation de la puissance des composantes fréquentielles
L’estimation de la puissance des harmoniques est utile afin de discriminer les composantes fréquentielles qui sont trop faibles et conserver les plus importantes. La méthode courante pour réaliser cela est de décomposer la matrice de covariance des composantes Rss puisquecelle-ci contient la puissance des sources sur sa diagonale. La démarche suivante réalisée par l’auteur présume que les composantes spectrales ne sont pas corrélées entre elles.
Tout d’abord, la matrice de covariance du signal avec lui même sur N délais s’exprime par :
Rxx− = ARssA† (2.20) = Mf X m=1 σ2smqsmq † sm (2.21) = Vs Λs− σn2I Vs†. (2.22)
Cette matrice a les valeurs propres {σ2
s1, σs22 , . . . , σsr2 }. Ces valeurs propres sont celles de la
diagonale de Λs si on retire l’impact du bruit σn2I. Les vecteurs propres de Rxx− sont les
même que Rxx tel que présenté dans la section 1.2.1. Afin de retirer l’impact du bruit, il
est nécessaire d’estimer sa variance. Ceci est possible en moyennant les valeurs propres du sous-espace bruit de la façon suivante :
σn2 = 1 N − Mf N X m=Mf+1 (Λ)m,m= 1 N − Mf N X m=Mf+1 λm. (2.23)
où λm représente une valeur propre de Rxx. Afin de solutionner l’équation (2.20) et estimer
Rss, l’équation matricielle suivante est considérée :
ARssA†= Vs Λs− σn2I V †
s (2.24)
Vs†ARssA†Vs= Λs− σn2I. (2.25)
En remplaçant Rss et Λs− σ2nI par leur forme matricielle, l’équation suivante est obtenue :
Vs†A A21 0 . . . 0 0 A22 . . . 0 ... ... ... ... 0 0 . . . A2M f Vs†A†= σ2s1 0 . . . 0 0 σs22 . . . 0 ... ... ... ... 0 0 . . . σsr2 . (2.26)
Afin de simplifier davantage cette équation, la substitution suivante est utilisée :
B =hb1 b1 . . . bMf
i
= Vs†A. (2.27)
Celle-ci permet d’exprimer l’équation (2.26) par :
BRssB†= Mf X m=1 A2mbmb†m =diag h σ2s1 σs22 . . . σsr2 i (2.28)
Ensuite, puisque Rss et la matrice des valeurs propres σ2si sont diagonales, les valeurs propres
σ2si peuvent être exprimées par la somme :
σ2si = r X j=1 A2jbijb∗ij = r X j=1 A2j|bij|2. (2.29)
Cette somme peut être simplifiée en considérant le produit d’Hadamard ◦ :
|B ◦ B| A21 A22 ... A2M f = σs12 σs22 ... σsr2 . (2.30)
Finalement, la puissance des composantes fréquentielles est calculée avec la solution à (2.30) : A21 A22 ... A2 Mf = Vs†A ◦Vs†A + σs12 σ2 s2 ... σsr2 (2.31)
où + représente l’opérateur de pseudo-inverse. Cette forme exploite davantage les fonctionna-lités de l’outil de calcul numérique MATLAB. La matrice A doit être estimée afin de calculer la puissance. Pour y arriver, les fréquences estimées dans la section précédente sont utilisées et la matrice est construite comme dans l’équation (2.4).
2.4
Conclusion
Ce chapitre a présenté comment estimer le contenu fréquentiel d’un signal réel composé de composantes fréquentielles qui varient dans le temps. Un modèle du signal a été présenté afin d’appliquer un traitement analogue à l’algorithme de MUSIC présenté au chapitre 1. Celui-ci permet d’obtenir la fréquence angulaire ainsi que la puissance de chacune des composantes. Le prochain chapitre montrera comment faire le suivi des composantes spectrales dans le temps
Chapitre 3
Suivi du contenu fréquentiel
Le chapitre précédent présume que les composantes fréquentielles sont stationnaires dans le temps pour une fenêtre d’analyse. Par contre, les fréquences angulaires ωi peuvent varier
entre les différentes fenêtres. Ce chapitre présentera une méthode qui a été développée afin de permettre le pistage des composantes dans le temps. Dans ce chapitre, l’indice k représente l’indice de la fenêtre sur laquelle l’estimation spectrale a été faite. Chaque fenêtre est composée de K échantillons provenant du signal d’un des capteurs du réseau. Afin de suivre le spectre, la méthode présentée au chapitre2est utilisée et des filtres de Kalman permettront de suivre les composantes dans le temps.
3.1
Détermination du nombre de composantes fréquentielles
Jusqu’à présent, il était présumé que le nombre de composantes fréquentielles Mf est connu.En pratique, ceci n’est pas le cas puisque le spectre échantillonné est inconnu. Tel que présenté au chapitre 1, le critère d’AICe ou de MDL peut être utilisé sur les valeurs propres de Rxx.
Par contre, puisque notre spectre est réel, une condition supplémentaire doit être considérée : les composantes fréquentielles doivent être en paire conjuguée. La relation suivante montre pourquoi cela est nécessaire :
Amcos(ωmT k) = Am 2 ejωmT k+ e−jωmT k (3.1) La puissance estimée de chaque composante est également deux fois plus faible à cause de la conservation de l’énergie. De plus, le nombre de composantes fréquentielles peut être surestimé sans causer de problème à la méthode. En pratique, ceci fonctionne mieux que de se limiter au nombre estimé par l’un des critères. Par contre, afin de ne pas traiter inutilement des composantes non importantes, celles-ci sont discriminées en fonction de la puissance estimée par l’équation (2.31). Chaque puissance est alors comparée à un seuil de puissance minimale déterminé expérimentalement selon le spectre considéré. Seulement les paires de composantes spectrales suffisamment puissantes sont utilisées pour les étapes suivantes.