<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ep-patent-document PUBLIC "-//EPO//EP PATENT DOCUMENT 1.1//EN" "ep-patent-document-v1-1.dtd">
<ep-patent-document id="EP93402522B1" file="EP93402522NWB1.xml" lang="fr" country="EP" doc-number="0594480" kind="B1" date-publ="19990818" status="n" dtd-version="ep-patent-document-v1-1">
<SDOBI lang="fr"><B000><eptags><B001EP>......DE......GB..................................</B001EP><B005EP>J</B005EP><B007EP>DIM360   - Ver 2.9 (30 Jun 1998)
 2100000/1 2100000/2</B007EP></eptags></B000><B100><B110>0594480</B110><B120><B121>FASCICULE DE BREVET EUROPEEN</B121></B120><B130>B1</B130><B140><date>19990818</date></B140><B190>EP</B190></B100><B200><B210>93402522.2</B210><B220><date>19931013</date></B220><B240><B241><date>19940527</date></B241><B242><date>19980922</date></B242></B240><B250>fr</B250><B251EP>fr</B251EP><B260>fr</B260></B200><B300><B310>9212582</B310><B320><date>19921021</date></B320><B330><ctry>FR</ctry></B330></B300><B400><B405><date>19990818</date><bnum>199933</bnum></B405><B430><date>19940427</date><bnum>199417</bnum></B430><B450><date>19990818</date><bnum>199933</bnum></B450><B451EP><date>19980922</date></B451EP></B400><B500><B510><B516>6</B516><B511> 6G 10L   3/00   A</B511></B510><B540><B541>de</B541><B542>Verfahren zur Erkennung von Sprachsignalen</B542><B541>en</B541><B542>Speech detection method</B542><B541>fr</B541><B542>Procédé de détection de la parole</B542></B540><B560><B561><text>EP-A- 0 335 521</text></B561><B561><text>EP-A- 0 459 363</text></B561><B561><text>US-A- 4 959 865</text></B561><B562><text>ICASSP 91 vol. 1 , 14 Mai 1991 , TORONTO pages 733 - 736 E.S. DERMATAS ET AL. 'Fast endpoint detection algorithm for isolated word recognition in office environment'</text></B562><B562><text>ICASSP 85 vol. 4 , 26 Mars 1985 , TAMPA FLORIDA page 1838 M. CHUNG ET AL. 'Word boundary detection and speech recognition of noisy speech by means of iterative noise cancellation techniques'</text></B562><B562><text>IEEE TRANS. ON ASSP vol. 27, no. 2 , Avril 1979 pages 113 - 120 S.F. BOLL 'Suppression of acoustic noise in speech using spectral subtraction'</text></B562></B560></B500><B700><B720><B721><snm>Pastor, Dominique</snm><adr><str>THOMSON-CSF,
SCPI,
BP 329</str><city>F-92402 Courbevoie Cedex</city><ctry>FR</ctry></adr></B721></B720><B730><B731><snm>SEXTANT AVIONIQUE</snm><iid>01129633</iid><irf>58 639 N</irf><adr><str>5-7, rue Jeanne Braconnier
Parc Tertiaire</str><city>92360 Meudon-la-Forêt</city><ctry>FR</ctry></adr></B731></B730><B740><B741><snm>Chaverneff, Vladimir</snm><sfx>et al</sfx><iid>00014661</iid><adr><str>Thomson-CSF Propriété Intellectuelle,
13, Avenue du Président Salvador Allende</str><city>94117 Arcueil Cédex</city><ctry>FR</ctry></adr></B741></B740></B700><B800><B840><ctry>DE</ctry><ctry>GB</ctry></B840></B800></SDOBI><!-- EPO <DP n="1"> -->
<description id="desc" lang="fr">
<p id="p0001" num="0001">La présente invention se rapporte à un procédé de détection de la parole.</p>
<p id="p0002" num="0002">Lorsqu'on cherche à déterminer le début et la fin effectifs de la parole, diverses solutions sont envisageables :
<ul id="ul0001" list-style="none" compact="compact">
<li>(1) On peut travailler sur l'amplitude instantanée par référence à un seuil déterminé expérimentalement et confirmer la détection de parole par une détection de voisement (voir article "La discrimination parole-bruit et ses applications" de V. PETIT/F. DUMONT, paru dans la Revue Technique THOMSON-CSF - Vol. 12 - N°4, déc. 1980).</li>
<li>(2) On peut aussi travailler sur l'énergie du signal total sur une tranche temporelle de durée T, en seuillant, toujours expérimentalement, cette énergie à l'aide d'histogrammes locaux, par exemple, et confirmer ensuite à l'aide d'une détection de voisement, ou du calcul de l'énergie minimale d'une voyelle. L'utilisation de l'énergie minimale d'une voyelle est une technique décrite dans le rapport "AMADEUS Version 1.0" de J.L. GAUVAIN du laboratoire LIMSI du CNRS.</li>
<li>(3) Les systèmes précédents permettent la détection de voisement, mais non pas du début et de la fin effectifs de la parole, c'est-à-dire la détection des sons fricatifs non voisés (/F/, /S/, /CH/) et des sons plosifs non voisés (P/, /T/, /Q/). Il faut donc les compléter par un algorithme de détection de ces fricatives. Une première technique peut consister en l'utilisation d'histogrammes locaux, comme le préconise l'article "Problème de détection des frontières de mots en présence de bruit additifs" de P. WACRENIER, paru dans le mémoire de D.E.A. de l'université de PARIS-SUD, Centre d'Orsay.</li>
</ul></p>
<p id="p0003" num="0003">D'autres techniques voisines des précédentes et relativement proches de celle exposée ici, ont été présentées dans l'article "A Study of Endpoint Detection Algorithms in Adverse Conditions: Incidence on a DTW and HMM Recognizer" de<!-- EPO <DP n="2"> --> J.C. JUNQUA/B. REAVES/B. MAK, lors du Congrès EUROSPEECH 1991.</p>
<p id="p0004" num="0004">Dans toutes ces approches, une grande part est faite à l'heuristique, et peu d'outils théoriques puissants sont utilisés.</p>
<p id="p0005" num="0005">Les travaux sur le débruitage de la parole similaires à ceux présentés ici sont beaucoup plus nombreux, et l'on citera en particulier le livre "Speech Enhancement" de J.S. LIM aux Editions Prentice-Hall Signal Processing Series "Suppression of Acoustic Noise in Speech Using Spectral Substraction" de S.F. BOLL, paru dans la revue IEEE Transactions on Acoustics, speech, and signal processing, vol. ASSP-27, N°2, Avril 1989, et "Noise Reduction For Speech Enhancement In Cars : Non-Linear Spectral Subtraction/Kalman Filtering" de P. LOCKWOOD, C. BAILLARGEAT, J.M. GILLOT, J. BOUDY, G. FAUCON paru dans la revue EUROSPEECH 91. On ne citera que des techniques de débruitage dans le domaine spectral, et il sera question par la suite de débruitage "spectral" par abus de langage.</p>
<p id="p0006" num="0006">Dans tous ces travaux, la relation étroite entre détection et débruitage n'est jamais réellement mise en évidence, sauf dans l'article "Suppression of Acoustic Noise in Speech Using Spectral Subtraction" précité, qui propose une solution empirique à ce problème.</p>
<p id="p0007" num="0007">Or, il est évident qu'un débruitage de la parole, lorsqu'on ne dispose pas de deux canaux d'enregistrements, nécessite l'utilisation de trames de bruit "pur", non polluées par la parole, ce qui nécessite de définir un outil de détection capable de distinguer entre bruit et bruit + parole.</p>
<p id="p0008" num="0008">L'état de la technique le plus proche est représenté par Dermatas et. al., "Fast Endpoint Detection Algorithm for Isolated Word Recognition in Office Environment", ICASSP '91, Vol. 1, pp. 733-736.</p>
<p id="p0009" num="0009">La présente invention a pour objet un procédé de détection et de débruitage de la parole qui permette de détecter le plus sûrement possible les débuts et fins effectifs de signaux de parole quels que soient les types de sons de parole, et qui permette de débruiter le plus efficacement possible les signaux ainsi détectés, même lorsque les caractéristiques statistiques du bruit affectant ces signaux varient fortement.<!-- EPO <DP n="3"> --></p>
<p id="p0010" num="0010">Le procédé de l'invention consiste à effectuer en milieu peu bruité une détection de trames voisées, et à détecter un noyau vocalique auquel on attache un intervalle de confiance.</p>
<p id="p0011" num="0011">En milieu bruité, après avoir effectué la détection d'au moins une trame voisée, on recherche des trames de bruit précédant cette trame voisée, on construit un modèle autorégressif de bruit et un spectre moyen de bruit, on blanchit par filtre réjecteur et on débruite par débruiteur spectral les trames précédant le voisement, on recherche le début effectif de la parole dans ces trames blanchies, on extrait des trames débruitées comprises entre le début effectif de la parole et la première trame voisée les vecteurs acoustiques utilisés par le système de reconnaissance vocale, tant que des trames voisées sont détectées, celles-ci sont débruitées puis paramétrisées en vue de leur reconnaissance (c'est-à-dire que l'on extrait les vecteurs acoustiques adaptés à la reconnaissance de ces trames), lorsqu'on ne détecte plus de trames voisées, on recherche la fin effective de la parole, on débruite puis on paramétrise les trames comprises entre la dernière trame voisée et la fin effective de la parole.</p>
<p id="p0012" num="0012">Dans toute la suite, lorsqu'il sera question de paramétrisation des trames, il faudra entendre que l'on extrait de la trame le vecteur acoustique (ou de manière équivalente, les paramètres acoustiques) utilisés par l'algorithme de reconnaissance.</p>
<p id="p0013" num="0013">Un exemple de tels paramètres acoustiques sont les coefficients cepstraux bien connus des spécialistes du traitement de la parole.</p>
<p id="p0014" num="0014">Dans toute la suite, on entendra par blanchiment, l'application du filtrage réjecteur calculé à partir du modèle autorégressif du bruit, et par débruitage, l'application du débruiteur spectral.</p>
<p id="p0015" num="0015">Blanchiment et débruitage spectral ne s'appliquent pas de manière séquentielle, mais en parallèle, le blanchiment permettant<!-- EPO <DP n="4"> --> la détection de sons non voisés, le débruitage une amélioration de la qualité du signal vocal à reconnaître.</p>
<p id="p0016" num="0016">Ainsi, le procédé de l'invention est caractérisé par l'utilisation d'outils théoriques permettant une approche rigoureuse des problèmes de détection (voisement et fricatives), par sa grande adaptativité, car ce procédé est avant tout un procédé local au mot. Les caractéristiques statistiques du bruit peuvent évoluer dans le temps, le procédé restera capable de s'y adapter, par construction. Il est également caractérisé par l'élaboration d'expertises de détection à partir des résultats d'algorithmes de traitement du signal (on minimise ainsi le nombre de fausses alarmes, dues à la détection, en prenant en compte la nature particulière du signal de parole), par des processus de débruitage couplés à la détection de parole, par une approche en "temps réel", et ce, à tous les niveaux de l'analyse, par sa synergie avec d'autres techniques de traitement du signal vocal, par l'utilisation de deux débruiteurs différents :
<ul id="ul0002" list-style="none" compact="compact">
<li>* Filtrage de réjection, principalement utilisé pour la détection de fricatives, en vertu de ses propriétés de blanchiment.</li>
<li>* Filtrage de Wiener en particulier, utilisé pour débruiter le signal de parole en vue de sa reconnaissance. On peut aussi utiliser une soustraction spectrale.</li>
</ul></p>
<p id="p0017" num="0017">Il faut donc distinguer dans le procédé de l'invention, trois niveaux de traitement :
<ul id="ul0003" list-style="dash" compact="compact">
<li>Le niveau "élémentaire" qui met en oeuvre des algorithmes de traitement du signal qui sont en fait les éléments de base de tous les traitements de niveau supérieur.</li>
</ul></p>
<p id="p0018" num="0018">Ainsi, le niveau "élémentaire" de détection de voisement est un algorithme de calcul et de seuillage de la fonction de corrélation. Le résultat est expertisé par le niveau supérieur.</p>
<p id="p0019" num="0019">Ces traitements s'implantent sur processeurs de traitement du signal, par exemple du type DSP 96000.<!-- EPO <DP n="5"> -->
<ul id="ul0004" list-style="dash" compact="compact">
<li>Le niveau intermédiaire d'expertise élabore des détections de voisements et de début de parole "intelligentes", compte tenu de la détection "brute" fournie par le niveau élémentaire. L'expertise peut faire appel à un langage informatique approprié, type Prolog.</li>
<li>Le niveau "supérieur" ou utilisateur gère en temps réel les différents algorithmes de détection, de débruitage et d'analyse du signal vocal. Le langage C, par exemple, est approprié à l'implémentation de cette gestion.</li>
</ul></p>
<p id="p0020" num="0020">L'invention est décrite en détail ci-dessous selon le plan suivant. On décrit d'abord l'algorithme qui permet d'enchaîner de façon appropriée les différentes techniques de traitement du signal et d'expertises nécessaires.</p>
<p id="p0021" num="0021">On supposera à ce niveau de traitement le plus élevé dans la hiérarchie de conception, que l'on dispose de méthodes fiables de détection et de débruitage, comportant tous les algorithmes de traitement de signal, toutes les expertises, nécessaires et suffisants. Cette description est donc très générale. Elle est même indépendante des algorithmes d'expertises et de traitement du signal décrits ci-après. Elle peut donc s'appliquer à d'autres techniques que celles décrites ici.</p>
<p id="p0022" num="0022">On décrit ensuite les expertises de détection de voisement, de début et fin de parole, à l'aide d'algorithmes de niveau élémentaire dont certains exemples sont cités.</p>
<p id="p0023" num="0023">On décrit enfin les méthodes utilisées pour la détection et le débruitage de la parole.</p>
<p id="p0024" num="0024">Ce sont les résultats de ces techniques (Parole voisée, non voisée, ...) qui sont utilisés par les niveaux supérieurs de traitement<br/>
Conventions et vocabulaire employé.</p>
<p id="p0025" num="0025">On appellera trame, l'unité temporelle élémentaire de traitement. La durée d'une trame est classiquement de 12.8 ms, mais peut, bien entendu, avoir des valeurs (réalisations en langage mathématique) différentes. Les traitements font appel à des<!-- EPO <DP n="6"> --> transformées de Fourier discrètes des signaux traités. Ces transformées de Fourier sont appliquées à l'ensemble des échantillons obtenus sur deux trames consécutives, ce qui correspond à effectuer une transformée de Fourier sur 25.6 ms.</p>
<p id="p0026" num="0026">Lorsque deux transformées de Fourier sont consécutives dans le temps, ces transformées sont calculées, non pas sur quatre trames consécutives, mais sur trois trames consécutives avec un recouvrement d'une trame. Ceci est illustré par le schéma suivant :<maths id="math0001" num=""><img id="ib0001" file="imgb0001.tif" wi="149" he="40" img-content="math" img-format="tif"/></maths></p>
<p id="p0027" num="0027">On décrit d'abord ici le fonctionnement de l'algorithme au niveau de conception le plus proche de l'utilisateur.</p>
<p id="p0028" num="0028">Le mode de mise en oeuvre préféré de l'invention est décrit ci-dessous en référence à l'analyse des signaux issus d'environnements avioniques très bruités, ce qui permet de disposer d'une information de départ qui est l'alternat micro qu'utilisent les pilotes. Cette information indique une zone temporelle proche du signal à traiter.</p>
<p id="p0029" num="0029">Cependant, cet alternat peut être plus ou moins rapproché du début effectif de la parole, et on ne peut donc y accorder qu'un faible crédit pour toute détection précise. Il va donc falloir préciser le début effectif de parole à partir de cette première information.</p>
<p id="p0030" num="0030">Dans un premier temps, on recherche la première trame voisée située aux alentours de cet alternat. Cette première trame voisée, est recherchée tout d'abord parmi les N1 trames qui précèdent l'alternat (N1 = environ 30 trames). Si cette trame voisée n'est pas trouvée parmi ces N1 trames, alors on recherche le<!-- EPO <DP n="7"> --> voisement sur les trames qui suivent l'alternat, au fur et à mesure qu'elles se présentent.</p>
<p id="p0031" num="0031">Dès que la première trame voisée est trouvée par ce procédé, on va initialiser les débruiteurs. Pour cela, il faut mettre en évidence des trames constituées uniquement de bruit. Ces trames de bruit sont recherchées parmi les N2 trames qui précèdent la première trame voisée (N2 = environ 40 trames). En effet, chacune de ces N2 trames est soit :
<ul id="ul0005" list-style="none" compact="compact">
<li>* constituée de bruit seul</li>
<li>* constituée de bruit + respiration</li>
<li>* constituée de bruit + fricative ou occlusive non voisée.</li>
</ul></p>
<p id="p0032" num="0032">L'hypothèse faite est que l'énergie du bruit est en moyenne inférieure à celle du bruit + respiration, elle-même inférieure à celle du bruit + fricative.</p>
<p id="p0033" num="0033">Donc, si on considère parmi les N2 trames, celle qui présente l'énergie la plus faible, il est fort probable que cette trame n'est constituée que de bruit.</p>
<p id="p0034" num="0034">A partir de la connaissance de cette trame, on recherche toutes celles qui sont compatibles avec elle, et compatibles 2 à 2, au sens donné plus loin, au paragraphe "Compatibilités entre énergies".</p>
<p id="p0035" num="0035">Lorsque les trames de bruit ont été détectées, on construit les deux modèles de bruit qui vont servir par la suite :
<ul id="ul0006" list-style="none" compact="compact">
<li>* Modèle autorégressif du bruit permettant de construire le filtrage réjecteur qui blanchit le bruit.</li>
<li>* Spectre moyen de bruit pour débruitage spectral.</li>
</ul></p>
<p id="p0036" num="0036">Ces modèles sont décrits ci-dessous.</p>
<p id="p0037" num="0037">Les modèles de bruit étant construits, on blanchit (par filtre réjecteur et on débruite (par débruiteur spectral) les N3 trames qui précèdent le voisement et parmi lesquelles on va chercher le début effectif de parole (N3 = environ 30). Il va de soi que N3 est inférieur à N2. Cette détection se fait par détection de fricative et est décrite ci-dessous.<!-- EPO <DP n="8"> --></p>
<p id="p0038" num="0038">Lorsque le début de parole est connu, on débruite toutes les trames comprises entre le début de parole et la première trame voisée, puis on paramétrise ces trames en vue de leur reconnaissance. Au fur et à mesure que ces trames sont débruitées et paramétrisées, elles sont envoyées au système de reconnaissance.</p>
<p id="p0039" num="0039">Puisque le début effectif de parole est connu, on peut continuer à traiter les trames qui suivent la première trame voisée.</p>
<p id="p0040" num="0040">Chaque trame acquise n'est plus blanchie mais seulement débruitée, puis paramétrisée pour sa reconnaissance. On effectue sur chaque trame un test de voisement.</p>
<p id="p0041" num="0041">Si cette trame est voisée, le vecteur acoustique est effectivement envoyé à l'algorithme de reconnaissance.</p>
<p id="p0042" num="0042">Si elle n'est pas voisée, on cherche si elle est en fait la dernière trame du noyau vocalique en cours.</p>
<p id="p0043" num="0043">Si ce n'est pas la dernière trame du noyau vocalique, on acquiert une nouvelle trame et on réitère le procédé, jusqu'au moment où l'on trouve la dernière trame voisée.</p>
<p id="p0044" num="0044">Lorsque la dernière trame voisée est détectée, on blanchit les N4 trames qui suivent cette dernière trame voisée (N4 = environ 30 trames), puis on recherche la fin effective de la parole parmi ces N4 trames blanchies. Le procédé associé à cette détection est décrit ci-dessous.</p>
<p id="p0045" num="0045">Lorsque la fin effective de parole est détectée, les trames comprises entre la fin de voisement et cette fin de parole, sont débruitées, puis paramétrisées et envoyées au système de reconnaissance vocale pure en vue de leur traitement.</p>
<p id="p0046" num="0046">Lorsque la dernière trame de parole a été débruitée, paramétrisée et envoyée au système de reconnaissance, on réinitialise tous les paramètres de traitement, en vue du traitement de l'élocution suivante.</p>
<p id="p0047" num="0047">Comme on peut le voir, ce procédé est local à l'élocution traitée (c'est-à-dire qu'il traite chaque phrase ou chaque ensemble<!-- EPO <DP n="9"> --> de mots sans "trou" entre mots), et permet donc d'être très adaptatif à tous changements de statistiques du bruit, d'autant plus que l'on utilise des algorithmes adaptatifs pour la modélisation auto-régressive du bruit, et des modèles théoriques relativement sophistiqués pour la détection des trames de bruit et la détection des fricatives.</p>
<p id="p0048" num="0048">En l'absence d'alternat, le procédé est lancé dès qu'un voisement est détecté.</p>
<p id="p0049" num="0049">Une simplification notable du procédé décrit ci-dessus est possible lorsque les signaux traités sont peu bruités. L'utilisation des algorithmes de débruitage et de blanchiment peut alors se révéler inutile, voire néfaste, lorsque le niveau de bruit est négligeable (ambiance laboratoire). Ce phénomène est connu, notamment dans le cas du débruitage, où débruiter un signal très peu bruité peut induire une déformation de la parole préjudiciable à une bonne reconnaissance.<br/>
Les simplifications résident :
<ul id="ul0007" list-style="dash" compact="compact">
<li>dans la suppression du débruitage spectral pour reconnaissance en vue d'éviter toute déformation de la parole, ne compensant pas le gain en rapport signal sur bruit que l'on pourrait obtenir par débruitage, et préjudiciable alors à une bonne reconnaissance.</li>
<li>dans l'éventuelle suppression du filtre de blanchiment (et donc du calcul du modèle autorégressif du bruit, ce qui implique aussi la suppression du module de confirmation de bruit). Cette suppression n'est pas forcément nécessaire en milieu peu bruité. Des essais préalables sont préférables pour en décider.</li>
</ul></p>
<p id="p0050" num="0050">On va maintenant exposer en détail les procédures d'expertise de détection de voisement et détection de fricative.</p>
<p id="p0051" num="0051">Ces procédures d'expertises font appel à des outils bien connus de traitement du signal et de détection, qui sont autant d'automates de base, dont l'aptitude est de décider de manière brute si la trame traitée est voisée ou non, est une trame de fricative non voisée ou de plosive non voisée...<!-- EPO <DP n="10"> --></p>
<p id="p0052" num="0052">L'expertise consiste à combiner les différents résultats obtenus à l'aide desdits outils, de manière à mettre en évidence des ensembles cohérents, formant le noyau vocalique par exemple, ou des blocs de sons fricatifs (plosifs), non voisés.</p>
<p id="p0053" num="0053">Par nature, le langage d'implémentation de telles procédures est de préférence le PROLOG.</p>
<p id="p0054" num="0054">A la différence du processus décrit ci-dessus, cette expertise est la même que le milieu soit bruité ou non.</p>
<p id="p0055" num="0055">Pour l'expertise de détection de voisement, on fait appel à un processus connu de détection de voisement, qui, pour une trame donnée, décide si cette trame est voisée ou non, en renvoyant la valeur du "pitch" associé à cette trame. Le "pitch" est la fréquence de répétition du motif de voisement. Cette valeur de pitch est nulle, s'il n'y a pas de voisement, et non nulle sinon.</p>
<p id="p0056" num="0056">Cette détection élémentaire de voisement se fait sans utiliser des résultats portant sur les trames précédentes, et sans présager du résultat portant sur les trames futures.</p>
<p id="p0057" num="0057">Comme un noyau vocalique peut être constitué de plusieurs segments voisés, séparés de trous non voisés, une expertise est nécessaire, afin de valider ou non un voisement.</p>
<p id="p0058" num="0058">On va maintenant exposer les règles générales de l'expertise.
<ul id="ul0008" list-style="none" compact="compact">
<li>Règle 1 : Entre deux trames voisées consécutives ou séparées d'un nombre relativement faible de trames (de l'ordre de trois ou quatre trames), les valeurs de pitch obtenues ne peuvent différer de plus d'un certain delta (environ ± 20 Hz en fonction du locuteur). Par contre, lorsque l'écart entre deux trames voisées excède un certain nombre de trames, la valeur de pitch peut évoluer très vite.</li>
<li>Règle 2 : Un noyau vocalique est constitué de trames voisées entrecoupées de trous. Ces trous doivent vérifier la condition suivante: la taille d'un trou ne doit pas excéder une taille maximale, qui peut être fonction du locuteur et surtout du<!-- EPO <DP n="11"> --> vocabulaire (environ 40 trames). La taille du noyau est la somme du nombre de trames voisées et de la taille des trous de ce noyau.</li>
<li>Règle 3 : le début effectif du noyau vocalique est donné dès que la taille du noyau est suffisamment grande (environ 4 trames).</li>
<li>Règle 4 : la fin du noyau vocalique est déterminée par la dernière trame voisée suivie d'un trou excédant la taille maximale permise pour un trou dans le noyau vocalique.</li>
</ul></p>
<heading id="h0001">Déroulement de l'expertise</heading>
<p id="p0059" num="0059">On utilise les règles précédentes de la manière exposée ci-dessous, et lorsqu'une valeur de pitch a été calculée.</p>
<heading id="h0002">Première partie de l'expertise :</heading>
<p id="p0060" num="0060">On valide ou non la valeur du pitch calculée, en fonction de la valeur du pitch de la trame précédente et de la dernière valeur non nulle du pitch, et ce en fonction du nombre de trames séparant la trame actuellement traitée et celle du dernier pitch non nul. Ceci correspond à l'application de la règle 1.</p>
<heading id="h0003">Deuxième partie de l'expertise :</heading>
<p id="p0061" num="0061">Cette deuxième partie de l'expertise se décompose suivant différents cas.
<ul id="ul0009" list-style="none" compact="compact">
<li>Cas 1 : Première trame voisée :
<ul id="ul0010" list-style="dash" compact="compact">
<li>On incrémente la taille possible du noyau, qui vaut donc 1</li>
<li>Le début possible du noyau vocalique est donc la trame actuelle</li>
<li>La fin possible du noyau vocalique est donc la trame actuelle</li>
</ul></li>
<li>Cas 2 : La trame actuelle est voisée ainsi que la précédente. <br/>
On traite donc un segment voisé.
<ul id="ul0011" list-style="dash" compact="compact">
<li>On incrémente le nombre possible de trames voisées du noyau</li>
<li>On incrémente la taille possible du noyau</li>
<li>La fin possible du noyau peut être la trame actuelle qui est aussi la fin possible du segment.</li>
</ul> <b>Si</b> la taille du noyau est suffisamment grande (environ quatre trames, comme précisé ci-dessus).<br/>
<b>Et Si</b> le début effectif du noyau vocalique n'est pas connu.<br/>
Alors :<!-- EPO <DP n="12"> -->
<ul id="ul0012" list-style="dash" compact="compact">
<li>le début du noyau est la première trame détectée comme voisée. <br/>
Ceci correspond à la mise en oeuvre de la règle 3.
</li>
</ul>
</li>
<li>Cas 3 : la trame actuelle n'est pas voisée, alors que la trame précédente l'est.<br/>
On est en train de traiter la première trame d'un trou.
<ul id="ul0013" list-style="dash" compact="compact">
<li>On incrémente la taille du trou, qui passe à 1</li>
</ul></li>
<li>Cas 4 : La trame actuelle n'est pas voisée et la trame précédente non plus. <br/>
On est en train de traiter un trou.
<ul id="ul0014" list-style="dash" compact="compact">
<li>On incrémente la taille du trou.<br/>
<b>Si</b> la taille du trou excède la taille maximale autorisée pour un trou du noyau vocalique,<br/>
Alors :</li>
</ul>
<br/>
<b>Si</b> le début effectif de voisement est connu,<br/>
   <b>Alors</b> :<br/>
   la fin du noyau vocalique est la dernière trame voisée déterminée avant ce trou. On arrête l'expertise et on réinitialise toutes les données pour le traitement de la prochaine élocution. (cf règle 4)
