Brevet FR2759824A1 — publié le 19980821

DESCRIPTION L'invention concerne un système de séparation de sources pour traiter des signaux d'entrée formés par des mélanges de signaux primaires issus des sources et pour estimer les signaux primaires, le système comprenant un premier sous-ensemble de séparation de sources qui, à l'aide de coefficients de séparation délivre des estimations des signaux primaires, un second sous- ensemble déterminant adaptativement les coefficients de séparation. Il existe des systèmes qui reçoivent sur leurs entrées des signaux qui se présentent sous la forme de signaux de mélange formés par une superposition de contributions résultant de plusieurs signaux sources. Ceci se présente par exemple avec une antenne qui reçoit des signaux provenant de plusieurs émetteurs, ou quand un microphone délivre un signal de parole désiré mélangé à des signaux perturbateurs non désirés. Généralement on désire extraire tous les signaux de source présents dans le mélange, soit parfaitement soit en optimisant un rapport signal/bruit. En utilisant plusieurs capteurs délivrant plusieurs signaux de mélange, on a cherché à obtenir des estimations fiables des signaux de sources. Des techniques connues opèrent avec des signaux de mélange inconnus et avec des signaux de sources inconnus de sorte que les techniques de séparation sont appelées techniques de séparation en aveugle de sources. Parmi les structures de séparation de sources connues, on peut par exemple citer le document d'art antérieur "Multi-layer neural networks with a local adaptive learning rule for blind separation of source signals", A. CICHOCKI, W. KASPRZAK, S. AMARI, International Symposium on nonlinear theory and its applications (NOLTA'95) LAS VEGAS, Décembre 10-14, 1995, 1C-5, pages 61 à 65. Ce document concerne des mélanges difficiles à traiter par exemple parce que les signaux de mélange sont très semblables les uns aux autres ou lorsque les signaux de mélange ont des niveaux très différents. Néanmoins les structures décrites dans ce document ne conviennent pas lorsque les signaux de sources sont des signaux non stationnaires. Ceci constitue un inconvénient important, car ces types de signaux se rencontrent très souvent dans les applications concrètes telles que le traitement des signaux de paroles ou plus généralement des signaux audio. Le but de l'invention est de proposer un système de séparation de source qui permette de traiter le cas des signaux non stationnaires même si ces signaux entrent dans la catégorie des mélanges dits difficiles cités précédemment. Ce but est atteint avec un système de séparation de sources pour traiter des signaux d'entrée formés par des mélanges de signaux primaires issus des sources et pour estimer les signaux primaires, le système comprenant un premier sous-ensemble de séparation de sources ayant des premières entrées reliées aux signaux d'entrée, des secondes entrées pour recevoir des coefficients de séparation et des sorties pour délivrer des premières estimations des signaux primaires, un second sous- ensemble pour déterminer adaptativement les coefficients de séparation caractérisé en ce qu'il comprend un troisième sous- ensemble qui reçoit les premières estimations parmi lesquelles il détecte une estimation maximale possédant un niveau d'amplitude maximal et qui normalise les premières estimations par rapport à l'estimation maximale pour délivrer des secondes estimations lesquelles entrent dans le second sous-ensemble pour le calcul des coefficients de séparation. Ainsi lorsque les signaux primaires issus des sources présentent de fortes variations de niveaux d'amplitude au cours d'une période transitoire, il ne peut pas se produire un dépassement temporaire du niveau d'amplitude des secondes estimations pendant cette période transitoire. Le niveau des secondes estimations reste toujours contenu dans une fenêtre d'amplitude déterminée. Cependant, quand le niveau du signal d'entrée est relativement constant, qu'il soit fort ou faible, les premières estimations qui sont délivrées en sortie présentent un niveau moyen sensiblement semblable en sortie. Ceci signifie que les coefficients de séparation calculés par le système s'adaptent de manière à maintenir les premières estimations délivrées normalisées avec une énergie prédéfinie. Ceci peut constituer un handicap dans certaines applications car on perd ainsi le caractère fort ou faible d'un signal d'entrée. Par exemple dans le cas de signaux de parole, il peut être utile de différencier une voix faible d'une voix forte. Pour corriger cet inconvénient, selon l'invention, le troisième sousensemble comporte un module de sortie qui divise chaque première estimation par un coefficient de séparation spécifique pour délivrer des troisièmes estimations proportionnelles aux signaux primaires avec un facteur de proportionnalité indépendant desdits signaux primaires. Dans certaines applications particulières, il peut apparaître qu'un signal primaire soit temporairement absent. La situation qui mérite de l'attention est celle de locuteurs s'exprimant alternativement. I1 existe donc des moments durant lesquels chaque interlocuteur s'arrête de parler, c'est-à-dire que son signal source est momentanément interrompu pour reprendre quelques instants plus tard. Il faut donc que l'estimation de ce signal absent soit nulle en sortie durant ces périodes. Or dans le cas de signaux primaires nuls ou très faibles, le système de séparation aura tendance à dupliquer sur la sortie inutilisée une des autres estimations non nulles. Pour éviter cette situation, selon l'invention, on munit le troisième sous-ensemble d'un module de sélection qui empêche à une estimation d'être dupliquée sur une voie affectée à un signal primaire absent. Ces différents aspects de l'invention et d'autres encore seront apparents et élucidés à partir des modes de réalisation décrits ci-après. L'invention sera mieux comprise à l'aide des figures suivantes données à titre d'exemples non limitatifs qui représentent: Figure 1: Un schéma général d'un système de séparation de sources. Figure 2: Un schéma particulier d'un système de séparation selon l'art antérieur pour séparer deux signaux d'entrée. Figure 3: Des allures d'un signal d'entrée présentant de fortes variations de niveau. Figure 4: Un schéma général d'un système de séparation de sources selon l'art antérieur. Figure 5: Un schéma général d'un système de séparation de sources selon l'invention. Figure 6: Un schéma de séparation de sources selon l'invention permettant aux estimations de ne pas diverger en sortie. Figure 7: Un schéma de séparation de sources selon l'invention permettant aux estimations de ne pas diverger et de rester proportionnées aux signaux d'entrée. Figure 8: Un schéma d'un système de séparation de sources selon l'invention permettant aux estimations de ne pas diverger, de rester proportionnées aux signaux d'entrée et empêchant à une estimation d'être dupliquée sur une voie affectée à un signal primaire absent. Figure 9: Un schéma d'un exemple particulier avec deux signaux d'entrée dans le cas de la figure 8. La figure 1 représente des sources primaires S1 à Sn constituées par exemple par des voix de passagers dans un véhicule, par des sources de bruits divers (moteur, carrosserie, circulation d'air par les fenêtres, etc) et par un autoradio. Les sources primaires délivrent des signaux primaires Xi(t). On observe que ces signaux primaires vont se mélanger les uns aux autres dans l'espace de transmission. Pour identifier les voix, on place des capteurs C1 à Cn, par exemple des microphones, à l'intérieur de l'habitacle. Les capteurs délivrent des signaux de mélange Ei(t). De manière analogue, cela peut concerner la réception d'ondes hertziennes émises par des sources S1 à Sn et détectées par des capteurs constitués par des antennes Cl à Cn. Dans l'air, les signaux primaires Xi(t) délivrés par les émetteurs vont arriver mélangés les uns aux autres au niveau des antennes. Celles-ci vont alors fournir des signaux de mélange Ei(t) qui sont les seuls signaux accessibles au niveau de la réception. Pour obtenir des signaux estimés, dits estimations X>(t), i indice courant variant de i à n, correspondant à chaque source, à partir des signaux de mélange Ei(t), il est connu d'utiliser un système 10 de séparation de sources. Selon l'art antérieur connu (figure 4), les signaux d'entrée Ei(t) entrent dans un sous-ensemble 12 de séparation de sources qui délivre des premières estimations Xi(t). Un second sous-ensemble 14 détermine des coefficients de séparation Wij à partir des premières estimations Xi(t). Pour cela il calcule des facteurs de correction A Wj pour mettre à jour les coefficients de séparation. Ceux-ci sont alors introduits au cycle suivant dans le premier sous-ensemble 12 pour la détermination des estimations suivantes 1Xi(t). Pour des raisons de clarté on va décrire un cas simple d'un système à structure directe comportant une seule couche de traitement pour séparer deux signaux de sources X1(t) et X2(t) selon l'art antérieur cité (figure 2). Deux capteurs délivrent des signaux de mélange El(t) et E2(t). Ces signaux sont reliés aux signaux primaires par les relations suivantes: (1) E1(t) = a11Xl(t) + a12X2(t) (2) E2(t) = a21Xl(t) + a22X2(t) dans lesquelles les termes a1l, a12, a21, a22 sont des coefficients de mélanges inconnus. Les signaux qui figurent dans ces relations sont des signaux centrés c'est-à-dire que les composantes continues qui pourraient y figurer ont été éliminées par exemple par une opération de filtrage appropriée. Le schéma de l'art antérieur représenté sur la figure 2 permet de déterminer les estimations Xl(t) et X2(t) à partir des signaux de mélange El(t) et E2(t) à partir des relations: (3) X1 (t) = W1lE (t) + W12E2(t) (4) X2(t) = W21E1(t) + W22E2(t) dans lesquelles les termes Wll, W12, W21, W22 sont des coefficients de séparation adaptatifs. Pour mettre à jour les coefficients de séparation, on peut appliquer les règles d'adaptation suivantes: (5) Wii (t+l) =Wii (t) -1{f[R (t)] g[ú (t)] -1} (6) Wij(t+l) =Wij(t)-kf[Xi(t)]g[Xj(t)], ij dans laquelle p est un pas positif d'adaptation, f et g étant des fonctions de préférence non linéaires. En particulier, on peut choisir f(x)=x3 et g(x)=x. Sur la figure 4, les signaux Xl(t) et X2(t) arrivent dans le sous-ensemble 14 qui calcule les facteurs de correction A Wij à fournir aux coefficients Wij entre les instants t et t+l, d'après les relations: (7) XWii_=Wii(t+l)-Wii(t) =-t(f[Xi(t) g[Xi(t)] -l} (8) AWij=Wij(t+l)-Wi3(t)=-f[Xi(t)]g[Xj(t)], inj Les nouvelles valeurs de Wij sont chargées dans des mémoires de coefficients de séparation contenues dans le premier sous-ensemble 12. La règle d'adaptation (6) est utilisée pour mettre à jour les coefficients croisés W12 et W21 visant à éliminer la composante X2(t) dans X1(t) et la composante X1(t) dans X2(t). La règle d'adaptation (5) est utilisée pour mettre à jour les coefficients directs W1l et W22 visant à normaliser les échelles des signaux X1(t) et X2(t) respectivement. Ces coefficients directs s'adaptent eux-mêmes à la nature des signaux à traiter. Dans le cas de deux signaux représenté sur la figure 2, le signal de mélange El(t) entre dans des multiplieurs 141, 142 et le signal de mélange E2(t) entre dans des multiplieurs 143, 144. Les sorties des multiplieurs 141 et 143 sont additionnées dans un additionneur 150 tandis que les sorties des multiplieurs 142 et 144 sont additionnées dans un additionneur 151 pour délivrer respectivement les estimations X1(t) et X2(t). Le module 161 reçoit l'estimation X1(t) et le module 162 reçoit les estimations Xl(t) et X2(t). Les modules 161 et 162 calculent respectivement les facteurs de correction AW1l et A W21 selon les équations 7 et 8 et délivrent des coefficients de séparation mis à jour W1l et W21. Un traitement analogue est effectué dans les modules 163 et 164 pour les facteurs de correction AW12 et AW22. Considérons le cas de signaux de sources ayant une échelle relativement constante (ou une enveloppe constante) durant une période donnée, les coefficients de mélange aij étant par ailleurs constants ou très lentement variables. Dans ce cas les coefficients W1l et W22 convergent vers des valeurs relativement constantes assurant des énergies prédéfinies aux estimations X1(t) et X2 ( t). Dans le cas o f(x)=x3 et g(x)=x, l'énergie prédéfinie s'exprime par . Cette valeur prédéfinie est par exemple égale à 1 dans le cas des équations 5 et 6. La remise à jour des coefficients de séparation est effectuée à chaque unité de temps t, t+l, t+2... Lorsque l'échelle des signaux de sources varie brusquement très fortement ceci provoque une variation rapide et forte des signaux de mélange. Ce cas est représenté sur la figure 3. Au point A, il y a une brusque variation dans l'enveloppe des signaux de mélange E(t). Néanmoins aux instants immédiatement suivants, d'après l'algorithme de mise à jour précédent, les coefficients de séparation Wl et W22 vont conserver des valeurs proches de celles qu'ils avaient juste avant cette forte augmentation car leur adaptation nécessite une durée s'étalant sur quelques centaines à quelques milliers d'unités de temps. Donc la forte augmentation d'échelle des signaux de mélange provoque aussi une forte augmentation des estimations X1(t) et X2(t) par les relations (3) et (4) qui à son tour entraine que les modifications des coefficients WH et W2. deviennent élevées à cause de la relation (5). Ainsi les valeurs de ces coefficients de séparation deviennent très élevées d'o un fort accroissement des signaux de sortie occasionnant un nouvel accroissement des coefficients de séparation faisant que les sorties peuvent diverger dans le cas des signaux non stationnaires. L'invention consiste à modifier le système de l'art antérieur représenté sur la figure 4, à conserver les opérations (3) et (4) mais à modifier les règles d'adaptation des coefficients de séparation. Plus précisément, au lieu d'utiliser les premières estimations X1(t) et X2(t) pour mettre à jour les coefficients, on fait passer ces signaux dans des moyens spécifiques qui limitent leurs amplitudes d'après l'instant considéré. Ce sont des secondes estimations à amplitudes limitées qui sont alors utilisées. Ainsi les modifications fournies aux coefficients de séparation sont bornées. De cette manière, les nouveaux coefficients convergent progressivement vers de nouvelles valeurs stables et ne divergent plus. Ce mode de réalisation est représenté sur les figures 5 et 6. Un troisième sous-ensemble 15 est placé en sortie du premier sous-ensemble 12. Le troisième sous-ensemble transforme les premières estimations X1(t) à Xn(t) en des secondes estimations X1(t) à,Xn(t) dont les amplitudes sont normalisées par rapport au signal ayant l'amplitude maximale, en valeur absolue, pris parmi ceux compris dans X1(t) à Xn(t) à l'instant considéré. Cette opération est réalisée dans une unité 16 de limitation d'amplitude (figure 6). A chaque instant, on modifie les coefficients de séparation de la manière suivante: - on calcule les sorties Xi(t) du système de l'art antérieur; on calcule le maximum M de leurs valeurs absolues soit: M = max1Xi ( t) 1,i=1... n; - on définit une valeur de seuil P>0 correspondant à la valeur maximale autorisée pour les valeurs absolues des signaux limités Xi(t). Ce seuil est choisi librement et définit l'ampleur de la limitation désirée. A l'instant considéré, on compare M à 3 et on réalise la limitation telle que: - si M ≤5, les signaux Xi(t) ont une amplitude assez faible, donc il n'y a pas lieu de limiter, d'o: Vi=l...n, Xi(t)=Xi(t); - si M>:, au moins un signal a une amplitude forte, donc on limite tous les signaux avec le même facteur de réduction, d'o: Vi=l...n, Xi (t) =i(). M Les variations A Wjj sont calculées de la même façon que dans le système de l'art antérieur. Le second sous-ensemble 14 détermine les modifications à apporter aux coefficients de séparation Wij à partir des secondes estimations Xl(t) à kXn(t) c'est-à-dire: (9) AWii=- I{f[Xi(t)]g[Xi(t)] -i} (10) AWii=-f[Xi(t)]g[Xj(t)], iój. L'invention peut être également appliquée (module 12) à une structure de séparation de sources décrite dans le document: "Blind separation of sources, Part I: An adaptive algorithm based on neuromimetic architecture" C.JUTTEN, J. HERAULT, Signal Processing, 24, 1991, pages 1-10. Une seconde possibilité permettant de limiter la divergence des signaux de sortie consiste à calculer les facteurs de correction: (11) Fij(t)=-{(f[XiX(t)] g[Xi(t)] -1}, i=j (12) Fij (t)=-Lf[Xi(t)] g[X3(t)], i*j mais au lieu d'utiliser ces facteurs de correction tels quels pour mettre à jour les coefficients de séparation, on fait passer les signaux correspondant à ces facteurs de correction dans des moyens de filtrage passe-bas de manière à adoucir l'évolution de ces variations. Ceci évite des changements brusques d'échelle. Cette solution s'avère moins robuste que la précédente. Préférentiellement on l'associe à la première solution et dans ce cas le second sous-ensemble 14 comporte une unité de filtrage passe-bas 141 qui filtre les facteurs de correction Fij(t) pour calculer les variations de coefficients A Wij pour mettre à jour les coefficients de séparation Wij. Dans ce cas, chaque coefficient de séparation est modifié d'une quantité A Wij(t) qui résulte d'un filtrage passe-bas d'ordre 1 c'est-à- dire: AWij ( F) = Fij(t) +aàWij (t-1) 1+OE ce qui peut aussi être exprimé par: wij( t+l) =Wij ( t)+ Fij(t+l) +c (Wi(t) -Wij(t-1)) 1+oe o a>0 est un paramètre du filtre définissant l'amplitude de l'effet de lisage apporté par le filtre. Ce paramètre est prédéterminé. L'opération de normalisation en énergie réalisée sur les premières estimations délivrées par le premier sous-ensemble a pour conséquence de maintenir ces premières estimations voisines d'une énergie prédéfinie, et ceci quelle que soit l'échelle des signaux de sources. Les premières estimations vont donc converger vers une même énergie normalisée. Ceci n'est pas toujours acceptable dans toutes les applications o apparaissent des signaux de source non stationnaires. Par exemple, considérons le cas o les signaux de source sont des signaux de paroles avec des périodes durant lesquelles les signaux possèdent une énergie élevée (paroles fortes) et des périodes durant lesquelles les signaux possèdent une énergie faible (paroles faibles). Dans la situation décrite précédemment, les premières estimations auraient toutes la même énergie élevée dans ces deux situations ce qui revient à faire un nivellement d'énergie. Pour remédier à cet effet, selon l'invention (figure 7) on réalise un post-traitement sur les premières estimations Xi(t). Pour cela chaque première estimation Xi(t) de rang i est divisée par le coefficient de séparation W, correspondant à son rang, apparaissant dans les équations 3 et 4. Ceci s'apparente à une dénormalisation ou à un contrôle auto-adaptatif du gain. On observe aisément que les troisièmes estimations X (t) =X (t) /Wii ainsi obtenues sont proportionnelles aux signaux de sources correspondant Xi(t) avec un facteur de proportionnalité constant. Cette opération est réalisée dans le module de sortie 17 représenté sur la figure 7. Donc les étapes du traitement consistent d'abord à multiplier les signaux de mélange par les coefficients de séparation Wi3, puis à délivrer les premières estimations normalisées Xi(t) et ensuite à les diviser par les mêmes coefficients de séparation Wii pour obtenir des troisièmes estimations dénormalisées Xi (t) = Xi (t)/Wii. Il faut remarquer que ces opérations ne sont pas redondantes et ne s'annulent pas. Un autre mode particulier de réalisation de l'invention concerne le cas de deux signaux non stationnaires pour lesquels il n'existe, pendant une période donnée, qu'un seul signal de source Xi(t) non nul ou plus particulièrement lorsqu'avec deux signaux de sources, un des signaux est très élevé par rapport à l'autre. Dans ce cas ce signal de source fort va donner lieu à une estimation (première ou seconde selon le cas) qui va apparaître sur les deux voies de sortie du dispositif selon les modes de réalisation précédents, c'est-à-dire que si alternativement le signal X1(t) est fort puis l'autre signal X2(t) l'est à son tour, l'estimation X1(t) va apparaître non seulement sur la voie 1 (affectée au signal X1(t)) mais aussi sur la voie 2. Et inversement lorsque le signal X2(t) devient fort. Pour traiter ce cas, le troisième sous-ensemble 15 dispose en sortie d'un module de sélection 19 qui empêche à une estimation d'être dupliquée sur une voie affectée à un signal de source absent. Le module de sélection 19 est connecté en sortie du module de sortie 17 (figure 7) de manière à obtenir le schéma représenté sur la figure 8. Ce module 19 opère de la manière suivante: - si les deux signaux qui arrivent sur ses entrées sont corrélés, alors le module 19 délivre le signal qui a la plus forte amplitude et garde l'autre sortie à zéro. - si les deux signaux ne sont pas corrélés, le traitement est effectué indépendamment du bloc comme cela a été décrit précédemment. Pour mettre en oeuvre la fonction de ce module 19 il peut s'agir: - d'un sous-bloc qui détecte la proportionnalité des deux signaux d'entrée de ce module 19, basée par exemple sur un test de corrélation qui active le multiplexage correct des signaux qui lui arrivent; - ou d'un module de séparation de sources analogue à celui servant à la séparation de sources fourni dans la description ou à celui décrit dans le document de C. Jutten et J. Hérault cité précédemment. Mais dans ce cas, les signaux qui sont à traiter ne sont pas des signaux de mélanges "difficiles à traiter" car il s'agit à ce niveau de signaux qui sont soit corrélés, soit non corrélés. Le cas avec deux signaux est donné à titre d'exemple, la sélection pouvant s'opérer entre plus de deux signaux. La figure 9 représente un mode particulier de réalisation de la figure 8 dans le cas o il n'existe que deux signaux de mélange E1 (t) et E2 ( t). Les mêmes références sont utilisées pour la figure 9 et pour la figure 2. L'unité 16 de limitation d'amplitude délivre les estimations limitées X1(t) et X2(t) aux modules 161 à 164 qui calculent les nouveaux coefficients de séparation. Les sous-unités de sortie 17, et 172 calculent respectivement: X1j(t) = X ( t) / wl et X2 ( t) = X2 ( t)/W22 Quand l'un des signaux E1(t) ou E2 ( t) est momentanément absent ou très faible, l'unité de sélection 19 fait que l'estimation de l'un ne soit pas dupliquée simultanément sur la voie qui ne lui est pas affectée. REVENDICATIONS 1. Système de séparation de sources (10) pour traiter des signaux d'entrée (E(t)) formés par des mélanges de signaux primaires (Xi(t)) issus des sources (S1-Sn) et pour estimer les signaux primaires, le système comprenant un premier sous-ensemble (12) de séparation de sources ayant des premières entrées reliées aux signaux d'entrée, des secondes entrées pour recevoir des coefficients de séparation (Wi1) et des sorties pour délivrer des premières estimations (Xi(t)) des signaux primaires, un second sous-ensemble (14) pour déterminer adaptativement les coefficients de séparation caractérisé en ce qu'il comprend un troisième sous- ensemble (15) qui reçoit les premières estimations parmi lesquelles il détecte une estimation maximale possédant un niveau d'amplitude maximal et qui normalise les premières estimations par rapport à l'estimation maximale pour délivrer des secondes estimations (X(t)) lesquelles entrent dans le second sous-ensemble pour le calcul des coefficients de séparation. 2. Système selon la revendication 1 caractérisé en ce que le troisième sous-ensemble comporte un module de sortie (17) qui divise chaque première estimation (X1 ( t)) par un coefficient de séparation spécifique (Wii) pour délivrer des troisièmes estimations (Xi(t)) proportionnelles aux signaux primaires avec des facteurs de proportionnalité respectifs indépendants desdits signaux primaires (Xi ( t)). 3. Système selon une des revendications 1 ou 2 caractérisé en ce que le troisième sous-ensemble (15) dispose de voies de sortie (ln) affectées spécifiquement à chaque estimation, le troisième sousensemble comportant un module de sélection (19) qui empêche à une estimation d'être dupliquée sur une voie affectée à un signal primaire absent. 4. Système selon une des revendications 1 à 3 caractérisé en ce que le second sous-ensemble (14) dispose de moyens de filtrage (141) pour filtrer les coefficients de séparation (Wij).