Brevet FR2967848A1 — publié le 20120525

« Système de correction de spectre destiné notamment à une salle de spectacle.» La présente invention concerne un système de correction de spectre de signaux à corriger présentant une réponse fréquentielle devant correspondre à une réponse fréquentielle désirée, système formé d'au moins une cellule comportant un dispositif d'entrée pour recevoir lesdits signaux à corriger, un dispositif de sortie pour fournir des signaux de sortie présentant une réponse fréquentielle corrigée pour obtenir une réponse fréquentielle désirée, un dispositif d'égalisation de spectre pour fournir des signaux à restituer au dispositif de sortie. Ce genre de système peut trouver de nombreuses applications où il est important de modifier le spectre de signaux. Par exemple, on peut mettre des niveaux plus importants pour des composantes fréquentielles de signaux devant être transmis sur une ligne qui a tendance à atténuer les fréquences élevées. Il est possible aussi de prévoir des corrections de spectre dans les amplificateurs de fibres optiques, voir par exemple, le document de brevet : US 2002/0093725. La présente invention trouve une application importante dans le domaine des systèmes à réverbération active qui visent plutôt la modification des propriétés acoustiques de salles de spectacle où une adaptation de l'acoustique est nécessaire selon le spectacle produit, notamment la réverbération, ceci n'exclut pas d'apporter aussi une amplification. L'invention peut aussi être utilisée par des systèmes de sonorisation, où une amplification doit être apportée aux manifestations sonores se produisant sur la scène de spectacle. Un problème que doit résoudre l'invention est l'égalisation de la réponse de la cellule. Il a été proposé pour ce genre de système d'utiliser des réglages manuels qui modifient le filtrage de sorte à obtenir un spectre en fréquences satisfaisant. Il peut survenir que des fréquences prennent trop d'importance (émergences aussi appelées pics) et il convient de les atténuer afin d'éviter les colorations ou l'instabilité du dispositif due à l'effet Larsen. Les réglages manuels sont considérés comme pénibles et nécessitent un temps de réglage trop important. Un système du genre mentionné comportant un dispositif d'égalisation de la réponse du haut-parleur est décrit dans le brevet des états d'Amérique US 6 721 428 où il est 2967848 -2 proposé d'utiliser des mesures qui fournissent une égalisation automatique en utilisant certains algorithmes. L'invention vise un dispositif de ce genre mais avec d'autres moyens qui apportent un fonctionnement plus satisfaisant tout en procurant des possibilités supplémentaires pour 5 améliorer les performances. Pour cela, un système du genre mentionné dans le préambule est remarquable en ce que le dispositif d'égalisation de spectre implique un circuit de nivellement de réponse pour égaliser l'amplitude d'une première réponse fréquentielle correspondant à une réponse cible proche de la réponse désirée et un circuit de suppression de pics résiduels. 10 Selon un mode de réalisation, le circuit de nivellement de réponse opère sur une échelle de fréquences logarithmique et le circuit de suppression de pics résiduels, sur la réponse en échelle fréquentielle linéaire. Ces traitements correspondent bien à la perception de l'oreille : le nivellement est fait sous forme logarithmique et la suppression de pics est faite d'une manière plus rapide et plus précise ce qui les élimine d'une façon 15 efficace. La description suivante accompagnée des dessins ci-annexés, le tout donné à titre d'exemple non limitatif, fera bien comprendre comment l'invention peut être réalisée. Dans les dessins : La figure 1 montre un système conforme à l'invention, 20 la figure 2 montre une salle de spectacle dans laquelle sont disposées les cellules composant le système électroacoustique ainsi que le détail d'une cellule incluant l'invention, la figure 3 montre la structure du système électroacoustique lors de l'acquisition des données d'entrée (réponse du système en boucle ouverte), 25 la figure 4 explicite les différents traitements effectués du signal d'entrée jusqu'au signal de sortie d'une cellule. la figure 5 montre la structure de filtres biquadratiques utilisés par le système électroacoustique, la figure 6 montre l'algorithme de calcul effectué sur une réponse impulsionnelle de la réponse du système en boucle ouverte pour obtenir les paramètres d'égalisation de la cellule, 2967848 -3 la figure 7 montre un organigramme explicitant une phase de nivellement de la réponse en fréquence, la figure 8 montre un organigramme explicitant la suppression de pics résiduels de la réponse en fréquence. 5 Sur ces figures, les éléments communs portent tous les mêmes références sur toutes les figures. A la figure 1, on a montré très schématiquement un système 1 conforme à l'invention, il est formé d'une seule cellule 2 munie d'un capteur de signal d'entrée 3 pour recevoir des signaux radioélectriques, par exemple, provenant d'une source de signal 4. La 10 transmission de ces signaux détériore leurs caractéristiques et certaines composantes fréquentielles sont, soit atténuées, soit au contraire augmentées. Le système 1 va donc modeler le spectre à la sortie 5, pour fournir un signal à spectre corrigé s'approchant du spectre désiré. Pour obtenir cela, le système utilise un dispositif de traitement du signal 8 formé de filtres numériques pour l'égalisation de spectre et dont les commandes de filtrage 15 sont déterminées par un ensemble à microprocesseur 15 et des dispositifs secondaires de traitements du signal non précisés ici et portant indistinctement la référence 28. Les corrections apportées sont définies à partir d'un spectre mesuré par un dispositif de mesure 16 connecté aussi à l'ensemble à microprocesseur 15. A la figure 2, on a montré une scène de spectacle 17 à laquelle l'invention peut 20 s'appliquer. Sur cette scène se produisent des artistes 18. Différentes cellules (19, 20, 21) dites cellules de correction d'acoustique de salle, composent le système de correction d'acoustique. Elles peuvent être implémentées dans la salle de spectacle 17 en vue d'améliorer l'acoustique. Seule la cellule 20 est montrée en détail sur la figure 2. La cellule 20 se compose d'un récepteur de signal, par exemple, un microphone 22 25 pour capter les sons à traiter avec un préamplificateur 23, d'au moins un émetteur de signal formé, par exemple, d'un haut-parleur 24 avec un amplificateur 25 et de l'organe de traitement 8 sous la dépendance de l'ensemble à processeur 15, par exemple un ordinateur. L'organe de traitement 8 comporte un dispositif d'égalisation ou de correction 9 avec des filtres numériques 54, des dispositifs secondaires de traitements du signal non précisés ici et 30 portant indistinctement la référence 28, des convertisseurs analogiques-numériques 29 et des convertisseurs numériques-analogiques 30 ainsi qu'un générateur de signal 31. 2967848 -4 La figure 3 montre la structure du système lors de la phase d'acquisition des données d'entrée (réponse impulsionnelle du système en boucle ouverte). Lors de cette phase on fait intervenir le générateur de signal 31 qui peut être un générateur de bruit blanc ou rose et qui est utilisé pour fournir la réponse Hir du montage émetteur 22 - salle de spectacle 17 - 5 récepteur 20. Tout autre système d'acquisition des données d'entrée (réponse impulsionnelle du système en boucle ouverte) peut être utilisé dans l'invention. La figure 4 montre les phases du traitement du signal effectuées au sein de la cellule 20. Ces phases impliquent une chaîne de traitements. Le signal capté par le récepteur 22 passe, tout d'abord, par un préamplificateur 23 et un convertisseur analogique- 10 numérique 29. Puis, il est traité dans l'organe de traitement 8 qui est composé d'un circuit de filtrage passe-bande 51, suivi d'un circuit de réglage de gain 53 et d'une chaine de filtres biquadratiques 54 dont les paramètres ont été calculés par les algorithmes explicités aux figures 7 et 8. D'autres traitements 28 peuvent être appliqués au signal. Puis, le signal passe par un convertisseur numérique-analogique 30 et un amplificateur 25 pour être émis par 15 l'émetteur, par exemple le haut-parleur 24. Les paramètres des traitements réalisés par l'organe de traitement 8, par exemple les coefficients des filtres, sont déterminés par le circuit de calcul 15 en appliquant les algorithmes, explicités aux figures 7 et 8, à la réponse impulsionnelle du système en boucle ouverte. La structure des filtres 54 peut se présenter sous la forme montrée à la figure 5. Cette 20 structure est connue sous le nom de filtre biquadratique. Cette structure est formée de dispositifs de retard 71, 72, 73 et 74, amenant, chacun, un retard égal à une période d'échantillonnage définie par les convertisseurs analogiques-numériques 29 et numériques-analogiques 30. Cette structure comporte une partie transversale 80 et une partie récursive 82. Dans la partie transversale 80, les différents échantillons avant d'être retardés 25 par les dispositifs de retard 71 et 72 sont multipliés par un premier coefficient de pondération « b l » et les échantillons retardés par des coefficients de pondérations b2 et b3. Ceci est obtenu par les multiplicateurs 90, 91, 92 respectivement. Les échantillons pondérés sont additionnés par les additionneurs 93 et 94. La partie récursive 82 est composée des dispositifs de retard 73 et 74 retardant les 30 échantillons à la sortie de cette partie récursive pour être appliqués à son entrée après pondérations par les coefficients -al et -a2, obtenues par les multiplicateurs 95 et 96. Les 2967848 -5 échantillons ainsi pondérés sont ensuite additionnés à l'échantillon d'entrée de la partie récursive au moyen d'additionneurs 97 et 98. La fonction de transfert Hst(z) de cette structure peut s'écrire : N bi.z-' Hst(z) = a-0M 1+ 1 ai.z' >=i 5 où N et M sont respectivement le nombre de dispositifs de retard montés en cascade dans respectivement les partie transversale 80 et récursive 82. C'est en jouant sur la valeur des coefficients ai et bi que l'on peut obtenir des filtrages appropriés. Les traitements numériques synthétisent ces filtrages. La figure 6 montre les phases de calculs effectués au sein du circuit de calcul 15 en 10 vue de commander l'égalisation. Les données d'entrées sont composées des éléments «ri» de la réponse impulsionnelle de la réponse du système en boucle ouverte 40 de la cellule 20. Le signal est tout d'abord filtré par un circuit de filtrage passe-bande 41 et le gain est ajusté par un circuit de gain 42 par rapport à une réponse cible 49 déterminée auparavant. Les valeurs des fréquences haute et basse du filtre passe-bande peuvent être 15 ajustées automatiquement lors du traitement 43. La réponse cible 49 est à nouveau déterminée et le gain ajusté par un circuit de gain 44. L'égalisation s'effectue ensuite par un circuit de nivellement de réponse fréquentielle 10. Ce nivellement se fait en considérant le logarithme de la réponse que l'on traite. On a prévu un réajustement de gain 46 par rapport au gain moyen du signal. Le traitement se termine par un circuit de suppression de pics 11. 20 Comme les pics ont un effet néfaste, la suppression se fait à partir des réponses considérées sur une échelle fréquentielle linéaire, ce qui procure une suppression plus précise. A la fin, on obtient le signal de sortie optimisé « ri opt » montré à la boîte 48 ainsi que les paramètres optimum de réglage pour le dispositif d'égalisation 26. Les algorithmes mis en oeuvre dans ces phases de calculs découlent de l'article 25 suivant : « Ramos, G., Lôpez, J. J. (2006) Filter Design Method for Loudspeaker Equalization Based on HR Parametric Filters. J. Audio Eng. Soc., 54 (12), 1162-1178. » . Détermination de la réponse cible (49) Après le filtrage du signal par un filtre passe-bande, un algorithme d'optimisation est utilisé pour définir le spectre cible, qui a également la forme d'un filtre passe-bande. On définit la fonction de transfert souhaitée Htarget avec une fréquence basse ftargetlow, une fréquence haute ftargetup et également un gain Gtarget avec un intervalle d'optimisation pour chaque paramètre. L'algorithme cherchera à optimiser les paramètres du filtre passe-bande pour qu'il s'approche au mieux à la réponse haut parleur - salle de spectacle Hi,. On évalue l'erreur entre la réponse en fréquence de l'ensemble haut-parleur et salle de spectacle Hu vis-à-vis de la fonction de transfert souhaitée Htarget qui ont été préalablement lissées et ré-échantillonnées sur une échelle de fréquences logarithmique : -6 nf 1Hlr, log (fk ) - Htarget, log (fk ) emean0 - n f -n; + 1 1 où ni et nf sont respectivement le premier et dernier échantillon sur la bande de fréquences à traiter, fk est le k~~me échantillon fréquentiel sur l'échelle de fréquences logarithmique, et Hir,iog et Htarget,tog sont les fonctions de transfert sur 1 'échelle de fréquences logarithmique. L'optimisation consiste à trouver les paramètres qui minimisent cette erreur. Pour ce calcul, on utilise l'algorithme DIRECT. La description de cet algorithme est décrit dans l'article « DIRECT A Global Optimization Algorithm » qui peut être trouvé sur le lien: http://www.optimization-online.org/DB FILE/2004/08/934.pdf Tout autre méthode d'optimisation des paramètres pour obtenir la réponse cible (49) peut 20 être utilisée. 2. Le circuit de réglage des fréquences de coupures (43) Les valeurs des fréquences de coupure du filtre passe-bande initial peuvent être automatiquement réajustées. La procédure mise en oeuvre détecte les pics ayant une valeur supérieure à une valeur maximale GiflaX. La détection s'effectue selon une procédure qui 25 découle de la fonction « findpeaks » de la toolbox Matlab VOICEBOX : http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html. Cette fonction trouve les pics pour les fréquences au dessus d'une valeur prédéfinie qui sont au-dessus d'une valeur maximale GiflaX en examinant les montées et descentes de la courbe. Cette fonction élimine également le pic le plus bas d'une paire dont la distance est plus petite qu'un intervalle de 2967848 -7 fréquences prédéfini. Si des pics sont trouvés, la fréquence de coupure supérieure haute est abaissée par un pas prédéfini. De même, les pics sont détectés sur la réponse du système en boucle ouverte pour les fréquences en dessous d'une valeur prédéfinie. Cette réponse du système en boucle 5 ouverte a été préalablement lissée et ré-échantillonnée sur une échelle de fréquences logarithmique. Si des pics supérieurs à un gain seuil prédéfini sont détectés, la fréquence de coupure basse est augmentée d'une valeur définie auparavant. La réponse impulsionnelle est alors filtrée avec le nouveau filtre passe-bande et la détection de pics est réitérée. Cette procédure itérative se termine lorsqu'aucun pic n'est 10 trouvé, ou que la fréquence de coupure haute est descendue en dessous d'une valeur définie auparavant ou que la fréquence de coupure basse a atteint une valeur maximale limite définie auparavant. Pour l'ajustement des fréquences de coupure toute autre méthode de détermination des pics peut être utilisée et entre dans le cadre de l'invention. 15 3. Le circuit de nivellement de réponse (10) (Figure 7) L'algorithme pour le nivellement de la réponse a pour but de trouver les coefficients optimaux de filtres biquadratiques de manière à minimiser l'erreur entre la réponse en fréquence de l'ensemble émetteur, salle de spectacle et recepteur H~ vis-à-vis d'une fonction de transfert souhaitée Htarget. Cet algorithme itératif consiste en deux processus successifs. Le premier processus détecte les pics principaux de la réponse qui est préalablement lissée et ré-échantillonnée sur une échelle de fréquences logarithmique et le second détermine le filtre optimal qui permet de compenser le pic choisi. L'opération de nivellement est explicitée par l'organigramme montré à la figure 7. Sur cette figure, la case (K1) indique que l'on part de la connaissance des filtres initiaux Hlr,iog et Htarget,log, qui sont les fonctions de transfert lissées et ré-échantillonnées sur une échelle de fréquences logarithmique. 1. A la case (K3) on initialise i à 1 et on calcule el (f(k)). et (J k) = HlrJog (.f k ) - Hta,tjog U k) où f(k) représente les échantillons fréquentiels sur l'échelle logarithmique. -8 2. A la case (K5) on examine s'il y a des pics présents. Si aucun pic n'est trouvé alors on estime que la phase de nivellement de spectre est terminée (K7). Si des pics sont trouvés, alors on passe à la case (K9) où l'on détermine les pics principaux, selon les calculs ci-dessous en se basant sur la fonction el, Ces pics sont alors classés selon leur niveau décroissant. La détection des pics s'effectue comme décrit plus haut selon une procédure qui découle de la fonction « findpeaks » de Matlab toolbox VOICEBOX : http://www.ee.ic.ac.uk/hp/staffldmblvoicebox/voicebox.html. Toute autre méthode de détermination des pics peut être utilisée et entre aussi dans le cadre de l'invention. La case (K11) indique un test sur l'éventualité de la présence de pics qui n'auraient pas été compensés. Si tous les pics ont été compensés alors ladite phase de nivellement est terminée et on va donc à la case (K7). S'il y a des pics non compensés, on passe à la case (K13). 3. La case (K13) concerne le déroulement d'un algorithme d'optimisation qui déterminera les paramètres optimaux (fc, G, W, AG )opt d'un filtre biquadratique qui compense le pic de rang i. fc est la fréquence centrale du filtre, G le gain à cette fréquence, W la largeur de bande du filtre, et AG est la différence de gain avant et après la fréquence centrale du filtre. Le nivellement de la réponse s'arrête si i est plus grand que le nombre de pics détectés. Cette optimisation consiste à minimiser l'erreur emeanl nf 1 emeanl - n f -n +1 et (fk 1 k=n, où ni et nf sont respectivement le premier et dernier échantillon sur la bande de fréquences à traiter, et fk est le k1' échantillon fréquentiel sur l'échelle de fréquences logarithmique. Pour ce calcul on utilise l'algorithme DIRECT : DIRECT A Global Optimization Algorithm, http://www.optimizationonline.or /DB_FILE/2004/08/934. df. Tout autre méthode d'optimisation des paramètres pour obtenir les valeurs (fc, G, W, AG)opt d'un filtre biquadratique qui compense le pic peut être utilisée selon une alternative de l'invention. 4. A la case (K15), on teste l'efficacité du filtre. Cette amélioration repose sur les critères suivants : -9 Si l'erreur emear l est réduite d'une valeur prédéfinie par le filtre qui vient d'être calculé et si Gopd ou AGopd est réduit d'au moins une valeur prédéfinie, alors le filtre amène une amélioration. S'il amène une amélioration, on passe à la case (K17) où la réponse HI, est filtrée par le nouveau filtre (K17). S'il n'amène pas d'amélioration, alors on incrémente i (K19) pour le traitement du prochain pic classé et on passe à la case (K11). 5. Après la substitution du filtre Hir on retourne à la case (K3). 4. Le circuit de suppression de pics (11) (Figure 8). L'algorithme de suppression de pics a pour but de trouver les coefficients optimaux de filtres biquadratiques pour minimiser l'erreur entre la réponse en fréquence de l'ensemble émetteur, salle de spectacle et récepteur Hir et un gain limite Grr., prédéfini. Pour minimiser la coloration, entre autres, on détecte des pics non désirés de largeur de bande faible, la réponse ne doit être ni lissée ni ré-échantillonnée sur une échelle de fréquences trop grossière. Le paramètre Grr., définit la limite maximale permise pour la réponse en amplitude. D'une manière semblable à celle décrite pour l'opération de nivellement, la suppression des pics est effectuée par un algorithme itératif impliquant deux processus. Le premier détecte les pics principaux de la réponse et le second détermine le filtre optimal qui compense le pic traité. La suppression de ces pics est explicitée par l'organigramme montré à la figure 8. Sur cette figure 8, on part sur la base de Hir et le niveau cible Gdesired (case K21). 1. A la case (K23) on initialise i à 1 et on calcule l'erreur e2 : e2 (/ k ) Hlr (f k ) - Gdesired On examine à la case (K25) la présence de pics. S'il n'y a pas de pics alors le processus est terminé et on va à la case (K27). 2. A la case (K29), on détermine les pics principaux en utilisant e2 et on les classe dans l'ordre de niveau décroissant. La détection s'effectue d'une manière semblable à celle déjà décrite ci-dessus. La détection des pics s'effectue comme décrit plus haut selon une procédure qui découle de la fonction « findpeaks » de Matlab toolbox VOICEBOX : 2967848 -10- http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html. Toute autre méthode de détermination des pics peut être utilisée et entre dans le cadre de l'invention. On examine à la case (K31) s'il y a encore des pics à traiter. 3. On exécute, case (K33), l'algorithme du type DIRECT qui trouve les paramètres (f,, G, 5 W) du filtre biquadratique qui minimise l'erreur emean2 : nf 1 { emean2 = n f -n +1 e2 (/ k k=nt où ni et nf définissent respectivement le premier et le dernier point en fréquence de la bande passante du filtre paramétrique et fc est la fréquence centrale du filtre, G le gain à cette fréquence, W la largeur de bande du filtre. Pour s'assurer que les fréquences émergentes 10 seront assez atténuées, on ajoute une fonction de contrainte p. p = max f k (Hfr (J k )) - G,,, /c {' x2W/2 2' k - c Cette fonction de contrainte tient compte du gain relatif maximal de la réponse émetteur, salle et récepteur comparé à la limite GiflaX appartenant à la bande passante du filtre 15 paramétrique. En d'autres termes, l'algorithme est maintenant orienté pour résoudre le problème : min emean2(fc, G,W) compte tenu de la contrainte : p(f,,G,W)~0 Tout autre méthode d'optimisation des paramètres pour obtenir les valeurs (fc, G, W)opt 20 d'un filtre biquadratique qui compense le pic, convenant à l'invention, peut être utilisée. 4. La case (K35) : Si Gopd est au moins égale à une valeur prédéfinie, on filtre la réponse salle haut-parleur avec le filtre optimal Hfi1t, ut, à la case (K39), et on retourne à la case (K23). Sinon, on incrémente i (K37). 5. On filtre Hi, avec le nouveau filtre ainsi déterminé et on retourne à l'étape 1. 25 L'algorithme s'arrête lorsqu'aucun pic n'est détecté ou quand i devient plus grand que le nombre REVENDICATIONS1- Système de correction de spectre pour des signaux à corriger présentant une réponse fréquentielle devant correspondre à une réponse fréquentielle désirée, système formé d'au moins une cellule (19, 20, ou 21) comportant un dispositif d'entrée (3, 22) pour recevoir lesdits signaux à corriger, un dispositif de sortie (5, 24) pour fournir des signaux de sortie présentant une réponse fréquentielle corrigée se rapprochant de la réponse fréquentielle désirée, un dispositif de traitement du signal (8) comportant un dispositif de correction (9) formé, notamment, de filtres numériques d'égalisation de spectre pour fournir des signaux à restituer au dispositif de sortie caractérisé en ce que le dispositif de correction (9) est prévu pour égaliser, à partir des paramètres issus d'un circuit de nivellement de réponse (10), l'amplitude d'une première réponse fréquentielle (40) par rapport à une réponse cible (49) proche de la réponse désirée et en ce qu'il est prévu aussi un circuit de suppression de pics résiduels. 2- Système de correction de spectre d'égalisation selon la revendication 1 caractérisé en ce que le circuit de nivellement de réponse (10) opère en logarithme et le circuit de suppression de pics résiduels (11) sur une réponse en linéaire. 3- Système de correction de spectre selon les revendications 1 ou 2 caractérisé en ce que le dispositif de traitement de signal (8) comporte une phase de traitement préparatoire effectué par un circuit de filtrage (41) et un de filtrage et d'ajustement de gain (42, 44). 4- Système de correction de spectre selon l'une des revendications 1 à 3 caractérisé en ce que les filtrages des dispositifs d'égalisation (9) sont établis au moins en partie par des filtres biquadratiques. 5- Système de correction de spectre selon la revendication 4 caractérisé en lesdits filtrages biquadratiques sont réalisés par calculs. 6- Système de correction de spectre selon l'une des revendications 1 à 5 caractérisé en ce que l'on détermine par le circuit de nivellement de réponse (10) et le circuit de suppression de pics résiduels (11) des paramètres fc, G, AW et surtout AG (pour la phase de nivellement) des filtres biquadratiques qui compense un pic de rang i, ces paramètres étant :. -fc est la fréquence centrale du filtre, 2967848 -12- - G le gain à cette fréquence, - W la largeur de bande du filtre, et 4G est la différence de gain avant et après la fréquence centrale du filtre, le nivellement de la réponse s'arrêtant si i est plus grand que le nombre de pics détectés, 5 cette optimisation consistant à minimiser l'erreur emeanl nf 1 emeanl - n f -n +1 et (fk 1 k=n, où ni et nf sont respectivement le premier et dernier échantillon sur la bande de fréquences et el l'écart du signal vis à vis de la réponse désirée. 7 - Cellule de modification d'acoustique de salle pour un système selon l'une des 10 revendications 1 à 6. 8 - Système de correction de spectre selon l'une des revendications 1 à 6 appliqué aux salles de spectacles.