<br/>
<b>Si</b> le début effectif de parole n'est toujours pas connu,<br/>
   <b>Alors</b> :
<br/>
On continue l'expertise sur les trames suivantes après réinitialisation de tous les paramètres utilisés, car ceux qui ont été actualisés précédemment ne sont pas valides.<br/>
<b>Sinon</b>, ce trou fait peut-être partie du noyau vocalique et on ne peut pas encore prendre de décision définitive.
<ul id="ul0015" list-style="none" compact="compact">
<li>Cas 5 : La trame actuelle est voisée et la précédente ne l'est pas.</li>
</ul>
<br/>
On vient de terminer un trou, et on commence un nouveau segment voisé.
<ul id="ul0016" list-style="dash" compact="compact">
<li>On incrémente le nombre de trames voisées du noyau.</li>
<li>On incrémente la taille du noyau.</li>
</ul><!-- EPO <DP n="13"> --> <b>Si</b> le trou que l'on vient de finir peut faire partie du noyau vocalique, (c'est-à-dire si sa taille est inférieure à la taille maximale autorisée pour un trou du noyau selon la règle 2).<br/>
<b>Alors</b> :
<ul id="ul0017" list-style="dash" compact="compact">
<li>On ajoute à la taille actuelle du noyau la taille de ce trou.</li>
<li>On réinitialise la taille du trou, pour traitement des prochaines trames non voisées.</li>
</ul>
<br/>
<b>Si</b> le début effectif du voisement n'est pas encore connu,<br/>
   <b>Et Si</b> la taille du noyau est désormais suffisante(Règle 3),<br/>
   <b>Alors</b> :
<ul id="ul0018" list-style="dash" compact="compact">
<li>le début du voisement est le début du segment voisé précédant le trou que l'on vient de terminer.</li>
</ul> <b>Sinon</b>, ce trou ne peut pas faire partie du noyau vocalique :<br/>
   <b>Si</b> le début effectif du voisement est connu,<br/>
   <b>Alors</b> :
<ul id="ul0019" list-style="dash" compact="compact">
<li>la fin du noyau vocalique est la dernière trame voisée déterminée avant ce trou. On arrête l'expertise et on réinitialise toutes les données pour le traitement de la prochaine élocution. (cf règle 4).</li>
</ul>
<br/>
<b>Si</b> le début effectif de voisement n'est toujours pas connu,<br/>
   <b>Alors</b> :
