[0001] L'invention concerne un procédé de sélection d'unités de synthèse.
[0002] Elle concerne par exemple un procédé de sélection et de codage d'unités de synthèse
pour un codeur de parole très bas débit, par exemple inférieur à 600 bits/sec.
[0003] Les techniques d'indexation d'unités de parole naturelle ont récemment permis le
développement de systèmes de synthèse à partir du texte particulièrement performants.
Ces techniques sont dorénavant étudiées dans le cadre du codage à très bas débit de
la parole, conjointement avec des algorithmes empruntés au domaine de la reconnaissance
vocale, Ref [1-5]. L'idée principale consiste à identifier dans le signal de parole
à coder, une segmentation quasi optimale en unités élémentaires. Ces unités peuvent
être des unités obtenues à partir d'une transcription phonétique, qui a l'inconvénient
de devoir être corrigée manuellement pour un résultat optimal, ou de façon automatique
selon des critères de stabilité spectrale. A partir de ce type de segmentation, et
pour chacun des segments, on cherche l'unité de synthèse la plus proche dans un dictionnaire
obtenu lors d'une phase d'apprentissage préalable, et contenant des unités de synthèse
de référence.
[0004] Le schéma de codage utilisé consiste à modéliser l'espace acoustique du locuteur
(ou des locuteurs) par des modèles de Markov cachés (HMM ou Hidden Markov Models).
Ces modèles dépendants ou indépendants du locuteur sont obtenus lors d'une phase d'apprentissage
préalable à partir d'algorithmes identiques à ceux mis en oeuvre dans les systèmes
de reconnaissance de la parole. La différence essentielle réside dans le fait que
les modèles sont appris sur des vecteurs regroupés par classes de façon automatique
et non de manière supervisée à partir d'une transcription phonétique. La procédure
d'apprentissage consiste alors à obtenir de façon automatique la segmentation des
signaux d'apprentissage (par exemple en utilisant la méthode dite de décomposition
temporelle), à regrouper les segments obtenus dans un nombre fini de classes correspondant
au nombre de modèles HMM que l'on souhaite construire. Le nombre de modèles est directement
lié à la résolution recherchée pour représenter l'espace acoustique du ou des locuteurs.
Une fois obtenus, ces modèles permettent de segmenter le signal à coder en utilisant
un algorithme de Viterbi. La segmentation permet d'associer à chaque segment, l'indice
de classe et sa longueur. Cette information n'étant pas suffisante pour modéliser
l'information spectrale, pour chacune des classes une réalisation de trajectoire spectrale
est sélectionnée parmi plusieurs unités dites de synthèse. Ces unités sont extraites
de la base d'apprentissage lors de sa segmentation utilisant les modèles HMM. Il est
possible de tenir compte du contexte par exemple en utilisant plusieurs sous-classes
permettant de prendre en compte les transitions d'une classe vers l'autre. Un premier
indice indique la classe à laquelle appartient le segment considéré, un deuxième indice
précise la sous-classe à laquelle il appartient comme étant l'indice de classe du
segment précédent. L'indice de sous-classe n'est donc pas à transmettre, et l'indice
de classe doit être mémorisé pour le segment suivant. Les sous-classes ainsi définies
permettent de tenir compte des différentes transitions vers la classe associée au
segment considéré. A l'information spectrale on ajoute l'information de prosodie,
c'est-à-dire la valeur des paramètres de pitch et d'énergie et leurs évolutions.
[0005] Dans l'optique de réaliser un codeur très bas débit, il est nécessaire d'optimiser
l'allocation des bits et donc du débit entre les paramètres associés à l'enveloppe
spectrale et à l'information de prosodie . Une méthode classique consiste dans un
premier temps à sélectionner l'unité la plus proche d'un point de vue spectral puis,
une fois l'unité sélectionnée, à coder l'information de prosodie, soit de façon indépendante
de l'unité sélectionnée.
[0006] Le procédé selon la présente invention propose une nouvelle méthode de sélection
de l'unité de synthèse la plus proche conjointement à la modélisation et à la quantification
des informations supplémentaires nécessaires au niveau du décodeur pour la restitution
du signal de parole.
[0007] L'invention concerne un procédé de sélection d'unités de synthèse d'une information
pouvant être décomposée en unités de synthèse. Il
comporte au moins les étapes suivantes :
pour un segment d'information considéré :
- déterminer la valeur F0 de la fréquence fondamentale moyenne pour le segment d'information
considéré,
- sélectionner un sous-ensemble d'unités de synthèse défini comme étant celui dont les
valeurs moyennes de pitch sont les plus proches de la valeur de pitch F0,
- appliquer un ou plusieurs critères de proximité aux unités de synthèse sélectionnées
pour déterminer une unité de synthèse représentative du segment d'information.
[0008] L'information est par exemple un segment de parole à coder et l'on utilise comme
critères de proximité la fréquence fondamentale ou pitch, ou la distorsion spectrale,
et/ou le profil d'énergie et on exécute une étape de fusion des critères utilisés
afin de déterminer l'unité de synthèse représentative.
[0009] Le procédé comporte par exemple une étape de codage et/ou une étape de correction
du pitch par modification du profil de synthèse.
[0010] L'étape de codage et/ou correction du pitch peut être une transformation linéaire
du profil du pitch d'origine.
[0011] Le procédé est par exemple utilisé pour la sélection et/ou le codage d'unités de
synthèse pour un codeur de parole très bas débit.
[0012] L'invention présente notamment les avantages suivants :
- le procédé permet d'optimiser le débit alloué à l'information de prosodie dans le
domaine de la parole.
- il permet de conserver, lors de la phase de codage, l'intégralité des unités de synthèse
déterminées lors de la phase d'apprentissage avec cependant un nombre de bits constant
pour coder l'unité de synthèse.
- Dans un schéma de codage indépendant du locuteur, ce procédé offre la possibilité
de couvrir l'ensemble des valeurs de pitch possibles (ou fréquences fondamentales)
et de sélectionner l'unité de synthèse en tenant compte en partie des caractéristiques
du locuteur.
- La sélection peut s'appliquer à tout système basé sur une sélection d'unités et donc
aussi à un système de synthèse à partir du texte.
[0013] D'autres caractéristiques et avantages de l'invention apparaîtront mieux à la lecture
de la description qui suit d'un exemple de réalisation non limitatif annexé des figures
qui représentent :
- La figure 1 un schéma de principe de sélection de l'unité de synthèse associée au
segment d'information à coder,
- La figure 2 un schéma de principe d'estimation des critères de similarité pour le
profil du pitch,
- La figure 3 un schéma de principe d'estimation des critères de similarité pour le
profil énergétique,
- La figure 4 un schéma de principe d'estimation des critères de similarité pour l'enveloppe
spectrale,
- La figure 5 un schéma de principe du codage du pitch par correction du profil de pitch
de synthèse.
[0014] Afin de mieux faire comprendre l'idée mise en oeuvre dans la présente l'invention,
l'exemple qui suit est donné à titre illustratif et nullement limitatif pour un procédé
mis en oeuvre dans un vocodeur, en particulier la sélection et le codage d'unités
de synthèse pour un codeur de parole très bas débit.
[0015] Pour rappel, au niveau d'un vocodeur, le signal de parole est analysé trame à trame
afin d'extraire les paramètres caractéristiques (paramètres spectraux, pitch, énergie).
Cette analyse se fait classiquement à l'aide d'une fenêtre glissante définie sur l'horizon
de la trame. Cette trame a une durée de l'ordre de 20 ms, et la mise à jour se fait
avec un décalage de la fenêtre d'analyse de l'ordre de 10ms à 20 ms.
[0016] Lors d'une phase d'apprentissage, un ensemble de modèles de Markov cachés (HMM, Hidden
Markov Model) sont appris. Ils permettent de modéliser des segments de parole (ensemble
de trames successives) pouvant être associés à des phonèmes si la phase d'apprentissage
est supervisée (segmentation et transcription phonétique disponibles) ou à des sons
spectralement stables dans le cas d'une segmentation obtenue de façon automatique.
On utilise ici 64 modèles HMM, qui permettent lors de la phase de reconnaissance d'associer
à chaque segment l'indice du modèle HMM identifié, et donc la classe à laquelle il
appartient. Les modèles HMM servent aussi à l'aide d'un algorithme de type Viterbi
à réaliser lors de la phase de codage la segmentation et la classification de chacun
des segments (appartenance à une classe). Chaque segment est donc identifié par un
indice compris entre 1 et 64 qui est transmis au décodeur.
[0017] Le décodeur utilise cet indice pour retrouver l'unité de synthèse dans le dictionnaire
construit lors de la phase d'apprentissage. Les unités de synthèse qui constituent
le dictionnaire sont simplement les séquences de paramètres associés aux segments
obtenus sur le corpus d'apprentissage.
[0018] Une classe du dictionnaire contient l'ensemble des unités associées à un même modèle
HMM. Chaque unité de synthèse est donc caractérisée par une séquence de paramètres
spectraux, une séquence de valeur de pitch (profil de pitch), une séquence de gains
(profil énergétique).
[0019] Afin d'améliorer la qualité de la synthèse, chaque classe (de 1 à 64) du dictionnaire
est subdivisée en 64 sous-classes, où chaque sous-classe contient les unités de synthèse
qui sont précédées temporellement par un segment appartenant à une même classe. Cette
approche permet de tenir compte du contexte passé, et donc d'améliorer la restitution
des zones transitoires d'une unité vers l'autre.
[0020] La présente invention concerne notamment un procédé de sélection d'une unité de synthèse
multicritères. Le procédé permet par exemple de tenir compte simultanément du pitch,
de la distorsion spectrale, et des profils d'évolution du pitch et de l'énergie.
[0021] Le procédé de sélection pour un segment de parole à coder comporte par exemple les
étapes de sélection schématisées à la figure 1 :
1) Extraire le pitch moyen F0 (fréquence fondamentale moyenne) sur le segment à coder composé de plusieurs trames.
Le pitch est par exemple calculé pour chaque trame T, les erreurs de pitch sont corrigées
en tenant compte de l'ensemble du segment afin d'éliminer les erreurs de détection
voisé/non voisé, et le pitch moyen est calculé sur l'ensemble des trames voisées du
segment.
Il est possible de représenter le pitch sur 5 bits, en utilisant par exemple un quantificateur
non uniforme (compression logarithmique) appliqué à la période de pitch.
La valeur du pitch de référence est par exemple obtenue à partir d'un générateur de
prosodie dans le cas d'une application en synthèse.
2) la valeur de pitch moyen F0 étant ainsi quantifiée, sélectionner un sous-ensemble d'unités de synthèse SE dans
la sous-classe considérée. Le sous-ensemble est défini comme étant celui dont les
valeurs moyennes de pitch sont les plus proches de la valeur de pitch F0.
Dans la configuration précédente cela conduit à retenir de façon systématique les
32 unités les plus proches selon le critère du pitch moyen. Il est donc possible de
retrouver ces unités au niveau du décodeur à partir du pitch moyen transmis.
3) Parmi les unités de synthèse ainsi sélectionnées, appliquer un ou plusieurs critères
de proximité ou de similarité, par exemple le critère de distorsion spectrale, et/ou
le critère de profil d'énergie et/ou le critère de pitch pour déterminer l'unité de
synthèse.
Lorsque l'on utilise plusieurs critères, une étape de fusion 3b) est réalisée pour
prendre la décision. L'étape de fusion des différents critères est réalisée par combinaison
linéaire ou non-linéaire. Les paramètres utilisés pour réaliser cette combinaison
peuvent être obtenus par exemple sur un corpus d'apprentissage en minimisant un critère
de distorsion spectrale sur le signal re-synthétisé. Ce critère de distorsion peut
avantageusement inclure une pondération perceptuelle soit au niveau des paramètres
spectraux utilisés, soit au niveau de la mesure de distorsion. Dans le cas d'une loi
de pondération non linéaire il est possible d'utiliser un réseau connexionniste (MLP,
Multi Layer Perceptron par exemple), de la logique floue, ou une autre technique.
4) Etape de codage du pitch
[0022] Le procédé peut comporter dans une variante de réalisation une étape de codage de
pitch par correction du profil de pitch de synthèse exposée en détail ci-après.
[0023] Le critère relatif au profil d'évolution du pitch permet en partie de tenir compte
de l'information de voisement. Il est cependant possible de le désactiver lorsque
le segment est totalement non voisé, ou que la sous-classe sélectionnée est aussi
non voisée. En effet, on peut remarquer principalement trois types de sous-classes
: les sous-classes contenant majoritairement des unités voisées, celles contenant
majoritairement des unités non voisées, et les sous-classes contenant majoritairement
des unités mixtes.
[0024] Le procédé selon l'invention ne se limite pas à optimiser le débit alloué à l'information
de prosodie mais permet aussi de conserver pour la phase de codage l'intégralité des
unités de synthèse obtenues lors de la phase d'apprentissage avec un nombre de bits
constant pour coder l'unité de synthèse. En effet l'unité de synthèse est caractérisée
à la fois par la valeur de pitch et par son indice. Cette approche permet dans un
schéma de codage indépendant du locuteur de couvrir l'ensemble des valeurs de pitch
possibles et de sélectionner l'unité de synthèse en tenant compte en partie des caractéristiques
du locuteur, il existe en effet pour un même locuteur une corrélation entre la plage
de variation du pitch et les caractéristiques du conduit vocal (en particulier la
longueur).
[0025] On peut remarquer que le principe de sélection d'unités décrit peut s'appliquer à
tout système dont le fonctionnement est basé sur une sélection d'unités et donc aussi
à un système de synthèse à partir du texte.
[0026] La figure 2 schématise un principe d'estimation des critères de similarité pour le
profil du pitch.
Le procédé comporte par exemple les étapes suivantes :
A1) sélectionner dans la sous-classe identifiée du dictionnaire des unités de synthèse
et à partir de la valeur moyenne du pitch, les N unités les plus proches au sens du
critère du pitch moyen. La suite du traitement se fait alors sur les profils de pitch
associés à ces N unités. Le pitch est extrait lors de la phase d'apprentissage sur
les unités de synthèse, et lors de la phase de codage sur le signal à coder. Les méthodes
possibles pour l'extraction du pitch sont nombreuses, cependant les méthodes hybrides,
combinant un critère temporel (AMDF, Average Magnitude Difference Function, ou autocorrélation
normalisée) et un critère fréquentiel (HPS, Harmonic Power Sum, structure en peigne,
...) sont potentiellement plus robustes.
A2) aligner temporellement les N profils avce celui du segment à coder, par exemple
par interpolation linéaire des N profils. Il est possible d'utiliser une technique
d'alignement plus optimale basée sur un algorithme de programmation dynamique (DTW
ou Dynamic Time Warping). L'algorithme s'applique sur les paramètres spectraux, les
autres paramètres pitch, énergie, etc sont alignés de manière synchrone aux paramètres
spectraux. Dans ce cas il faut transmettre les informations relatives au chemin d'alignement.
A3) calculer N mesures de similarités, entre les N profils de pitch alignés et le
profil de pitch du segment de parole à coder pour obtenir les N coefficients de similarité
{rp(1), rp(2), ....rp(N)}. Cette étape peut être réalisée au moyen d'une intercorrélation
normalisée.
L'alignement temporel peut être un alignement par ajustement simple des longueurs
(interpolation linéaire des paramètres). L'utilisation d'une simple correction des
longueurs des unités de synthèse permet notamment de ne pas transmettre d'information
relative au chemin d'alignement, le chemin d'alignement étant partiellement pris en
compte par les corrélations des profils de pitch et d'énergie.
Dans le cas de segments mixtes (co-existence au sein d'un même segment de trames voisées
et non voisées), l'utilisation des trames non voisées pour lesquelles le pitch est
arbitrairement positionné à zéro permet de tenir compte dans une certaine mesure de
l'évolution du voisement.
La figure 3 schématise le principe d'estimation des critères de similarité pour le
profil énergétique.
Le procédé comporte par exemple les étapes suivantes :
A4) extraire les profils d'évolution de l'énergie pour les N unités sélectionnées
comme indiqué précédemment, c'est-à-dire selon un critère de proximité du pitch moyen.
Selon la technique de synthèse utilisée, le paramètre d'énergie utilisé peut soit
correspondre à un gain (associé à un filtre de type LPC par exemple) ou une énergie
(l'énergie calculée sur la structure harmonique dans le cas d'une modélisation harmonique/stochastique
du signal). Enfin, l'estimation de l'énergie peut avantageusement se faire de manière
synchrone du pitch (1 valeur d'énergie par période de pitch). Les profils énergétiques
sont pré-calculés pour les unités de synthèse lors de la phase d'apprentissage.
A5) aligner temporellement les N profils avec celui des segments à coder, par exemple
par interpolation linéaire, ou par programmation dynamique (alignement non-linéaire)
de façon similaire à la méthode mise en oeuvre pour corriger le pitch.
A6) calculer N mesures de similarités, entre les profils des N valeurs d'énergie alignées
et le profil d'énergie du segment de parole à coder pour obtenir les N coefficients
de similarité {re(1), re(2), ...., re(N)}. Cette étape peut aussi être réalisée au
moyen d'une intercorrélation normalisée.
La figure 4 schématise le principe d'estimation des critères de similarité pour l'enveloppe
spectrale.
Le procédé comporte les étapes suivantes :
A7) aligner temporellement les N profils,
A8) déterminer les profils d'évolution des paramètres spectraux pour les N unités
sélectionnées comme indiqué précédemment, c'est-à-dire selon un critère de proximité
du pitch moyen. Il s'agit ici tout simplement de calculer le pitch moyen du segment
à coder, et de considérer les unités de synthèse de la sous-classe associée (indice
HMM courant pour définir la classe, indice HMM précédent pour définir la sous-classe)
qui ont un pitch moyen proche.
A9) calculer N mesures de similarités, entre la séquence spectrale du segment à coder
et les N séquences spectrales extraites des unités de synthèse sélectionnées pour
obtenir les N coefficients de similarité {rs(1), rs(2), ...., rs(N)}. Cette étape
peut être réalisée au moyen d'une intercorrélation normalisée.
[0027] La mesure de similarité peut être une distance spectrale.
[0028] L'étape A9) comprend par exemple une étape où l'on moyenne l'ensemble des spectres
d'un même segment et la mesure de similarité est une mesure d'intercorrélation.
[0029] Le critère de distorsion spectrale est par exemple calculé sur des structures harmoniques
ré-échantillonnées à pitch constant ou ré-échantillonnées au pitch du segment à coder,
après interpolation des structures harmoniques initiales.
[0030] Le critère de similarité va dépendre des paramètres spectraux utilisés (par exemple
du type de paramètres utilisés pour la représentation de l'enveloppe). Plusieurs types
de paramètres spectraux peuvent être utilisés, dans la mesure où ils permettent de
définir une mesure de distorsion spectrale. Dans le domaine du codage de la parole,
il est courant d'utiliser les paramètres LSP ou LSF (LSP, Line Spectral Pair, LSF,
Line Spectral Frequencies) dérivés d'une analyse par prédiction linéaire. Dans le
domaine de la reconnaissance vocale, les paramètres cepstraux sont généralement utilisés,
et ils peuvent soit être dérivés d'une analyse par prédiction linéaire (LPCC, Linear
Prediction Cepstrum Coefficients) ou estimés à partir d'un banc de filtres souvent
sur une échelle perceptuelle de type Mel ou Bark (MFCC, Mel Frequency Cepstrum Coefficients).
Il est aussi possible dans la mesure où on utilise une modélisation sinusoïdale de
la composante harmonique du signal de parole, d'utiliser directement les amplitudes
des fréquences harmoniques. Ces derniers paramètres étant estimés en fonction du pitch
ne peuvent être utilisés directement pour calculer une distance. Le nombre de coefficients
obtenus est en effet variable en fonction du pitch, contrairement aux paramètres LPCC,
MFCC ou LSF. Un pré-traitement consiste alors à estimer une enveloppe spectrale à
partir des amplitudes harmoniques (interpolation linéaire ou polynomiale de type spline)
et à réechantillonner l'enveloppe ainsi obtenue, soit en utilisant la fréquence fondamentale
du segment à coder, soit en utilisant une fréquence fondamentale constante (100 Hz
par exemple). Une fréquence fondamentale constante permet de pré-calculer l'ensemble
des structures harmoniques des unités de synthèse lors de la phase d'apprentissage.
Le re-échantillonnage se fait alors uniquement sur le segment à coder. D'autre part,
si on se limite à un alignement temporel par interpolation linéaire, il est possible
de moyenner les structures harmoniques sur l'ensemble des segments considérés. La
mesure de similarité peut alors être estimée simplement à partir de la structure harmonique
moyenne du segment à coder, et celle de l'unité de synthèse considérée. Cette mesure
de similarité peut aussi être une mesure d'intercorrélation normalisée. On peut aussi
noter que la procédure de ré-échantillonnage peut s'effectuer sur une échelle perceptuelle
des fréquences (Mel ou Bark).
[0031] Pour la procédure d'alignement temporel il est possible d'utiliser soit un algorithme
de programmation dynamique (DTW, Dynamic Time Warping), soit d'effectuer une interpolation
linéaire simple (ajustement linéaire des longueurs). Dans l'hypothèse où l'on ne souhaite
pas transmettre d'information supplémentaire relative au chemin d'alignement, il est
préférable d'utiliser une simple interpolation linéaire des paramètres. La prise en
compte du meilleur alignement est alors en partie réaliser par la procédure de sélection.
Codage du pitch par modification du profil de synthèse
[0032] Selon un mode de réalisation, le procédé comporte une étape de codage du pitch par
modification du profil de synthèse. Cela consiste à resynthétiser un profil de pitch
à partir de celui de l'unité de synthèse sélectionnée et un gain linéairement variable
sur la durée du segment à coder. Il suffit alors de transmettre une valeur supplémentaire
pour caractériser le gain correcteur sur l'ensemble du segment.
[0033] Le pitch reconstruit au niveau du décodeur est donné par l'équation suivante :

