Académique Documents
Professionnel Documents
Culture Documents
Super
Mobile
Pas d’Utilisation Commerciale — Vous n'êtes pas autoriser à faire un usage commercial de cette
Oeuvre, tout ou partie du matériel la composant.
(CC BY-NC-ND 4.0)
Pas de modifications — Dans le cas où vous effectuez une adaptation, que vous transformez, ou
créez à partir du matériel composant l'Oeuvre originale (par exemple, une traduction, etc.), vous
n'êtes pas autorisé à distribuer ou mettre à disposition l'Oeuvre modifiée.
Le service Politique éditoriale scientifique et technique de l'Ifsttar diffuse différentes collections qui sont
le reflet des recherches menées par l'institut :
• Les collections de l'INRETS, Actes
• Les collections de l'INRETS, Outils et Méthodes
• Les collections de l'INRETS, Recherches
• Les collections de l'INRETS, Synthèses
• Les collections du LCPC, Actes
• Les collections du LCPC, Etudes et recherches des laboratoires des ponts et chaussées
• Les collections du LCPC, Rapport de recherche des laboratoires des ponts et chaussées
• Les collections du LCPC, Techniques et méthodes des laboratoires des ponts et chaussées, Guide
technique
• Les collections du LCPC, Techniques et méthodes des laboratoires des ponts et chaussées, Méthode
d'essai
www.ifsttar.fr
Coordination scientifique
Marion Berbineau, Directrice de Recherche, LEOST
Sébastien Ambellouis, Chargé de Recherche, LEOST
L’Unité de recherche :
Laboratoire Electronique, Ondes et Signaux pour les Transports (LEOST)
20 rue Elisée Reclus, BP 317
59666 Villeneuve d’Ascq Cedex - Tél. : 03 20 43 83 31 – Fax : 03 20 43 83 97
Ce rapport est le fruit des recherches menées dans le cadre du projet EVAS
(Étude d’un système de Vidéo et d’Audio Surveillance sans fil) du PREDIT.
Remerciements............................................................................................................... 9
Synthèse ........................................................................................................................ 11
Introduction ................................................................................................................. 13
Chapitre 1..................................................................................................................... 17
1. Introduction ........................................................................................................... 17
2. Contexte des travaux.............................................................................................. 18
3. Les bases de données audio ................................................................................... 21
4. Etiquetage manuel et difficultés rencontrées ......................................................... 22
5. Méthode « classique » de traitement ..................................................................... 23
6. Méthode « originale »............................................................................................ 25
6.1. Segmentation en zones d'activité .................................................................... 26
6.1.1. Segmentation automatique....................................................................... 26
6.1.2. Détection de segments d'activité............................................................. 28
6.2. Cadre de modélisation et de classification...................................................... 28
6.2.1. Extraction des paramètres acoustiques .................................................... 28
6.2.2. Les MMG................................................................................................. 29
6.2.3. Les SVM.................................................................................................. 30
6.3. Classification .................................................................................................. 32
7. Résultats en matière de détection de cri ................................................................ 34
7.1. Description du corpus utilisé dans les expériences ......................................... 34
7.2. Intérêt du pré-traitement ................................................................................. 34
7.3. Intérêt de la classification hiérarchique .......................................................... 35
7.4. Expériences en validation croisée................................................................... 37
7.5. Conclusions et perspectives ............................................................................ 41
8. Résultats en matière de détection du bruit de bombes de peinture........................ 41
8.1. Paramètres ...................................................................................................... 42
8.2. Adaptation aux conditions acoustiques........................................................... 42
8.3. Conclusions .................................................................................................... 43
9. Conclusions et perspectives ................................................................................... 44
Chapitre 2 ..................................................................................................................... 49
Techniques MIMO pour un lien sans fil robuste entre un autobus et un poste de
contrôle ......................................................................................................................... 49
1. Les télécommunications sans fil pour les transports publics urbains .................... 49
1.1 Le contexte transport........................................................................................ 49
1.2. Les recherches visant l’augmentation des débits de transmission................... 50
2. Les standards de réseaux sans fil pour du haut débit en mobilité.......................... 51
2.1. Classification des systèmes ............................................................................. 51
2.3.3. Le WiMAX ou les normes IEEE 802.16x................................................ 52
3. Etat des recherches sur les techniques MIMO....................................................... 54
4. Le canal de propagation radioélectrique MIMO ................................................... 59
4.1. Introduction..................................................................................................... 59
4.2. Phénomènes physiques caractéristiques d'un canal de propagation ................ 60
4.3. Représentation mathématique du canal MIMO............................................... 61
4.3.1. Représentation classique du canal MIMO................................................ 61
4.3.2. Représentation du canal MIMO par décomposition en canaux propres ... 63
4.4. Capacité d'un canal MIMO ............................................................................. 65
4.4.1. Définition générale de la capacité ............................................................ 65
4.4.2. Paramètres affectant la capacité d'un canal MIMO .................................. 66
4.5. Conclusion ...................................................................................................... 68
5. Modèles de canal MIMO fondés sur la corrélation ............................................... 69
5.1. Introduction..................................................................................................... 69
5.2. Le modèle de Kronecker ................................................................................. 70
5.3. Le modèle de Weichselberger ......................................................................... 71
5.4. Conclusion ...................................................................................................... 73
6. Mesure et modélisation de canaux MIMO réels..................................................... 73
6.1. Les configurations mesurées ........................................................................... 73
6.2. Corrélation spatiale et capacité des canaux mesurés ....................................... 75
6.3. Conclusion ...................................................................................................... 82
7. La chaîne de transmission en simulation ............................................................... 82
7.1. Introduction..................................................................................................... 82
7.2. L'émetteur ....................................................................................................... 83
7.2.1. L'étage codage canal ................................................................................ 83
7.2.2. Modulation et diversité spatiale ............................................................... 84
7.2.3. Rappel sur la modulation OFDM ............................................................. 85
7.3. Les récepteurs ................................................................................................. 88
7.3.1. Le choix des récepteurs à implémenter .................................................... 88
7.3.2. Le récepteur classique .............................................................................. 90
7.3.3. Le turbo récepteur .................................................................................... 90
7.3.4. Description des algorithmes utilisés......................................................... 92
7.4. Comparaison des performances des deux récepteurs dans un canal connu..... 96
Unité de Réseau IP
sauvegarde
Caméra 2
Caméra Alarme !!!
intelligente
1. Introduction
L'impossibilité d'assurer une surveillance efficace par des opérateurs dans
des systèmes comprenant un nombre important de caméras a suscité dans le
monde entier de nombreux travaux de recherches visant à automatiser la
vidéosurveillance par l'analyse et l'interprétation en temps-réel des flux vidéos.
Aux USA on peut citer le projet VSAM, 1999, (Video Surveillance And
Monitoring) de Carnegie-Mellon et du MIT avec des applications de surveillance
automatiques des espaces publics (routes, parkings, centre commerciaux etc.)
et militaires (frontières, proximité des bases, ambassades etc.)
En Europe, les travaux de Recherche et Développement tels que ceux
menés dans les projets Européens PCRD4 et PCRD5, CROMATICA (CROwd
MAnagement with Telematic Imaging and Communication Assistance) et
PRISMATICA (PRo-active Integrated Systems for Security MAnagement by
Technological, Institutional and Communication Assistance) et le projet IST
ADVISOR (Annotated Digital VIdeo for Surveillance and Optimised Retrieval)
sur la surveillance automatique ont traité les espaces ouverts en stations, mais
pas l'intérieur des véhicules.
L'environnement particulier constitué par l'intérieur d'un véhicule en
mouvement transportant des passagers pose de nombreux problèmes pour les
Dans la suite de cette section, nous commençons par décrire rapidement les
données dont nous disposons sur ce projet. Après la description des données,
Chaque scénario est joué plusieurs fois. Pour chaque type de scénario, les
acteurs ont joué une scène dite « en condition normale », dans laquelle aucune
situation critique n'est présente, mais qui possède des propriétés acoustiques
proches d'une scène qualifiée de critique. Dans le cadre de ce projet, nous
nous sommes principalement intéressés à la détection de cris humains.
L'ensemble des scénarii ne convenant pas totalement pour cette étude,
seuls les scénarii les plus pertinents ont été pris en compte. Ces scénarii sont
les scénarii 1 à 4. Leur durée totale cumulée est 2540 secondes. La durée des
cris est de 138 secondes. La durée moyenne d'un cri est de 2.85 secondes.
Le second jeu de données a été enregistré lors d'acquisitions en conditions
réelles à bord d'un autobus Transpole (sans passagers publics) équipé de 4
caméras et de 4 microphones. La durée totale des enregistrements est de
11678 secondes (soit 194 minutes, ou 3h15min) sur l'ensemble des 4
microphones (environ 2900 secondes par micro, soit 50 minutes). Les
dispositifs d'enregistrement sont illustrés dans le chapitre 3.
Or, dans le cadre d'un environnement réel, et donc fortement bruité, tel que
pouvant être rencontré dans les transports en commun, l'étiquetage devient
rapidement une tâche ardue.
La présence dans nos données de bruits affectant fortement les
caractéristiques du son à reconnaître (notamment spectrales), il est souvent
difficile de définir s'il est toujours pertinent d'affecter le mélange sonore à l'une
des classes considérées. Ceci est d’autant plus vrai aux frontières des motifs
sonores. Ceci nous amène à nous interroger sur la pertinence d'effectuer
l'apprentissage des modèles sur des données aussi dégradées.
De plus, dans le cadre de l'évaluation des performances, on ne saurait trop
s'interroger sur la pertinence d'une détection d'un son relativement faible noyé
dans un bruit important. Il est cependant regrettable de constater qu'étant
donné que nous disposons de données réelles (et non pas simulées, c'est-à-
dire mixées a posteriori, aucun contrôle sur le rapport signal/bruit n'est possible.
Cependant, étudier les méthodes de détection d'événements dans des
conditions réelles est intéressant d'un point de vue pratique puisque les
comportements des algorithmes sur des données « mixées » et réelles sont
sensiblement différents.
ms, avec un recouvrement 8 ms. Ainsi, des observations sont obtenues toutes
les 8 ms. La figure 1.3 illustre le procédé de calcul des MFCC.
Figure 1.3 : Etapes de calcul des MFCC - FFT (Fast Fourier Transform),
DCT (Discrete Cosinus Transform) , CMS (Cepstral Mean Substration)
6. Méthode « originale »
Cette méthode est une amélioration de la méthode « classique » basée sur
des observations faites en considérant la qualité des enregistrements et les
types de sons à détecter. Ainsi, puisque les enregistrements sont assez
difficiles à exploiter du fait notamment de la présence de nombreux bruits, et
que les sons que nous cherchons à repérer possèdent un niveau sonore très
supérieur au niveau moyen, nous avons fait l’hypothèse qu'un pré-traitement
ayant pour but d'identifier les zones de forte énergie permet d'améliorer les
performances du système, notamment en ne traitant pas les zones non
pertinentes de faible énergie (gain en temps de calcul) et en évitant de créer de
fausses alarmes sur ces zones.
La détection de zones d'activité se fait en trois étapes, que nous décrirons
plus en détail dans la partie suivante :
— Segmentation automatique
— Détection d'activité
— Sélection des zones pertinentes
Au niveau de la paramétrisation, outre les classiques coefficients MFCC,
d'autres paramètres concurrentiels utilisés habituellement dans le cadre du
traitement automatique de la parole ont été testés. Il s'agit des coefficients LPC
(Linear Prediction Coefficients) [15] et PLP (Perceptual Linear Prediction
Coefficients)[6].
Outre le mélange de lois Gaussiennes, une autre méthode de classification,
dite discriminante, est proposée : les machines à vecteurs de support (SVM)
[22].
Cette méthode a pour but de trouver une frontière (non-linéaire) entre deux
classes. Les paramètres représentant les observations d'apprentissage pour
chaque classe sont projetés dans un espace de dimension supérieure. Puis
une frontière linéaire est déterminée dans cet espace de projection. Lors du
retour aux dimensions originelles, la frontière trouvée est alors non-linéaire. En
phase de test, l'échantillon testé est confronté à la frontière, ce qui permet
l'affectation à une classe. Une mesure de confiance est également disponible
en fonction de la distance entre l'échantillon de test et la frontière.
Contrairement au cas de la méthode « classique », les décisions ne sont
plus prises ici à des intervalles de temps réguliers. La zone d'activité dans son
ensemble constitue désormais la zone de décision. Ainsi, les résultats ne sont
plus obtenus toutes les 200 ms comme dans le cas « classique », mais sur des
intervalles de temps irréguliers dépendant de la détection des zones d'activité.
La méthode dite « originale » est détaillée ci-dessous.
⎧ y n = ∑ a i y n −i + en
⎨
⎩ var(en ) = σ n
2
Figure 1.7 : Zones d'activité détectées sur un signal audio (en gris)
⎧1 t −1 ⎫
M
1 ⎨ ( x−μ j ) Σ j ( x−μ j ) ⎬
P( x / Ci ) = ∑ w j p j ( x) où p j ( x) = 1/ 2
e ⎩2 ⎭
.
j =1 (2π ) d / 2 Σ j
m
p( X Ci ) = ∏ p( x j Ci )
j =1
⎧ ⎫
α ki
p ( y j Ci ) = max ⎨
⎪ ⎡ 1
( ) (
exp ⎢− y j − μ ki Σ −k1 y j − μ ki
t
)
⎤⎪
⎥⎦ ⎬
1≤ k ≤Qi
⎪ (2π )
p/2
Σ ik ⎣ 2 ⎪
⎩ ⎭
6.2.3. Les SVM
Les expériences menées avec la technique de classification discriminante
par SVM ont été effectuées avec l'aide de Jérôme Louradour (IRIT-Université
Paul Sabatier) dont le sujet de thèse porte sur la vérification du locuteur (voir
par exemple [10]).
Les MMG capturent les distributions des paramètres des différentes classes
et effectuent la classification en utilisant un critère de décision bayésien. Au
contraire, la technique SVM est directement focalisée sur la modélisation d'une
fonction discriminante permettant de séparer les classes. Cette fonction est une
combinaison linéaire de plusieurs fonctions kernel (noyau) k estimées sur les
données d'apprentissage.
Pour un problème de classification binaire, avec les données
+ −
d'apprentissage ( x i ) (respectivement ( x i )) avec les étiquettes li = 1
(respectivement l i = −1 ), la fonction peut être écrite :
( ) (
f ( y ) = ∑α i+ k y, xi+ − ∑α i− k y, xi− + b )
Les poids αi sont positifs, b est un seuil tel que f ( y ) > 0 signifie que
nous devons décider d'affecter l'étiquette 1 à y. La fonction k(.,.) peut être vue
comme un produit scalaire généralisé.
on a :
φ p ( x ) = [x1 , x 2 , x12 , x1 x 2 , x 22 ]
t
Dans les expériences, nous utilisons cette approximation avec p=3, dans le
but d'avoir une première idée des performances du classificateur SVM.
6.3. Classification
Dans l'objectif d'améliorer les performances de la classification et de réduire
le taux de fausses alarmes, l'utilisation d'un arbre hiérarchique de classification
est envisagée. L'intérêt de l'utilisation de cet arbre est confirmé par les
expériences décrites en section suivante. L'arbre hiérarchique est décrit sur la
figure 1.8. Plusieurs options sont étudiées en fonction de la topologie de l'arbre.
— Pendant la première étape, une détection bruit de fond/bruits à court
terme est effectuée. Le modèle de bruit de fond est appris sur toutes
les parties du signal où le bruit de fond est présent, y compris les
parties contenant de la parole et des cris. Le modèle de bruits à court
terme est entraîné sur des segments de bruits spécifiques (ouverture
des portes, bruits de chocs …).
— Pendant la deuxième phase, une classification parole/non parole est
effectuée. Pour cette étape, nous considérons les cris humains
comme de la parole.
— Enfin, une détection cri/non cri est effectuée.
En ce qui concerne le taux de bonne détection des cris, les résultats sont
quasiment identiques que l'on emploie ou non la phase de pré-traitement
(environ 75% d'identifications correctes). Toutefois, le taux de fausses alarmes
décroît significativement lorsque le pré-traitement est utilisé (seulement 73s de
fausses alarmes contre 360s sans le pré-traitement).
Ces expériences montrent donc l'intérêt d'utiliser la phase de pré-traitement
puisqu'elle n'influence pas les performances en terme de détection de cris tout
en réduisant nettement le nombre de fausses alarmes.
fausses alarmes est la courbe rouge. Les résultats obtenus avec les MMG sont
décrits sur la figure 1.9.
Figure 1.9 : Résultats obtenus en validation croisée avec les MMG. Les
identifications correctes correspondent aux parties blanches des barres.
Les mauvaises classifications sont représentées par les parties grises de
barres. Les fausses alarmes sont représentées par la courbe. (a) 12 MFCC
+ E + Δ + ΔΔ, (b) 20 MFCC + E + Δ + ΔΔ, (c) 12 LPC + E + Δ + ΔΔ (d) 12
PLP+ E + Δ + ΔΔ
Ces graphiques montrent que le taux de fausses alarmes le plus faible est
obtenu en utilisant 1024 lois gaussiennes et pour les ensembles de paramètres
(b) et (d). La durée des fausses alarmes dans ces deux cas est respectivement
de 9,4 s et 14 s. Elle est relativement faible par rapport à la durée totale du
corpus (environ 2540 s), et également par rapport à la durée des cris à identifier
(environ 140 s).
Le tableau 1.7 montre les résultats d'une autre manière pour ces deux
ensembles de paramètres. Dans ce tableau, nous pouvons voir que lorsqu'il n'y
a pas de cris à détecter (condition « Normale »), l'algorithme ne produit que très
peu de fausses alarmes (seulement 1,3 s de cris détectés dans la condition «
Normale » du deuxième scénario).
Le taux de détection des cris ne semble pas très bon. Cependant, même si
tous les cris ne sont pas détectés précisément dans les scènes dénotées «
Les mêmes expériences ont été effectuées avec classification par SVM. Les
résultats sont résumés sur la figure 1.10. Les graphiques montrent que la
classification par SVM permet d'obtenir des taux de fausses alarmes inférieurs
à ceux obtenus par les MMG. Les meilleurs paramètres sont toujours 20 MFCC
et 12 PLP, avec une durée de fausses alarmes de respectivement 6.2s et 7.4s.
De plus, les performances en termes de durée de cris correctement identifiés
semblent meilleures que pour le cadre MMG.
Nous avons également évalué en détail les résultats obtenus pour ces deux
ensembles de paramètres en utilisant la classification par SVM. Les résultats
sont décrits dans le tableau 1.8.
Ce tableau nous permet de vérifier que les SVM permettent d'obtenir de
meilleures performances en termes de fausses alarmes, exception faite de la
scène « Normale » du scénario 2, pour laquelle un ou deux cris sont détectés.
De la même manière que pour la classification par MMG, des performances
légèrement meilleures sont obtenues avec les paramètres PLP.
Lorsque l'on compare les approches MMG et SVM avec les paramètres
PLP, nous pouvons observer que l'approche SVM permet d'obtenir moins de
fausses alarmes que la classification par MMG : une seule fausse alarme de
1,3 secondes contre cinq fausses alarmes d'une durée totale de 2,98 secondes.
Cependant le taux d'identification des cris est moins bon pour l'approche SVM.
Figure 1.10 : Résultats obtenus en validation croisée avec les SVM. Les
identifications correctes correspondent aux parties blanches des barres.
Les mauvaises classifications sont representées par les parties grises
des barres. Les fausses alarmes sont représentées par la courbe.(a) 12
MFCC + E + Δ +ΔΔ (b) 20 MFCC + E + Δ + ΔΔ (c) 12 LPC + E + Δ + ΔΔ (d)
12 PLP+ E + Δ + ΔΔ
8.1. Paramètres
Dans un premier temps, nous nous sommes interrogés sur la pertinence
d'employer les mêmes paramètres que ceux utilisés pour effectuer la détection
des cris. En effet, la bande spectrale recouverte par les bruits liés aux bombes
de peinture est très large (voir figure 1.11).
Or les paramètres utilisés jusqu'ici sont des paramètres orientés parole. Ils
sont calculés uniquement sur les bandes de fréquences nécessaires à la
compréhension orale (typiquement entre 300 Hz et 8000 Hz --- bande passante
téléphonique).
Il a donc été important de modifier la technique de calcul de ces paramètres
afin de prendre en compte la plus large bande de fréquence possible (jusqu'à
20 kHz, puisque nos enregistrements sont effectués à 44,1 kHz).
8.3. Conclusions
Considérant le fait que dans un scénario de « taggage » le nombre de bruits
liés à l'utilisation de bombes de peinture est relativement conséquent, les
performances en détection ne doivent pas nécessairement être excellentes.
Cependant, les résultats obtenus sont à prendre avec précaution. En effet,
l'étiquetage manuel des bruits liés aux bombes de peinture est assez délicat et
le niveau sonore parfois faible (lié au positionnement des différents micros) les
rend difficile à détecter (à l'oreille comme avec le spectrogramme). Dans ces
conditions, il convient de s’interroger sur les techniques d'évaluation à employer
conformément au cahier des charges. Que doit-on détecter en réalité ?
Lorsqu'un bruit est trop faible sur un micro, peut-on se contenter d'une détection
sur un micro mieux placé ?
Il serait alors intéressant de se pencher sur des évaluations plus soignées,
prenant en compte le rapport signal/bruit (difficile à estimer en conditions
réelles).
9. Conclusions et perspectives
Les travaux réalisés dans ce projet, bien que permettant déjà d'obtenir des
résultats satisfaisants, ne constituent qu'une pré-étude concernant l'intégration
de technologie audio pour la surveillance dans les environnements de
transports en commun. Ces recherches doivent évidemment être approfondies,
de manière à profiter des dernières avancées techniques, que ce soit dans les
domaines de la paramétrisation des signaux audio, des procédés de débruitage
et de séparation de sources multicapteur, ou des algorithmes de classification.
D'une manière générale, un des problèmes à résoudre concernent la
définition des événements à reconnaître. Si ce problème n'est pas essentiel
dans le cas de la détection de bruits liés à l'utilisation de bombes de peinture, la
question reste entière pour ce qui concerne l'identification des cris humains.
Comment définir un cri ? Quelle est la différence entre quelqu'un qui parle fort
et quelqu'un qui crie ? Afin de répondre à ces questions, il serait très
intéressant de mener une étude sur l'analyse de conversations menant à des
situations de violence verbale qui permettrait de définir s'il existe des
différences perceptibles entre la voix « normale » et la voix criée.
Comme nous l'avons vu dans les expériences présentées dans ce rapport,
pour obtenir de bonnes performances, il est important de faire le bon choix de
paramètres. Les paramètres étudiés dans le cadre de la détection de cris
humains sont des paramètres appropriés lorsque l'on cherche à modéliser la
parole.
Au cours des expériences menées en détection de bruits liés à l'utilisation
de bombes de peinture, nous avons remarqué que la bande spectrale couverte
par ces paramètres pouvait ne pas contenir toutes les informations pertinentes
pour la détection de ces bruits. Nous avons donc modifié légèrement la
méthode de calcul de ces paramètres en élargissant la bande spectrale prise
en compte. Cependant, nous n’avons effectué cette modification et ces
expériences qu'avec les paramètres de type MFCC. Il est aujourd’hui
nécessaire d'effectuer ces expériences en modifiant les méthodes de calcul des
autres types de paramètres afin de pouvoir comparer les résultats.
D'autres paramètres pourraient être plus adaptés à la tâche demandée. Des
recherches récentes ont montré l'intérêt d'utiliser des transformées en
ondelettes, notamment dans le cadre d'un habitat médical sécurisé [7], ou bien
en indexation automatique de la bande sonore de documents audio-vidéo
(séparation parole/musique [54]).
L'utilisation de techniques de débruitage, qui, même si elle dégradent les
caractéristiques spectrales du signal, peut être utile dans le cadre notamment
des transports en bus urbain.
Un important travail reste à faire en profitant de la possibilité d'utiliser les 4
microphones de manière à localiser l'emplacement des sources sonores
provoquant les alarmes. Ainsi, le capteur audio pourrait aider le système de
surveillance vidéo à localiser les personnes incriminées. Les techniques de
débruitage et séparation de sources permettraient d'obtenir une amélioration
10. Bibliographie
[1] R. André-Obrecht.A new statistical approach for automatic speech seg
mentation. IEEE Transanctions on Acoustics, Speech and Signal
Processing, 36(1) pp29–40, 1988.
[2] Régine André-Obrecht. Segmentation et parole, Habilitation à diriger des
recherches, Université de Rennes - IRISA, Rennes, June 1993.
[3] W.M. Campbell, J.P. Campbell, D.A. Reynolds, E. Singer, et P.A. Torres-
Carrasquillo. Support vector machines for speaker and language
recognition. Computer Speech and Language, 20(2-3) pp210–229,
April-July 2006.
[4] E. Diday. Cluster analysis. In Digital Pattern Recognition, pages 47–94.
Springer Verlag.
[5] E. Didiot, I. Illina, O. Mella, D. Fohr, et J.P. Haton. Une nouvelle approche
fondée sur les ondelettes pour la discrimination parole/musique. In
Journées d’Etudes de la Parole, 2006.
[6] Hynek Hermansky. Perceptual linear predictive (plp) analysis of speech.
Journal of Acoustical Society of America, 87(4) -pp1738–1752, June
1990.
[7] D. Istrate, E. Castelli, M. Vacher, L. Besacier, et J.F. Serignat. Information
extraction from sound for medical telemonitoring. IEEE Transactions
on Information Technology in Biomedicine, 10(3) :264–274, 2006.
[8] Y. Linde, A. Buzo, et R.M. Gray. An algorithm for vector quantizer design.
IEEE Transactions on Communications, 28(1) pp84–95, 1980.
[9] S. Lloyd. Least squares quantization in pcm. Technical report, Bell
Telephone Laboratories Papers, 1957.
[10] Jérôme Louradour et Khalid Daoudi. Conceiving a new sequence kernel
and applying it to svm speaker recognition. In Eurospeech, Lisboa,
Portugal, 2005.
[11] Alissar Nasser, Denis Hamad, et Chaiban Nasr. K-means clustering
algorithm in projected spaces. In Fusion 2006, Florence, Italia, 2006.
[12] S. Nowlan. Soft Competitive Adaptation : Neural Network Learning
Algorithm based on fitting Statistical Mixtures. PhD thesis, School of
Computer Science, Carnegie Mellon University, 1991.
[13] F. Pellegrino et R. André-Obrecht. Vocalic system modeling : A vq
approach. In IEEE Digital Signal Processing, pages 427–430,
Santorini, July 1997.
[14] Julien Pinquier, Jean-Luc Rouas, et Régine André-Obrecht. Fusion de
paramètres pour une classification automatique parole/musique
robuste. In Technique et science informatiques (TSI) : Fusion
numérique/symbolique, volume 22, pages 831–852. Hermes, 8, quai
du marche neuf, F-75004 Paris, 2003.
Nous nous intéressons ici à une liaison point à point entre un bus et une
station de base. Les différents bus accéderont à celle-ci par les techniques
d'accès classiques de type TDD ou FDD proposées par le standard. Aussi, en
l'absence d'information précise sur la norme IEEE 802.16e, les normes IEEE
802.16a ou d semblent les meilleures candidates pour notre étude. La
modulation OFDM offrant un meilleur potentiel qu'une modulation mono
porteuse, notre intérêt s'est porté sur les couches l'utilisant. Nous avons donc
choisi de nous baser sur la couche physique OFDM de la spécification IEEE
802.16d qui est sensiblement identique à la couche OFDM du 802.16a.
Dans les systèmes MIMO, les traitements sont implémentés soit côté
émetteur, soit côté récepteur, soit des deux côtés simultanément. Trois grands
domaines d'investigation ont été identifiés selon que la dimension spatiale est
exploitée seule, ou conjointement avec la dimension fréquentielle
(compensation des effets de la sélectivité en fréquence) ou avec la dimension
temporelle (compensation des effets de la sélectivité temporelle). Les critères
Récepteur adaptatif,
modulation temps-espace,
Sélectivité en temps
techniques différentielles,
concaténation de codes.
Egalisation,
techniques MIMO-OFDM,
Sélectivité en fréquence bancs de filtres,
modulations codées temps-espace en bloc
orthogonales.
générale ces types de codes spatio-temporels sont des cas particuliers des
codes à dispersion linéaire [HAS02]
Le code d'Alamouti a l'avantage d'être simple à décoder et exploiter. De plus
il offre le maximum de gain de diversité, 2, pour deux antennes d'émission et
une antenne de réception. Cependant, lorsque le nombre d'antennes augmente
en réception cette diversité diminue et le code n'est plus optimal. Les Golden
codes [BEL05] utilisant deux antennes à l'émission permettent de garder ce
gain en diversité. Ils s'appuient sur la théorie des nombres et utilisent
1+ 5
notamment le nombre d'or (Golden number) θ = , une des racines du
2
polynôme θ 2 − θ − 1 = 0 . Les Golden codes ont été généralisés à un nombre
plus important d'antennes d'émission (3,4 et 6) dans [OGGO4]. Ils sont alors
connus sous le nom de codes spatio-temporels en bloc parfaits et sont valides
pour N r ≥ N t .
Les codes présentés ci-dessus imposent de connaître le canal de
transmission à la réception pour être décodés. Un étage d'estimation du canal
devient alors obligatoire. Lors de la transmission de trames courtes (dans le cas
du protocole IP par exemple), cette opération d'estimation devra être répétée
de très nombreuses fois. La rapidité du système peut alors être
considérablement réduite. Afin de s'affranchir de cette étape, de nombreux
travaux portent actuellement sur les techniques différentielles et surtout sur les
codes spatio-temporels non cohérents. Ces techniques reprennent le principe
des modulations et codages différentiels existant pour les transmissions SISO.
Elles peuvent nécessiter une connaissance partielle du canal [DIF04]. Dans ce
cas le codage évolue avec l'état du canal. En l'absence d'information sur le
canal, il est possible d'appliquer les méthodes différentielles sur les blocs du
code STBC [TAO05].
Les codes non cohérents n'exploitent pas d'information sur le canal puisque
les méthodes de construction ne le prennent pas en compte. Ils sont fondés sur
l'utilisation de matrices unitaires. Deux approches existent: l'une s'appuie sur la
théorie des groupes finis [SHO01] ou infinis [JIN05] et l'autre considère la
théorie algébrique des codes cycliques [OGG05]. Les recherches s'intéressent
de plus en plus à ce type de codes très performants. Ainsi, lors d'une
comparaison de codes cohérents et non cohérents dans un canal rapide sélectif
en temps et en fréquence [SAU05], il a été montré que les codes non cohérents
peuvent être plus performants. Cependant, il faut noter que dans cette étude, la
principale faiblesse des codes cohérents réside dans les erreurs fournies par
l'estimateur de canal.
Une autre technique, le précodage, donne également lieu à de nombreuses
recherches. Cette technique consiste à étaler les symboles à transmettre. En
pratique, si le vecteur x représente les symboles à transmettre, il est multiplié
par une matrice de précodage. Le résultat est un nouveau vecteur x' dont
chaque élément contient une contribution des symboles originaux. Cette
opération peut être vue comme un codage en blocs de rendement unitaire qui
transforme la constellation. Avec cette technique, plusieurs répliques du
symbole peuvent subir des dégradations différentes. Il est alors possible en les
recombinant d'obtenir un gain en diversité de codage [LEM05]. Ces méthodes
peuvent être appliquées pour différents types de canaux même si ceux ci sont
destructeurs pour les systèmes MIMO. La différence se fera lors de la
construction de la matrice de précodage. De plus, ces techniques peuvent se
combiner avec du codage spatio-temporel. Des exemples sont proposés pour
des canaux corrélés ou de Rice dans [AKT03], [HJO04], [HJOO6].
Les systèmes MIMO décrits en début de section correspondent à une liaison
point à point. De nouvelles approches pour les systèmes MIMO multi-
utilisateurs (MU-MIMO) et les réseaux MIMO virtuels (VMIMO) sont apparues et
les travaux à ce sujet sont de plus en plus nombreux. La figure 2.2 montre les
différentes architectures possibles pour ces systèmes.
Nous ne nous attarderons pas plus sur ces systèmes MIMO particuliers
puisque dans ce projet nous considérons un lien de communication point à
point. Les différents utilisateurs accèdent à la station de base en utilisant des
techniques d'accès classiques notamment du type TDMA ou FDMA.
Cependant, ces techniques semblent particulièrement prometteuses pour des
applications transports.
transfert du canal selon que l'on se place dans l'espace des temps ou
des fréquences.
⎡ h L h1, N ⎤
⎢ 1,1 t ⎥
Hk = ⎢ M O M ⎥ (2.2)
⎢ ⎥
⎢⎣hN r ,1 L hN r , Nt ⎥⎦
R = ρ HE + B (2.5)
Le système MIMO ainsi normalisé est représenté par la figure 2.6:
V V H = IN (2.9)
t
λ1/2
1 ≥ λ2 ≥ ... ≥ λn ≥ 0
1/2 1/2
(2.11)
r H = min( N r , N t ) (2.12)
où l'opérateur diag (a1 , a2 ,...an ) produit une matrice diagonale dont les
éléments de la diagonale prennent les valeurs a1 , a2 ,..., an . La fonction
min(a, b) retourne a si a ≤ b sinon b . A partir de cette description, les
coefficients hij de H s'expriment comme la somme de r canaux indépendants.
r
hi , j = ∑λ
k =1
1/2
k uik v*jk (2.13)
∑
Px , y ( x, y )
I ( x, y ) = P x , y ( x, y ) log (2.14)
χ ξ
x∈ , y∈
Px ( x) Py ( y )
où χ = {x : Px ( x) =/ 0} et ξ = { y : Py ( y ) =/ 0}
Shannon a démontré qu'il existe un débit d'information en dessous duquel il
est possible de transmettre avec une probabilité d'erreur arbitrairement faible
en utilisant un codage suffisamment élaboré. Au-dessus de ce débit, la
probabilité d'erreur ne peut plus être annulée. Cette grandeur s'appelle la
capacité du canal. Elle est définie comme le maximum de l'information mutuelle
entre la source et le destinataire. Pour un canal sans mémoire, elle s'exprime
selon:
C = maxP ( I ( x, y )) (2.15)
x
⎡a ⎤
où x = vec( X = [abc]) = ⎢⎢b ⎥⎥
⎢⎣ c ⎥⎦
RR = E [HH ]
H
(2.20)
x
(Signal to Noise Ratio). Pour de forts rapports signal sur bruit, la composante
spéculaire n'a pratiquement aucun effet sur la capacité. Les composantes hors
visibilité assurent seules le rang plein de la matrice. Pour de faibles rapports
signal sur bruit, la composante moyenne conditionne l'expression de la capacité
et conduit à une dégénérescence de la matrice du canal. La prépondérance du
trajet principal par rapport aux autres se caractérise par le facteur K de Rice.
Ce facteur est égal au rapport entre la puissance du trajet prépondérant et la
puissance des autres trajets.
4.5. Conclusion
Dans ce paragraphe, nous avons rappelé les différentes représentations
possibles d'un canal MIMO ainsi que les différentes expressions de la capacité
du canal et les principaux paramètres qui l'influencent jouant un rôle
prépondérant dans les performances globales du système. La capacité du
canal dépend fortement de la corrélation du canal et donc de l'environnement
de propagation et de la configuration du système (nombre d'antennes,
espacement entre les antennes, position des diffuseurs à l'émission et à la
RT = U T Λ T U TH (2.25)
x x x x
RT = U R Λ R U RH (2.26)
x x x x
U T et U R sont des matrices unitaires dont les colonnes sont formées par
x x
les vecteurs propres de RT et RR respectivement. Λ T et Λ R sont des
x x x x
matrices diagonales composées des valeurs propres des matrices de
corrélation respectives. A partir de ces définitions, le modèle de Weichselberger
s'écrit selon l'équation (2.27).
H = U R (Ω • G )U TT (2.27)
x x
La matrice G est une matrice dont les coefficients sont i.i.d.. Ω est une
matrice décrivant le lien entre l'émission et la réception. Ses éléments sont
réels et positifs. Ils représentent le couplage de puissance moyen entre les
vecteurs propres à l'émission et ceux à la réception. Les coefficients ωm,n de Ω
sont définis par l'équation (2.28).
5.4. Conclusion
Nous venons de présenter quelques unes des différentes méthodes
permettant de modéliser le canal de propagation MIMO. L'application traitée
implique une mobilité importante et donc une variation importante des
paramètres tels que les angles de départ et d'arrivée des signaux, la répartition
et la forme des diffuseurs... il nous a paru difficile d'utiliser des modèles fondés
sur une description fine de l'environnement. Nous avons donc fait le choix
d'utiliser préférentiellement des modèles purement stochastiques. Des
campagnes de mesures ont donc été réalisées au cours de nos travaux afin de
servir de base à la modélisation. Dans la suite de ce chapitre nous présentons
les modèles que nous avons utilisés dans la chaîne de simulation réalisée
durant le projet EVAS.
Nous pouvons observer qu'il existe peu de sous canaux de propagation pour
le canal SU-S. On note également la présence d'un mode de propagation
prépondérant. Ceci est confirmé par la valeur de la capacité calculée
précédemment. Pour le canal C-S, le degré de diversité côté récepteur est très
important alors que la diversité est plus faible côté émetteur avec deux trajets
prédominants. L'ajout de la diversité de polarisation dans le canal C-S+P
modifie la structure de la matrice de couplage de manière importante et
augmente la diversité à l'émission. Il existe alors de nombreux modes de
propagation.
Ainsi pour chaque canal, un modèle de Weichselberger et un modèle de
Kronecker ont été générés. Les capacités de chaque modèle ont été
comparées avec celles des canaux mesurés. La fonction cumulative de la
distribution de l'enveloppe des coefficients de H a également été étudiée.
La figure 2.16 présente les différentes fonctions cumulatives des
distributions d'enveloppe des coefficients respectivement pour chaque canal
mesuré et les modèles associés. Les résultats obtenus avec les deux modèles
sont assez proches. Le modèle de Weichselberger semble meilleur dans le cas
du canal C-S+P par rapport aux deux autres canaux.
Les évolutions des capacités en fonction du rapport signal sur bruit sont
présentées figure 2.17. Il apparait que les deux modèles ont tendance à sous
estimer la capacité du canal. En particulier, cette sous estimation augmente lors
d'une forte corrélation spatiale dans le canal à modéliser. Le modèle de
Weichselberger semble légèrement meilleur que le modèle de Kronecker pour
les canaux SU-S et C-S+P. Le modèle de Kronecker est meilleur pour le canal
C-S.
En conclusion, les deux modèles donnent des résultats très voisins. Le
modèle de Weichselberger possède l'avantage de considérer les interactions
possibles entre la corrélation à l'émission et à la réception par l'intermédiaire de
Figure 2.16 : CDF des enveloppes des coefficients pour les différents
modèles dans les canaux mesurés
Canal SU-S
Canal C-S
Canal C-S+P
Figure 2.17 : Capacité moyenne pour les différents modèles dans les
canaux mesurés
Canal SU-S
Canal C-S
Canal C-S+P
6.3. Conclusion
Dans ce paragraphe, les différentes méthodes de représentation du canal
MIMO ont été présentées. La définition la plus couramment considérée de la
capacité a été rappelée. Cette grandeur dépend fortement des propriétés
statistiques du canal liées à l'environnement de propagation. Plus
particulièrement, elle est influencée par la corrélation du canal, la présence d'un
trajet prépondérant ou de l'utilisation de la diversité de polarisation. Lors de la
modélisation d'un canal MIMO il est donc important de considérer ces
paramètres.
Nous avons privilégié l’utilisation des modèles analytiques qui exploitent les
propriétés statistiques du canal. Ils offrent une utilisation plus souple.
L'importance de l'influence de la corrélation dans le canal MIMO nous a
conduits à considérer plus particulièrement les modèles faisant appel à ce
paramètre : les modèles de Kronecker et celui de Weichselberger.
Enfin, nous avons réalisé une campagne de mesures dans trois
configurations spécifiques distinctes : un canal avec diversité spatiale en milieu
suburbain et sans ligne de vue, un deuxième canal avec diversité spatiale dans
un couloir en ligne de vue et un troisième canal avec diversité spatiale et
diversité de polarisation dans un couloir en ligne de vue. Les matrices de
covariance et les capacités de ces canaux sont présentées. Enfin, une
comparaison des modèles de Kronecker et de Weichselberger générés à partir
des mesures a conduit à considérer ce dernier modèle pour les canaux utilisés
en simulation.
7.2. L'émetteur
La chaîne d'émission se fonde sur la couche physique du standard IEEE
802.16d [IEEE 802.16-2004] exploitant l'OFDM. Un schéma synoptique du
module d'émission développé est donné figure 2.18.
L'émetteur se décompose selon les étapes classiques suivantes que nous
allons présenter:
— Un étage de codage canal qui permet de détecter et corriger un certain
nombre d'erreurs. Des bits de redondance sont générés et ajoutés au
signal de départ. Le débit initial est diminué. L'entrelacement permet de
répartir les erreurs aléatoirement dans la trame et augmente l'efficacité
des codes. Le poinçonnage permet d'adapter le débit final.
— La modulation M-aire compacte les données.
— Le codage spatio-temporel introduit de la diversité spatiale et temporelle
et augmente la robustesse du lien.
— La modulation OFDM et la mise en forme des trames exploitent la
diversité fréquentielle. Le canal est découpé en sous canaux de bande
étroite ce qui simplifie les traitements en réception.
— Cet étage correspond à la mise en forme des trames et à l'insertion des
symboles OFDM pilotes.
dans le standard et se place avant le code RS. Il transforme les données issues
de la source en données pseudo aléatoires à l'aide d'opérations binaires et de
registres à décalages.
Le code de RS est un code systématique qui génère 255 octets pour 239
octets en entrée. Il peut corriger jusqu'à 8 octets. Les polynômes générateurs
sont donnés dans [IEEE 802.16-2003].
Ce code RS est concaténé en série avec un code convolutif non récursif et
non systématique. Il est de rendement 1/2 et de polynômes générateurs
G1 = 171oct et G2 = 133oct . Le standard spécifie également l'utilisation de turbo
codes en bloc et convolutifs pour la couche physique OFDM. Ces deux
méthodes de codage sont cependant optionnelles et ne sont pas considérées
dans l'étude présentée. Une description détaillée de ces types de code et de
leur mode de fonctionnement est proposé dans [PRO95]
A la sortie de cet étage, une opération de perforation est réalisée afin
d'adapter le rendement de la chaîne au débit désiré. Cette opération consiste à
supprimer des bits du signal afin d'adapter le débit de sortie à la valeur
souhaitée. En considérant le masque [1 1 0 1] proposé dans [IEEE802.16-
2003], pn le symbole émis par la sortie 1 du codeur à l'instant n et qn le
symbole émis par la sortie 2 à l'instant n , le masque appliqué sur les données
[ p1 q1 p2 q2 ] donne en sortie [ p1 q1 q2 ] . Après cette opération, le
rendement du code convolutif est égal à 2/3 et le rendement global de la
chaîne devient 1/2 .
Le codage canal est suivi par une opération d'entrelacement qui permet de
réduire la corrélation des bits entre eux. Nous utilisons l'entrelacement en bloc
du standard décrit dans [IEEE802.16-2004]. Cet entrelacement consiste à
remplir une matrice avec les données en entrée puis à effectuer des
permutations entre les lignes et les colonnes.
7.2.2. Modulation et diversité spatiale
Les données binaires issues de l'étage de codage canal sont ensuite
modulées. Le standard propose un système de modulation adaptatif utilisant la
BPSK, la QPSK, la 16-QAM ou la 64-QAM. Cette dernière est en option pour la
couche PHY-OFDM. Le choix de la modulation s'effectue en fonction de la
qualité du signal et du débit souhaités.
Dans le standard, deux stratégies de codage des constellations des
modulations sont proposées : le codage de Gray et le codage dit "pragmatic"
que nous appelons dans la suite codage pragmatique. L'intérêt des différents
codages de constellation pour une même modulation (appelé aussi par le terme
anglophone mapping) est d'adapter celle-ci au canal de transmission et aux
traitements en réception de façon à maximaliser les distances entre symboles
pour une meilleure détection. Cette méthode permet également d'augmenter la
quantité d'information contenue dans chaque symbole. Dans [SEZ03], A.
Sezgin montre que la stratégie de codage de la constellation d'une modulation
peut influencer fortement les performances d'un système de réception itératif à
avec x0,i ...x N −1,i les données complexes de la constellation modulant chaque
sous porteuses et ψ k la forme d'onde d'une sous porteuse définie par
l'équation (2.33).
⎧ 1
W
j 2π k (t −Tcp )
⎪ e N si t ∈ [0, T ]
ψ k (t ) = ⎨ T − Tcp (2.33)
⎪
⎩ 0 sinon
Propriétés
L'utilisation de l'OFDM permet :
— Une bonne efficacité spectrale et donc des débits importants
— Une bonne résistance aux multitrajets si l'étalement des retards est
inférieur à la durée du préfixe cyclique
— Une égalisation simplifiée en divisant l'ensemble du canal en N sous
canaux
En pratique, les performances d'un système OFDM dépendent
essentiellement de sa résistance aux interférences entre symboles et entre
porteuses provoquées par un étalement des retards trop important par rapport à
la taille du préfixe cyclique mais aussi par une perte de l'orthogonalité du fait de
la mobilité (effet Doppler), des erreurs de synchronisation et des décalages en
phase ou en fréquence des oscillateurs locaux. Des codes correcteurs d'erreurs
sont de plus en plus souvent utilisés afin d'améliorer la robustesse des
systèmes OFDM [LEF95]. Cette méthode est connue sous le nom d'OFDM
codée COFDM (Coded OFDM).
Enfin des distorsions liées à une mauvaise dynamique des amplificateurs et
à l'application de la transformée de fourrier inverse peuvent également
apparaître. Cela se traduit par l'apparition de symboles ou d'échantillons de très
forte amplitude par rapport à la puissance moyenne du signal. Ces fluctuations
de l'enveloppe du signal sont mesurées à l'aide du rapport de puissance crête
sur la puissance moyenne du signal PAPR (Peak to average power ratio). Ce
problème fait l'objet de nombreuses recherches. Parmi les propositions, nous
Cet algorithme dérive de ceux utilisés pour le décodage des Turbo codes
[BERR96]. Le principe est la maximalisation de la probabilité a posteriori pour
un bit donné ce qui a pour effet de minimiser la probabilité de commettre une
erreur sur celui-ci. Le module calcule donc l'information a posteriori Lapp et
l'information extrinsèque Le des bits codés à partir des réponses
impulsionnelles du canal de propagation, des informations a priori et des
données reçues en entrée.
L'algorithme :
A l'émission, les bits c sont définis comme étant les bits en sortie du codeur
convolutif, perforés et entrelacés. Ces bits sont regroupés pour former les
symboles de la modulation M -QAM. Le codage spatio-temporel d'Alamouti
utilisé considère ensuite ces symboles Q = 2 à Q = 2 . Chaque couple peut être
représenté par une matrice X k définie par l'équation (2.35).
⎡ s1,k ⎤
Xk = ⎢ ⎥ (2.35)
⎣ s2,k ⎦
où si ,k est le i-ème symbole considéré dans le couple k .
Ce couple est ensuite codé par le codeur spatio-temporel représenté par la
matrice code G k similaire à l'équation (2.31).
En réception le signal reçu R s'exprime selon l'équation (2.36).
R k = G k .H + n (2.36)
Après la démodulation OFDM, le décodeur spatio-temporel à entrées et
sorties souples réalise simultanément le décodage spatio-temporel et la
démodulation. Il ne considère plus la matrice Xk comme une matrice de
symboles mais comme une matrice de bits ckμ avec μ variant de 1 à
N = Q. log2 M .
L'algorithme Log-MAP calcule le LLR des bits démodulés. Les propriétés
d'orthogonalité du code spatio temporel et l'indépendance des symboles si ,k
composant la matrice X k fait que l'on traitera ensemble les bits d'un même
symbole mais chaque symbole séparément. La séquence binaire composant un
symbole de la modulation est notée cνk avec ν variant de 1 à L = N/Q . Il est
également possible de dire que
L
P ( si ,k ) = ∑
ν
P (cν )
=1
k (2.37)
P (cνk = 1/R k )
∑ P(s/R ) k
ν s∈S ν,1
LLR (ck ) = = (2.38)
P (cνk = 0/R k ) ∑ P ( s/ R ) k
s∈S ν,0
∑ c .La (c )k
j
k
j
∑ P(R k /s ).e
ν
j ≠ , j =1
s∈S ν,1
LLR (cνk ) = La (cνk ) + L
(2.39)
∑ ckj .La (ckj )
∑ ν,0
P (R k /s ).e j ≠ν , j =1
s∈S444442444443
1
Le ( cνk )
états du codeur et des transitions entre ces états en fonction des entrées. Si le
codeur présente un état initial S S (e) ( S 'Start′ ). Le bit u (e) arrivant en entrée du
codeur provoque la transition e du codeur vers un état d'arrivée S E (e) ( S 'End ′ ).
Cet état d'arrivée est dépendant de la valeur du bit u (e) . Cette transition va
correspondre à la sortie du codeur à la génération des bits codés. En
s'appuyant sur [BEN96] et [BER96]], les informations extrinsèques des bits
codés et les informations a posteriori des bits décodés peuvent s'exprimer
respectivement selon les équations (2.40) et (2.41).
⎧⎪ ⎫⎪
Le(ci ,k (e)) = max∗ ⎨α k −1 ( S S (e)) + u (e) ⋅ La (uk ) +
e:ci ,k (e)=1⎪
∑c j ,k (e) ⋅ La (c j ,k ) + β k ( S E (e))⎬
⎪⎭
(2.40)
⎩ j ≠i
⎧⎪ ⎫⎪
e:ci ,k (e)=0⎪
∑
− max∗ ⎨α k −1 ( S S (e)) + u (e) ⋅ La (uk ) + c j ,k (e) ⋅ La (c j ,k ) + β k ( S E (e))⎬
⎪⎭
⎩ j ≠i
⎧⎪ ⎫⎪
max∗ ⎨α k −1 ( S S (e)) +
Lapp (uk (e)) = e:uk (e)=1⎪⎩
∑cj
j ,k (e) ⋅ La (c j ,k ) + β k ( S E (e)) ⎬
⎪⎭ (2.41)
⎧⎪ ⎫⎪
− max∗ ⎨α k −1 ( S S (e)) +
e:uk (e)=0⎪
∑ c j ,k (e) ⋅ La (c j ,k ) + β k ( S E (e))⎬
⎪⎭
⎩ j
avec
⎧⎪ ⎫⎪
α k ( s) = max∗ ⎨α k −1 ( S S (e)) + u (e) ⋅ La (uk ) +
e:S E (e)= s ⎪
∑ c j ,k (e) ⋅ La (c j ,k )⎬ + hα ,k
⎪⎭
(2.42)
⎩ j
et
⎧⎪ ⎫⎪
β k ( s) = max∗ ⎨β k +1 ( S E ( s)) + u (e) ⋅ La (uk +1 ) +
e:S S (e)= s ⎪
∑ c j ,k +1 (e) ⋅ La (c j ,k +1 )⎬ + hα ,k (2.42)
⎪⎭
⎩ j
∑e
ai
a = log( ) (2.43)
i
et sous l'hypothèse que le maximum des ai n'est pas très grand par rapport
aux autres, alors il est possible d'approximer récursivement l'équation (2.44) de
la manière suivante:
a (1) = a1 ⎫
⎪
⎪
( − al −1−al ) ⎪
a (l ) = max(a l −1 − al ) + log[1 + e ] ⎬ (2.44)
⎪
⎪
a ≡ a ( L) ⎪
⎭
L'opérateur max ∗ représente donc cette opération. Enfin, hα ,k et hβ ,k sont des
constantes de normalisation permettant d'éviter le débordement des mémoires
système.
Après l'application de cet algorithme et si le traitement itératif n'est pas
terminé, l'information extrinsèque des bits codés est transmise comme
information a priori au décodeur spatio-temporel. Dans le cas contraire,
l'information a posteriori des bits décodés est communiquée à un module de
décision sur la valeur du bit. Si la valeur reçue est négative ou nulle, le bit prend
la valeur '0'. Sinon, il prend la valeur '1'.
décorrélé est posée. Les coefficients hij de la matrice de canal H sont donc
indépendants et identiquement distribués (i.i.d.). Les estimateurs utilisent X et
Y afin de donner une estimation de la valeur de H . X représente alors les
symboles OFDM connus et est de taille N t × ( N p × N ifft ) . N p est ici le nombre
de préambules utilisés.
Ces résultats montrent que le récepteur itératif est beaucoup plus résistant
aux erreurs d'estimation du canal que le récepteur à décisions dures. En effet,
si l'objectif est d'atteindre un taux d'erreur de 4.10 −3 , les performances du turbo
récepteur sont dégradées d'environ 1 dB alors que la dégradation est
légèrement supérieure à 3 dB pour le récepteur à décisions dures. Cette
résistance aux erreurs d'estimation du canal nous a conforté dans l'utilisation
d'une structure itérative pour le récepteur.
Sur cette figure, il est possible d'observer un résultat pour de faibles rapports
signaux sur bruit qui peut paraître aberrant. En effet, le cas où le canal est
connu présente de moins bon résultats que lors de l'estimation du canal. La
méthode de simulation est à l'origine de ces résultats. Les temps de calculs ne
nous permettent pas d'envisager un grand nombre de réalisations du canal. Les
propriétés statistiques diffèrent alors d'une série de réalisations à l'autre. La
série utilisée pour l'estimation du canal était, dans le cas présenté, plus
favorable que la série utilisée pour les simulations avec un canal connu.
7.6. Conclusion
Nous avons présenté les deux chaînes de transmission évaluées en
simulation. Chacune considère la synchronisation parfaite des signaux en
réception et une connaissance parfaite du SNR en réception. Les chaînes
développées sont des systèmes MIMO 2 × 4 (2 antennes d’émissioin-4
antennes de réception) qui possèdent une partie émission commune inspirée
de la couche physique OFDM de la norme IEEE 802.16d. Pour la partie codage
canal, nous avons implémenté la concaténation d'un code de Reed Solomon et
d'un code convolutif suivie par un codage spatio temporel de type Alamouti. La
modulation OFDM est effectuée en considérant 256 sous porteuses.
En réception, les deux chaînes ont été testées. Une première chaîne de
complexité réduite effectue exactement les opérations inverses de l'émission.
La deuxième chaîne s'appuie sur un Turbo-récepteur. Le turbo processus
s'effectue entre le décodeur spatio temporel et le décodeur du code convolutif.
Les algorithmes classiques utilisés sont détaillés.
Les performances des deux chaînes sont dans un premier temps évaluées
dans un canal de Rayleigh connu. L'influence du codage de la modulation
(codage de Gray, codage pragmatique et codage naturel) sur les performances
des systèmes a été analysée. Les résultats montrent que le Turbo récepteur est
toujours plus performant bien qu'il soit plus sensible aux différents codages
étudiés. Le codage pragmatique et le codage de Gray se sont montrés
8. Conclusion
Dans ce chapitre, nous avons brièvement présenté les principaux projets
connus qui s'intéressent à la transmission d'informations audio et vidéo depuis
des autobus ou des trains pour des applications de surveillance embarquée.
Les caractéristiques des systèmes MIMO ont ensuite été introduites de façon
simple et un bref état des recherches sur ces techniques a été réalisé et
propose un panorama non exhaustif des techniques existantes dans la
littérature. Nous avons en particulier donné les caractéristiques principales des
techniques de codage spatio temporel en bloc, en treillis ou de précodage.
Nous désirons exploiter les techniques MIMO avec un standard existant afin
de réduire les coûts pour l'opérateur de transport. En partant d'une classification
des systèmes sans fil fonction de l'étendue de la zone de couverture
radioélectrique, une description des standards les plus récents et susceptibles
de répondre à la problématique a été proposée. L'accent a été mis sur les
normes IEEE 802.20 (MBWA) et IEEE 802.16 (WiMAX). Les avantages et
inconvénients des systèmes dans le contexte traité sont soulignés. Le souci
9. Bibliographie
[ESC01] M. Berbineau & Al. State of the art report. Projet ESCORT IST 1999-
20006, D2011, 2001.
[SEC02] Projet securbus. Journée technique " Sécurité dans les transports
terrestres" d'Integral Média, march 2002.
[DAV01] Y. David, Y. Robin-Jouan, and M. Heddebaut. Communication avec
les mobiles : application aux transports collectifs et aux transports
routiers. Collections du Certu, mars 2001.
[TES04] S. Ambellouis and M. Berbineau. TESS : Transports collectifs de
voyageurs et de marchandises avec des véhicules qui communiquent.
In les ches de l'INRETS, number 2 in Les réseaux de transport et les
servies. INRETS, 2004.
[MON07] Gerald Moniak, Techniques MIMO pour un lien sans fil robuste entre
un bus et un poste de contrôle pour une application de surveillance
embarquée, PhD thesis, University of Valenciennes, Février 2007
[KER02] J. Kermoal, L. Schumacher, K. Pedersen, P. Mogensen, and F.
Frederiksen. A stochastic mimo radio channel model with
experimental validation. IEEE Journal on Selected Areas in
Communications, 20(6), pp1211-1226 - august 2002.
[WEI06] W. Weichselberger, M. Herdin, H. H. Özcelik, and E. Bonek. A
stochastic mimo radio channel model with joint correlation of both link
ends. IEEE Trans. on Wireless Communications, 5(1), pp90-100 -
january 2006.
[KYU01] K. Yu, M. Bengtsson, B. Ottersten, P. Karlsson, D. McNamara, and M.
Beach. Measurement analysis of nlos indoor mimo channels. In Proc.
of IEEE Global Telecommunication Conference, november 2001.
[CHU02] C-N. Chuah, D.N.C. Tse, J.M. Kahn, and R.A. Valenzuela. Capacity
scaling in mimo wireless systems under correlated fading. IEEE
Trans. on Information Theory, 48(3), pp637-650, march 2002.
[KER00] J.P. Kermoal, L. Schumacher, P. Mogensen, and K.I. Pedersen.
Experimental investigation of correlation properties of mimo radio
channels for indoor picocells scenarios. In Proc. of IEEE Vehicular
Technology Conference, pp 14-21 Vol 1, september 2000.
[BON05] E. Bonek. Experimental validation of analytical MIMO channel models.
Elektrotechnik und Informationstechnik (e&i), 122(6) :196 205, 2005.
[LEM98] J.J.A. Lempiainen and J.K. Laiho-Ste ens. The performance of
polarization diversity schemes at a base stationin small/micro cells at
1800 MHz. IEEE Trans. on Vehicular Technology, 47(3), pp 1087-
1092august 1998.
[IEEE 802.16-2004] IEEE 802.16 - WirelessMAN. 802.16-2004 - Standard for
Local and metropolitan area networks - Part 16 : Air Interface for
Fixed Broadband Wireless Access Systems, 2004.
[IEEE 802.16-2003] IEEE 802.16 - WirelessMAN. IEEE Standard for local and
metropolitan area networks, Part 16 : Air interface for fixed broadband
wireless access systems - Medium access control modifications and
additional physical layer specifications for 2-11 GHz, 2003.
[PRO95] J.G. Proakis. Digital Communications. Mc Graham-Hill, third edition,
1995.
[SEZ03] A. Sezgin, D. Wübben, and V. Kühn. Analysis of mapping strategies for
turbo-coded space time block codes. In Proc. of IEEE Information
Theory Workshop, pp103-106, 2003.
[ALA98] S. Alamouti. A Simple Transmit Diversity Technique for Wireless
Communications. IEEE Journal on Select Areas in Communications,
16(8) :1451 1458, october 1998.
[BAH74] L.R. Bahl, J. Coke, F. Jeinek, and J. Raviv. Optimal decoding of linear
codes for mimnimizing symbol error rate. IEEE Trans. on Information
Theory, 20 :248-287, 1974.
[EDF98] O. Edfors, M. Sandell, J-J. Van de Beek, S.K. Wilson, and P.O.
Börjesson. OFDM channel estimation by singular value
decomposition. IEEE Trans. on Communications, 46(7), pp 931-939 -
july 1998.
Le démonstrateur
1. Objectifs du démonstrateur
Le démonstrateur a été réalisé afin de montrer la faisabilité d'un système
embarqué de vidéo et d'audio surveillance sans fil. Pour cela, tous les sous-
systèmes techniques ont été développés et installés à bord d'un autobus de la
flotte de Transpole. La démonstration a été menée au travers des deux scénarii
suivants :
1 – la transmission des images vers le poste de contrôle sur la détection
d'un événement sonore
2 – la transmission des images en continue vers le poste de contrôle
Dans la suite de ce chapitre, nous décrivons dans un premier temps
l'architecture générale du démonstrateur et les éléments constitutifs des
configurations matérielles audio/vidéo et de télécommunication. Nous terminons
par la description du module de transmission RF.
2. Architecture du démonstrateur
L’architecture du démonstrateur est présentée à la figure 3.1. Elle est
composée d’une partie embarquée et d’une partie fixe. Le sous-système
embarqué a pour fonction d’identifier un événement sonore et de transmettre
les images au poste de contrôle. Lors de notre phase de démonstration en
ligne, le poste de contrôle a été localisé en haut du Beffroi de la ville de Lille. Le
sous-système embarqué a été installé dans un autobus mis à la disposition du
projet par le partenaire Transpole, en charge de l’exploitation du système de
transport collectif de la métropole Lilloise.
Le sous-système embarqué est composé de trois calculateurs
respectivement en charge de l’acquisition et du traitement des signaux audio et
des signaux vidéo et de la transmission. Ces trois calculateurs sont mis en
réseau et les applications développées et implantées sur chacun d’eux
échangent des données via les protocoles TCP ou UDP.
Le sous-système fixe est composé de deux calculateurs : l’un destiné à la
réception des données numériques transmises par le sous-système embarqué
et l’autre dont la fonction est de les visualiser. Ces deux calculateurs sont en
réseau et peuvent se transmettre des données via les protocoles TCP ou UDP.
Réseau
WiMax
Réseau
UDP
Pc Pc Réception
Visualisation WiMax
Linux linux
En réception :
— 1 PC Linux
— 1 Carte d’acquisition PCI multi-voies de type ICS-554B avec
modification du quartz pour obtenir une fréquence de 102.4MHz
— 1 récepteur THALES 4 voies synchrones
— 4 préamplificateurs de puissance (si nécessaire)
— 4 antennes (au maximum)
Les PC utilisés sont des modèles DELL Précision 670 qui possèdent les
caractéristiques suivantes:
— Système d'exploitation Linux (noyau 2.6)
— 2 Microprocesseurs Intel Xéon 64 bits, fréquence d'horloge 3,6 GHz
avec 2 Mo de cache de niveau 2
— Mémoire vive: 2 Go DDR2
— Disque dur Serial ATA 60 Go
3. Le module de démonstration RF
3.1. Architecture du démonstrateur en émission
3.1.1. Matériel
La carte ICS-564 est une carte d’émission 4 voies. Elle utilise 4 DAC (Digital
to Analog Converter) 14 bits pour convertir simultanément des fréquences
d’échantillonnage allant jusqu’à 200 MHz sur chaque voie. L’horloge nécessaire
aux convertisseurs peut être soit interne (50 MHz) soit externe (<200 MHz),
avec un coefficient multiplicateur permettant d’augmenter la fréquence d’un
facteur 4 à 20. Les données d’entrées passent par un FPGA avant d’être écrites
dans 4 FIFO (1 par voie). Le routage de ces données vers les différentes FIFO
est déterminé par le réglage de divers registres, ce qui permet aux mêmes
données d’être redirigées vers plusieurs FIFO. Chaque FIFO a une taille de
65536 x 72 bits, ce qui implique un maximum de 65536 x 4 échantillons 16 bits
par DAC. En plus de ces 4 FIFO, la carte dispose d’une FIFO de taille
65536 x 72 bits entre l’interface PCI (66 MHz/ 64 bits) et le FPGA pour rendre
possible la mise en buffer de données si nécessaire.
3.1.2 Logiciel
Compte tenu des contraintes temporelles, nous devons nous restreindre à
un fonctionnement MIMO à 2 voies d’émission.
Ecrêtage :
Comme on peut le voir sur la figure 34, un étage d’écrêtage (optionnel) a été
intégré en émission. Sa fonction est de régler la puissance du signal émis en
écrêtant le signal OFDM. L’opération d’écrêtage consiste simplement à couper
toutes les valeurs au-dessus d’un certain niveau de puissance. A chaque trame
OFDM, le programme recherche les échantillons qui vérifient cette condition et
les ramène à la puissance correspondant au seuil d’écrêtage voulu. Enfin il
ajuste l’amplitude du signal obtenu afin qu’il occupe toute la dynamique des
convertisseurs (sur l’ICS-564, l’amplitude maximale des voies réelle et
imaginaire est égale à 32767).
Après écrêtage, le signal est un peu dégradé. Mais du fait que l’excursion en
amplitude est diminuée, on peut par la suite fournir en entrée d’un éventuel
amplificateur un signal d’une puissance moyenne plus élevée, tout en restant
dans la zone de fonctionnement linéaire de l’amplificateur (cf figure 3.18).
Les ADC servent à numériser chacune des 4 voies de la carte. Ils ont une
précision de 14 bits. Les DDC sont utilisés pour convertir des signaux QPSK en
bande de base. Ils donnent en sortie des échantillons complexes (I+jQ) sur
2x24 bits.
Le FPGA joue un rôle de multiplexeur. Il sélectionne soit les sorties des ADC
des voies choisies, soit les sorties des DDC selon le mode de fonctionnement
(réel ou complexe). Il écrit ensuite les données dans les FIFO. Dans la FIFO 1
sont stockées les données relatives aux voies 1 et 2 et, dans la FIFO 2 celles
relatives aux voies 3 et 4.
L’interface PCI permet au PC hôte de configurer la carte et de venir
récupérer les données stockées dans les FIFO. Il a une fréquence de 66 MHz
sur 64 bits ce qui représente un débit maximum de 515 Mo/s. La récupération
des données se fait par un transfert DMA. C’est une copie directe des FIFO
vers un espace spécifié dans la RAM du PC, elle ne sollicite pas l’intervention
du processeur.
La carte possède 4 registres concernant l’état de chaque FIFO : «FIFO
vide», « FIFO presque vide », « FIFO presque pleine » et « FIFO pleine ». Il est
possible de programmer la valeur à laquelle les flags « FIFO presque vide » et
« FIFO presque pleine » passe à 1. Lorsque la FIFO atteint la valeur
correspondante à « FIFO presque pleine », une interruption est envoyée au PC
hôte pour l’avertir. Pour les autres flags, il faut venir lire les registres de la carte
pour connaître leur état.
Dans le cadre du modem, on désire convertir une voie en bande de base. La
carte est configurée en mode continu avec des données complexes en sortie.
Cependant l’utilisation du mode complexe implique une contrainte car la carte
ICS fonctionne au minimum avec deux voies (1&2 ou 3&4) et les données des
deux voies sont entrelacées lors du stockage dans la FIFO (voir figure 16). Le
63 39 31 7 0
I (24 bits) 11111111 Q (24 bits) 11111111
échantillon 1 - voie 1
échantillon 2 - voie 1
échantillon 3 - voie 1
échantillon 4 - voie 1
échantillon 1 - voie 2 Format de stockage dans la FIFO 1
échantillon 2 - voie 2
échantillon 3 - voie 2
échantillon 4 - voie 2
échantillon 5 - voie 1
3.2.2. Le logiciel
Du coté réception, le programme est composé de 4 tâches, réparties sur 2
processeurs. La tâche d’acquisition a pour rôle de récupérer les données de la
carte d’acquisition. La tâche de traitement est utilisée pour trouver l’offset de
synchronisation de départ (synchronisation longue) puis effectuer le suivi par
synchronisation courte et démoduler les signaux. La synchronisation courte met
en œuvre les calculs optimisés développés dans la partie Traitement du Signal
et Algorithmes. Elle utilise la matrice Slong avec le critère de synchronisation
simple (corrélation) afin d’alléger les traitements. La tâche de transfert fait la
jonction entre les deux tâches précédentes. Elle transmet les données
correspondant aux trames de la voie 1 à la tâche de traitement à partir des
données acquises par la tâche d’acquisition. Enfin une tâche est dédiée au
décodage des signaux. Les bits décodés sont envoyés par UDP vers un second
PC, qui peut décoder et afficher la vidéo.
paralléliser le code. Ainsi la tâche de transfert peut écrire des données dans le
buffer n°1 pendant que la tâche de traitement utilise le second. A la trame
suivante, le transfert a lieu dans le buffer n°2 tandis que le traitement travaille
sur le premier (cf buffers acqUnderCopy et acqUnderTreatment dans notre
programme).
Les tâches de transfert et de traitement échangent des données. Pour
synchroniser ces transferts, un système de sémaphores est utilisé. Lorsque la
tâche de transfert a fini de copier une trame dans le buffer destiné à la tâche de
traitement, elle relâche le sémaphore data_rdy. Ainsi la tâche de traitement est
avertie qu’elle peut utiliser ce buffer. De même, la tâche de transfert attend que
la tâche de traitement relâche le sémaphore treat_rdy pour pouvoir utiliser
l’offset de synchronisation.
Au démarrage du programme, la tâche de transfert attend d’abord que la
tâche d’acquisition ait écrit trois fois dans le buffer circulaire raw_buffer afin que
des données à traiter soit disponibles. Puis elle lit les premières données de
raw_buffer correspondant à la taille d’une trame et recopie les données I/Q
dans le buffer buf1. Ce premier buffer va servir à trouver l’offset de
synchronisation du signal. Elle attend ensuite la notification (par sémaphore) de
la tâche de traitement pour pouvoir récupérer l’offset et se décaler d’une taille
de trame plus offset dans raw_buffer. Ainsi la prochaine recopie (dans buf2)
contiendra une trame entière de signal. La tâche de transfert fournit les trames
du signal à la tâche de traitement jusqu’à la fin du programme.
Au niveau du buffer partagé avec la tâche d’acquisition, il est possible que la
tâche de transfert rattrape la tâche d’acquisition (lock_read_end égal à
lock_write). Dans ce cas, aucune nouvelle donnée n’est disponible pour le
traitement. La tâche de transfert attend donc par pas de 100 μs que la tâche
d’acquisition ait récupéré un nouveau buffer.
Remarque : si on fonctionne avec 3 ou 4 voies de réception, on va de la
même façon chercher les données dans la deuxième FIFO de la carte ICS-554
(qui contient les voies 3 et 4 entrelacées), qui sont ensuite recopiées dans les
buffers alternés (en voie 3 et 4) déjà vus précédemment.
Lors de la recopie vers les buffers alternés, un désentrelacement et une
mise en forme des échantillons sont effectués pour passer du format complexe
ICS à un format exploitable par notre tâche de traitement (type complexe du
C99). De plus, c’est à l’issue de cette recopie qu’on procède régulièrement à un
contrôle automatique du gain du récepteur. Pour cela, on mesure la puissance
des échantillons recopiés et on actualise le gain du récepteur de manière à
toujours conserver une puissance constante. On évite ainsi les saturations de la
carte ICS.
des différents canaux, calcul des SNR, démodulation des signaux reçus (c’est à
dire, dans notre cas, reconstruction des symboles QPSK émis).
Au démarrage, la tâche de traitement va effectuer une synchronisation de la
trame entrante et retourner l’offset trouvé à la tâche de transfert pour qu’elle
puisse fournir une trame. Cette synchronisation (longue, c’est à dire sur un
large intervalle) se fait grâce à une simple corrélation. Si aucune
synchronisation n’est trouvée, la synchronisation est répétée jusqu’à 5 fois. Si
aucun pic de synchronisation n’a été trouvé au bout de la cinquième fois, le
programme est quitté. Aucun signal n’a été détecté.
Une fois cette synchronisation longue trouvée, la tâche de traitement
n’effectue plus qu’une courte synchronisation pour chaque trame mais va
extraire les données du signal. Cette synchronisation fine est nécessaire car
elle permet d’une part de vérifier que le signal se trouve bien dans le buffer
fourni par la tâche de transfert et d’autre part de se recaler en réponse à un
léger décalage fréquentiel du signal. On utilise dans le programme un intervalle
de recherche de largeur 30 échantillons, un décalage constant de 32
échantillons sur l’instant de synchronisation, et la matrice (qui suppose des 0
entre chaque trame). L’offset de synchronisation trouvé est retourné à la tâche
de transfert à la fin de la synchronisation et avant l’extraction des données.
Ainsi la tâche de transfert peut éventuellement commencer à copier une
nouvelle trame dans le second buffer, tandis que le traitement continue à
travailler sur le premier.
La tâche de traitement se poursuit avec l’estimation des canaux, le calcul
des SNR, puis la démodulation des signaux reçus (avec égalisation MMSE ou
Alamouti), et la correction du déphasage (grâce aux symboles pilotes). A l’issue
de ce traitement, un sémaphore QPSK_rdy est relâché pour autoriser le début
du décodage des signaux démodulés (tâche de décodage) sur le processeur 1.
Si la synchronisation courte a échoué (c’est à dire si les SNR que l’on
calcule via la tâche de traitement sont inférieurs à 2 dB), on repasse dans la
phase de synchronisation longue (c’est à dire sur une plus grande portion de
signal, avec une simple corrélation).
Remarque : la tâche de traitement suit les calculs évoqués dans la partie
Traitement du Signal et algorithmes. Pour le calcul des corrélations entre 2
vecteurs x et y, on passe par le produit de convolution entre x et le vecteur y
retourné temporellement (ce qui est équivalent). Pour calculer ce produit de
convolution, on dispose d’une fonction de transformée de Fourier rapide (FFT)
dont on tire profit en posant :
x * y = TF −1 (TF ( x * y ) )
= TF −1 ( X * Y )
= TF −1 ( X ) .TF −1 (Y )
X (τ ) = ΓS + N
avec :
- Γ : canal (longueur L) Matrice Nr x (Nt x L)
- Nr : le nombre d’antennes de réception
- Nt : le nombre d’antennes d’émission
- S : la matrice associée à la partie connue de la séquence émise
Matrice (L x Nt) x Ns. Dans le cas Nt = 2 :
⎛ ⎡ s0 0 L 0 ⎤ ⎡ s '0 0 L 0 ⎤⎞
⎜⎢ ⎥ ⎢ ⎥⎟
⎜⎢ M O M ⎥⎢ M O M ⎥⎟
⎜⎢ M O 0 ⎥⎢ M O 0 ⎥⎟
S† =⎜ ⎢ ⎥⎢ ⎥⎟
⎜⎢ M s0 ⎥ ⎢ M s '0 ⎥ ⎟
⎜⎢ M M ⎥⎢ M M ⎥⎟
⎜⎢ ⎥⎢ ' ⎥⎟
⎜ ⎢⎣ sN s −1 L L sN s − L ⎥⎦ ⎢ s N −1 L L s ' N − L ⎥ ⎟
⎝ ⎣ s s ⎦⎠
tx = 1 tx = 2
que l’on note parfois Slong , ou :
⎛ ⎡ sL −1 s0 ⎤ ⎡ s ' L −1 s '0 ⎤ ⎞
⎜ ⎢ ⎥⎢ ⎥⎟
S† =⎜ ⎢ M M ⎥⎢ M ⎥⎟
⎜ ⎢s L L sN s − L ⎦ ⎣ s N s −1 L L s N s − L ⎥⎦ ⎟
⎥ ⎢ ' '
⎝ ⎣ N s −1 ⎠
— X (τ ) = ( x(τ ) L x(τ + N s − 1) )
— Ns : taille de la séquence connue (2 symboles x 320 échantillons)
— L : taille du canal estimé (64)
— N : bruit (blanc gaussien puissance σ2)
( )⎥⎥⎦ = 0
⎡ δ ⎤
tr ⎡( X (τ ) − ΓS ) ( X (τ ) − ΓS ) ⎤
†
E⎢
⎢⎣ δΓij ⎣ ⎦
δΓ† δΓ
∀i, j =0 et = ei e j † ⇒
δΓij δΓij
⎣ ⎣
†
⎦⎦ (
E ⎢⎡tr ⎡( X (τ ) − ΓS ) −ei e j † S ⎤ ⎥⎤ = 0 )
E ⎢⎡tr ⎡ e j † S ( X (τ ) − ΓS ) ei ⎤ ⎥⎤ = 0
†
⎣ ⎣ ⎦⎦
(
E ⎡tr ⎡⎣e j † S X † (τ ) − S †Γ† ei ⎤⎦ ⎤ = 0
⎣ ⎦ )
SX † (τ ) − SS †Γ† = 0
( )
−1
Γ† = SS † SX † (τ )
( )
−1
Γ = X (τ ) S † SS †
NsNr
Il reste à déterminer X (τ ) , c’est à dire l’instant de synchronisation τ qui
minimise X (τ ) − ΓS
2
:
2
X − ΓS = X − XS † ( SS † ) −1 S
2
= tr ⎡⎣( X − XS † ( SS † ) −1 S )( X † − S † ( SS † ) −1 SX † ) ⎤⎦
= tr ⎡⎣ XX † − XS † ( SS † ) −1 SX † − XS † ( SS † ) SX † + XS † ( SS † ) −1 ( SS † )( SS † ) −1 SX † ⎤⎦
= tr ⎡⎣ XX † − 2 XS † ( SS † ) −1 SX † + XS † ( SS † ) −1 SX † ⎤⎦
= tr ⎡⎣ XX † − XS † ( SS † ) −1 SX † ⎤⎦
⇒
minτ X (τ ) − ΓS = minτ ⎡⎣tr ( X (τ ) X (τ )† ) − tr ( X (τ ) S † ( SS † ) −1 SX (τ )† ) ⎤⎦
2
minτ X (τ ) − ΓS
2
[
= maxτ tr (X (τ )S † SX (τ ) † ) ]
min τ X (τ ) − ΓS = maxτ X (τ ) S †
2
NsNr
†
puissance du signal étant la différence entre la puissance reçue ( tr ( XX ) ) et
la puissance du bruit, on en déduira le SNR).
( )
−1
Γ = X (τ ) S † SS †
Le problème consiste alors, après s’être placé sur un intervalle de τ jugé
suffisamment large et centré sur la position de synchronisation attendue, à
calculer les X (τ ) S (notés dans la suite XS (τ ) ) et à sélectionner celui dont
† †
la norme est maximale pour calculer Γ . Un tel calcul est coûteux, et peut être
nettement optimisé. Il est tout d’abord intéressant de calculer préalablement à
tout autre traitement les termes de la convolution entre le signal reçu total et la
séquence connue retournée temporellement (opération qui équivaut à une
corrélation) : X (0) ∗ [ sNs −1 K K s0 ] .
Les termes de cette convolution nous seront utiles lors du calcul des
XS † (τ ) et de XS † (τ max ) , dans l’optique d’une réduction du nombre
d’opérations à effectuer. En effet, il est possible de réaliser le calcul des
XS † (τ ) itérativement, en tirant profit du calcul de XS † (τ + 1) et du précalcul
des termes de la convolution X (0) ∗ [ s Ns −1 K K s0 ] .
Calcul récurrent de XS † (τ ) = f ( XS † (τ + 1) ) :
On cherche une relation de récurrence entre XS † (τ ) et XS † (τ + 1) .
Intéressons-nous notamment au terme de la colonne j de XS (τ ) et au terme
†
XS † (τ + 1, j − 1) ) :
⎛ s 0 0 L 0 ⎞
⎜ ⎟
⎜ M O M ⎟
⎜ M O 0 ⎟
⎜ ⎟
⎜ M s0 ⎟
⎜ M M ⎟
⎜ ⎟
⎜ s L L s ⎟
⎝ N s −1 N s − L ⎠
XS † (τ ) : [ x(τ ) L x(τ + Ns − 1) ]
⎡0L L L L j L L L − 1⎤⎦
⎣
XS † (τ + 1) : [ x(τ + 1) L x(τ + Ns ) ]
⎡ 0L L L j −1 L L L L − 1⎤⎦
⎣
(indice des termes ↑ )
On a :
D’où :
XS † (τ , j ) = XS † (τ + 1, j − 1) − x(τ + Ns ).sNs − j ∀j > 0
avec : XS † (τ , 0) = c( Ns − 1 + τ )
Calcul de XS † (τ max ) :
Il reste maintenant seulement à calculer XS † (τ max ) pour initialiser le calcul. On
a:
j −1
d’où : XS † (τ max , j ) = c( Ns − 1 + τ max + j ) − ∑ x(τ max + Ns + k ).sNs − j + k
k =0
∀j ≥ 1
[
max de X (τ ) ∗ s Ns −1 K K s0 ] (critère simple)
X (τ ) ∗ [ sNs −1 K K s0 ] = c( Ns − 1 + τ )
Calcul récurrent de XS † (τ ) = f ( XS † (τ − 1) ) :
⎛ s L −1 L L s0 ⎞
⎜ ⎟
⎜ M O M ⎟
⎜ M O M ⎟
⎜ ⎟
⎜ M M ⎟
⎜ M M ⎟
⎜ ⎟
⎜ s N −1 L L s ⎟
⎝ s N s − L ⎠
XS † (τ ) : [ x(τ ) L x(τ + Ns − L) ]
⎡0L L L L j L L L − 1⎤⎦
⎣
XS † (τ − 1) : [ x(τ − 1) L x(τ + Ns − L − 1) ]
⎡ j −1 L L L L − 1⎦⎤
⎣0L L L
On a :
XS † (τ , j ) = x(τ ).sL −1− j + L + x(τ + Ns − L).sNs −1− j
d’où :
Calcul de XS † (0) :
Il reste maintenant seulement à calculer XS † (0) pour initialiser le calcul.
⎛ s L −1 L L s0 ⎞
⎜ ⎟
⎜ M O M ⎟
⎜ M O M ⎟
⎜ ⎟
⎜ M M ⎟
⎜ M M ⎟
⎜ ⎟
⎜ s N −1 L L s ⎟
⎝ s N s − L ⎠
XS † (0) : [ x(0) L x( Ns − L) ]
⎡ L − 1L L L L j L L 0 ⎤⎦
⎣
(indice des termes ↑ )
On a :
et :
c '( Ns − L − j ) = x(0).s j + L + x( Ns − L − j ).sNs − L
d’où :
Ns − L
XS † (0, j ) = c '( Ns − L − j ) + ∑
k = Ns − L − j +1
x(k ).sk + j ∀j ≥ 1
avec :
XS † (0, 0) = c '( Ns − L)
[
max de X (τ ) ∗ s Ns − L K K s0 ] (critère simple)
⎛ s L −1 L L s0 ⎞
⎜ ⎟
⎜ M O M ⎟
⎜ M O M ⎟
⎜ ⎟
⎜ M M ⎟
⎜ M M ⎟
⎜ ⎟
⎜ s N −1 L L s ⎟
⎝ s N s − L ⎠
XS † (τ ) : [ x(τ ) L x(τ + Ns − L) ]
⎡ L − 1L L L L j L L 0 ⎤⎦
⎣
(indice des termes croissant)
Deux cas sont à envisager dans ce calcul, selon les valeurs relatives de τ et
de l’indice du terme que l’on cherche à déterminer :
Si τ≥j
On cherche : XS (τ , j ) = x(τ ).s j + L + x(τ + Ns − L).s j + Ns − L
†
On a :
c′( Ns − L + τ − j ) = x(τ − j ).s + ... + x(τ − 1).s
0 j −1
144444444
42444444444 3
A( j )
x(τ ).s + ... + x(τ + Ns − L − j ).s
j Ns − L
1444444444442444444444443
B( j )
j −1
⇒ XS (τ , j ) = B ( j ) + ∑ x(τ + Ns − L − k ).sNs − L + j − k
†
k =0
⇒ XS (τ , j ) = c '( Ns − L + τ − j ) − A( j ) + RT ( j )
†
j
A( j ) = ∑ x(τ − k ).s j − k
k =1
avec :
j −1
RT ( j ) = ∑ x(τ + Ns − L − k ).sNs − L + j − k
k =0
Si τ≤ j
On a :
c′( Ns − L + τ − j ) = x(0).s
j −τ + ... + x(τ − 1).s
j −1
1444444442444444443
A′ ( j )
x(τ ).s + ... + x(τ + Ns − L − j ).s
j Ns − L
1444444444442444444444443
B( j )
et XS (τ , j ) = B ( j ) + RT ( j )
†
⇒ XS † (τ , j ) = c '( Ns − L + τ − j ) − A '( j ) + RT ( j )
τ
A '( j ) = ∑ x(τ − k ).s j − k
k =1
avec :
j −1
RT ( j ) = ∑ x(τ + Ns − L − k ).sNs − L + j − k
k =0
E ⎡ XM − A ⎤ = E ⎡⎣tr ⎡⎣( M † X † − A† )( XM − A) ⎤⎦ ⎤⎦
2
⎣ ⎦
⎡ δ XM − A 2 ⎤
∀i, j E ⎢ ⎥=0
⎢⎣ δ mij ⎥⎦
On obtient :
δM† δM
∀i, j =0 et = ei e j † ⇒
δ mij δ mij
E ⎣⎡tr ( M † X † − A† ) Xei e j † ⎦⎤ = 0 ∀i, j
E ⎣⎡( M † X † − A† ) X ⎦⎤ = 0
E ⎣⎡ M † X † X − A† X ⎦⎤ = 0
ex : matrice H (Nr=Nt=2)
On a : X = AH + B ⇒ M † E ⎣⎡ X † X ⎦⎤ − E ⎣⎡ A† ( AH + B ) ⎦⎤ = 0
M † ⎡⎣ H † E ( AA† ) H + σ ² I ⎤⎦ = E ⎡⎣ A† A⎤⎦ H
M † ⎡⎣ H † Ra .H + σ ² I ⎤⎦ = Ra .H
( )
−1
M † = Ra .H Ra .H † H + σ ² I
M = ( Ra .H † H + σ ² I ) Ra .H †
−1
−1
⎛ σ ²I ⎞
M = ⎜ H †H + ⎟ H
†
⎝ Ra ⎠
X eg = X .M ⇔ X eg ( p) = X ( p).M p ∀p
⎛ M 11 (0) M 12 (0) ⎞
⎜ ⎟
⎜ M 11 ( p) M 12 ( p) ⎟
⎜ ⎟
⎜ O O ⎟
⎜ M 11 ( N ) M 12 ( N ) ⎟
M =⎜ ⎟
⎜ M 21 (0) M 22 (0) ⎟
⎜ M 21 ( p) M 22 ( p) ⎟
⎜ ⎟
⎜ O O ⎟
⎜⎜ ⎟
⎝ M 21 ( N ) M 22 ( N ) ⎟⎠
⎛ M ( p ) M 12 ( p ) ⎞
⇒ M p = ⎜ 11 ⎟
⎝ M 21 ( p ) M 22 ( p ) ⎠
∀p (X eg , Nr = 0 ( p) X eg , Nr =1 ( p) ) = ( X Nr =0 ( p ) X Nr =1 ( p ) ) × M p
tx = 1: S1 , − S 2*
tx = 2 : S2 , S1*
Dans le cas d’une dérive en fréquence (supposée ici identique pour les 2
émetteurs, car ils sont supposés être synchronisés par une même horloge), il
faut maintenant prendre en compte un déphasage entre les 2 instants
iϕ iϕ
d’émission : e 1 à l’instant 1 et e 2 à l’instant 2. On émet donc
successivement :
iϕ iϕ
tx = 1: S1.e 1 , − S2*.e 2
iϕ iϕ
tx = 2 : S 2 .e 1 , S1*.e 2
iϕ iϕ
Y1 (t1 ) = H11.s1.e 1 + H 21.s2 .e 1
iϕ iϕ
Y1 (t2 ) = − H11.s2*.e 2 + H 21.s1*.e 2
−iϕ iϕ
H11*.Y1 (t1 ).e 1 + H 21.Y1* (t2 ).e 2
s1 =
H11 + H 21
2 2
−iϕ iϕ
H 21*.Y1 (t1 ).e 1 − H11.Y1* (t2 ).e 2
s2 =
H11 + H 21
2 2
Les valeurs des déphasages doivent être connus. On utilise pour les
déterminer les symboles des sous-porteuses pilotes :
iϕ Y1 (1, p)
∀p e 1 =
H11 ( p) S1 ( p ) + H 21 ( p) S 2 ( p)
iϕ Y1 (2, p)
∀p e 2 =
− H ( p) S * ( p) + H ( p) S * ( p)
11 2 21 1
Une tâche temps réel est caractérisée par un temps de réveil, une durée et
une échéance. Le temps de réveil est le temps où la tâche doit commencer son
exécution et l’échéance représente le délai maximum imparti pour l’exécution
de la tâche. Si l’échéance n’est pas respectée, le système perd son intégrité.
Un système d’exploitation temps réel (RTOS) assure la fonctionnalité d’un
système d’exploitation et également le respect des échéances temporelles pour
les tâches temps réel. Les objectifs d’un RTOS sont d’une part de minimiser le
retard entre le moment où la tâche doit être lancée (temps de réveil) et le
moment où elle commence son exécution et, d’autre part de réduire les
perturbations qui peuvent allonger sa durée d’exécution, de sorte que les
échéances puissent être toujours respectées. Dans un système d’exploitation
temps réel, une augmentation de la charge pénalise principalement les tâches
non temps réel et pas les tâches temps réel ayant une grande priorité.
Le système d’exploitation Linux est un GPOS (General Purpose Operating
System) c'est-à-dire qu’il est destiné à un usage commun. Il assure les
fonctionnalités d’un système d’exploitation conforme à la norme POSIX, sans
garantie de performances d’aucune sorte (best effort policy). C’est donc un
système non temps réel par définition. La spécificité de Linux par rapport à
d’autres systèmes d’exploitation est qu’il se décompose en un espace
utilisateur (user) et un espace noyau (kernel).
L’espace utilisateur est un espace protégé où s’exécutent les programmes
lancés par l’utilisateur. Dans l’espace noyau s’exécutent toutes les tâches qui
communiquent avec le matériel notamment l’ordonnanceur (scheduler), les
routines de gestion des interruptions, l’horloge (timer) et les pilotes (drivers).
Les tâches utilisateur peuvent entrer dans l’espace noyau pour interagir avec le
matériel par le biais d’appels systèmes. Une fois l’appel système terminé, elles
retournent dans l’espace utilisateur.
la section précédente, une tâche qui s’exécute dans le noyau Linux est sujette à
la granularité du noyau, à la priorité de l’ordonnanceur et surtout à la gestion
des interruptions qui s’effectue de manière asynchrone. Tous les appels
systèmes et pilotes développés sous Linux ne peuvent pas être utilisés par les
tâches temps réel.
La spécificité d’Adeos/DIC est de permettre aux tâches temps réel de faire
appel à des fonctionnalités du noyau Linux tout en restant dans une optique
temps réel et donc sans dépendre du problème d’inversion de priorités de
Linux. Les tâches temps réel sous Adeos/DIC ont accès à deux modes de
fonctionnement entre lesquels elles basculent automatiquement en fonction de
leurs besoins.
Dans le mode PRIMAIRE, les tâches temps réel ont la garantie d’un temps
de latence très court et ne sont perturbées par aucune des opérations de Linux.
Cependant elles n’ont accès qu’aux appels systèmes de DIC.
Dans le mode SECONDAIRE, les tâches temps réel ont accès aux services
de Linux. Grâce à un bouclier d’interruption qui sera décrit par la suite, elles
bénéficient d’une priorité absolue sur toutes les tâches de Linux et
particulièrement sur les tâches de gestion des interruptions ce qui permet de
garder le déterminisme. Cependant leur temps de latence est supérieur à celui
du mode PRIMAIRE car il dépend de la granularité du noyau Linux. Dans le pire
cas où une tâche temps réel veut avoir accès à une ressource déjà utilisée par
une tâche Linux, elle va devoir attendre que la tâche Linux atteigne le prochain
point de préemption pour pouvoir prendre la main.
3.4.3. Le Nanokernel Adeos
La plupart des systèmes d’exploitation comme Linux ont été conçu pour
utiliser les ressources matérielles sans restriction. Pour pouvoir insérer un
ordonnanceur temps réel indépendant de Linux, il est pourtant nécessaire que
le matériel soit partagé entre les noyaux Linux et DIC. Adeos (Adaptive Domain
Environment for Operating Systems) fournit un environnement flexible dans
lequel plusieurs systèmes d’exploitation appelés domaines peuvent partager le
même matériel.
3.4.4. Insertion d’Adeos
Les systèmes d’exploitation se situent par rapport au matériel à différents
niveaux de privilèges (Privilege Levels). Par exemple sur x86 (architecture des
processeurs Intel du 80386 jusqu’au Pentium), le noyau Linux opère au niveau
0 et ses applications au niveau 3. A chaque niveau de privilège correspond des
capacités précises. Au niveau 0, des instructions assembleur telles que « cli
/sti » (disable interrupt/enable interrupt) sont permises alors qu’elles ne le sont
pas aux autres niveaux. Ce système permet aux applications de ne pas
perturber le fonctionnement du système d’exploitation.
Pour qu’Adeos puisse permettre à plusieurs noyaux de coexister, il doit
opérer au niveau de privilège 0 et intercepter les interruptions. Le noyau Linux
doit donc être poussé vers un niveau inférieur. De fait il ne pourra plus exécuter
dans l’ordonnanceur du DIC, les tâches doivent être déclarées avec une
politique d’ordonnancement SCHED_FIFO puis faire appel à la fonction
pthread_init_rt(char * nom, 0 ,0). Les tâches basculent ensuite
automatiquement entre les modes PRIMAIRE et SECONDAIRE en fonction de
leurs appels système.
Pour opérer les tâches temps réel depuis l’espace utilisateur, le DIC définit
un thread d’abstraction appelé « real-time shadow » qui est mappé au contexte
des tâches Linux. Les shadows, qui forment les éléments de bases de
l’ordonnanceur temps réel, partagent la pile et les registres de la tâche qui sont
crées par Linux. Les priorités des tâches temps réel sont héritées de celles des
tâches originelles de Linux (comprises entre 0 et 99).
Pour permettre aux tâches temps réel de s’exécuter le plus possible en
mode PRIMAIRE, le DIC implémente un certain nombre de fonctionnalités dont
notamment une horloge haute résolution et des sémaphores temps réel. Le DIC
substitue également certains appels système à Linux pour une meilleure
précision et un meilleur déterminisme. Par exemple, les appels à la fonction
nanosleep() sont pris en charge par le DIC même s’ils sont exécutés depuis
Linux.
Lorsqu’une tâche entre dans le mode SECONDAIRE, le DIC active le
bouclier d’interruption afin d’empêcher le service de gestion des interruptions de
perturber le fonctionnement temps réel.
figure 3.26 les résultats fournis par le modem, notamment l’effet du second
trajet sur la réponse impulsionnelle (le second pic) et sur la réponse
fréquentielle (le canal n’est plus plat comme il doit l’être dans le cas d’un mono-
trajet).
canal fréquentiel
F T(ms) F T(ms)
T(ms) T(ms)
F F
Sur la figure 3.28, on observe des canaux peu sélectifs en fréquence, et non
stationnaires dans le temps à cause du déplacement des antennes durant
l’acquisition (durée de l’observation : environ 500 ms).
Figure 3.29 : Estimations des canaux par le modem, avec un des canaux
sélectif en fréquence (en laboratoire)
T(ms)
F F T(ms)
F T(ms) F T(ms)
Sur la figure 3.29, on observe qu’un des canaux est sélectif en fréquence
(présence d’un trajet indirect). L’évolution temporelle est stationnaire (durée de
l’observation : environ 5 sec).
En désactivant les fonctions de démodulation du modem (en ne conservant
que la synchronisation et l’estimation de canal), il est possible de faire
fonctionner le programme en tant que sondeur de canal temps réel MIMO 2 x 4.
Sur les figures 3.31 à 3.33, on peut observer les mesures de canal
effectuées par notre sondeur lors d’expérimentations faites à Lille, en mobilité
(voir la description dans la partie essais du modem en conditions réelles). Ces
résultats mettent tout d’abord en évidence l’aspect sélectif en fréquence des
canaux de propagation, qui témoigne de l’importance des phénomènes de
multi-trajets que l’on peut rencontrer en milieu urbain. Ainsi on peut constater
sur la figure 3.31 de fortes chutes de puissance du canal à certaines
fréquences. Par ailleurs (figure 3.32), on voit une évolution temporelle rapide de
nos estimées, due aux conditions de mobilité (environ 40 km/h).
Démonstration (Lille)
-20
(dBm)
signal (dBm)
-40
dudusignal
-60
Amplitude
Puissance
-80
-100
-120
0 5000 10000 15000 20000 25000 30000
Distance (m)
0.0
(dBm) (dBm)
-20.0
signal
-40.0
signal
Amplitude dudu
-60.0
Puissance
-80.0
-100.0
-120.0
0 5000 10000 15000 20000 25000 30000
Distance (m)
Site 1
Site 2
Site 3
4.7. Conclusion
Le modem OFDM développé offre en termes de débit et de TEB des
résultats compatibles avec ceux que l’on attendait. L’apport du MIMO garantit
une amélioration de la robustesse de la transmission radio, notamment dans le
contexte d’une zone urbaine comme c’est le cas pour le projet EVAS.
Cependant, en conditions réelles d’utilisation en milieu urbain avec mobilité, il
semblerait que les algorithmes de synchronisation utilisés ne soient pas
optimaux (mais ils ont permis de réaliser relativement rapidement la chaîne) et
l’exploration de nouveaux algorithmes semble une voie de recherche
nécessaire. La recherche de structures de préambules facilitant la
synchronisation ou l’estimation de canal peut également être bénéfique. Par
ailleurs, il paraît nécessaire d’approfondir les éventuels problèmes de correction
de phase liés à l’effet Doppler, dont on soupçonne l’influence dans les résultats.
Il est également envisageable d’exploiter la diversité de polarisation afin de
consolider le lien radio ou des techniques de précodage.
Enfin, les dernières perspectives correspondent à une évolution du système
présenté, qui pour l’instant se réduit à une liaison point à point, vers un système
multi-utilisateurs (bus). L’accès de ces utilisateurs pourrait se faire
classiquement par des techniques de multiplexage en temps (TDMA) ou en
fréquence (FDMA). Il faudrait alors compléter la chaîne par une couche MAC
simplifiée. Il serait également intéressant d’étudier de nouvelles méthodes afin
d’augmenter la robustesse du lien. Notamment, l’utilisation de techniques de
relayage formant des réseaux MIMO virtuels semble être une solution
prometteuse.
Les travaux réalisés sur la partie « audio » sont décrits dans le premier
chapitre. Ils se sont focalisés sur la détection automatique des événements de
type « cris » (acte d’agression, acte de dérangement) et de type « aérosol de
peinture» (graffiti) qui rejoignent les priorités annoncées par les exploitants. Le
système proposé est fondé sur des techniques de classification supervisée très
bien décrites dans la littérature et éprouvées dans de nombreux domaines
d’application tels que l’analyse de la parole et l’indexation. Deux stratégies de
modélisation ont été testées. La première, dite génératrice, est fondée sur une
modélisation par mélange de lois normales. La seconde, dite discriminante, est
une technique à noyau de type «Support Vector Machine». Nous avons ensuite
comparé les performances obtenues avec l’une et l’autre des méthodes. Nous
avons proposé et comparé ces deux méthodes de classification dans le but de
détecter des cris dans un véhicule de transport public. Nous avons montré que
la méthode SVM est celle qui génère le moins de fausses alarmes tandis que la
méthode MMG permet d'obtenir un meilleur taux d'identification. Dans le cadre
d'une application à la surveillance, le point le plus important est de ne pas
générer trop de fausses alarmes. Le fait de ne pas détecter quelques cris n'est
pas très important si nous arrivons à en détecter un nombre suffisant de
manière à déclencher l'alarme au bon moment. Ainsi, un compromis doit être
fait afin de choisir la méthode de classification. Les paramètres PLP associés à
récepteur itératif. Les principaux algorithmes utilisés sont décrits. Les deux
récepteurs sont évalués en simulations lorsque le canal est connu à la
réception. Le turbo récepteur présente toujours de meilleures performances.
Après une étude préalable des estimateurs de canaux de type maximum de
vraisemblance (ML), maximum a posteriori (MAP), moindres carrés (LS) et
minimisation linéaire de l'erreur quadratique moyenne (LMMSE) dans un canal
de Rayleigh et sans information a priori sur le canal en réception, nous retenons
deux estimateurs possible: le LMMSE et le ML. L'impact de l'introduction de
l'étage d'estimation du canal dans les différentes chaînes a été analysé. Les
résultats montrent que l'estimateur ML est plus performant et est moins sensible
à la présence de corrélation dans le canal de transmission. Cet estimateur est
donc retenu pour la chaîne finale. La chaîne de transmission a ensuite été
évaluée dans les différents canaux de transmission disponibles. Une
dégradation des performances avec l'augmentation de la corrélation est
observée. Le turbo récepteur est moins sensible à la présence d'un trajet direct
qu'à la corrélation. Enfin, l'utilisation de la diversité de polarisation permet
d'améliorer sensiblement les performances du système.
Les algorithmes VQ
La quantification vectorielle consiste à extraire un « dictionnaire » de
« prototypes » (ensemble des centroïdes) d'un grand ensemble représentatif de
données. Le dictionnaire doit respecter le mieux possible leur répartition dans
l'espace. La première version de l'algorithme de construction du dictionnaire
pour la quantification est connue sous le nom de Lloyd [9] et fut utilisée pour la
quantification scalaire. Cet algorithme a ensuite été généralisé pour la
classification automatique et la reconnaissance des formes sous le nom
d'algorithme des « K-means » ou méthode des « nuées dynamiques »[4].
Les k-mans
1. Initialisation
Soit un dictionnaire D0 de taille K.
2. Construction de la partition
A la tième itération, le dictionnaire est noté :
Dt = {Di ,t }i =1,.., K
3. Test d'arrêt
Dis t −1 − Dist
Si < ε alors l'algorithme est terminé.
Dis t
Le dictionnaire recherché est alors Dt +1 composé des nouveaux centroïdes,
soit Di ,t +1 = μ i ,t
Sinon t = t + 1 et l'algorithme est repris à l'étape 2.
1. Initialisation
Le centre de gravité de l'ensemble d'apprentissage est calculé.
Soit d 0 ce vecteur. Le dictionnaire est constitué de d 0 , p = 0 .
D0 = {d 0 }, D0 = 2 p
2. Eclatement “Splitting”
k
Tous les éléments d en nombre 2 du dictionnaire sont « éclatés » en deux
vecteurs. Ceci se fait par exemple en transformant chaque d en d + ε et
d − ε , où ε est un vecteur aléatoire de variance adaptée aux points du nuage
associés à d .
3. Convergence
L'algorithme de Lloyd (cf. section précédente) est appliqué sur le dictionnaire
k +1
des 2 éléments ainsi constitué.
k +1
Après convergence un dictionnaire optimal de 2 éléments est obtenu.
4. Arrêt
k = k +1
Si k > k 0 fixé à l'avance, alors l'algorithme prend fin, sinon le processus est
itéré (étape 2).
Le test d'arrêt peut se faire aussi par rapport à un seuil minimal sur la distorsion
des données d'apprentissage par rapport au dictionnaire, comme dans le cas
de l'algorithme de Lloyd.
L algorithme EM
Petit Rappel
L’expression de la vraisemblance d’une observation y de l’ensemble
d’apprentissage, supposée la réalisation d’un modèle de mélanges de lois
gaussiennes, est donnée par :
N
∑ν N ( y, μ
k =1
k k ,Σk )
avec :
⎡ 1 ⎤
⎢ − 2 ( y − μ k ) Σ k ( y − μ k )⎥
t −1
N ( y, μ k , Σ k ) =
1 ⎣ ⎦
exp
(2π )d / 2 Σ k 1 / 2
et
N le nombre de composantes du mélange,
ν k le poids de chaque composante,
μ k la moyenne de chaque composante,
Σ k la matrice de covariance associée.
L’algorithme EM est basé sur la vraisemblance de chaque vecteur observé par
rapport à chaque composante gaussienne du modèle.
Algorithme de base
1. Initialisation (t=0)
OU
2. Itération (t)
Calcul de la probabilité Pnk que le vecteur y n soit généré par la loi gaussienne
k :
ν k N ( yn , μ k , Σ k )
Pnk =
∑ N (y , μk' , Σk' )
K
k'
k ' =1
- Phase de maximisation
∑P nk yn
μk = n =1
N
∑P
n =1
nk
∑ P (y )( )
N
t
nk n − μ k yn − μ k
Σk = n =1
N
∑P
n =1
nk
3. Arrêt de l’algorithme
Dépôt légal le