<ul id="ul0020" list-style="dash" compact="compact">
<li>On continue l'expertise sur les trames suivantes après réinitialisation de tous les paramètres utilisés, car ceux qui ont été actualisés précédemment ne sont pas valides.</li>
</ul>
</li>
</ul></p>
<p id="p0062" num="0062">Cette procédure est utilisée à chaque trame, et après calcul du pitch associé à cette trame.</p>
<p id="p0063" num="0063">Expertise de détection de la parole non voisée.</p>
<p id="p0064" num="0064">On utilise ici un processus connu en soi de détection de parole non voisée.<!-- EPO <DP n="14"> --></p>
<p id="p0065" num="0065">Cette détection élémentaire de voisement se fait sans utiliser des résultats portant sur les trames précédentes, et sans présager du résultat portant sur les trames futures.</p>
<p id="p0066" num="0066">Des signaux de parole non voisés placés en début ou en fin d'élocution, peuvent être constitués :
<ul id="ul0021" list-style="dash" compact="compact">
<li>d'un seul segment fricatif comme dans "chaff"</li>
<li>d'un segment fricatif suivi d'un segment occlusif comme dans "stop"</li>
<li>d'un seul segment occlusif comme dans "parole"</li>
</ul></p>
<p id="p0067" num="0067">Il y a donc possibilité de trous dans l'ensemble de trames non voisées.</p>
<p id="p0068" num="0068">De plus, de tels blocs fricatifs ne doivent pas être trop grands. Aussi, une expertise intervenant après la détection de ces sons est-elle nécessaire.</p>
<p id="p0069" num="0069">Dans la suite, par abus de langage, le terme fricatif se rapportera tout aussi bien à des fricatives non voisées qu'à des plosives non voisées.</p>
<p id="p0070" num="0070">Règles générales de l'expertise.</p>
<p id="p0071" num="0071">L'expertise exposée ici est similaire à celle décrite ci-dessus dans le cas du voisement. Les différences tiennent essentiellement dans la prise en compte des paramètres nouveaux que sont la distance entre le noyau vocalique et le bloc fricatif, et la taille du bloc fricatif.
<ul id="ul0022" list-style="none" compact="compact">
<li>Règle 1 : la distance entre le noyau vocalique et la première trame fricative détectée ne doit pas être trop grande (environ 15 trames maximum) .</li>
<li>Règle 2 : la taille d'un bloc fricatif ne doit pas être trop grande. Ceci signifie de manière équivalente, que la distance entre le noyau vocalique et la dernière trame détectée comme fricative ne doit pas être trop grande (environ 10 trames maximum).</li>
<li>Règle 3 la taille d'un trou dans un bloc fricatif ne doit pas excéder une taille maximale (environ 15 trames maximum). La taille totale<!-- EPO <DP n="15"> --> du noyau est la somme du nombre de trames voisées et de la taille des trous dans ce noyau.</li>
<li>Règle 4 : le début effectif du bloc fricatif est déterminé dès que la taille d'un segment est devenue suffisante, et que la distance entre le noyau vocalique et la première trame de ce segment fricatif traité n'est pas trop grande, conformément à la règle 1. Le début effectif du bloc fricatif correspond à la première trame de ce segment.</li>
<li>Règle 5 : la fin du bloc fricatif est déterminée par la dernière trame du bloc fricatif suivie d'un trou excédant la taille maximale autorisée pour un trou dans le noyau vocalique, et lorsque la taille du bloc fricatif ainsi déterminé n'est pas trop grande conformément à la règle 2.</li>
</ul></p>
<heading id="h0004">Déroulement de l'expertise.</heading>
<p id="p0072" num="0072">Cette expertise est utilisée pour détecter les blocs fricatifs précédant le noyau vocalique ou le suivant. Le repère choisi dans cette expertise est donc le noyau vocalique.</p>
<p id="p0073" num="0073">Dans le cas de la détection d'un bloc fricatif précédant le noyau vocalique, le traitement se fait en partant de la première trame de voisement, donc en "remontant" dans le temps. Aussi, lorsque l'on dit qu'une trame i suit une trame j (précédemment traitée), il faut entendre par là : vis-à-vis de cette première trame du noyau vocalique. Dans la réalité, la trame j est chronologiquement postérieure à la trame i. Ce que l'on dénomme début du bloc fricatif dans l'expertise décrite ci-après, est en fait, chronologiquement, la fin de ce bloc, et ce que l'on appelle fin du bloc fricatif, est en fait le début chronologique de ce bloc. La distance entre noyau vocalique et trame détectée comme fricative est la distance entre la première trame du bloc voisé et cette trame de fricative.</p>
<p id="p0074" num="0074">Dans le cas de la détection d'un bloc fricatif situé après le noyau vocalique, le traitement se fait après la dernière trame voisée, et suit donc l'ordre chronologique naturel, et les termes de l'expertise sont parfaitement adéquats.<!-- EPO <DP n="16"> -->
<ul id="ul0023" list-style="none" compact="compact">
<li>Cas 1 : Tant qu'il n'y a pas de détection de fricative, on est dans un trou qui suit le noyau vocalique et précède le bloc fricatif.
<ul id="ul0024" list-style="dash" compact="compact">
<li>On incrémente la distance entre le segment voisé et le bloc fricatif. Cette distance ainsi calculée est un minorant de la distance entre le bloc fricatif et le noyau vocalique. Cette distance sera figée dès que la première trame de fricative sera détectée.</li>
</ul></li>
<li>Cas 2 : Première détection de fricative, On commence à traiter un segment fricatif.
<ul id="ul0025" list-style="dash" compact="compact">
<li>On initialise la taille du bloc fricatif à 1.</li>
<li>On fige la distance entre le bloc voisé et le bloc fricatif.</li>
</ul> <b>Si</b> la distance entre le noyau vocalique et le bloc fricatif n'est pas trop grande (conformément à la règle 2).<br/>
<b>Alors</b> :
<ul id="ul0026" list-style="dash" compact="compact">
<li>Le début possible du bloc fricatif peut être la trame actuelle.</li>
<li>La fin possible du bloc fricatif peut être la trame actuelle.</li>
</ul> <br/>
<b>Si</b> la taille du bloc fricatif est suffisamment grande
<br/>
<b>Et Si</b> le début effectif du bloc fricatif n'est pas encore connu,<br/>
   <b>alors</b> :
<ul id="ul0027" list-style="dash" compact="compact">
<li>le début du noyau peut être confirmé. <br/>
On notera que ce <b>Si</b> (dans "<b>Si</b> la taille du bloc fricatif est suffisamment grande") est inutile si la taille minimale pour un bloc fricatif est supérieure à une trame, mais lorsqu'on cherche à détecter des occlusives en milieu bruité, celles-ci peuvent n'apparaître que sur la durée d'une seule trame. Il faut donc prendre alors la taille minimale d'un bloc fricatif égale à 1, et conserver cette condition.<br/>
<b>Si</b> la distance entre le noyau vocalique et le bloc fricatif est trop grande (cf règle 2).<br/>
Il n' y pas de bloc fricatif acceptable.<!-- EPO <DP n="17"> -->
<ul id="ul0028" list-style="dash" compact="compact">
<li>On réinitialise pour le traitement de la prochaine élocution.</li>
<li>On sort du traitement.</li>
</ul>
</li>
</ul> Comme le test sur la distance entre noyau vocalique et bloc fricatif est réalisé dès la première détection de fricative, il ne sera pas renouvelé dans les cas suivants, d'autant plus que si cette distance est ici trop grande, la procédure est arrêtée pour cette élocution.
</li>
<li>Cas 3 : La trame actuelle et la précédente sont toutes les deux des trames de fricatives.<br/>
On est en train de traiter une trame qui se situe en plein dans un segment fricatif acceptable (situé à une distance correcte du noyau vocalique conformément à la règle 1).
<ul id="ul0029" list-style="dash" compact="compact">
<li>La fin possible du bloc fricatif est la trame actuelle.</li>
<li>On incrémente la taille du bloc fricatif.</li>
</ul> <b>Si</b> la taille du bloc fricatif est suffisamment grande (cf règle 4).<br/>
<b>Et Si</b> la taille de ce bloc n'est pas trop grande (cf règle 2).<br/>
<b>Et Si</b> le début effectif du bloc fricatif n'est pas encore connu,<br/>
<b>alors</b> :
<ul id="ul0030" list-style="dash" compact="compact">
<li>le début du noyau peut être confirmé comme étant le début de ce segment fricatif.</li>
</ul></li>
<li>Cas 4: La trame actuelle n'est pas une fricative contrairement à la trame précédente. <br/>
On est en train de traiter la première trame d'un trou situé à l'intérieur du bloc fricatif.
<ul id="ul0031" list-style="dash" compact="compact">
<li>On incrémente la taille totale du trou (qui devient égale à 1).</li>
</ul>
</li>
<li>Cas 5 : Ni la trame actuelle ni la précédente ne sont des trames de fricatives. <br/>
On est en train de traiter une trame située en plein dans un trou du bloc fricatif.
<ul id="ul0032" list-style="dash" compact="compact">
<li>On incrémente la taille totale du trou.</li>
</ul> <b>Si</b> la taille actuelle du bloc fricatif augmentée de la taille du trou est supérieure à la taille maximale autorisée pour un bloc fricatif (règle 2).<br/>
<!-- EPO <DP n="18"> --><b>Ou Si</b> la taille du trou est trop grande.<br/>
   <b>Si</b> le début du bloc fricatif est connu,<br/>
   <b>alors</b> :
<ul id="ul0033" list-style="dash" compact="compact">
<li>La fin du bloc fricatif est la dernière trame détectée comme fricative.</li>
<li>On réinitialise toutes les données de manière à traiter la prochaine élocution.</li>
</ul>       <b>Sinon :</b>
<ul id="ul0034" list-style="dash" compact="compact">
<li>on réinitialise toutes les données, même celles qui ont été précédemment actualisées, car elles ne sont plus valides. On traite alors la prochaine trame.</li>
</ul> <b>Sinon,</b> ce trou fait peut-être partie du bloc fricatif et on ne peut pas encore prendre de décision définitive.
</li>
<li>Cas 6 : La trame actuelle est une trame de fricative contrairement à la trame précédente.<br/>
On traite la première trame d'un segment fricatif situé après un trou.
<ul id="ul0035" list-style="dash" compact="compact">
<li>On incrémente la taille du bloc fricatif.</li>
</ul> <br/>
<b>Si</b> la taille actuelle du bloc fricatif augmentée de la taille du trou précédemment détecté est supérieure à la taille maximale autorisée pour un bloc fricatif,<br/>
<b>Ou Si</b> la taille du trou est trop grande,<br/>
<b>alors</b> :<br/>
   <b>Si</b> le début du bloc fricatif est connu,<br/>
   <b>alors</b> :