où
f0S(
n) est le pitch à la trame d'indice n de l'unité de synthèse.
Cela correspond à une transformation linéaire du profil du pitch.
Les valeurs optimales de a et b sont estimées au niveau du codeur en minimisant l'erreur
quadratique moyenne :

ce qui conduit aux relations suivantes :

et

où





Le coefficient a, ainsi que la valeur moyenne du pitch modélisé sont quantifiés et
transmis :


La valeur du coefficient b est obtenu au niveau du décodeur à partir de la relation
suivante :

où
〈f0S〉 est le pitch moyen de l'unité de synthèse.
Remarque : cette méthode de correction peut bien entendu s'appliquer au profil énergétique.
Exemple de débit associé au schéma de codage
[0034] Les informations relatives au débit associé au schéma de codage décrit précédemment
sont les suivantes :
- Indice de classe sur 6 bits (64 classes)
- Indice de l'unité sélectionnée sur 5 bits (32 unités par sous-classe)
- Longueur du segment sur 4 bits (de 3 à 18 trames)
[0035] Le nombre moyen de segments par seconde se situe entre 15 et 20; ce qui conduit à
un débit de base situé entre 225 et 300 bits/sec pour la configuration précédente.
A ce débit de base vient s'ajouter le débit nécessaire pour représenter l'information
de pitch et d'énergie.
- FO moyen sur 5 bits
- Coefficient correcteur du profil de pitch sur 5bits
- Gain correcteur sur 5 bits
[0036] Le débit associé à la prosodie se situe alors entre 225 et 300 bits/sec, ce qui conduit
à un débit global entre 450 et 600 bits/sec.
Références
[0037]
[1] G. Baudoin, F. El Chami, "Corpus based very low bit rate speech coder", Proc.
Conf. IEEE ICASSP 2003, Hong-Kong, 2003.
[2] G. Baudoin, J. Cernocky, P. Gournay, G. Chollet, "Codage de la parole à bas et
très bas debit", Annales des télécommunications, Vol. 55, N 9-10 Pages 421-456, Nov.
2000.
[3] G. Baudoin, F. Capman, J. Cernocky, F. El-chami, M. Charbit, G. Chollet, D. Petrovska-Delacrétaz.
"Advances in Very Low Bit Rate Speech Coding using Recognition and Synthesis Techniques",
TSD' 2002, pp. 269-276, Brno, Czech Republic, Sept 2002.
[4] K.Lee, R.Cox, 'A segmental coder based on a concatenative TTS", in Speech Communications,
Vol. 38, pp 89-100, 2002.
[5] K.Lee, R.Cox, "A very low bit rate speech coder based on a recognition/synthesis
paradigm", in IEEE on ASSP, Vol; 9, pp 482-491, July 2001.
1. Procédé de sélection d'unités de synthèse d'une information pouvant être décomposée
en unités de synthèse
caractérisé en ce qu'il comporte au
moins les étapes suivantes :
pour un segment d'information considéré :
• déterminer la valeur F0 de la fréquence fondamentale moyenne pour le segment d'information
considéré,
• sélectionner un sous-ensemble d'unités de synthèse défini comme étant celui dont
les valeurs moyennes de pitch sont les plus proches de la valeur de pitch F0,
• appliquer un ou plusieurs critères de proximité aux unités de synthèse sélectionnées
pour déterminer une unité de synthèse représentative du segment d'information.
2. Procédé de sélection d'unités de synthèse selon la revendication 1 caractérisé en ce que l'information est un segment de parole à coder et en ce que l'on utilise comme critères de proximité la fréquence fondamentale ou pitch, la distorsion
spectrale, et/ou le profil d'énergie et on exécute une étape de fusion des critères
afin de déterminer l'unité de synthèse représentative.
3. Procédé de sélection d'unités selon la revendication 1 caractérisé en ce que pour un segment de parole à coder le pitch de référence est obtenu à partir d'un
générateur de prosodie.
4. Procédé selon la revendication 2
caractérisé en ce que l'estimation du critère de similarité pour le profil du pitch comporte au moins les
étapes suivantes :
A1) sélectionner dans la sous-classe identifiée du dictionnaire des unités de synthèse
et à partir de la valeur moyenne du pitch, les N unités les plus proches au sens du
critère du pitch moyen,
A2) aligner temporellement les N profils avec celui du segment à coder,
A3) calculer N mesures de similarités, entre les N profils de pitch alignés et le
profil du pitch du segment de parole à coder pour obtenir les N coefficients de similarité
{rp(1), rp(2), ....rp(N)}.
5. Procédé selon la revendication 2
caractérisé en ce que l'estimation de similarité pour le profil énergétique comporte au moins les étapes
suivantes :
A4) déterminer les profils d'évolution de l'énergie pour les N unités sélectionnées
selon un critère de proximité du pitch moyen.
A5) aligner temporellement les N profils avec celui du segment à coder,
A6) calculer N mesures de similarités, entre les N profils de d'énergie alignés et
le profil d'énergie du segment de parole à coder pour obtenir les N coefficients de
similarité {re(1), re(2), ...., re(N)}.
6. Procédé selon la revendication 2
caractérisé en ce que l'estimation des critères de similarité pour l'enveloppe spectrale comporte au moins
les étapes suivantes :
A7) aligner temporellement les N profils avec celui du segment à coder,
A8) déterminer les profils d'évolution des paramètres spectraux pour les N unités
sélectionnées selon un critère de proximité du pitch moyen,
A9) calculer N mesures des similarités, entre la séquence spectrale du segment à coder
et les N séquences spectrales extraites correspondant du segment de parole à coder
pour obtenir les N coefficients de similarité {rs(1), rs(2), ...., rs(N)},
7. Procédé selon l'une des revendications 4, 5 et 6 caractérisé en ce que l'alignement temporel est un alignement temporel obtenu par programmation dynamique
(DTW) ou un alignement par ajustement linéaire des longueurs.
8. Procédé selon l'une des revendications 4, 5 et 6 caractérisé en ce que la mesure de similarité est une mesure d'intercorrélation normalisée.
9. Procédé selon la revendication 6 caractérisé en ce que la mesure de similarité est une mesure de distance spectrale.
10. Procédé selon la revendication 6 caractérisé en ce que l'étape A9) comprend une étape où l'ensemble des spectres d'un même segment est moyenné
et en ce que la mesure de similarité est une mesure d'intercorrélation.
11. Procédé selon la revendication 6 caractérisé en ce que le critère de distorsion spectrale est calculé sur des structures harmoniques ré-échantillonnées
à pitch constant ou ré-échantillonnées au pitch du segment à coder, après interpolation
des structures harmoniques initiales.
12. Procédé selon l'une des revendications 1 à 11 caractérisé en ce qu'il comporte une étape de codage et/ou une étape de correction du pitch par modification
du profil de synthèse.
13. Procédé selon la revendication 12 caractérisé en ce que l'étape de codage et/ou correction du pitch est une transformation linéaire du profil
du pitch d'origine.
14. Utilisation du procédé selon l'une des revendications 1 à 12 pour la sélection et/ou
le codage d'unités de synthèse pour un codeur de parole très bas débit.