Brevet FR2830118A1 — publié le 20030328

PROCÉDÉ DE CARACTÉRISATION DU TIMBRE D'UN SIGNAL SONORE SELON AU MOINS UN DESCRIPTEUR L'invention concerne un procédé de caractérisation du timbre d'un signal sonore, selon au moins un descripteur. Le domaine de l'invention est celui de la caractérisation du timbre d'un signal sonore variant en fonction du temps. Le timbre d'un signal sonore est caractérisé de façon intuitive par toutes les propriétés perceptives à l'exclusion de la hauteur tonale, de l'intensité perçue et de la durée subjective du signal sonore. Les caractéristiques varient en fonction de diverses catégories de signaux sonores. On distingue par exemple les signaux sonores harmoniques tels que ceux produits par un violon, une flûte, etc, des signaux sonores percussifs, tels que ceux produits par un tambour, etc. Il existe bien sûr d'autres catégories. Pour les catégories des signaux sonores harmoniques et percussifs, des mesures de timbre ont été effectuées : chacun de ces ensembles de mesures constituent un 1dd espace de timbre, respectivement harmonique ou percussif. On cherche à modéliser le timbre d'un signal sonore s (t), plus précisément ses caractéristiques aussi dénommés descripteurs, pour pouvoir par exemple reconnaître ou situer le timbre d'un signal inconnu parmi ceux connus d'une base de données sonores. Les modélisations de ces caractéristiques sont en général exprimées en fonction des enveloppes spectrale et temporelle du signal sonore s (t) et de leur variation. Le signal sonore s (t) et l'enveloppe temporelle ET (t) sont illustrés figure 1 ; l'enveloppe spectrale ES (f) est illustrée figure 3 : elle est généralement obtenue à la suite d'une première étape consistant à analyser le signal selon une fenêtre temporelle glissante dont un exemple est représenté figure 2 puis d'une seconde étape consistant à calculer la transformée de Fourier rapide du signal résultant de l'étape précédente. Des exemples de modélisation de caractéristiques et de calcul en fonction de ces caractéristiques, de la distance entre les timbres de deux signaux sonores du même espace de timbre, sont proposés dans la publication"Validation of a multidimensional distance model for perceptual dissimilarities among musical timbres"N. Misdariis et al., Proceedings 16th International Congress on Acoustics and 135th Meeting Acoustical Society of America, Seattle, Washington, 20- 26 June 1998. Parmi ces caractéristiques dont certaines sont présentées dans la publication indiquée, on peut citer - le temps d'attaque logarithmique (lat ou LT) défini comme le logarithme de la différence entre l'instant tO auquel le signal démarre et l'instant tl auquel le signal se stabilise comme dans le cas des signaux sonores harmoniques ou atteint son maximum comme dans le cas des signaux sonores percussifs : lat = logio (tl-tO) ; ces instants tO et tl sont représentés figure 1 ; dans la publication citée, tO est l'instant où l'amplitude du signal atteint 2% de l'amplitude maximale ; - le centroïde spectral harmonique ou hsc ou SC défini comme la moyenne sur la durée du signal, du centroïde spectral instantané, c'est-à-dire considéré dans une fenêtre d'analyse glissante ; le centroïde spectral instantané est lui-même défini par la moyenne pondérée des pics d'harmonique du spectre du signal représentés figure 3 et correspond en quelque sorte au point d'équilibre de l'ensemble des pics d'harmonique. Parmi les méthodes permettant d'obtenir les pics d'harmonique d'un signal, une méthode simple consiste dans un premier temps à extraire la fréquence fondamentale fO du signal sonore s (t), puis dans un deuxième temps à détecter les pics d'harmonique, situés autour des multiples de la fréquence fondamentale fO comme illustré sur la figure 3. La fréquence fondamentale locale est par exemple obtenue en calculant la fonction d'auto-corrélation normalisée du signal s (t) local ; la fréquence fondamentale locale fO correspond alors à l'inverse du temps TO du premier maximum de cette fonction - la déviation spectrale harmonique ou hsd représentative de l'irrégularité spectrale, définie comme la moyenne sur la durée du signal, de la déviation spectrale harmonique instantanée considérée dans une fenêtre d'analyse glissante ; la déviation spectrale harmonique instantanée est elle-même définie comme la déviation spectrale des pics d'amplitude (en échelle logarithmique) du spectre par rapport à l'enveloppe spectrale. Un exemple de déviation spectrale harmonique instantanée ihsd correspondant au signal sonore d'une clarinette est illustrée figure 4 ; - la variation spectrale harmonique ou hsv représentative du flux spectral, définie comme la moyenne sur la durée du signal de la variation spectrale harmonique instantanée considérée dans une fenêtre d'analyse ; la variation spectrale harmonique instantanée est elle-même définie comme le complément à 1 de la corrélation normalisée entre l'amplitude des harmoniques de deux fenêtres adjacentes. Le but de la présente invention est donc de définir de nouvelles caractéristiques ou descripteurs pour que combinés à des descripteurs déjà connus, ils s'appliquent au mieux à des espaces de timbres différents et permettent de calculer au mieux la distance entre deux signaux sonores d'un même espace de timbre. L'invention a pour objet un procédé de caractérisation du timbre d'un signal sonore s (t) variant en fonction du temps, pendant une durée D, selon au moins un descripteur, principalement caractérisé en ce qu'il consiste à définir ledit descripteur par l'étendue spectrale harmonique hss du signal. Selon une caractéristique de l'invention, l'un des descripteurs étant le centroïde spectral harmonique hsc, le calcul de l'étendue spectrale harmonique du signal comporte les étapes suivantes : a) mémoriser le signal s (t), b) en extraire sa fréquence fondamentale fO, c) calculer et mémoriser les harmoniques du signal s (t) tronqué selon une fenêtre temporelle h (t) d'une durée inférieure ou égale à D, en fonction de la fréquence au moyen d'un dispositif de transformation de Fourier rapide, et en faisant glisser ladite fenêtre temporelle h (t) sur la durée D du signal s (t), d) pour chaque fenêtre temporelle h (t), calculer l'étendue spectrale harmonique du signal tronqué hss (s (t). h (t)) selon la formule suivante : JA (s. h, harm) [f (s. h, harm)-hsc (s. h) r 1 hss (s. h) =-nbh hsc (s. h) I A (s. h, harm) nbh . A (s. h, harm) étant l'amplitude du pic de l'harmonique numéro harm du spectre du signal tronqué s. h, . f (s. h, harm) étant l'a-''fréquence de l'harmonique numéro harm du spectre du signal tronqué, . nbh étant le nombre d'harmoniques du spectre du signal tronqué s. h, . hsc (s. h) étant le centroïde spectral harmonique du signal tronqué s. h. mémoriser chaque hss (s. h) e) calculer l'étendue spectrale harmonique du signal hss (s) selon la formule suivante : Ihss (s. h) hss (s) = nbf nbf nbf étant le nombre de fenêtres obtenues en faisant glisser la fenêtre h (t) sur la durée D du signal s (t). Selon une caractéristique additionnelle, un deuxième descripteur appelé déviation spectrale harmonique hsd étant utilisé, l'étape d) consiste également à calculer la déviation spectrale harmonique du signal tronqué hsd (s (t). h (t) ) selon la formule suivante : E A (s. h, harm)-SE (s. h, harm) 1 hsd (s. h) = nbh hsd (s. h, harm) nbh SE (s. h, harm) étant l'enveloppe spectrale locale du signal tronqué s. h (avec une amplitude à l'échelle logarithmique) autour du pic de l'harmonique numéro harm, et en ce que l'étape e) consiste alors à calculer également la déviation spectrale harmonique du signal hsd (s) : L hsd (s. h) hsd (s) = nbf nbf Selon un mode de réalisation particulier de l'invention, la durée de la fenêtre h (t) est égale ou quasiment égale à D et le nombre de fenêtres nbf est égal à 1. De préférence, le signal sonore est un signal harmonique. L'invention concerne également un procédé de mesure de la distance"dist"entre deux signaux sonores harmoniques, caractérisé en ce qu'il consiste à utiliser la caractérisation des signaux telle que décrite précédemment. La caractérisation des signaux sonores étant basée sur les descripteurs suivants, le temps d'attaque logarithmique (lat), le centroïde spectral harmonique (hsc), la déviation spectrale harmonique (hsd) et la variation spectrale harmonique (hsv), la distance "dist"est de la forme dist = xAlat) + x (Ahsc) + x (Ahsd) + (xAhss + xAhsv) xi, X2, X3, x, X5 étant des coefficients prédéterminés. Selon un mode de réalisation préférentiel, le temps d'attaque logarithmique (lat) est calculé en échelle logarithmique décimale et 5 D'autres particularités et avantages de l'invention apparaîtront clairement à la lecture de la description faite à titre d'exemple non limitatif et en regard des dessins annexés sur lesquels : la figure 1 représente schématiquement un signal sonore s (t) et son enveloppe temporelle ET (t) en fonction du temps t ; la figure 2 représente schématiquement une fenêtre temporelle d'analyse glissante h (t) ; la figure 3 représente schématiquement des pics d'harmonique et une enveloppe spectrale ES (f) en fonction de la fréquence f ; la figure 4 illustre schématiquement la déviation spectrale harmonique instantanée d'une clarinette. Le signal sonore s (t) variant en fonction du temps t et d'une durée D, représenté figure 1 est analysé selon une fenêtre temporelle glissante h (t) représentée figure 2, qui peut être par exemple une fenêtre de Hamming. La durée D du signal est en général de l'ordre de quelques secondes, dans le cas par exemple d'échantillons sonores à situer parmi ceux d'une base de données ; mais elle peut être beaucoup plus longue. Selon l'invention un nouveau descripteur, représentatif de l'étendue spectrale harmonique est utilisé pour contribuer à la description du timbre d'un . 1 l,"i signal sonore de préférence harmonique et pour permettre de calculer de manière plus précise la distance entre deux signaux sonores d'un même espace de timbre harmonique. L'étendue spectrale harmonique correspond à un coefficient d'étalement fréquentiel de l'énergie de la partie harmonique du signal, autour du centroïde spectral. Le calcul de l'étendue spectrale harmonique hss comporte les étapes suivantes réalisées au moyen d'un ordinateur comportant notamment une ou plusieurs mémoires et une unité centrale comprenant au moins un microprocesseur, une mémoire de programme et une mémoire de travail : a) le signal s (t) d'une durée D est mémorisé, b) sa période fondamentale fO est extraite selon un procédé connu présenté précédemment dans l'état de la technique, c) les harmoniques du signal s (t) tronqué selon une fenêtre temporelle h (t) telle qu'une fenêtre de Hamming d'une durée de N. TO par exemple, TO étant la période fondamentale (durée de h (t) égale 80 millisecondes par exemple avec N=8 et TO=10 millisecondes), sont calculées à partir de la fonction obtenue au moyen d'un programme de transformation de Fourier rapide et en faisant glisser la fenêtre h (t) sur la durée D : la position et l'amplitude des maxima de cette fonction considérés autour d'un multiple de la fréquence fondamentale fO, déterminent respectivement la fréquence et l'amplitude des harmoniques ; ces 1--, harmoniques sont mémorisées ; d) pour chaque fenêtre h (t), l'étendue spectrale harmonique du signal tronqué hss (s (t). h (t) ) est calculée selon la formule suivante : 1 LA 2 (s. h, harm) [f (s. h, hann) - hsc (s. h)]' hssCs h) =-"M ! hss (s. h) = I nbh~ 2 hsc (s. h) E A (s. h, hann) nbh A (s. h, harm) étant l'amplitude du pic de l'harmonique numéro harm du spectre du signal tronqué s. h, f (s. h, harm) étant la fréquence de l'harmonique numéro harm du spectre du signal tronqué s. h, nbh étant le nombre d'harmoniques du spectre du signal tronqué s. h, hsc (s. h) étant le centroïde spectral harmonique du signal tronqué s. h calculé selon une méthode de l'état de la technique dont on donne un exemple plus loin, les hss (s (t). h (t) ) ainsi obtenus sont mémorisés e) l'étendue spectrale harmonique du signal s (t) est calculée de la façon suivante : Ihss (s. h) hss (s) = nbf nbf nbf étant le nombre de fenêtres obtenues en faisant glisser la fenêtre h (t) sur la durée D du signal s (t). Dans le cas particulier d'un signal stationnaire ou quasi-stationnaire, l'étendue spectrale harmonique du signal s (t) est directement calculée sur la durée D du signal. Cela revient à dire que la durée de la fenêtre d'analyse h (t) est égale ou quasiment égale à la durée D du signal et que le nombre de fenêtres est alors égal à 1. Dès lors que l'on dispose de ce nouveau descripteur, on peut avantageusement le combiner aux autres descripteurs lat, hsc, hsd et hsv de l'état de la technique et calculer par exemple la distance"dist" entre deux signaux sonores d'un même espace de timbre harmonique selon la formule suivante : dist = x, (Alat) +x (Ahsc) + x (Ahsd) + (xAhss + xAhsv) où A est la différence entre les valeurs d'un même descripteur pour les deux signaux sonores considérés et Xl'X2, X3, X4 et xs sont des coefficients prédéterminés. Le calcul du temps d'attaque logarithmique, lat, est obtenu par la formule indiquée dans l'état de la technique : lat (s) =logo (tl-tO) Pour le calcul du centroïde spectral harmonique hsc du signal tronqué, on complétera l'étape d) du calcul de hss par le calcul suivant connu de l'homme du métier L f (s. h, harm). A (s. h, harm) hsc (s. h)-------------LA (s. h, harm) nah A De la même manière que pour le descripteur hss (s) (étape e), on obtient pour le centroïde spectral harmonique du signal s (t) : E hsc (s. h) hsc (s) nbf nbf Pour le calcul de la déviation spectrale harmonique hsd du signal tronqué, on complétera avantageusement l'étape d) du calcul de hss par le calcul suivant : IIA (s. h, harm)-SE (s. h, harm) 1 hsd (s. h) =-'-------------A (s. h, hanm) nbh SE (s. h, harm) étant l'enveloppe spectrale locale du signal tronqué (avec une amplitude en échelle logarithmique), autour du pic de l'harmonique numéro harm obtenue selon une méthode connue de l'homme du métier. De la même manière que pour le descripteur hss (s) (étape e), on obtient pour la déviation spectrale harmonique du signal s (t) : Ihsd (s. h) hsd (s) = nbf nbf Pour le calcul de la variation spectrale harmonique hsv du signal tronqué, on complétera l'étape d) du calcul de hss par le calcul suivant connu de l'homme du métier : LA (s. h-1, harm). A (s. h, harm) hsv (s. h) = 1-nbh A (s. h, harm). A' (s. h-l, harm) Mh Mh De la même manière que pour le descripteur hss (s) (étape e), on obtient pour la variation spectrale harmonique du signal s (t) : Lhsv (s. h) hsv (s) = nbf nbf La distance a notamment été mesurée en calculant les descripteurs selon les formules précitées, le temps d'attaque logarithmique, lat, étant calculé en échelle logarithmique décimale, et en prenant les coefficients dans les fourchettes suivantes : 5 REVENDICATIONS 1. Procédé de caractérisation selon au moins un descripteur, du timbre d'un signal sonore s (t) variant en fonction du temps pendant une durée D, caractérisé en ce qu'il consiste à définir ledit descripteur par l'étendue spectrale harmonique hss du signal. 2. Procédé selon la revendication précédente, l'un des descripteurs étant le centroïde spectral harmonique hsc, caractérisé en ce que le calcul de l'étendue spectrale harmonique du signal comporte les étapes suivantes : a) mémoriser le signal s (t), b) en extraire sa fréquence fondamentale fO, c) calculer et mémoriser les harmoniques du signal s (t) tronqué selon une fenêtre temporelle h (t) d'une durée inférieure ou égale à D, en fonction de la fréquence au moyen d'un dispositif de transformation de Fourier rapide, et en faisant glisser ladite fenêtre temporelle h (t) sur la durée D du signal s (t), d) pour chaque fenêtre temporelle h (t), calculer l'étendue spectrale harmonique du signal tronqué hss (s (t). h (t)) selon la formule suivante : 1 LA2 (s. h, harm) [f (s. h, harm)-hsc (s. h)]' hss (s. h) == L"bh hsc (s. h) LA2 (s. h, harm) nbh . A (s. h, harm) étant l'amplitude du pic de l'harmonique numéro harm du spectre du signal tronqué s. h, . f (s. h, harm) étant la fréquence de l'harmonique numéro harm du spectre du signal tronqué, . nbh étant le nombre d'harmoniques du spectre du signal tronqué s. h, . hsc (s. h) étant le centroïde spectral harmonique du signal tronqué s. h. mémoriser chaque hss (s. h) e) calculer l'étendue spectrale harmonique du signal hss (s) selon la formule suivante : l hss (s. h) hss (s) = nbf nbf nbf étant le nombre de fenêtres obtenues en faisant glisser la fenêtre h (t) sur la durée D du signal s (t). 3. Procédé selon la revendication précédente et selon lequel un deuxième descripteur est utilisé, ce descripteur étant la déviation spectrale harmonique hsd , caractérisé en ce que l'étape d) consiste également à calculer la déviation spectrale harmonique du signal tronqué hsd (s (t). h (t)) selon la formule suivante : Y ! A (s. h, harm)-SE (s. h, harm) 1 hsd (s. h) = nbh IA (s. h, harm) nbh SE (s. h, harm) étant l'enveloppe spectrale locale du signal tronqué s. h (avec une amplitude à l'échelle logarithmique) autour du pic de l'harmonique numéro harm, et en ce que l'étape e) consiste alors à calculer également la déviation spectrale harmonique du signal hsd (s) : Ihsd (s. h) hsd (s) = nbf nbf 4. Procédé selon l'une quelconque des revendications 2 ou 3, caractérisé en ce que la durée de la fenêtre h (t) est égale ou quasiment égale à D et en ce que le nombre de fenêtres nbf est égal à 1. 5. Procédé selon l'une des revendications précédentes, caractérisé en ce que le signal sonore est un signal harmonique. 6. Procédé de mesure de la distance"dist"entre deux signaux sonores harmoniques, caractérisé en ce qu'il consiste à utiliser la caractérisation des '-'- signaux selon l'une quelconque des revendications 2 à 4. 7. Procédé de mesure de la distance"dist"selon la revendication précédente la caractérisation des signaux sonores étant basée sur les descripteurs suivants, le temps d'attaque logarithmique (lat), le centroïde spectral harmonique (hsc), la déviation spectrale harmonique (hsd) et la variation spectrale harmonique (hsv), caractérisé en ce que la distance"dist"est de la forme dist =-xAlat) + x (Ahsc) + x (Ahsd) + (xAhss + xAhsv) Xi, X2, X3, X4, X5 étant des coefficients prédéterminés. 8. Procédé selon la revendication précédente, caractérisé en ce que le temps d'attaque logarithmique (lat) est calculé en échelle logarithmique décimale et en ce que 5