<ul id="ul0036" list-style="dash" compact="compact">
<li>La fin du bloc fricatif est alors la dernière trame détectée comme fricative.</li>
<li>On réinitialise toutes les données de manière à traiter la prochaine élocution.</li>
</ul>       <b>Sinon</b>,
<ul id="ul0037" list-style="dash" compact="compact">
<li>On réinitialise toutes les données, même celles qui ont été précédemment actualisées, car elles ne sont pas valides. On traite alors la prochaine trame.</li>
</ul><!-- EPO <DP n="19"> --> <b>Sinon</b>, (le trou fait partie du segment fricatif).
<ul id="ul0038" list-style="dash" compact="compact">
<li>La taille du bloc fricatif est augmentée de la taille du trou</li>
<li>La taille du trou est réinitialisée à O<br/>
<b>Si</b> la taille du bloc fricatif est suffisamment grande<br/>
<b>Et Si</b> cette taille n'est pas trop grande<br/>
<b>Et Si</b> le début effectif du bloc fricatif n'est pas connu<br/>
<b>Alors</b> :</li>
<li>Le début du noyau peut être confirmé.</li>
</ul>
</li>
</ul> Simplification dans le cas d'un milieu peu bruité.</p>
<p id="p0075" num="0075">Dans le cas où l'utilisateur estime que le milieu est insuffisamment bruité pour nécessiter les traitements sophistiqués précédents, il est possible, non seulement de simplifier l'expertise présentée ci-dessus, mais même de l'éliminer. Dans ce cas, la détection de parole se réduira à une simple détection du noyau vocalique auquel on attache un intervalle de confiance exprimé en nombre de trames, ce qui se révèle suffisant pour améliorer les performances d'un algorithme de reconnaissance vocale. Il est ainsi possible de débuter la reconnaissance une dizaine, voire une quinzaine de trames avant le début du noyau vocalique, et de l'achever, une dizaine, voire une quinzaine de trames après le noyau vocalique.</p>
<heading id="h0005">Algorithmes de Traitement du Signal.</heading>
<p id="p0076" num="0076">Les procédures et méthodes de calcul décrites ci-après sont les constituants utilisés par les algorithmes d'expertises et de gestion. De telles fonctions sont avantageusement implantées sur un processeur de signaux et le langage utilisé est de préférence l'Assembleur.</p>
<p id="p0077" num="0077">Pour la détection de voisement en milieu peu bruité, une solution intéressante est le seuillage de l'A.M.D.F. (Average Magnitude Difference Function) dont la description peut être trouvée par exemple dans l'ouvrage "Traitement de la parole" de<!-- EPO <DP n="20"> --> R. BOITE/M. KUNT paru aux éditions Presses Polytechniques Romandes.</p>
<p id="p0078" num="0078">L'AMDF est la fonction D(k) = Σ<sub>n</sub> |x(n+k) - x(n)|. Cette fonction est bornée par la fonction de corrélation, selon :<br/>
D(k) ≤ 2(Γ<sub>x</sub>(0) - Γ<sub>x</sub>(k))<sup>1/2</sup>. Cette fonction présente donc des "pics" vers le bas, et doit donc être seuillée comme la fonction de corrélation.</p>
<p id="p0079" num="0079">D'autres méthodes basées sur le calcul du spectre du signal sont envisageables, pour des résultats tout aussi acceptables (article "traitement de la parole" précité). Toutefois, il est intéressant d'utiliser la fonction AMDF, pour de simples questions de coûts de calcul.</p>
<p id="p0080" num="0080">En milieu bruité, la fonction AMDF est une distance entre le signal et sa forme retardée. Cependant, cette distance est une distance qui n'admet pas de produit scalaire associé, et qui ne permet donc pas d'introduire la notion de projection orthogonale. Or, dans un milieu bruité, la projection orthogonale du bruit peut être nulle, si l'axe de projection est bien choisi. L'AMDF n'est donc pas une solution adéquate en milieu bruité.</p>
<p id="p0081" num="0081">Le procédé de l'invention est alors basé sur la corrélation, car la corrélation est un produit scalaire et effectue une projection orthogonale du signal sur sa forme retardée. Cette méthode est, par là-même, plus robuste au bruit que d'autres techniques, telles l'AMDF. En effet, supposons que le signal observé soit x(n) = s(n) + b(n) où b(n) est un bruit blanc indépendant du signal utile s(n). La fonction de corrélation est par définition :<maths id="math0002" num=""><math display="block"><mrow><msub><mrow><mtext>Γ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msub><mrow><mtext>(k) = E[x(n)x(n-k)], donc Γ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><mtext>(k) = E[s(n)s(n-k)] + E[b(n)b(n-k)]</mtext><mspace linebreak="newline"/><msub><mrow><mtext> = Γ</mtext></mrow><mrow><mtext>s</mtext></mrow></msub><msub><mrow><mtext>(k) + Γ</mtext></mrow><mrow><mtext>b</mtext></mrow></msub><mtext>(k)</mtext></mrow></math><img id="ib0002" file="imgb0002.tif" wi="147" he="6" img-content="math" img-format="tif"/></maths> Comme le bruit est blanc :<maths id="math0003" num=""><math display="block"><mrow><msub><mrow><mtext>Γ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msub><mrow><mtext>(0) = Γ</mtext></mrow><mrow><mtext>s</mtext></mrow></msub><msub><mrow><mtext>(0) + Γ</mtext></mrow><mrow><mtext>b</mtext></mrow></msub><msub><mrow><mtext>(0) et Γ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msub><mrow><mtext>(k) = Γ</mtext></mrow><mrow><mtext>s</mtext></mrow></msub><mtext>(k) pour k ≠ 0 .</mtext></mrow></math><img id="ib0003" file="imgb0003.tif" wi="94" he="6" img-content="math" img-format="tif"/></maths></p>
<p id="p0082" num="0082">La blancheur du bruit en pratique n'est pas une hypothèse valide. Cependant, le résultat reste une bonne approximation dès que la fonction de corrélation du bruit décroît<!-- EPO <DP n="21"> --> rapidement, et pour k suffisamment grand, comme dans le cas d'un bruit rose (bruit blanc filtré par un passe-bande), où la fonction de corrélation est un sinus cardinal, donc pratiquement nulle dès que k est suffisamment grand.</p>
<p id="p0083" num="0083">On va décrire maintenant une procédure de calcul de pitch et de détection de pitch applicable aux milieux bruités comme aux milieux peu bruités.</p>
<p id="p0084" num="0084">Soit x(n) le signal traité où n ∈ { 0, ..., N-1 }.</p>
<p id="p0085" num="0085">Dans le cas de l'AMDF, r(k) = D(k) = Σ<sub>n</sub> |x(n+k) - x(n).|</p>
<p id="p0086" num="0086">Dans le cas de la corrélation, l'espérance mathématique permettant d'accéder à la fonction de corrélation ne peut qu'être estimée, de sorte que la fonction r(k) est : r(k) = K Σ<sub>0≤n≤N-1</sub> x(n)x(n-k) où K est une constante de calibration.</p>
<p id="p0087" num="0087">Dans les deux cas, on obtient théoriquement la valeur du pitch en procédant comme suit : r(k) est maximale en k = 0. Si le second maximum de r(k) est obtenu en k = k<sub>0</sub>, alors la valeur du voisement est F<sub>0</sub> = F<sub>e</sub>/k<sub>0</sub> où F<sub>e</sub> est la fréquence d'échantillonnage.</p>
<p id="p0088" num="0088">Cependant, cette description théorique doit être révisée en pratique.</p>
<p id="p0089" num="0089">En effet, si le signal n'est connu que sur les échantillons 0 à N-1, alors x(n-k) est pris nul tant que n n'est pas supérieur à k. Il n'y aura donc pas le même nombre de points de calcul d'une valeur k à l'autre. Par exemple, si la fourchette du pitch est prise égale à [100 Hz, 333 Hz], et ce, pour une fréquence d'échantillonnage de 10 KHz, l'indice k<sub>1</sub> correspondant à 100 Hz vaut :<br/>
k<sub>1</sub> = F<sub>e</sub>/F<sub>0</sub> = 10000/100 = 100 et celui correspondant à 333 Hz vaut k<sub>2</sub> = F<sub>e</sub>/F<sub>0</sub> = 10000/333 = 30.</p>
<p id="p0090" num="0090">Le calcul du pitch pour cette fourchette se fera donc de k = 30 à k = 100.</p>
<p id="p0091" num="0091">Si on dispose par exemple de 256 échantillons (2 trames de 12,8 ms échantillonnées à 10 KHz), le calcul de r(30) se fait de n = 30 à n = 128, soit sur 99 points et celui de r(100) de n = 100 à 128, soit sur 29 points.<!-- EPO <DP n="22"> --></p>
<p id="p0092" num="0092">Les calculs ne sont donc pas homogènes entre eux et n'ont pas la même validité.</p>
<p id="p0093" num="0093">Pour que le calcul soit correct, il faut que la fenêtre d'observation soit toujours la même quel que soit k. De sorte que si n-k est inférieure à 0, il faut avoir conservé en mémoire les valeurs passées du signal x(n), de manière à calculer la fonction r(k)sur autant de points, quel que soit k. La valeur de la constante K n'importe plus.</p>
<p id="p0094" num="0094">Ceci n'est préjudiciable au calcul du pitch que sur la première trame réellement voisée, puisque, dans ce cas, les échantillons utilisés pour le calcul sont issus d'une trame non voisée, et ne sont donc pas représentatifs du signal à traiter. Cependant, dès la troisième trame voisée consécutive, lorsqu'on travaille, par exemple, par trames de 128 points échantillonnés à 10 KHz, le calcul du pitch sera valide. Ceci suppose, de manière générale, qu'un voisement dure au minimum 3x12,8 ms, ce qui est une hypothèse réaliste. Cette hypothèse devra être prise en compte lors de l'expertise, et la durée minimale pour valider un segment voisé sera de 3x12,8 ms dans cette même expertise.</p>
<p id="p0095" num="0095">Cette fonction r(k) étant calculée, il s'agit ensuite de la seuiller. Le seuil est choisi expérimentalement, selon la dynamique des signaux traités. Ainsi, dans un exemple d'application, où la quantification se fait sur 16 bits, où la dynamique des échantillons n'excède pas ± 10000, et où les calculs se font pour N = 128 (Fréquence d'échantillonnage de 10 KHz), on a choisi Seuil = 750000. Mais rappelons que ces valeurs ne sont données qu'à titre d'exemple pour des applications particulières, et doivent être modifiées pour d'autres applications. En tout cas, cela ne change rien à la méthodologie décrite ci-dessus.<br/>
On va maintenant exposer le procédé de détection des trames de bruit.</p>
<p id="p0096" num="0096">En-dehors du noyau vocalique, les trames de signal que l'on peut rencontrer, sont de trois types :
<ul id="ul0039" list-style="none" compact="compact">
<li>1) bruit seul</li>
<li>2) bruit + fricative non voisée</li>
<li>3) bruit + respiration.</li>
</ul><!-- EPO <DP n="23"> --></p>
<p id="p0097" num="0097">L'algorithme de détection vise à détecter le début et la fin de parole à partir d'une version blanchie du signal, tandis que l'algorithme de débruitage nécessite la connaissance du spectre moyen de bruit. Pour construire les modèles de bruit qui vont permettre de blanchir le signal de parole en vue de la détection des sons non voisés comme décrit ci-dessous, et pour débruiter le signal de parole, il est évident qu'il faut détecter les trames de bruit, et les confirmer en tant que telles. Cette recherche des trames de bruit se fait parmi un nombre de trames N<sub>1</sub> défini par l'utilisateur une fois pour toutes pour son application (par exemple pour N<sub>1</sub> = 40), ces N<sub>1</sub> trames étant situées avant le noyau vocalique.</p>
<p id="p0098" num="0098">Rappelons que cet algorithme permet la mise en oeuvre de modèles de bruit, et n'est donc pas utilisé lorsque l'utilisateur juge le niveau de bruit insuffisant.</p>
<p id="p0099" num="0099">On va d'abord définir les variables aléatoires gaussiennes "positives":<br/>
Une variable aléatoire X sera dite positive lorsque Pr{ X &lt; 0 } &lt;&lt;1 .<br/>
Soit X<sub>0</sub> la variable centrée normalisée associée à X. On a :<br/>
Pr { X &lt; 0 } = Pr { X<sub>0</sub> &lt;-m/σ } où m = E[X] et σ<sup>2</sup> = E[(X-m)<sup>2</sup>].</p>
<p id="p0100" num="0100">Dès que m/σ est suffisamment grand, X peut être considérée comme positive.</p>
<p id="p0101" num="0101">Lorsque X est gaussienne, on désigne par F(x) la fonction de répartition de la loi normale, et on a :<br/>
Pr { X &lt; 0 } = F(-m/σ) pour X ∈ N(m,σ<sup>2</sup>)</p>
<p id="p0102" num="0102">Une propriété essentielle immédiate est que la somme X de N variables gaussiennes positives indépendantes X<sub>i</sub> ∈ N (m<sub>i</sub> ; σ<sub>i</sub><sup>2</sup>) reste une variable gaussienne positive :<maths id="math0004" num=""><math display="block"><mrow><msub><mrow><mtext>X = Σ</mtext></mrow><mrow><mtext>1≤i≤N</mtext></mrow></msub><msub><mrow><mtext>X</mtext></mrow><mrow><mtext>i</mtext></mrow></msub><msub><mrow><mtext>∈ N(Σ</mtext></mrow><mrow><mtext>1≤i≤N</mtext></mrow></msub><msub><mrow><mtext>m</mtext></mrow><mrow><mtext>i</mtext></mrow></msub><msub><mrow><mtext>;Σ </mtext></mrow><mrow><mtext>1≤i≤N</mtext></mrow></msub><msub><mrow><mtext>σ</mtext></mrow><mrow><mtext>i</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><mtext>)</mtext></mrow></math><img id="ib0004" file="imgb0004.tif" wi="71" he="7" img-content="math" img-format="tif"/></maths></p>
<heading id="h0006">Résultat fondamental :</heading>
<p id="p0103" num="0103">Si X = X<sub>1</sub>/X<sub>2</sub> où X<sub>1</sub> et X<sub>2</sub> sont toutes deux des variables aléatoires gaussiennes, indépendantes, telles que X<sub>1</sub> ∈ N(m<sub>1</sub> ; σ<sub>1</sub><sup>2</sup> ) et X<sub>2</sub> ∈ N( m<sub>2</sub> ; σ<sub>2</sub><sup>2</sup>), on pose m = m<sub>1</sub>/m<sub>2</sub>, α<sub>1</sub> = m<sub>1</sub>/σ<sub>1</sub>, α<sub>2</sub> = m<sub>2</sub>/σ<sub>2</sub>.<!-- EPO <DP n="24"> --></p>
<p id="p0104" num="0104">Lorsque α<sub>1</sub> et α<sub>2</sub> sont suffisamment grands pour pouvoir supposer X<sub>1</sub> et X<sub>2</sub> positives, la densité de probabilité f<sub>X</sub>(x) de X = X<sub>1</sub>/X<sub>2</sub> peut alors être approchée par :<maths id="math0005" num=""><img id="ib0005" file="imgb0005.tif" wi="157" he="37" img-content="math" img-format="tif"/></maths> où U(x) est la fonction indicatrice de <b>R</b><sup>+</sup> :<br/>
U(x) = 1 si x ≤ 0 et U(x) = 0 si x &lt; 0<br/>
Dans toute la suite, on posera :<maths id="math0006" num=""><img id="ib0006" file="imgb0006.tif" wi="159" he="32" img-content="math" img-format="tif"/></maths> de sorte que : f<sub>X</sub>(x) = f(x,m|α<sub>1</sub>,α<sub>2</sub>).U(x) Soit<maths id="math0007" num=""><math display="block"><mrow><mtext>h (x,y|α,β) = αβ </mtext><mfrac><mrow><mtext>x - y</mtext></mrow><mrow><msup><mrow><mfenced open="(" close=")"><mrow><mtext>α</mtext><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><mtext>x</mtext><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><mtext> + β</mtext><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><mtext>y</mtext><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup></mrow></mfenced></mrow><mrow><mtext>1/2</mtext></mrow></msup></mrow></mfrac></mrow></math><img id="ib0007" file="imgb0007.tif" wi="62" he="12" img-content="math" img-format="tif"/></maths> On pose P(x,y|α,β) = F[h(x,y|α,β)]. On a alors :<br/>
Pr {X &lt; x} = P(x,m|α<sub>1</sub>,α<sub>2</sub>) f(x,y|α,β) = ∂P(x,y|α,β)/∂x et f(x,y|α<sub>1</sub>,α<sub>2</sub>) = ∂P(x,m|α<sub>1</sub>,α<sub>2</sub>)/∂x<br/>
Cas particulier : α = β. On posera: f<sub>α</sub>(x,y) = f(x,y|α,β ), h<sub>α</sub>(x,y) = h(x,y|α,β) et P<sub>α</sub>(x,y) = P(x,y|α,β)<!-- EPO <DP n="25"> --></p>
<p id="p0105" num="0105">On va décrire ci-dessous quelques modèles de base de variables gaussiennes "positives" utilisables dans la suite.
<ul id="ul0040" list-style="none" compact="compact">
<li>(1) Signal à énergie déterministe : Soient les échantillons x(0),...x(N-1) d'un signal quelconque, dont l'énergie est déterministe et constante, ou approximée par une énergie déterministe ou constante.<br/>
On a donc U = Σ<sub>0≤n≤N-1</sub>x(n)<sup>2</sup> ∈ N(Nµ, 0) où<maths id="math0008" num=""><math display="block"><mrow><msub><mrow><mtext>µ = (1/N)Σ</mtext></mrow><mrow><mtext>0 ≤ n ≤ N-1</mtext></mrow></msub><msup><mrow><mtext>x(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup></mrow></math><img id="ib0008" file="imgb0008.tif" wi="49" he="7" img-content="math" img-format="tif"/></maths> Prenons comme exemple le signal x(n) = A cos(n+θ) où θ est équiréparti entre [0,2π]. Pour N suffisamment grand, on a :<br/>
(1/N) Σ<sub>0≤n≤N-1</sub>x(n)<sup>2</sup> # E[x(n)<sup>2</sup>] = A<sup>2</sup>/2. Pour N assez grand, U peut être assimilé à NA<sup>2</sup>/2 et donc à une énergie constante.</li>
<li>(2) Processus Blanc Gaussien : Soit un processus blanc et gaussien x(n) tel que σ<sub>x</sub><sup>2</sup> = E[x(n)<sup>2</sup>] . <br/>
Pour N suffisamment grand,<maths id="math0009" num=""><math display="block"><mrow><msub><mrow><mtext>U = Σ</mtext></mrow><mrow><mtext>0≤n≤ N-1</mtext></mrow></msub><msup><mrow><mtext>x(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msub><mrow><mtext> ∈ N(Nσ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msub><mrow><mtext> ; 2Nσ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>4</mtext></mrow></msup><mtext>).</mtext></mrow></math><img id="ib0009" file="imgb0009.tif" wi="75" he="7" img-content="math" img-format="tif"/></maths>
<br/>
Le paramètre α est α = (N/2)<sup>1/2</sup>
</li>
<li>(3) Processus Gaussien Bande Etroite : Le bruit x(n) est issu de l'échantillonnage du processus x(t), lui-même issu du filtrage d'un bruit blanc gaussien b(t) par un filtre passe bande h(t) : x(t) = (h∗b)(t), en supposant que la fonction de transfert du filtre h(t) est :<maths id="math0010" num=""><math display="block"><mrow><msub><mrow><mtext>H(f) = U</mtext></mrow><mrow><mtext>[-(f0-B/2,-f0+B/2]</mtext></mrow></msub><msub><mrow><mtext>(f) + U</mtext></mrow><mrow><mtext>[f0-B/2,f0+B/2]</mtext></mrow></msub><mtext>(f),</mtext></mrow></math><img id="ib0010" file="imgb0010.tif" wi="81" he="6" img-content="math" img-format="tif"/></maths><br/>
où U désigne la fonction caractéristique de l'intervalle en indice et f<sub>0</sub> la fréquence centrale du filtre.<br/>
On a donc U ∈ N( Nσ<sub>x</sub><sup>2</sup>,2σ<sub>x</sub><sup>4</sup>Σ<sub>0≤i≤N-1,0≤j≤N-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>) avec g<sub>f0,B,Te</sub>(k) = cos(2πkf<sub>0</sub>T<sub>e</sub>)sin<sub>c</sub>(πkBT<sub>e</sub>)<br/>
Le paramètre α et α = N/[2Σ<sub>0≤i≤N-1,0≤j≤N-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>]<sup>1/2</sup></li>
<li>(4) Sous-échantillonnage d'un processus gaussien : Ce modèle est plus pratique que théorique. Si la fonction de corrélation est inconnue, on sait cependant que : lim <sub>k →+ ∞</sub> Γ<sub>x</sub>(k) = 0. Donc, pour k assez grand tel que k &gt; k<sub>0</sub>, la fonction de corrélation tend vers 0. Aussi, au lieu de traiter la suite d'échantillons x(0)...x(N-1), peut-on traiter la sous-suite x(0), x(k<sub>0</sub>),x(2k<sub>0</sub>),..., et l'énergie associée à cette suite reste une variable aléatoire positive gaussienne, à condition qu'il reste dans cette sous-suite<!-- EPO <DP n="26"> --> suffisamment de points pour pouvoir appliquer les approximations dues au théorème central-limite.<br/>
Compatibilité entre énergies.<br/>
Soient C<sub>1</sub> = N(m<sub>1</sub>,σ<sub>1</sub><sup>2</sup>) et C<sub>2</sub> = N(m<sub>2</sub>,σ<sub>2</sub><sup>2</sup>)<br/>
On pose : m = m<sub>1</sub>/m<sub>2</sub>, α<sub>1</sub> = m<sub>1</sub>/σ<sub>1</sub> et α<sub>2</sub> = m<sub>2</sub>/σ<sub>2</sub>.<br/>
α<sub>1</sub> et α<sub>2</sub> sont suffisamment grands pour que les variables aléatoires de C<sub>1</sub> et C<sub>2</sub> puissent être considérées comme des variables aléatoires positives.<br/>
Soit (U,V) où (U,V) appartient à (C<sub>1</sub>UC<sub>2</sub>)X(C<sub>1</sub>UC<sub>2</sub>).<br/>
Comme précédemment, U et V sont supposées indépendantes.<br/>
On pose U ≡ V ⇔ (U,V) ∈ (C<sub>1</sub>XC<sub>1</sub>)U(C<sub>2</sub>UC<sub>2</sub>).<br/>
Soit (u,v) une valeur du couple (U,V). Si x = u/v, x est une valeur de la variable aléatoire X = U/V.<br/>
Soit s 1.<br/>
1/s &lt; x &lt; s ⇔ On décide que U ≡ V est vrai, ce qui sera la décision D = D<sub>1</sub><br/>
x &lt; 1/s ou x &gt; s ⇔ On décide que U ≡ V est faux, ce qui sera la décision D = D<sub>2</sub> Cette règle de décision est donc associée à 2 hypothèses :<br/>
H<sub>1</sub> ⇔ U ≡ V est vrai , H<sub>2</sub> ⇔ U ≡ V est faux .<br/>
On posera I = [1/s,s].<br/>
La règle de détection s'exprime encore selon :   x ∈ I ⇔ D = D<sub>1</sub>,<br/>
   x ∈ R - I ⇔ D = D<sub>2</sub></li>
</ul></p>
<p id="p0106" num="0106">On dira que u et v sont compatibles lorsque la décision D = D<sub>1</sub> sera prise.</p>
<p id="p0107" num="0107">Cette règle de décision admet une probabilité de décision correcte, dont l'expression dépendra en fait de la valeur des probabilités Pr{H<sub>1</sub>} et Pr{H<sub>2</sub>}.</p>
<p id="p0108" num="0108">Or, ces probabilités ne sont en général pas connues en pratique.</p>
<p id="p0109" num="0109">On préfère alors une approche du type Neyman-Pearson, puisque la règle de décision se réduit à deux hypothèses, en cherchant à assurer une certaine valeur fixée a priori pour la probabilité de fausse alarme qui est :<maths id="math0011" num=""><math display="block"><mrow><msub><mrow><mtext>P</mtext></mrow><mrow><mtext>fa</mtext></mrow></msub><msub><mrow><mtext> = Pr { D</mtext></mrow><mrow><mtext>1</mtext></mrow></msub><msub><mrow><mtext> | H</mtext></mrow><mrow><mtext>2</mtext></mrow></msub><msub><mrow><mtext> } = P(s,m|α</mtext></mrow><mrow><mtext>1</mtext></mrow></msub><msub><mrow><mtext>,α</mtext></mrow><mrow><mtext>2</mtext></mrow></msub><msub><mrow><mtext>) - P(1/s,m|α</mtext></mrow><mrow><mtext>1</mtext></mrow></msub><msub><mrow><mtext>,α</mtext></mrow><mrow><mtext>2</mtext></mrow></msub><mtext>)</mtext></mrow></math><img id="ib0011" file="imgb0011.tif" wi="98" he="6" img-content="math" img-format="tif"/></maths><!-- EPO <DP n="27"> --></p>
<p id="p0110" num="0110">Le choix des modèles des signaux et des bruits détermine α<sub>1</sub> et α<sub>2</sub>. Nous allons voir qu'alors m apparaît comme homogène à un rapport signal sur bruit qui sera fixé de manière heuristique. Le seuil est alors fixé de manière à assurer une certaine valeur de P<sub>fa</sub>.<br/>
Cas particulier : α<sub>1</sub> = α<sub>2</sub> = α. Il vient alors : P<sub>fa</sub> = P<sub>α</sub>(s,m) - P<sub>α</sub>(1/s,m)<br/>
Compatibilité d'un ensemble de valeurs :<br/>
Soit { u<sub>1</sub>, ... , u<sub>n</sub> } un ensemble de valeurs de variables aléatoires gaussiennes positives. On dira que ces valeurs sont compatibles entre elles, si et seulement si les u<sub>i</sub> sont compatibles 2 à 2.<br/>
Modèles du signal et du bruit utilisés par le procédé de l'invention.</p>
<p id="p0111" num="0111">Afin d'appliquer les procédures correspondant aux rappels théoriques précédents, il faut fixer un modèle du bruit et du signal. Nous utiliserons l'exemple suivant. Ce modèle est régi par les hypothèses suivantes :
<ul id="ul0041" list-style="none" compact="compact">
<li>Hypothèse 1 : Nous supposons ne pas connaître le signal utile dans sa forme, mais nous ferons l'hypothèse suivante : pour les valeurs s(0),...,s(N-1) de s(n), l'énergie S = (1/N)Σ<sub>0 ≤ n ≤ N-1</sub> s(n)<sup>2</sup> est bornée par µ<sub>s</sub><sup>2</sup>, et ce, dès que N est suffisamment grand, de sorte que :<maths id="math0012" num=""><math display="block"><mrow><msub><mrow><mtext>S = Σ</mtext></mrow><mrow><mtext>0</mtext></mrow></msub><msub><mrow><mtext>≤ </mtext></mrow><mrow><mtext>n ≤ N-1</mtext></mrow></msub><msup><mrow><mtext> s(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msub><mrow><mtext> &gt; Nµ</mtext></mrow><mrow><mtext>s</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup></mrow></math><img id="ib0012" file="imgb0012.tif" wi="56" he="7" img-content="math" img-format="tif"/></maths></li>
<li>Hypothèse 2 : Le signal utile est perturbé par un bruit additif noté x(n), que l'on suppose gaussien et en bande étroite. On suppose que le processus x(n) traité est obtenu par filtrage bande étroite d'un bruit blanc gaussien. La fonction de corrélation d'un tel processus est alors :<maths id="math0013" num=""><math display="block"><mrow><msub><mrow><mtext>Γ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msub><mrow><mtext>(k) = Γ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msub><mrow><mtext>(0)cos(2πkf</mtext></mrow><mrow><mtext>0</mtext></mrow></msub><msub><mrow><mtext>T</mtext></mrow><mrow><mtext>e</mtext></mrow></msub><msub><mrow><mtext>)sinc(πkBT</mtext></mrow><mrow><mtext>e</mtext></mrow></msub><mtext>).</mtext></mrow></math><img id="ib0013" file="imgb0013.tif" wi="66" he="6" img-content="math" img-format="tif"/></maths> <br/>
Si on considère N échantillons x(n) de ce bruit, et qu'on pose :<br/>
g<sub>f0,B,Te</sub>(k) = cos(2πkf<sub>0</sub>T<sub>e</sub>)sin<sub>c</sub>(πkBT<sub>e</sub>), on a :<maths id="math0014" num=""><math display="block"><mrow><msub><mrow><mtext>V = (1/N)Σ</mtext></mrow><mrow><mtext>0 ≤ n ≤ N-1</mtext></mrow></msub><msup><mrow><mtext> x(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msub><mrow><mtext> ∈ N(Nσ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><mtext>,</mtext><mspace linebreak="newline"/><msub><mrow><mtext> 2σ</mtext></mrow><mrow><mtext>x</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>4</mtext></mrow></msup><msub><mrow><mtext> Σ </mtext></mrow><mrow><mtext>0 ≤i≤ N 1,0≤j≤N-1</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>g</mtext></mrow></msup><msub><mrow><mtext> </mtext></mrow><mrow><mtext>f0,B,Te</mtext></mrow></msub><msup><mrow><mtext>(i-j)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><mtext>)</mtext></mrow></math><img id="ib0014" file="imgb0014.tif" wi="141" he="7" img-content="math" img-format="tif"/></maths> Le paramètre α de cette variable est α<maths id="math0015" num=""><math display="block"><mrow><msub><mrow><mtext>= N/[2 Σ</mtext></mrow><mrow><mtext>0 ≤ i ≤ N-1,0 ≤j≤N-1</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><mtext>g</mtext></mrow></msup><msub><mrow><mtext> </mtext></mrow><mrow><mtext>f0,B,Te</mtext></mrow></msub><msup><mrow><mtext>​</mtext></mrow><mrow><msup><mrow><mtext>(i-j)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup></mrow></msup><msup><mrow><mtext>]</mtext></mrow><mrow><mtext>1/2</mtext></mrow></msup></mrow></math><img id="ib0015" file="imgb0015.tif" wi="74" he="8" img-content="math" img-format="tif"/></maths>
</li>
<li>Hypothèse 3 : Les signaux s(n) et x(n) sont alors supposés indépendants. On suppose que l'indépendance entre s(n) et x(n) implique la décorrélation au sens temporel du terme, c'est-à-dire que l'on peut écrire :<!-- EPO <DP n="28"> --><maths id="math0016" num=""><math display="block"><mrow><mtext>c = </mtext><mfrac><mrow><msub><mrow><mtext>Σ</mtext></mrow><mrow><mtext>0≤n≤ N-1</mtext></mrow></msub><mtext>s(n)x(n)</mtext></mrow><mrow><msub><mrow><mtext>(Σ</mtext></mrow><mrow><mtext>0 ≤ n ≤ N-1</mtext></mrow></msub><msup><mrow><mtext>s(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msup><mrow><mtext>)</mtext></mrow><mrow><mtext>1/2</mtext></mrow></msup><msub><mrow><mtext> (Σ</mtext></mrow><mrow><mtext>0≤ n ≤ N-1</mtext></mrow></msub><msup><mrow><mtext> x(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msup><mrow><mtext>)</mtext></mrow><mrow><mtext>1/2</mtext></mrow></msup></mrow></mfrac><mtext> = 0</mtext></mrow></math><img id="ib0016" file="imgb0016.tif" wi="95" he="12" img-content="math" img-format="tif"/></maths> <br/>
Ce coefficient de corrélation n'est que l'expression dans le domaine temporel du coefficient de corrélation spatial défini par :<br/>
E[s(n)x(n)]/(E[s(n)<sup>2</sup>]E[x(n)<sup>2</sup>])<sup>1/2</sup> lorsque les processus sont ergodiques.<br/>
Soit u(n) = s(n) + x(n) le signal total, et U = Σ <sub>0 ≤ n ≤ N-1</sub> u(n)<sup>2</sup>.<br/>
On peut alors approximer U par : U = Σ<sub>0 ≤ n ≤ N-1</sub> s(n)<sup>2</sup> + Σ <sub>0 ≤ n ≤ N-1</sub>x(n)<sup>2</sup><br/>
Comme on a : Σ<sub>0≤n≤ N-1</sub> s(n)<sup>2</sup> ≥ µ<sub>s</sub><sup>2</sup>,<br/>
on aura : U ≥ Nµ<sub>s</sub><sup>2</sup> + Σ<sub>0 n ≤ N-1</sub> x(n)<sup>2</sup>.
</li>
<li>Hypothèse 4 : Comme nous supposons que le signal présente une énergie moyenne bornée, nous supposerons qu'un algorithme capable de détecter une énergie µ<sub>s</sub><sup>2</sup>, sera capable de détecter tout signal d'énergie supérieure. Compte tenu des hypothèses précédentes, on définit la classe C<sub>1</sub> comme étant la classe des énergies lorsque le signal utile est présent. Selon l'hypothèse 3, U ≥ Nµ<sub>s</sub><sup>2</sup> + Σ<sub>0≤ n ≤ N-1</sub> x(n)<sup>2</sup>, et selon l'hypothèse 4, si on détecte l'énergie Nµ<sub>s</sub><sup>2</sup> + Σ<sub>0≤ n≤ N-1</sub> x(n)<sup>2</sup>, on saura détecter aussi l'énergie totale U.<br/>
D'après l'hypothèse 2,<br/>
Nµ<sub>s</sub><sup>2</sup> + Σ<sub>0 ≤ n ≤ N-1</sub> x(n)<sup>2</sup> ∈ N(Nµ<sub>s</sub><sup>2</sup> + Nσ<sub>x</sub><sup>2</sup>,<br/>
2σ<sub>x</sub><sup>4</sup> Σ<sub>0 ≤ i ≤N-1,0≤j≤N-1</sub><sup>g</sup> <sub>f0,B,Te</sub><sup>(i-j)<sup2>2</sup2></sup>).<br/>
Donc C<sub>1</sub> = N(Nµ<sub>s</sub><sup>2</sup>+Nσ<sub>x</sub><sup>2</sup>, 2σ<sub>x</sub><sup>4</sup>Σ<sub>0≤i≤N-1,0≤j≤N-1</sub><sup>g</sup>f0,B,Te<sup>(i-j)2</sup>)<br/>
et le paramètre α de cette variable vaut<br/>
α<sub>1</sub> = N(1 + r)/[2 Σ<sub>0 ≤i≤ N-1,0 ≤ j ≤ N-1</sub><sup>g</sup> <sub>f0,B,Te</sub>(i-j)<sup>2</sup>]<sup>1/2,</sup><br/>
où r = µ<sub>s</sub><sup>2</sup>/σ<sub>x</sub><sup>2</sup> représente le rapport signal à bruit.<br/>
C<sub>2</sub> est la classe des énergies correspondant au bruit seul. D'après l'hypothèse 2, si les échantillons de bruit sont x(0),...,x(M-1),<br/>
il vient V = (1/M)Σ<sub>0≤n≤M-1</sub> x(n)<sup>2</sup> ∈ N(Mσ<sub>x</sub><sup>2</sup>,<br/>
2σ<sub>x</sub><sup>4</sup> Σ<sub>0≤i≤ M-1,0≤j≤ M-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>).<br/>
Le paramètre α de cette variable est :<br/>
α<sub>2</sub> = M/[2Σ<sub>0≤i≤M-1,0≤j≤M-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>]<sup>1/2</sup><br/>
<!-- EPO <DP n="29"> -->On a donc : C<sub>1</sub> = N(m<sub>1</sub>,σ<sub>1</sub><sup>2</sup>) et C<sub>2</sub> = N(m<sub>2</sub>,σ<sub>2</sub><sup>2</sup>),<br/>
avec : m<sub>1</sub> = Nµ<sub>s</sub><sup>2</sup> + Nσ<sub>x</sub><sup>2</sup>, m<sub>2</sub> = Mσ<sub>x</sub><sup>2</sup>,<br/>
σ<sub>1</sub> = σ<sub>x</sub><sup>2</sup>[2Σ<sub>0≤i≤N-1,0≤j≤N-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>]<sup>1/2</sup> et<br/>
σ<sub>2</sub> = σ<sub>x</sub><sup>2</sup>[2Σ<sub>0≤i≤M-1,0≤j≤M-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>]<sup>1/2.</sup><br/>
D'où m = m<sub>1</sub>/m<sub>2</sub> = (N/M)(1+r),<br/>
α<sub>1</sub> = m<sub>1</sub>/σ<sub>1</sub> = N(1-r)/[2Σ<sub>0≤i≤N-1,0≤j≤N-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>]<sup>1/2</sup> et<br/>
σ<sub>2</sub> = m<sub>2</sub>/σ<sub>2</sub> = M/[2Σ<sub>0≤i≤M-1,0≤j≤M-1</sub><sup>g</sup><sub>f0,B,Te</sub>(i-j)<sup>2</sup>]<sup>1/2</sup>.</li>
</ul></p>
<p id="p0112" num="0112">On remarquera que :
<ul id="ul0042" list-style="dash" compact="compact">
<li>si le bruit d'origine est blanc et gaussien, les hypothèses précédentes restent encore valables. Il suffit de remarquer qu'alors g<sub>f0,B,Te</sub>(k) = δ<sub>0</sub>(k). Les formules précédentes s'en trouvent simplifiées :<br/>
C<sub>1</sub> = N(m<sub>1</sub>,σ<sub>1</sub><sup>2</sup>) et C<sub>2</sub> = N(m<sub>2</sub>,σ<sub>2</sub><sup>2</sup>),<br/>
avec : m<sub>1</sub> = Nµ<sub>s</sub><sup>2</sup> + Nσ<sub>x</sub><sup>2</sup>, m<sub>2</sub> = Mσ<sub>x</sub><sup>2</sup>, σ<sub>1</sub><sup>2</sup> = 2Nσ<sub>x</sub><sup>4</sup> et σ<sub>2</sub> = 2Mσ<sub>x</sub><sup>4</sup>.<br/>
D'où m = m<sub>1</sub>/m<sub>2</sub> = (N/M)(1+r),<br/>
α<sub>1</sub> = m<sub>1</sub>/σ<sub>1</sub> = (1+r)(N/2)<sup>1/2</sup> et<br/>
α<sub>2</sub> = m<sub>2</sub>/σ<sub>2</sub> = (M/2)<sup>1/2</sup>.<br/>
Il est possible de tendre vers un tel modèle en sous-échantillonnant le bruit, et ne prenant du bruit qu'un échantillon sur k<sub>0</sub> échantillons où k<sub>0</sub> est tel que: : <b>∀</b> k &gt; k<sub>0</sub>, Γ<sub>x</sub>(k) → 0.</li>
<li>la notion de compatibilité entre énergies ne se met en place que conditionnellement à la connaissance a priori du paramètre m, donc du rapport signal à bruit r. Celui-ci peut être fixé de manière heuristique à partir de mesures préliminaires des rapports signaux à bruit que présentent les signaux que l'on ne veut pas détecter par l'algorithme de confirmation de bruit, ou fixé de manière péremptoire. La seconde solution est utilisée de préférence. En effet, l'objet de ce traitement vise à mettre en évidence, non pas toutes les trames de bruit, mais seulement quelques unes présentant une forte probabilité de n'être constituées que de bruit. On a donc tout intérêt à ce que l'algorithme soit très sélectif. Cette sélectivité s'obtient en jouant sur la valeur de la probabilité de fausse alarme que l'on décide d'assurer et qui sera donc choisie très faible (la sélectivité maximale étant établie pour P<sub>FA</sub> = 0, ce qui conduit à un seuil nul et à aucune détection de bruit, ce qui est le cas extrême et absurde). Mais cette sélectivité<!-- EPO <DP n="30"> --> s'obtient aussi par le choix de r : choisi trop grand, on risque de considérer des énergies comme représentatives du bruit, alors que ce sont des énergies de respiration, par exemple, présentant un rapport signal à bruit inférieur à r. A contrario, choisir un r trop petit peut limiter la P<sub>FA</sub> accessible, qui serait alors trop forte pour être acceptable.</li>
</ul></p>
<p id="p0113" num="0113">Compte tenu des modèles précédents, et le calcul du seuil ayant été fait, on applique alors l'algorithme suivant de détection et de confirmation de bruit, basé essentiellement sur la notion de compatibilité, telle que décrite ci-dessus.</p>
<p id="p0114" num="0114">La recherche et la confirmation des trames de bruit se fait parmi un nombre de trames N<sub>1</sub> défini par l'utilisateur une fois pour toute pour son application (par exemple N<sub>1</sub> = 40), ces trames étant situées avant le noyau vocalique. On fait l'hypothèse suivante: l'énergie des trames de bruit seul est en moyenne inférieure à celle des trames de bruit+respiration et de bruit signal. La trame présentant l'énergie minimale parmi les N<sub>1</sub> trames, est donc supposée n'être constituée que de bruit. On cherche alors toutes les trames compatibles avec cette trame au sens rappelé ci-dessus, en utilisant les modèles précités.</p>
<p id="p0115" num="0115">L'algorithme de détection de bruit va chercher, parmi un ensemble de trames T<sub>1</sub>,...,T<sub>n</sub>, celles qui peuvent être considérées comme du bruit.</p>
<p id="p0116" num="0116">Soient E(T<sub>1</sub>),...,E(T<sub>n</sub>), les énergies de ces trames, calculées sous la forme : E(T<sub>i</sub>)= Σ<sub>0≤n≤N-1</sub> u(n)<sup>2</sup> où u(n) sont les N échantillons constituant la trame T<sub>i</sub>.</p>
<p id="p0117" num="0117">On fait l'hypothèse suivante : la trame présentant l'énergie la plus faible est une trame de bruit. Soit T<sub>i0</sub> cette trame.</p>
<p id="p0118" num="0118">L'algorithme se déroule comme suit :<br/>
   L'ensemble des trames de bruit est initialisé: Bruit={T<sub>i0</sub>}<br/>
   Pour i décrivant { E(T<sub>1</sub>),...,E(T<sub>n</sub>)} - {E(T<sub>i0</sub>)}<br/>
   Faire<br/>
   Si E(T<sub>i</sub>) est compatible avec chaque élément de Bruit:<br/>
   Bruit = Bruit U {E(T<sub>i</sub>)}<br/>
   Fin pour<br/>
<!-- EPO <DP n="31"> -->Modèle Autorégressif du bruit.</p>
<p id="p0119" num="0119">Puisque l'algorithme de confirmation de bruit fournit un certain nombre de trames qui peuvent être considérées comme du bruit avec une très forte probabilité, on cherche à construire, à partir de la donnée des échantillons temporels, un modèle autorégressif du bruit.</p>
<p id="p0120" num="0120">Si x(n) désigne les échantillons de bruit, on modélise x(n) sous la forme : x(n) = Σ<sub>1 ≤ i ≤ p</sub> a<sub>i</sub> x(n-i) + b(n) , où p est l'ordre du modèle, les a<sub>i</sub>, les coefficients du modèle à déterminer et b(n) le bruit de modélisation, supposé blanc et gaussien si on suit une approche par maximum de vraisemblance.</p>
<p id="p0121" num="0121">Ce type de modélisation est largement décrit dans la littérature notamment dans "Spectrum Analysis - A Modern Perspective", de S.M. KAY et S.L. MARPLE Jr, paru dans Proceedings of the IEEE, Vol. 69, N° 11, novembre 1981..</p>
<p id="p0122" num="0122">Quant aux algorithmes de calcul du modèle, de nombreuses méthodes sont disponibles (Burg, Levinson-Durbin, Kalman, Fast Kalman...).</p>
<p id="p0123" num="0123">On utilise de préférence les méthodes du type Kalman et Fast Kalman, voir articles "Le Filtrage Adaptatif Transverse" de O.MACCHI/ M.BELLANGER paru dans la revue Traitement du Signal, Vol. 5, N° 3, 1988 et "Analyse des signaux et filtrage numérique adaptatif" de M.BELLANGER paru dans la Collection CNET-ENST, MASSON, qui présentent de très bonnes performances temps réel. Mais ce choix n'est pas le seul possible. L'ordre du filtre est par exemple choisi égal à 12, sans que cette valeur soit limitative.</p>
<heading id="h0007">Filtrage réjecteur</heading>
<p id="p0124" num="0124">Soit u(n) = s(n) + x(n) le signal total, composé du signal de parole s(n) et du bruit x(n) .<br/>
Soit le filtre H(z) = 1 - Σ<sub>1 ≤ i ≤ p</sub>a<sub>i</sub>z<sup>-i</sup>.<br/>
Appliqué au signal U(z),on obtient H(z)U(z) = H(z)S(z) + H(z)X(z).<br/>
Or : H(z)X(z) = B(z) = &gt; H(z)U(z) = H(z)S(z) + B(z)<!-- EPO <DP n="32"> --></p>
<p id="p0125" num="0125">Le filtre réjecteur H(z) blanchit le signal, de sorte que le signal en sortie de ce filtre est un signal de parole (filtré donc déformé), additionné d'un bruit généralement blanc et gaussien.</p>
<p id="p0126" num="0126">Le signal obtenu est en fait impropre à la reconnaissance, car le filtre réjecteur déforme le signal de parole originel.</p>
<p id="p0127" num="0127">Cependant, le signal obtenu étant perturbé par un bruit pratiquement blanc et gaussien, il s'ensuit que ce signal est très intéressant pour effectuer une détection du signal s(n) selon la théorie exposée ci-dessous, selon laquelle on garde le signal large bande obtenu, ou on le filtre préalablement dans la bande des fricatives, comme décrit ci-dessous (cf "détection de fricatives").</p>
<p id="p0128" num="0128">C'est pour cette raison que l'on utilise ce filtrage réjecteur après modélisation auto-régressive du bruit.<br/>
Spectre moyen de bruit.</p>
<p id="p0129" num="0129">Comme l'on dispose d'un certain nombre de trames confirmées comme étant des trames de bruit, on peut alors calculer un spectre moyen de ce bruit, de manière à implanter un filtrage spectral, du type soustraction spectrale ou filtrage de WIENER.</p>
<p id="p0130" num="0130">On choisit par exemple le filtrage de WIENER. Aussi, a-t-on besoin de calculer C<sub>XX</sub>(f) = E[|X(f)|<sup>2</sup>] qui représente le spectre moyen de bruit. Comme les calculs sont numériques, on n'a accès qu'à des FFT de signaux numériques pondérés par une fenêtre de pondération. De plus, la moyenne spatiale ne peut qu'être approximée.</p>
<p id="p0131" num="0131">Soient X<sub>1</sub>(n)...,X<sub>M</sub>(n) les FFT des M trames de bruit confirmées comme telles, ces FFT étant obtenues par pondération du signal temporel initial par une fenêtre d'apodisation adéquate.<br/>
   C<sub>XX</sub>(f) = E[|X(f)|<sup>2</sup>] est approximé par :<maths id="math0017" num=""><math display="block"><mrow><msub><mrow><mtext>^C</mtext></mrow><mrow><mtext>XX</mtext></mrow></msub><msub><mrow><mtext>(n) = M</mtext></mrow><mrow><mtext>XX</mtext></mrow></msub><msub><mrow><mtext>(n) = (1/M) Σ</mtext></mrow><mrow><mtext>1 ≤ i ≤ M+1</mtext></mrow></msub><msub><mrow><mtext> |X</mtext></mrow><mrow><mtext>i</mtext></mrow></msub><msup><mrow><mtext>(n)|</mtext></mrow><mrow><mtext>2</mtext></mrow></msup></mrow></math><img id="ib0017" file="imgb0017.tif" wi="90" he="7" img-content="math" img-format="tif"/></maths></p>
<p id="p0132" num="0132">Les performances de cet estimateur sont données par exemple dans le livre "Digital signal processing" de L.RABINER/C.M.RADER paru chez IEEE Press.</p>
<p id="p0133" num="0133">Pour ce qui est du filtre de Wiener, on rappelle ci-dessous quelques résultats classiques, explicités notamment dans l'ouvrage "Speech<!-- EPO <DP n="33"> --> Enhancement" de J.S. LIM paru aux Editions Prentice-Hall Signal Processing Series.</p>
<p id="p0134" num="0134">Soit u(t) = s(t) + x(t) le signal total observé, où s(t) désigne le signal utile (de parole) et x(t) le bruit.<br/>
Dans le domaine fréquentiel, on obtient : U(f) = S(f) + X(f), avec des notations évidentes.</p>
<p id="p0135" num="0135">On cherche alors le filtre H(f), de sorte que le signal ^S(f) = H(f)U(f) soit le plus proche de S(f) au sens de la norme L<sub>2</sub>. On cherche donc H(f) minimisant : E[|S(f)-^S(f)|<sup>2</sup>].<br/>
On démontre alors que : H(f) = 1 - (C<sub>XX</sub>(f)/C<sub>UU</sub>(f)) où<br/>
C<sub>XX</sub>(f) = E[|X(f)|<sup>2</sup>] et C<sub>UU</sub>(f) = E[|U(f)<sup>2</sup>|].</p>
<p id="p0136" num="0136">Ce type de filtre, parce que son expression est directement fréquentielle, est particulièrement intéressant à appliquer dès que la paramétrisation est basée sur le calcul du spectre.<br/>
Implémentation par corrélogramme lissé.</p>
<p id="p0137" num="0137">En pratique, C<sub>XX</sub> et C<sub>UU</sub> ne sont pas accessibles. On ne peut que les estimer. Une procédure d'estimation de C<sub>XX</sub>(f) a été décrite ci-dessus.</p>
<p id="p0138" num="0138">C<sub>UU</sub> est le spectre moyen du signal total u(n) dont l'on ne dispose que sur une seule et unique trame. De plus, cette trame doit être paramétrisée de manière à pouvoir intervenir dans le processus de reconnaissance. Il n'est donc pas question d'effectuer une moyenne quelconque du signal u(n) d'autant plus que le signal de parole est un signal particulièrement non-stationnaire.</p>
<p id="p0139" num="0139">Il faut donc construire, à partir de la donnée de u(n), une estimation de C<sub>UU</sub>(n). On utilise alors le corrélogramme lissé.</p>
<p id="p0140" num="0140">On estime alors C<sub>UU</sub>(n) par: ^C<sub>UU</sub>(k) = Σ<sub>0 ≤ n ≤ N-1</sub>F(k-n)|X(n)|<sup>2</sup><br/>
où F est une fenêtre de lissage construite comme suit, et N le nombre de points permettant le calcul des FFT : N = 256 points par exemple.<br/>
On choisit une fenêtre de lissage dans le domaine temporel :<br/>
f(n) = a<sub>0</sub> + a<sub>1</sub>cos(2πn/N) + a<sub>2</sub>cos(4πn/N). Ces fenêtres sont largement décrites dans l'article précité : "On the Use of Windows for Hamming<!-- EPO <DP n="34"> --> Analysis with the Discrete Fourier Transform de F.J.HARRIS paru dans Proceedings of the IEEE, Vol.66, N° 1, January 1978.<br/>
La fonction F(k) est alors simplement la Transformée de Fourier Discrète de f(n).<br/>
^C<sub>UU</sub>(k) = Σ <sub>0 ≤ n≤ N-1</sub> F(k-n)|X(n)|<sup>2</sup> apparaît comme une convolution discrète entre F(k) et V(k) = |X(k)<sup>2</sup>|, de sorte que ^C<sub>UU</sub> = F∗V<br/>
Soit ^c<sub>UU</sub> la FFT<sup>-1</sup> de ^C<sub>UU</sub>. ^c<sub>UU</sub>(k) = f(k)v(k) où v(k) est la FFT<sup>-1</sup> de V(k).<br/>
On calcule donc ^C<sub>UU</sub>(k) selon l'algorithme dit de corrélogramme lissé suivant :
<ul id="ul0043" list-style="none" compact="compact">
<li>(1) Calcul de v(k) par FFT inverse de V(n) = |X(n)|<sup>2</sup></li>
<li>(2) Calcul du produit f.v</li>
<li>(3) FFT directe du produit f.v qui aboutit à ^C<sub>UU</sub></li>
</ul></p>
<p id="p0141" num="0141">Plutôt que d'appliquer le même estimateur pour le bruit et le signal total, le procédé de l'invention applique l'algorithme du corrélogramme lissé précédent au spectre moyen de bruit M<sub>XX</sub>(n).<br/>
^C<sub>XX</sub>(k) est donc obtenu par :<maths id="math0018" num=""><math display="block"><mrow><msub><mrow><mtext>^C</mtext></mrow><mrow><mtext>XX</mtext></mrow></msub><msub><mrow><mtext>(k) = Σ </mtext></mrow><mrow><mtext>0 ≤ n ≤ N-1</mtext></mrow></msub><msub><mrow><mtext>F(k-n)|M</mtext></mrow><mrow><mtext>XX</mtext></mrow></msub><msup><mrow><mtext>(n)|</mtext></mrow><mrow><mtext>2</mtext></mrow></msup></mrow></math><img id="ib0018" file="imgb0018.tif" wi="73" he="7" img-content="math" img-format="tif"/></maths> Le filtre de Wiener H(f) est donc estimé par la suite des valeurs :<br/>
^H(n) = 1 - (^C<sub>XX</sub>(n)/^C<sub>UU</sub>(n))<br/>
Le signal débruité a pour spectre : ^S(n) = ^H(n)U(n)<br/>
Une FFT<sup>-1</sup> peut permettre, éventuellement, de récupérer le signal temporel débruité.</p>
<p id="p0142" num="0142">Le spectre débruité ^S(n) obtenu est le spectre utilisé pour la paramétrisation en vue de la reconnaissance de la trame.</p>
<p id="p0143" num="0143">Pour effectuer la détection des signaux non voisés, on utilise également les procédures décrites ci-dessus, puisque l'on dispose d'énergies représentatives du bruit (voir ci-dessus l'algorithme de détection du bruit).<br/>
Détection d'activité.<br/>
Soient C<sub>1</sub> = N(m<sub>1</sub>,σ<sub>1</sub><sup>2</sup>) et C<sub>2</sub> = N(m<sub>2</sub>,σ<sub>2</sub><sup>2</sup>) .<br/>
Puisqu'on dispose d'un algorithme capable de mettre en évidence des valeurs de variables aléatoires appartenant à la même classe, de la classe C<sub>2</sub> (par<!-- EPO <DP n="35"> --> exemple), et ce, avec une très faible probabilité d'erreur, il devient alors beaucoup plus facile de décider, par observation du couple U/V, si U appartient à la classe C<sub>1</sub> ou à la classe C<sub>2</sub>.<br/>
Il y a donc deux hypothèses distinctes possibles,<br/>
H<sub>1</sub> ⇔ U ∈ C<sub>1</sub> et H<sub>2</sub> ⇔U ∈ C<sub>2</sub><br/>
correspondant à deux décisions possibles distinctes :<br/>
D = D<sub>1</sub> ⇔ Décision U ∈ C<sub>1</sub> , notée "U ∈ C<sub>1</sub>"<br/>
D = D<sub>2</sub> ⇔ Décision U ∈ C<sub>2</sub> , notée "U ∈ C<sub>2</sub>"<br/>
Décision optimale.<br/>
On pose : m = m<sub>1</sub>/m<sub>2</sub>, α<sub>1</sub> = m<sub>1</sub>/σ<sub>1</sub> et α<sub>2</sub> = m<sub>2</sub>/σ<sub>2</sub>.<br/>
Soit un couple (U,V) de variables aléatoires, où on suppose que V ∈ C<sub>2</sub> et U ∈ C<sub>1</sub>UC<sub>2</sub> . U et V sont supposées indépendantes. En observant la variable X = U/V , on cherche à prendre une décision entre les deux suivantes possibles : "C<sub>1</sub>XC<sub>2</sub>" , C<sub>2</sub>XC<sub>2</sub>".<br/>
On a donc deux hypothèses : H<sub>1</sub> ⇔ U ∈ C<sub>1</sub>, H<sub>2</sub> ⇔ U ∈ C<sub>2</sub>.<br/>
Soit p = Pr { U ∈ C<sub>1</sub> } .<br/>
La règle de décision s'exprime sous la forme suivante :<br/>
x &gt; s ⇔ U ∈ C<sub>1</sub>, x &lt; s ⇔ U ∈ C<sub>2</sub><br/>
La probabilité de décision correcte P<sub>c</sub>(s,m|α<sub>1</sub>,α<sub>2</sub>) est alors :<br/>
P<sub>c</sub>(s,m|α<sub>1</sub>,α<sub>2</sub>) = p[1-P(s,m|α<sub>1</sub>,α<sub>2</sub>)] + (1-p)P(s,1|α<sub>2</sub>,α<sub>2</sub>)<br/>
où p = Pr{ U ∈ C<sub>1</sub>}.<br/>
Le seuil optimal est celui pour lequel P<sub>c</sub>(s,m|α<sub>1</sub>,α<sub>2</sub>) est maximal. On résout donc l'équation :<br/>
∂P<sub>c</sub>(s,m|α<sub>1</sub>,α<sub>2</sub>)/∂s = 0 ⇔ pf(s,m|α<sub>1</sub>,α<sub>2</sub>) - (1-p)f(s,1|α<sub>2</sub>,α<sub>2</sub>) = 0<br/>
Approche type Neyman-Pearson<br/>
Dans l'approche précédente, on supposait connaître la probabilité p. Lorsque cette probabilité est inconnue, on peut utiliser une approche type Neyman-Pearson.<br/>
On définit les probabilités de non détection et de fausse alarme :<br/>
P<sub>nd</sub> = { x &lt; s | H<sub>1</sub> } et P<sub>fa</sub> = { x &gt; s | H<sub>2</sub> }<br/>
On a : P<sub>nd</sub> = P(s,1|α<sub>2</sub>,α<sub>2</sub>) et P<sub>fa</sub> = 1-P(s,m|α<sub>1</sub>,α<sub>2</sub>)<br/>
On se fixe alors P<sub>fa</sub> ou P<sub>nd</sub>, pour déterminer la valeur du seuil.<!-- EPO <DP n="36"> --></p>
<p id="p0144" num="0144">Afin d'appliquer la détection d'activité telle que décrite ci-dessus au cas de la parole, il est nécessaire d'établir un modèle énergétique des signaux non voisés compatible avec les hypothèses qui président au bon fonctionnement des procédés décrits ci-dessus. On cherche donc un modèle des énergies des fricatives non voisées /F/, /S/, /CH/ et des plosives non voisées /P/, /T/, /Q/, qui permettent d'obtenir des énergies dont la loi statistique est approximativement une gaussienne.</p>
<heading id="h0008">Modèle 1.</heading>
<p id="p0145" num="0145">Les sons /F/,/S/,/CH/ se situent spectralement dans une bande de fréquence qui s'étale d'environ 4 KHz à plus de 5KHz. Les sons /P/, /T/, /Q/ en tant que phénomènes courts dans le temps, s'étalent sur une bande plus large. Dans la bande choisie, on suppose que le spectre de ces sons fricatifs est relativement plat, de sorte que le signal fricatif dans cette bande peut se modéliser par un signal bande étroite. Ceci peut être réaliste dans certains cas pratiques sans avoir recours au blanchiment décrit ci-dessus. Cependant, dans la plupart des cas, il est judicieux de travailler sur un signal blanchi de manière à assurer un modèle de bruit à bande étroite convenable.</p>
<p id="p0146" num="0146">En acceptant un tel modèle de bruit à bande étroite, on a donc à traiter le rapport de deux énergies qui peut être traité par les procédés décrits ci-dessus.</p>
<p id="p0147" num="0147">Soient s(n) le signal de parole dans la bande étudiée et x(n) le bruit dans cette même bande. Les signaux s(n) et x(n) sont supposés indépendants.</p>
<p id="p0148" num="0148">La classe C<sub>1</sub> correspond à l'énergie du signal total u(n) = s(n) + x(n) observé sur N points, la classe C<sub>2</sub> correspond à l'énergie V du bruit seul observé sur M points.</p>
<p id="p0149" num="0149">Les signaux étant gaussiens et indépendants, u(n) est un signal lui-même gaussien, de sorte que :<br/>
U = Σ <sub>0 ≤ n≤ N-1</sub> u(n)<sup>2</sup> ∈ N(Nσ<sub>u</sub><sup>2</sup> , 2σ<sub>u</sub><sup>4</sup>Σ <sub>0 ≤ i ≤ N-1 , 0 ≤ j</sub> ≤N-1<sup>g</sup><sub>f0,B</sub>(i-j)<sup>2</sup>)<br/>
De même :<br/>
<!-- EPO <DP n="37"> -->V = Σ <sub>0 ≤ n ≤ M-1</sub>y(n)<sup>2</sup> ∈ N(Mσ<sub>x</sub><sup>2</sup>, 2σ<sub>x</sub><sup>2</sup>Σ<sub>0 ≤i≤ M-1,0 ≤j≤ M-1</sub> g<sub>f0,B</sub>(1-j)<sup>2</sup>), où y(n) désigne, on le rappelle, une autre valeur du bruit x(n) sur une tranche temporelle différente de celle où on observe u(n).<br/>
On peut donc appliquer les résultats théoriques ci-dessus avec :<br/>
m = (N/M)σ<sub>u</sub>2/σ<sub>x</sub><sup>2</sup>,<br/>
α<sub>1</sub> = N/(2Σ<sub>0 ≤ i ≤ N-1 , 0 ≤ j ≤ N-1</sub> g<sub>f0,B</sub>(i-j)<sup>2</sup>)<sup>1/2</sup>),<br/>
α<sub>2</sub> = M/(2Σ<sub>0 ≤i≤ M-1,0 ≤j≤ M-1</sub> g<sub>f0,B</sub>(i-j)<sup>2</sup>)<sup>1/2</sup>)</p>
<p id="p0150" num="0150">On remarquera que m = (N/M)(1+r) où r = σ<sub>s</sub><sup>2</sup>/σ<sub>x</sub><sup>2</sup> désigne finalement le rapport signal sur bruit.</p>
<p id="p0151" num="0151">Pour achever complètement la résolution de ce problème, il faut pouvoir connaître le rapport signal sur bruit r ainsi que la probabilité de présence p du signal utile. Ce qui paraît être ici une limitation est commun aux deux autres modèles traités ci-dessous.</p>
<heading id="h0009">Modèle 2.</heading>
<p id="p0152" num="0152">Comme dans le cas du modèle 1, on cherche à détecter uniquement les fricatives non voisées, donc à détecter un signal dans une bande particulière.</p>
<p id="p0153" num="0153">Ici, le modèle du signal fricatif n'est pas le même que précédemment. On suppose que les fricatives présentent l'énergie minimale µ<sub>s</sub><sup>2</sup> = Σ <sub>0 ≤ n ≤ N-1</sub> s(n)<sup>2</sup> connue, grâce par exemple à un apprentissage, ou estimée.</p>
<p id="p0154" num="0154">Le son voisé est indépendant du bruit x(n) qui est ici gaussien bande étroite.</p>
<p id="p0155" num="0155">Si y(n), pour n compris entre 0 et M-1, désigne une autre valeur du bruit x(n) sur une tranche temporelle distincte de celle où est observé le signal total u(n) = s(n) + x(n), on aura :<br/>
V = Σ <sub>0 ≤ n ≤ M-1</sub> y(n)<sup>2</sup> ∈ N( Mσ<sub>x</sub><sup>2</sup>,2Tr(C<sub>x,M</sub>2)) où C<sub>x,M</sub> désigne la matrice de corrélation du M-uplet : <sup>t</sup> <sub>(y(0),...,y(M-1)</sub>)</p>
<p id="p0156" num="0156">En ce qui concerne l'énergie U = Σ 0 ≤ n ≤ N-1 u(n)<sup>2</sup> du signal total, celle-ci peut s'exprimer selon :<br/>
U = Nµ<sub>s</sub><sup>2</sup> + Σ <sub>0 ≤ n≤ N-1</sub>x(n)<sup>2</sup><!-- EPO <DP n="38"> --></p>
<p id="p0157" num="0157">Ce résultat s'obtient en supposant que l'indépendance entre s(n) et x(n) s'exprime par la décorrélation au sens temporel du terme, c'est-à -dire que l'on peut écrire :<maths id="math0019" num=""><math display="block"><mrow><mtext>c = </mtext><mfrac><mrow><mtext>Σ 0 ≤ n ≤ N-1s(n)x(n)</mtext></mrow><mrow><msub><mrow><mtext>(Σ </mtext></mrow><mrow><mtext>0 ≤ n ≤ N-1</mtext></mrow></msub><mtext> </mtext><msup><mrow><mtext>​</mtext></mrow><mrow><msup><mrow><mtext>s(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msup><mrow><mtext>)</mtext></mrow><mrow><mtext>1/2</mtext></mrow></msup></mrow></msup><msub><mrow><mtext> (Σ </mtext></mrow><mrow><mtext>0 ≤ n ≤ N-1</mtext></mrow></msub><mtext> </mtext><msup><mrow><mtext>​</mtext></mrow><mrow><msup><mrow><mtext>x(n)</mtext></mrow><mrow><mtext>2</mtext></mrow></msup><msup><mrow><mtext>)</mtext></mrow><mrow><mtext>1/2</mtext></mrow></msup></mrow></msup></mrow></mfrac><mtext> = 0</mtext></mrow></math><img id="ib0019" file="imgb0019.tif" wi="99" he="13" img-content="math" img-format="tif"/></maths></p>
<p id="p0158" num="0158">Comme V' = Σ <sub>0 ≤ n ≤ N-1</sub> x(n)<sup>2</sup> ∈ N( Nσ<sub>x</sub><sup>2</sup>, 2Tr(C<sub>x,N</sub><sup>2</sup>) ) où C<sub>x,N</sub> désigne la matrice de corrélation du N-uplet : <sup>t</sup> (x(0),...,x(N-1)), on a alors:<br/>
U = µ<sub>s</sub><sup>2</sup> µ<sub>s</sub><sup>2</sup> <sub>0 ≤ n ≤ N-1</sub> x(n)<sup>2</sup> ∈ N( N+ Σ + Nσ<sub>x</sub><sup>2</sup> , 2Tr(C<sub>x,N</sub><sup>2</sup>) ) On peut donc appliquer les résultats théoriques ci-dessus avec :<br/>
C<sub>1</sub> = N( Nµ<sub>s</sub><sup>2</sup> + Nσ<sub>x</sub><sup>2</sup> , 2Tr(C<sub>x,N</sub><sup>2</sup>) ), C<sub>2</sub> = N( Mσ<sub>x</sub><sup>2</sup> , 2Tr(C<sub>x,M</sub><sup>2</sup>) ) m = (N/M)(1 + µ<sub>s</sub><sup>2</sup>/σ<sub>x</sub><sup>2</sup>) ,<br/>
α<sub>1</sub> = N(µ<sub>s</sub><sup>2</sup> + σ<sub>x</sub><sup>2</sup>)/(2Tr(C<sub>x,N</sub><sup>2</sup>))<sup>1/2</sup>, α<sub>2</sub> = Mσ<sub>x</sub><sup>2</sup>/(2Tr(C<sub>x,M</sub><sup>2</sup>))<sup>1/2</sup>,<br/>
On remarquera que m = (N/M)(1+r) où r = µ<sub>s</sub><sup>2</sup>/σ<sub>x</sub><sup>2</sup> désigne finalement le rapport signal sur bruit. La même remarque que celle du Modèle 1, concernant le rapport signal sur bruit r et la probabilité p de présence du signal utile, est valable ici.</p>
<heading id="h0010">Modèle 3.</heading>
<p id="p0159" num="0159">Dans ce modèle, on cherche à effectuer une détection de tous les signaux non voisés, avec une hypothèse bruit blanc gaussien.</p>
<p id="p0160" num="0160">Le modèle signal bande étroite utilisé précédemment, n'est donc plus valable. On ne peut donc que supposer avoir affaire à un signal large bande dont on connaît l'énergie minimale µ <sub><i>S</i></sub><sup>2</sup>.<br/>
Il vient donc :<br/>
C<sub>1</sub> = N( Nµ<sub>s</sub><sup>2</sup> + Nσ<sub>x</sub><sup>2</sup>, 2Nσ<sub>x</sub><sup>4</sup>) , C<sub>2</sub> = N( Mσ<sub>x</sub><sup>2</sup> , 2Mσ<sub>x</sub><sup>4</sup> )<br/>
m = (N/M)(1+r), avec r = µ<sub>s</sub><sup>2</sup>/σ<sub>x</sub><sup>2</sup><br/>
α<sub>1</sub> = (1+r)(N/2)<sup>1/2</sup> , α<sub>2</sub> = (M/2)<sup>1/2</sup>,</p>
<p id="p0161" num="0161">Pour utiliser ce modèle, le bruit doit être blanc gaussien. Si le bruit d'origine n'est pas blanc, on peut s'approcher de ce modèle en sous-échantillonnant en fait le signal observé, c'est-à-dire en ne considérant qu'un échantillon sur 2, 3, voire plus, suivant la fonction d'autocorrélation du bruit,<!-- EPO <DP n="39"> --> et en supposant que le signal de parole ainsi sous-échantillonné présente encore une énergie décelable. Mais on peut aussi, et cela est préférable, utiliser cet algorithme sur un signal blanchi par filtre réjecteur, puisqu'alors le bruit résiduel est approximativement blanc et gaussien.</p>
<p id="p0162" num="0162">Les remarques précédentes concernant la valeur a priori du rapport signal à bruit et de la probabilité de présence du signal utile, restent encore et toujours valables.</p>
<heading id="h0011">Algorithmes de détection des sons non voisés.</heading>
<p id="p0163" num="0163">En utilisant les modèles précédents, on expose ci-dessous deux algorithmes de détection des sons non voisés.</p>
<heading id="h0012">Algorithme 1 :</heading>
<p id="p0164" num="0164">Disposant d'énergies représentatives de bruit, on peut moyenner ces énergies de sorte que l'on obtient une énergie de "référence" de bruit. Soir E<sub>0</sub> cette énergie. Pour N<sub>3</sub> trames T<sub>1</sub>, ..., T<sub>n</sub> qui précèdent la première trame voisée, on procède comme suit :</p>
<p id="p0165" num="0165">Soient E(T<sub>1</sub>), ..., E(T<sub>n</sub>), les énergies de ces trames, calculées sous la forme E(T<sub>i</sub>) = Σ<sub>0≤n≤N-1</sub>u(n)<sup>2</sup> où u(n) sont les N échantillons constituant la trame T<sub>i</sub>.<br/>
   Pour E(T<sub>i</sub>) décrivant {E(T<sub>1</sub>), ..., E(T<sub>n</sub>)}<br/>
   Faire</p>
<p id="p0166" num="0166">Si E(T<sub>i</sub>) est compatible avec E<sub>0</sub> (Décision sur la valeur de E(T<sub>i</sub>)/E<sub>0</sub>).<br/>
   Détection sur la trame T<sub>i</sub>.<br/>
   Fin pour.</p>
<heading id="h0013">Algorithme 2 :</heading>
<p id="p0167" num="0167">Cet algorithme est une variante du précédent. On utilise pour E<sub>0</sub>, soit l'énergie moyenne des trames détectées comme du bruit, soit la valeur de l'énergie la plus faible de toutes les trames détectées comme du bruit.</p>
<p id="p0168" num="0168">Puis on procède comme suit :<br/>
Pour E(T<sub>i</sub>) décrivant {E(T<sub>1</sub>), ..., E(T<sub>n</sub>)}.<br/>
Faire<!-- EPO <DP n="40"> --></p>
<p id="p0169" num="0169">Si E(T<sub>i</sub>) est compatible avec E<sub>0</sub> (Décision sur la valeur de E(T<sub>i</sub>)/E<sub>0</sub>).</p>
<p id="p0170" num="0170">Détection sur la trame T<sub>i</sub>.<br/>
   Sinon E<sub>0</sub> = E(T<sub>i</sub>).<br/>
Fin pour</p>
<p id="p0171" num="0171">Le rapport signal à bruit r peut être estimé ou fixé de manière heuristique, à condition d'effectuer quelques mesures expérimentales préalables, caractéristiques du domaine d'application, de manière à fixer un ordre de grandeur du rapport signal sur bruit que présentent les fricatives dans la bande choisie.</p>
<p id="p0172" num="0172">La probabilité p de présence de la parole non voisée est, elle-aussi, une donnée heuristique, qui module la sélectivité de l'algorithme, au même titre d'ailleurs que le rapport signal à bruit. Cette donnée peut être estimée suivant le vocabulaire utilisé et le nombre de trames sur lequel se fait la recherche de sons non voisés.</p>
<heading id="h0014">Simplification dans le cas d'un milieu faiblement bruité.</heading>
<p id="p0173" num="0173">Dans le cas d'un milieu faiblement bruité, pour lequel aucun modèle de bruit n'a été déterminé, en vertu des simplifications proposées ci-dessus, la théorie rappelée précédemment justifie l'utilisation d'un seuil, qui n'est pas lié de manière bijective au rapport signal à bruit, mais qui sera fixé de manière totalement empirique.</p>
<p id="p0174" num="0174">Une alternative intéressante pour des milieux où le bruit est négligeable, est de se contenter de la détection de voisement, d'éliminer la détection des sons non voisés, et de fixer le début de parole à quelques trames avant le noyau vocalique (environ 15 trames) et la fin de parole à quelques trames après la fin du noyau vocalique (environ 15 trames).</p>
</description><!-- EPO <DP n="41"> -->
<claims id="claims01" lang="fr">
<claim id="c-fr-01-0001" num="0001">
<claim-text>Procédé de détection de la parole pour l'utilisation dans un système de reconnaissance vocale dans des signaux bruités, caractérisé par le fait qu'après avoir effectué dans ces signaux la détection d'au moins une trame voisée, on recherche des trames de bruit précédant cette trame voisée, on construit un modèle autorégressif de bruit et un spectre moyen de bruit, on blanchit par filtre réjecteur et on débruite par débruiteur spectral les trames précédant le voisement, on recherche le début effectif de la parole dans ces trames blanchies, on extrait des trames débruitées comprises entre le début effectif de la parole et la première trame voisée les vecteurs acoustiques utilisés par le système de reconnaissance vocale, tant que des trames voisées sont détectées, celles-ci sont débruitées puis paramétrisées en vue de leur reconnaissance, lorsqu'on ne détecte plus de trames voisées, on recherche la fin effective de la parole dans les trames blanchies qui suivent la dernière trame voisée, on débruite puis on paramétrise les trames comprises entre la dernière trame voisée et la fin effective de la parole.</claim-text></claim>
<claim id="c-fr-01-0002" num="0002">
<claim-text>Procédé selon la revendication 1, caractérisé par le fait que le blanchiment réalisé par filtrage réjecteur est calculé à partir du modèle autorégressif du bruit.</claim-text></claim>
<claim id="c-fr-01-0003" num="0003">
<claim-text>Procédé selon la revendication 2, caractérisé par le fait que lorsque la dernière trame de parole a été paramétrisée, on réinitialise tous les paramètres de traitement.</claim-text></claim>
<claim id="c-fr-01-0004" num="0004">
<claim-text>Procédé selon l'une des revendications précédentes, caractérisé par le fait que les trames de signaux à traiter sont traitées par transformées de Fourier, et que lorsque deux transformées sont consécutives dans le temps, elles sont calculées sur trois trames consécutives avec recouvrement d'une trame.<!-- EPO <DP n="42"> --></claim-text></claim>
<claim id="c-fr-01-0005" num="0005">
<claim-text>Procédé selon l'une des revendications précédentes, caractérisé par le fait que la détection de voisement se fait, pour chaque trame, à l'aide de la valeur du "pitch" associé à cette trame.</claim-text></claim>
<claim id="c-fr-01-0006" num="0006">
<claim-text>Procédé selon la revendication 5, caractérisé par le fait que l'on valide le calcul du pitch après avoir reconnu au moint trois trames voisées, soit 3 x 12,8 ms.</claim-text></claim>
<claim id="c-fr-01-0007" num="0007">
<claim-text>Procédé selon la revendication 5 ou 6, caractérisé par le fait que le calcul du pitch est fait à partir de la corrélation du signal avec sa forme retardée.</claim-text></claim>
<claim id="c-fr-01-0008" num="0008">
<claim-text>Procédé selon l'une des revendications 5 à 7, caractérisé par le fait que la détection de sons non voisés se fait par seuillage.</claim-text></claim>
<claim id="c-fr-01-0009" num="0009">
<claim-text>Procédé selon l'une des revendications précédentes, caractérisé par le fait que pour détecter de la parole non voisée, on examine la distance entre le noyau vocalique et le bloc fricatif, et la taille de ce bloc fricatif.</claim-text></claim>
<claim id="c-fr-01-0010" num="0010">
<claim-text>Procédé selon l'une des revendications précédentes, caractérisé par le fait que le spectre moyen de bruit est obtenu par filtrage de Wiener.</claim-text></claim>
<claim id="c-fr-01-0011" num="0011">
<claim-text>Procédé selon la revendication 10, caractérisé par le fait que l'on applique l'algorithme du corrélogramme lissé au spectre moyen de bruit.</claim-text></claim>
<claim id="c-fr-01-0012" num="0012">
<claim-text>Procédé selon la revendication 1, caractérisé en outre par le fait qu'il est déterminé si le milieu est bruité ou peu bruité, et que dans le dernier cas on effectue uniquement une<!-- EPO <DP n="43"> --> détection de trames voisées, et une détection de noyau vocalique auquel on attache un intervalle de confiance.</claim-text></claim>
</claims><!-- EPO <DP n="44"> -->
<claims id="claims02" lang="de">
<claim id="c-de-01-0001" num="0001">
<claim-text>Verfahren zur Erfassung der Sprache in verrauschten Signalen zur Verwendung in einem Stimmerkennungssystem, dadurch gekennzeichnet, daß nach der Ausführung der Erfassung wenigstens eines stimmhaften Rahmens in diesen Signalen Rauschrahmen, die diesem stimmhaften Rahmen folgen, gesucht werden, ein autoregressives Rauschmodell und ein mittleres Rauschspektrum konstruiert werden, mittels eines Zurückweisungsfilters eine Reduzierung vorgenommen wird und die der Stimmhaftigkeit vorhergehenden Rahmen durch eine spektrale Rauschentfernungseinrichtung von Rauschen befreit werden, der effektive Anfang der Sprache in diesen reduzierten Rahmen gesucht wird, aus den vom Rauschen befreiten Rahmen, die zwischen dem effektiven Anfang der Sprache und dem ersten stimmhaften Rahmen enthalten sind, die akustischen Vektoren extrahiert werden, die vom Stimmerkennungssystem verwendet werden, solange die stimmhaften Rahmen erfaßt werden, wobei diese vom Rauschen befreit werden und dann im Hinblick auf ihre Erkennung parametrisiert werden, wenn keine stimmhaften Rahmen mehr erfaßt werden, das effektive Ende der Sprache in den reduzierten Rahmen, die dem letzten stimmhaften Rahmen folgen, gesucht wird, und die zwischen dem letzten stimmhaften Rahmen und dem effektiven Ende der Sprache enthaltenen Rahmen vom Rauschen befreit und dann parametrisiert werden.</claim-text></claim>
<claim id="c-de-01-0002" num="0002">
<claim-text>Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Reduzierung, die durch Zurückweisungsfilterung ausgeführt wird, anhand des autoregressiven Rauschmodells berechnet wird.</claim-text></claim>
<claim id="c-de-01-0003" num="0003">
<claim-text>Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß dann, wenn der letzte Sprachrahmen parametrisiert worden ist, sämtliche Verarbeitungsparameter neu initialisiert werden.<!-- EPO <DP n="45"> --></claim-text></claim>
<claim id="c-de-01-0004" num="0004">
<claim-text>Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die zu verarbeitenden Signalrahmen durch Fourier-Transformationen verarbeitet werden, und, wenn zwei Transformationen zeitlich aufeinanderfolgen, diese für drei aufeinanderfolgende Rahmen mit Überlappung eines Rahmens berechnet werden.</claim-text></claim>
<claim id="c-de-01-0005" num="0005">
<claim-text>Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Erfassung der Stimmhaftigkeit für jeden Rahmen mit Hilfe des Tonhöhenwertes ("Pitch"-Wertes), der diesem Rahmen zugeordnet ist, erfolgt.</claim-text></claim>
<claim id="c-de-01-0006" num="0006">
<claim-text>Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die Berechnung der Tonhöhe validiert wird, nachdem wenigstens drei stimmhafte Rahmen erkannt worden sind, also nach 3 × 12,8 ms.</claim-text></claim>
<claim id="c-de-01-0007" num="0007">
<claim-text>Verfahren nach Anspruch 5 oder 6, dadurch gekennzeichnet, daß die Berechnung der Tonhöhe anhand der Korrelation des Signals mit seiner verzögerten Form erfolgt.</claim-text></claim>
<claim id="c-de-01-0008" num="0008">
<claim-text>Verfahren nach einem der Ansprüche 5 bis 7, dadurch gekennzeichnet, daß die Erfassung von nicht stimmhaften Tönen durch Vergleichen mit Schwellenwerten erfolgt.</claim-text></claim>
<claim id="c-de-01-0009" num="0009">
<claim-text>Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß zur Erfassung von nicht stimmhafter Sprache der Abstand zwischen dem Vokalkern und dem Frikativblock und die Größe dieses Frikativblocks untersucht werden.</claim-text></claim>
<claim id="c-de-01-0010" num="0010">
<claim-text>Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß das mittlere Rauschspektrum durch Wiener-Filterung erhalten wird.</claim-text></claim>
<claim id="c-de-01-0011" num="0011">
<claim-text>Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß auf das mittlere Rauschspektrum der Algorithmus des gleichmäßigen Korrelogramms angewendet wird.<!-- EPO <DP n="46"> --></claim-text></claim>
<claim id="c-de-01-0012" num="0012">
<claim-text>Verfahren nach Anspruch 1, außerdem dadurch gekennzeichnet, daß bestimmt wird, ob das Medium verrauscht oder wenig verrauscht ist, und daß im letzteren Fall ausschließlich eine Erfassung stimmhafter Rahmen und eine Erfassung des Vokalkerns, dem ein Vertrauensintervall hinzugefügt wird, ausgeführt werden.</claim-text></claim>
</claims><!-- EPO <DP n="47"> -->
<claims id="claims03" lang="en">
<claim id="c-en-01-0001" num="0001">
<claim-text>Method of detecting speech, for use in a voice recognition system, in noisy signals, characterized in that, after having carried out, in these signals, the detection of at least one voiced frame, noise frames preceding this voiced frame are sought, an autoregressive model of noise and a mean noise spectrum are constructed, the frames preceding the voicing are bleached by rejector filter and noise is removed by spectral noise removal, the actual start of speech is sought in these bleached frames, from the noise-removed frames lying between the actual start of speech and the first voiced frame are extracted the acoustic vectors used by the voice recognition system, as long as voiced frames are detected, the latter have the noise removed then are parameterized for the purpose of recognizing them, when no more voiced frames are detected, the actual end of speech is sought in the bleached frames following the last voiced frame, the frames lying between the last voiced frame and the actual end of speech have the noise removed and are then parameterized.</claim-text></claim>
<claim id="c-en-01-0002" num="0002">
<claim-text>Method according to Claim 1, characterized in that the bleaching carried out by a rejector filtering is calculated on the basis of the autoregressive model of the noise.</claim-text></claim>
<claim id="c-en-01-0003" num="0003">
<claim-text>Method according to Claim 2, characterized in that, when the last speech frame has been parameterized, all the processing parameters are reinitialized.<!-- EPO <DP n="48"> --></claim-text></claim>
<claim id="c-en-01-0004" num="0004">
<claim-text>Method according to one of the preceding claims, characterized in that the frames of signals to be processed are processed by Fourier transforms, and in that, when two transforms are consecutive in time, they are calculated over three consecutive frames with an overlap of one frame.</claim-text></claim>
<claim id="c-en-01-0005" num="0005">
<claim-text>Method according to one of the preceding claims, characterized in that the detection of voicing is done, for each frame, with the aid of the value of the pitch associated with this frame.</claim-text></claim>
<claim id="c-en-01-0006" num="0006">
<claim-text>Method according to Claim 5, characterized in that the calculation of the pitch is validated after having recognized at least three voiced frames, i.e. 3 x 12.8 ms.</claim-text></claim>
<claim id="c-en-01-0007" num="0007">
<claim-text>Method according to Claim 5 or 6, characterized in that the calculation of the pitch is done from the correlation of the signal with its delayed form.</claim-text></claim>
<claim id="c-en-01-0008" num="0008">
<claim-text>Method according to one of Claims 5 to 7, characterized in that the detection of unvoiced sounds is done by thresholding.</claim-text></claim>
<claim id="c-en-01-0009" num="0009">
<claim-text>Method according to one of the preceding claims, characterized in that, in order to detect unvoiced speech, the distance between the vocal kernel and the fricative block, and the size of this fricative block, are examined.</claim-text></claim>
<claim id="c-en-01-0010" num="0010">
<claim-text>Method according to one of the preceding claims, characterized in that the mean noise spectrum is obtained by Wiener filtering.</claim-text></claim>
<claim id="c-en-01-0011" num="0011">
<claim-text>Method according to Claim 10, characterized in that the algorithm of the smooth correlogram is applied to the mean noise spectrum.</claim-text></claim>
<claim id="c-en-01-0012" num="0012">
<claim-text>Method according to Claim 1, characterized in that, furthermore, it is determined whether the medium is noisy or slightly noisy, and in that, in the latter case, only a detection of voiced frames, and a vocal kernel detection to which a confidence interval is attached, are carried out.</claim-text></claim>
</claims>
</ep-patent-document>
