[go: up one dir, main page]

FR3058253A1 - METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, SYSTEM AND CORRESPONDING COMPUTER PROGRAM. - Google Patents

METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, SYSTEM AND CORRESPONDING COMPUTER PROGRAM. Download PDF

Info

Publication number
FR3058253A1
FR3058253A1 FR1660550A FR1660550A FR3058253A1 FR 3058253 A1 FR3058253 A1 FR 3058253A1 FR 1660550 A FR1660550 A FR 1660550A FR 1660550 A FR1660550 A FR 1660550A FR 3058253 A1 FR3058253 A1 FR 3058253A1
Authority
FR
France
Prior art keywords
audio data
current
voice
speaker
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1660550A
Other languages
French (fr)
Other versions
FR3058253B1 (en
Inventor
Xavier Priem
Yvan Ride
Ahmed Gabal
Xingjun Wang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Voxpass
Original Assignee
Voxpass
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Voxpass filed Critical Voxpass
Priority to FR1660550A priority Critical patent/FR3058253B1/en
Priority to PCT/EP2017/077373 priority patent/WO2018077987A1/en
Publication of FR3058253A1 publication Critical patent/FR3058253A1/en
Application granted granted Critical
Publication of FR3058253B1 publication Critical patent/FR3058253B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/06Decision making techniques; Pattern matching strategies
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Game Theory and Decision Science (AREA)
  • Telephonic Communication Services (AREA)

Abstract

L'invention se rapporte à un procédé et à un système de traitement de données audio, lesdites données audio étant issues d'un échange vocal entre au moins deux locuteurs. Le procédé comprend une phase de traitement (P20) des données audio qui comprenant une étape d'identification de locuteur (P202) laquelle comprend une étape de découpage desdites données audio, en fonction d'au moins un modèle de pause, délivrant un ensemble de données audio segmentées. Selon l'invention le procédé comprend, pour au moins donnée audio courante dudit ensemble de données audio segmentées, la reconnaissance d'au moins un mot prononcé et l'identification du locuteur ayant prononcé de mot en fonction de données d'identification vocale de référence et de données d'identification vocale courantes issues des données audio segmentées.The invention relates to a method and a system for processing audio data, said audio data being derived from a voice exchange between at least two speakers. The method includes a processing step (P20) of the audio data which includes a speaker identification step (P202) which comprises a step of cutting said audio data, according to at least one pause pattern, outputting a set of segmented audio data. According to the invention the method comprises, for at least current audio data of said segmented audio data set, recognition of at least one spoken word and identification of the spoken word speaker according to voice reference identification data. and common voice identification data from the segmented audio data.

Description

© N° de publication : 3 058 253 (à n’utiliser que pour les commandes de reproduction)© Publication no .: 3,058,253 (use only for reproduction orders)

©) N° d’enregistrement national : 16 60550 ® RÉPUBLIQUE FRANÇAISE©) National registration number: 16 60550 ® FRENCH REPUBLIC

INSTITUT NATIONAL DE LA PROPRIÉTÉ INDUSTRIELLENATIONAL INSTITUTE OF INDUSTRIAL PROPERTY

COURBEVOIE © Int Cl8 : G 10 L 17/02 (2017.01), G 10 L 17/04, 15/07COURBEVOIE © Int Cl 8 : G 10 L 17/02 (2017.01), G 10 L 17/04, 15/07

DEMANDE DE BREVET D'INVENTION A1A1 PATENT APPLICATION

©) Date de dépôt : 28.10.16. ©) Date of filing: 28.10.16. (© Demandeur(s) : VOXPASS Société par actions simpli- (© Applicant (s): VOXPASS Simplified joint-stock company (© Priorité : (© Priority: fiée — FR. trusted - FR. @ Inventeur(s) : PRIEM XAVIER, RIDE YVAN, GABAL @ Inventor (s): PRIEM XAVIER, RIDE YVAN, GABAL AHMED et WANG XINGJUN. AHMED and WANG XINGJUN. (43) Date de mise à la disposition du public de la (43) Date of public availability of the demande : 04.05.18 Bulletin 18/18. request: 04.05.18 Bulletin 18/18. ©) Liste des documents cités dans le rapport de ©) List of documents cited in the report recherche préliminaire : Se reporter à la fin du preliminary research: Refer to end of présent fascicule present booklet (© Références à d’autres documents nationaux (© References to other national documents ©) Titulaire(s) : VOXPASS Société par actions simplifiée. ©) Holder (s): VOXPASS Simplified joint-stock company. apparentés : related: ©) Demande(s) d’extension : ©) Extension request (s): © Mandataire(s) : CABINET PATRICE VIDON. © Agent (s): CABINET PATRICE VIDON.

PROCEDE DE TRAITEMENT DE DONNEES AUDIO ISSUES D'UN ECHANGE VOCAL, SYSTEME ET PROGRAMME D'ORDINATEUR CORRESPONDANT.METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, CORRESPONDING SYSTEM AND COMPUTER PROGRAM.

FR 3 058 253 - A1 yV) L'invention se rapporte à un procédé et à un système de traitement de données audio, lesdites données audio étant issues d'un échange vocal entre au moins deux locuteurs. Le procédé comprend une phase de traitement (P20) des données audio qui comprenant une étape d'identification de locuteur (P202) laquelle comprend une étape de découpage desdites données audio, en fonction d'au moins un modèle de pause, délivrant un ensemble de données audio segmentées. Selon l'invention le procédé comprend, pour au moins donnée audio courante dudit ensemble de données audio segmentées, la reconnaissance d'au moins un mot prononcé et l'identification du locuteur ayant prononcé de mot en fonction de données d'identification vocale de référence et de données d'identification vocale courantes issues des données audio segmentées.FR 3,058,253 - A1 yV) The invention relates to a method and a system for processing audio data, said audio data being obtained from a voice exchange between at least two speakers. The method comprises a processing phase (P20) of the audio data which comprises a speaker identification step (P202) which comprises a step of cutting out said audio data, according to at least one pause model, delivering a set of segmented audio data. According to the invention, the method comprises, for at least current audio data of said set of segmented audio data, the recognition of at least one spoken word and the identification of the speaker who said the word according to reference voice identification data. and common voice identification data from the segmented audio data.

ii

Procédé de traitement de données audio issues d'un échange vocal, système et programme d'ordinateur correspondant.Method for processing audio data from a voice exchange, system and corresponding computer program.

1. Domaine1. Domain

La présente technique se rapporte au traitement de données vocales d'utilisateurs. La présente technique se rapporte plus particulièrement à l'identification vocale d'utilisateurs qui souhaitent avoir accès à un ensemble de services par l'intermédiaire de leurs empreintes vocales. Plus spécifiquement encore, il est présenté une technique d'accès à un service en ligne comprenant une ségrégation et une segmentation multi voix.The present technique relates to the processing of users' voice data. The present technique relates more particularly to the voice identification of users who wish to have access to a set of services by means of their voice fingerprints. More specifically still, a technique for accessing an online service is presented, comprising segregation and multi-voice segmentation.

2. Art Antérieur2. Prior Art

L'interaction grandissante de l'homme avec le monde numérique va requérir une utilisation renforcée de la reconnaissance vocale, notamment en s'étendant à la relation entre l'être humain et les objets. Les modes d'interaction les plus connus sont les claviers, les souris, les écrans et surfaces tactiles... La voix n'est aujourd'hui utilisée que comme outil de contrôle de services simples (réponse vocale interactive IVR, de l'anglais pour « Interactive Voice Response », sélection de choix sur des automates vocaux ayant remplacé les standardistes). Le contrôle vocal pénètre également les usages automobiles, pour les fonctions non vitales comme la sélection de destination du système de navigation ou le contrôle du volume sonore de l'autoradio. Ainsi, l'introduction massive d'intelligence numérique dans des objets de la vie courante, du réfrigérateur connecté à la voiture, en passant par des services de type « Smart City » (ville intelligente), entraîne un besoin crucial d'un interfaçage efficace et acceptable par tout type de public avec son environnement.The growing interaction of man with the digital world will require a reinforced use of voice recognition, in particular by extending to the relationship between humans and objects. The best known modes of interaction are keyboards, mice, screens and touch surfaces ... Voice is only used today as a tool for controlling simple services (IVR interactive voice response, from English for "Interactive Voice Response", selection of choices on voice automats having replaced the switchboard operators). Voice control also penetrates automotive uses, for non-vital functions such as destination selection of the navigation system or control of the sound volume of the car radio. Thus, the massive introduction of digital intelligence into everyday objects, from the refrigerator connected to the car, via “Smart City” type services, creates a crucial need for effective interfacing. and acceptable by any type of public with its environment.

Il n'est pas possible de converser de façon complexe avec un objet ou un automate comme de nombreux auteurs de science-fiction ont pu l'imaginer. Des progrès ont été faits, mais à la fois le taux de reconnaissance et la prise en compte de la complexité de la conversation sont encore à améliorer. Le monde numérique ne sera vraiment accessible à tout le monde que lorsque tout le monde peut interagir naturellement et intuitivement avec celuici. Pour ce faire, il est nécessaire d'améliorer le taux de la reconnaissance vocale d'une part et d'améliorer la capacité d'un système l'utilisant à rendre une transcription correcte de l'échange vocal. L'objet de la présente n'est pas de décrire de nouveaux algorithmes de reconnaissance mais plutôt de se concentrer sur le système de reconnaissance et sur son fonctionnement.It is not possible to converse in a complex way with an object or an automaton as many science fiction authors have imagined. Progress has been made, but both the recognition rate and the consideration of the complexity of the conversation still need to be improved. The digital world will only be truly accessible to everyone when everyone can interact naturally and intuitively with it. To do this, it is necessary to improve the rate of voice recognition on the one hand and to improve the capacity of a system using it to render a correct transcription of the voice exchange. The purpose of this is not to describe new recognition algorithms but rather to focus on the recognition system and how it works.

La problématique de traitement audiovisuel de conférence est investiguée depuis de nombreuses années, notamment pour le traitement informatisé de conférence comprenant des participants locaux et des participants distants. On a plus particulièrement décrit et présenté des systèmes de spatialisation de conférences audio visuelles, comprenant un suivi des participants, notamment un suivi des participants prenant la parole (intervenants) par rapport à des participants spectateurs, chaque participants pouvant alternativement jouer le rôle d'intervenant et de spectateur. Par ailleurs, la problématique d'identification et de reconnaissance de la parole a également été investiguée depuis de nombreuses années, essentiellement selon deux axes qui sont d'une part la reconnaissance et la retranscription de la parole en texte et d'autre part l'identification vocale de locuteur. Les techniques de reconnaissance et la retranscription de la parole se divise essentiellement en deux catégories : d'une part les techniques « universelles » qui ne visent pas particulièrement un utilisateur et qui permettent de reconnaître des ordres ou des instructions simples (il s'agit des IVR ou des assistants vocaux de type SIRI™ ou Google Talk™). Les techniques mises en œuvre en visent pas particulièrement à reconnaître un utilisateur spécifique, mais sont adaptées à la reconnaissance de tout type d'utilisateur, et ce sans nécessiter d'apprentissage particulier. A l'inverse, les techniques « spécifiques », mises en œuvre par exemple dans des logiciels bureautiques de reconnaissance, sont basées sur un apprentissage préalable de la voix, de la diction et plus généralement de la manière de parler d'un utilisateur, et ce dans le but de retranscrire de la manière la plus fidèle possible, les textes dictés par l'utilisateur.The problem of audiovisual conference processing has been investigated for many years, in particular for computerized conference processing comprising local participants and remote participants. We have more particularly described and presented spatialization systems of audio visual conferences, comprising a follow-up of the participants, in particular a follow-up of the participants speaking (speakers) with respect to the spectator participants, each participant being able to play the role of speaker and spectator. In addition, the problem of identification and recognition of speech has also been investigated for many years, essentially along two axes which are on the one hand the recognition and transcription of speech into text and on the other voice identification of speaker. Speech recognition and transcription techniques are essentially divided into two categories: on the one hand, "universal" techniques which are not aimed specifically at a user and which make it possible to recognize simple orders or instructions (these are IVR or SIRI ™ or Google Talk ™ voice assistants). The techniques implemented do not particularly aim to recognize a specific user, but are adapted to the recognition of any type of user, and this without requiring any particular training. Conversely, the “specific” techniques, implemented for example in office recognition software, are based on prior learning of the voice, diction and more generally of the manner of speaking of a user, and this in order to retranscribe as faithfully as possible, the texts dictated by the user.

Chacune des techniques décrites précédemment est associée à une problématique donnée et indépendante. IL n'existe pas de solution multiplexée qui puisse répondre à d'autres besoins. Il existe donc un besoin de fournir une solution de reconnaissance flexible, pouvant s'adapter en fonction d'un contexte donné, et plus particulièrement en fonction d'un contexte de conférence.Each of the techniques described above is associated with a given and independent problem. There is no multiplexed solution that can meet other needs. There is therefore a need to provide a flexible recognition solution, which can be adapted according to a given context, and more particularly according to a conference context.

3. Résumé de l'invention3. Summary of the invention

La technique proposée ne présente pas ces inconvénients de l'art antérieur. Plus particulièrement, la technique proposée se rapporte à un procédé de traitement de données audio, lesdites données audio étant issues d'un échange vocal entre au moins deux locuteurs, ledit procédé comprenant une phase de traitement des données audio comprenant une étape d'identification de locuteur laquelle comprend une étape de découpage desdites données audio, en fonction d'au moins un modèle de pause, délivrant un ensemble de données audio segmentées. Ledit procédé comprend, pour au moins donnée audio courante dudit ensemble de données audio segmentées :The proposed technique does not have these drawbacks of the prior art. More particularly, the proposed technique relates to a method of processing audio data, said audio data being derived from a voice exchange between at least two speakers, said method comprising a phase of processing audio data comprising a step of identifying speaker which comprises a step of splitting said audio data, as a function of at least one pause model, delivering a set of segmented audio data. Said method comprises, for at least current audio data of said set of segmented audio data:

au moins une étape de reconnaissance vocale de ladite donnée audio courante, mise en œuvre par l'intermédiaire d'au moins un moteur de reconnaissance vocale, délivrant au moins un mot reconnu ou un indicateur d'absence de reconnaissance ; lorsqu'au moins un moteur de reconnaissance vocale délivre au moins un mot reconnu :at least one step of voice recognition of said current audio data, implemented by means of at least one voice recognition engine, delivering at least one recognized word or an indicator of absence of recognition; when at least one voice recognition engine delivers at least one recognized word:

une étape de recherche, au sein d'une basse de données, d'au moins un mot de référence correspondant audit au moins un mot reconnu, délivrant au moins une donnée d'identification vocale de référence ;a step of searching, within a database, for at least one reference word corresponding to said at least one recognized word, delivering at least one reference voice identification datum;

une étape d'obtention, à partir de ladite donnée audio courante, d'une donnée d'identification vocale courante ;a step of obtaining, from said current audio data, a current voice identification data;

une étape de calcul d'au moins une correspondance entre ladite donnée d'identification vocale courante et ladite au moins une donnée d'identification vocale de référence, délivrant au moins un score de correspondance ; et lorsqu'un score de correspondance excède un seuil prédéterminé, une étape d'attribution de ladite donnée audio courante à l'un desdits au moins deux interlocuteurs.a step of calculating at least one correspondence between said current voice identification data and said at least one reference voice identification data, delivering at least one correspondence score; and when a correspondence score exceeds a predetermined threshold, a step of allocating said current audio data to one of said at least two interlocutors.

Selon une caractéristique particulière, l'étape d'obtention, à partir de ladite donnée audio courante, d'une donnée d'identification vocale courante comprend :According to a particular characteristic, the step of obtaining, from said current audio data, a current voice identification data comprises:

une étape d'application, sur ladite donnée audio courante, laquelle prend la forme d'un signal audio x(t) monodimensionnel, d'une transformée de Fourier à court terme (TFCT), délivrant une matrice X, dite matrice d'énergie, de taille mxn, m canaux fréquentiels et n trames temporelles et dont l'échelle de fréquence est comprise entre Oet 1kHz ;a step of applying, on said current audio data item, which takes the form of a one-dimensional audio signal x (t), a short-term Fourier transform (TFCT), delivering an X matrix, called an energy matrix , of size mxn, m frequency channels and n time frames and whose frequency scale is between O and 1 kHz;

une étape de normalisation des valeurs de ladite matrice X, délivrant une matrice normalisée laquelle constitue la donnée d'identification vocale courante.a step of normalizing the values of said matrix X, delivering a standardized matrix which constitutes the current voice identification data.

Selon une caractéristique particulière, l'application de ladite transformée de fourrier à court terme sur ledit signal audio x(t) mono dimensionnel est effectué à un pas de temps de 40 ms.According to a particular characteristic, the application of said short-term Fourier transform on said mono dimensional audio signal x (t) is carried out at a time step of 40 ms.

Selon une caractéristique particulière, les valeurs des éléments de la matrice normalisée sont comprises entre 0 et 100.According to a particular characteristic, the values of the elements of the normalized matrix are between 0 and 100.

Selon une caractéristique particulière, ladite au moins une donnée d'identification vocale de référence se présente également sou la forme d'une matrice d'énergie normalisée, préalablement enregistrée au sein de ladite base de données.According to a particular characteristic, said at least one reference voice identification datum also takes the form of a standardized energy matrix, previously recorded in said database.

Selon une caractéristique particulière, l'étape de calcul d'au moins une correspondance, délivrant le score de correspondance, comprend une étape de détermination d'une valeur de corrélation de Pearson de la donnée d'identification vocale courante et de ladite au moins une donnée d'identification vocale de référence.According to a particular characteristic, the step of calculating at least one correspondence, delivering the correspondence score, comprises a step of determining a Pearson correlation value of the current voice identification datum and of said at least one reference voice identification data.

Selon une caractéristique particulière le procédé comprend, préalablement à ladite phase de traitement, une phase d'obtention, pour chacun desdits au moins deux locuteurs, d'une empreinte vocale individuelle comprenant lesdites données d'identification vocale de référence.According to a particular characteristic, the method comprises, prior to said processing phase, a phase of obtaining, for each of said at least two speakers, an individual voice print comprising said reference voice identification data.

Selon une caractéristique particulière, ladite phase de traitement comprend en outre les étapes suivantes :According to a particular characteristic, said processing phase further comprises the following steps:

enregistrement, sous la forme d'au moins un flux audio principal dudit échange verbal ;recording, in the form of at least one main audio stream of said verbal exchange;

lorsqu'aucun flux audio n'existe pour le locuteur courant, création d'un flux audio propre au locuteur courant ;when no audio stream exists for the current speaker, creation of an audio stream specific to the current speaker;

marquage temporel, dans ledit au moins un flux audio principal et dans ledit flux audio propre, en utilisant une donnée représentative dudit locuteur courant.time stamping, in said at least one main audio stream and in said own audio stream, using data representative of said current speaker.

Selon un autre aspect, la présente technique se rapporte également à système conçu pour la mise en œuvre de la méthode précédemment décrite.According to another aspect, the present technique also relates to a system designed for the implementation of the method previously described.

Selon une implémentation préférée, les différentes étapes des procédés selon la technique proposée sont mises en œuvre par un ou plusieurs logiciels ou programmes d'ordinateur, comprenant des instructions logicielles destinées à être exécutées par un processeur de données d'un module relais selon la technique proposée et étant conçu pour commander l'exécution des différentes étapes des procédés.According to a preferred implementation, the different steps of the methods according to the proposed technique are implemented by one or more software or computer programs, comprising software instructions intended to be executed by a data processor of a relay module according to the technique proposed and being designed to control the execution of the different stages of the processes.

En conséquence, la technique proposée vise aussi un programme, susceptible d'être exécuté par un ordinateur ou par un processeur de données, ce programme comportant des instructions pour commander l'exécution des étapes d'un procédé tel que mentionné cidessus.Consequently, the proposed technique also relates to a program, capable of being executed by a computer or by a data processor, this program comprising instructions for controlling the execution of the steps of a method as mentioned above.

Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable.This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other desirable form.

La technique proposée vise aussi un support d'informations lisible par un processeur de données, et comportant des instructions d'un programme tel que mentionné ci-dessus.The proposed technique also relates to an information medium readable by a data processor, and comprising instructions of a program as mentioned above.

Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette (floppy dise) ou un disque dur.The information medium can be any entity or device capable of storing the program. For example, the support may include a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or else a magnetic recording means, for example a floppy disk or a disc. hard.

D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon la technique proposée peut être en particulier téléchargé sur un réseau de type Internet.On the other hand, the information medium can be a transmissible medium such as an electrical or optical signal, which can be routed via an electrical or optical cable, by radio or by other means. The program according to the proposed technique can in particular be downloaded from a network of the Internet type.

Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question.Alternatively, the information medium can be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the process in question.

Selon un mode de réalisation, la technique proposée est mise en œuvre au moyen de composants logiciels et/ou matériels. Dans cette optique, le terme module peut correspondre dans ce document aussi bien à un composant logiciel, qu'à un composant matériel ou à un ensemble de composants matériels et logiciels.According to one embodiment, the proposed technique is implemented by means of software and / or hardware components. In this perspective, the term module can correspond in this document as well to a software component, as to a hardware component or to a set of hardware and software components.

Un composant logiciel correspond à un ou plusieurs programmes d'ordinateur, un ou plusieurs sous-programmes d'un programme, ou de manière plus générale à tout élément d'un programme ou d'un logiciel apte à mettre en œuvre une fonction ou un ensemble de fonctions, selon ce qui est décrit ci-dessous pour le module concerné. Un tel composant logiciel est exécuté par un processeur de données d'une entité physique (terminal, serveur, passerelle, routeur, etc.) et est susceptible d'accéder aux ressources matérielles de cette entité physique (mémoires, supports d'enregistrement, bus de communication, cartes électroniques d'entrées/sorties, interfaces utilisateur, etc.).A software component corresponds to one or more computer programs, one or more subroutines of a program, or more generally to any element of a program or of software capable of implementing a function or a set of functions, as described below for the module concerned. Such a software component is executed by a data processor of a physical entity (terminal, server, gateway, router, etc.) and is capable of accessing the hardware resources of this physical entity (memories, recording media, bus communication, electronic input / output cards, user interfaces, etc.).

De la même manière, un composant matériel correspond à tout élément d'un ensemble matériel (ou hardware) apte à mettre en œuvre une fonction ou un ensemble de fonctions, selon ce qui est décrit ci-dessous pour le module concerné. Il peut s'agir d'un composant matériel programmable ou avec processeur intégré pour l'exécution de logiciel, par exemple un circuit intégré, une carte à puce, une carte à mémoire, une carte électronique pour l'exécution d'un micrologiciel (firmware), etc.In the same way, a hardware component corresponds to any element of a hardware assembly (or hardware) capable of implementing a function or a set of functions, according to what is described below for the module concerned. It can be a programmable hardware component or with an integrated processor for the execution of software, for example an integrated circuit, a smart card, a memory card, an electronic card for the execution of firmware ( firmware), etc.

Chaque composante du système précédemment décrit met bien entendu en œuvre ses propres modules logiciels.Each component of the system described above naturally implements its own software modules.

Les différents modes de réalisation mentionnés ci-dessus ainsi que les différentes caractéristiques qui les constituent, sont combinables entre eux pour la mise en œuvre de la technique proposée.The various embodiments mentioned above as well as the various characteristics which constitute them, can be combined with one another for the implementation of the proposed technique.

4. Figures4. Figures

D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels :Other characteristics and advantages of the invention will appear more clearly on reading the following description of a preferred embodiment, given by way of simple illustrative and nonlimiting example, and of the appended drawings, among which:

la figure 1 expose l'architecture d'un système objet de la présente ; la figure 2 expose les différentes phases de traitement d'un flux audio ; la figure 3 expose l'identification d'un locuteur parmi deux locuteurs possible ; la figure 4 présente un exemple de matrice d'énergie.Figure 1 shows the architecture of a system object of the present; Figure 2 shows the different phases of processing an audio stream; Figure 3 shows the identification of a speaker among two possible speakers; Figure 4 shows an example of an energy matrix.

5. Description5. Description

5.1. Éléments Généraux.5.1. General elements.

Comme explicité précédemment, le principe général de l'invention consiste à mettre en œuvre plusieurs moteurs de traitement et de reconnaissance de la voix, et ce au sein d'un système de traitement de la parole accessible en ligne et pouvant répondre à des besoins généraux. Le système objet de la présente est implémenté par exemple à l'aide d'une architecture de traitement distribuée (de type « cloud ») dans laquelle l'accès aux ressources (de traitement informatique) est effectué à la demande. Le système comprend d'une part un ensemble de moteurs de reconnaissance vocale, ces moteurs étant conformés pour effectuer d'une part des tâches d'identification vocale, permettant d'identifier un locuteur (la fonctionnalité d'identification vocale est décrite par la suite) et d'autre part des tâches de reconnaissance vocale (la fonctionnalité de reconnaissance vocale est décrite par la suite). Le système objet de la présente comprend également un moteur de traitement de locuteurs. Ce moteur de traitement comprend d'une part un composant de gestion de locuteurs enregistrés et un composant de traitement de locuteurs non enregistrés. Ce moteur de traitement de locuteurs comprend un ensemble d'interfaces de communication (de type « API ») avec les moteurs de reconnaissance vocale. Le composant de traitement de locuteurs enregistrés permet l'enregistrement, la mise à jour des données vocales (et notamment l'enregistrement et la mise à jour de signatures vocales) de locuteurs du système. Le composant de traitement de locuteurs non enregistrés permet l'enregistrement et le traitement, de manière automatique, de données vocales en provenance de locuteurs inconnus. La figure 1 illustre globalement l'architecture du système objet de la présente.As explained above, the general principle of the invention consists in implementing several speech processing and recognition engines, within a speech processing system accessible online and capable of meeting general needs. . The system object of the present is implemented for example using a distributed processing architecture (of “cloud” type) in which access to resources (computer processing) is carried out on demand. The system comprises on the one hand a set of voice recognition engines, these engines being configured to perform on the one hand voice identification tasks, making it possible to identify a speaker (the voice identification functionality is described below) ) and on the other hand voice recognition tasks (the voice recognition functionality is described below). The system object of the present also includes a speaker processing engine. This processing engine comprises on the one hand a component for managing registered speakers and a component for processing unregistered speakers. This speaker processing engine includes a set of communication interfaces (“API” type) with the voice recognition engines. The processing component for recorded speakers allows recording, updating of voice data (and in particular recording and updating of voice signatures) of speakers of the system. The unregistered speaker processing component automatically records and processes voice data from unknown speakers. FIG. 1 globally illustrates the architecture of the system which is the subject of the present.

Le système de traitement (SystTt) comprend un moteur de traitement de locuteur (MTrtUsrs) qui comprend au moins une interface de connexion (IC) à au moins un serveur de traitement de médias (SrvTTMed). Le serveur de traitement de médias (SrvTTMed) est en charge des traitements (enregistrements, multiplexage, égalisation) des signaux audio qu'il reçoit. Le serveur de traitement de médias (SrvTTMed) est directement ou indirectement, par l'intermédiaire d'un réseau de communication (WNTWK) à un (ou plusieurs) serveur(s) de VoIP (VOIP) comprenant un logiciel de téléphonie IP idoine. Le serveur VoIP est lui-même connecté, par l'intermédiaire d'une passerelle optionnelle (GTWY) à des dispositifs de production sonore (micro, pieuvre de conférence pour salle de conférence, téléphone intelligent, ordinateur) qui sont mis en œuvre, par exemple lors de conférences téléphoniques.The processing system (SystTt) comprises a speaker processing engine (MTrtUsrs) which comprises at least one connection interface (IC) to at least one media processing server (SrvTTMed). The media processing server (SrvTTMed) is in charge of the processing (recordings, multiplexing, equalization) of the audio signals it receives. The media processing server (SrvTTMed) is directly or indirectly, via a communication network (WNTWK) to one (or more) VoIP server (s) (VOIP) including suitable IP telephony software. The VoIP server is itself connected, via an optional gateway (GTWY) to sound production devices (microphone, conference octopus for conference room, smartphone, computer) which are implemented, by example during conference calls.

Le moteur de traitement de locuteur (MTrtUsrs) comprend également des interfaces d'accès et de traitement (API) à au moins un moteur de reconnaissance vocal (ASR#1, ASR#2, etc.), lesquels comprennent chacun un accès à une base de données de traitement de données vocales (DB1, DB2, etc.). Le moteur de traitement de locuteur (MTrtUsrs) comprend également un accès à sa propre base de données de locuteurs (DBU) qui comprend notamment des profils de locuteurs (enregistrés ou non) qui ont accès au système auxquels les composants de traitement de locuteurs enregistré et non enregistrés (CTUe et CTUne) ont accès.The speaker processing engine (MTrtUsrs) also includes access and processing interfaces (APIs) to at least one speech recognition engine (ASR # 1, ASR # 2, etc.), which each include access to a voice data processing database (DB1, DB2, etc.). The speaker processing engine (MTrtUsrs) also includes access to its own speaker database (DBU) which includes speaker profiles (registered or not) who have access to the system to which the speaker processing components registered and not registered (CTUe and CTUne) have access.

Le moteur de traitement de locuteur (MTrtUsrs) comprend également une interface d'accès à un serveur d'enregistrement de locuteurs (SRVEU), ce serveur comprenant des composants de mise en œuvre d'un service d'enregistrement de locuteurs. Un tel service permet aux locuteurs (qui le souhaitent) de s'enregistrer dans le système, comme cela est décrit par la suite.The speaker processing engine (MTrtUsrs) also includes an interface for accessing a speaker recording server (SRVEU), this server comprising components for implementing a speaker recording service. Such a service allows speakers (who so wish) to register in the system, as described below.

Dans le cadre de la présente technique, on distingue deux tâches complémentaires qui sont mises en œuvre par le système et plus particulièrement par le moteur de traitement de locuteur (MTrtUsrs) couplé aux moteurs de reconnaissance vocale (ASR#1, ASR#2, etc.) : en premier lieu, il s'agit de l'identification de locuteur, dont l'objet est de permettre une distinction entre les locuteurs pour lesquels un flux vocal est traité. L'identification par empreinte vocale suppose que certaines caractéristiques physiques des organes vocaux, qui influencent la qualité du son de la parole, ne sont pas exactement identiques d'une personne à une autre. Ces caractéristiques sont la taille des cavités vocales, la gorge, le nez et la bouche, et la forme des muscles d'articulation de la langue, la mâchoire, les lèvres et le voile du palais. Le ou les moteurs de reconnaissance vocaux sont utilisés pour d'une part générer (éventuellement à la volée), au moins une empreinte vocale d'un locuteur. Celle-ci est par la suite utilisée par le système lors de différentes tâches, et notamment lors de la séparation de plusieurs locuteurs dans une même conversation.Within the framework of the present technique, there are two complementary tasks which are implemented by the system and more particularly by the speaker processing engine (MTrtUsrs) coupled with the voice recognition engines (ASR # 1, ASR # 2, etc.). .): firstly, it is the identification of the speaker, the purpose of which is to allow a distinction between the speakers for whom a voice stream is processed. Voiceprint identification assumes that certain physical characteristics of the vocal organs, which influence the quality of speech sound, are not exactly the same from one person to another. These characteristics are the size of the vocal cavities, throat, nose and mouth, and the shape of the joint muscles of the tongue, jaw, lips and soft palate. The voice recognition engine (s) are used to firstly generate (possibly on the fly), at least one voice print of a speaker. This is then used by the system during different tasks, and in particular when separating several speakers in the same conversation.

En deuxième lieu, il s'agit de la reconnaissance vocale, dont l'objet est de permettre une reconnaissance des paroles prononcées par des locuteurs, afin par exemple, d'effectuer une transcription écrite de leurs de leur discours. Pour effectuer une telle reconnaissance, les techniques mises en œuvre sont classiques, à l'exception d'un algorithme de sélection adapté pour les besoins de la présente technique, algorithme, qui comme cela est présenté par la suite, permet non seulement d'utiliser des résultats de reconnaissances issus du ou des moteurs de reconnaissance, mais également d'autres paramètres.Secondly, it is voice recognition, the purpose of which is to allow recognition of the words spoken by speakers, in order for example to make a written transcription of their speeches. To perform such recognition, the techniques implemented are conventional, with the exception of a selection algorithm adapted for the needs of the present technique, an algorithm which, as presented below, not only makes it possible to use recognition results from the recognition engine (s), but also other parameters.

La base de données d'identification de locuteurs (DBU) comprend notamment des informations relatives aux différents locuteurs qui sont enregistrés dans le système ; plus particulièrement, cette base de données comprend au moins une empreinte vocale unique, issue de chaque locuteur, qui permet d'identifier celui-ci, parmi tous les locuteurs enregistrés.The speaker identification database (DBU) notably includes information relating to the different speakers who are registered in the system; more particularly, this database comprises at least one unique voice print, originating from each speaker, which makes it possible to identify the speaker, among all the registered speakers.

Cette empreinte vocale unique est générée soit à l'issue d'une phase d'inscription (volontaire) du locuteur auprès du système, soit lors de l'utilisation du système par un locuteur non enregistré (par exemple lors d'une conférence comprenant plusieurs locuteurs, dont certains ou tous, ne sont pas enregistré) ou les deux. L'objet de cette base de données est notamment de permettre une différenciation des locuteurs afin d'améliorer la reconnaissance vocale de chacun de ces locuteurs. La base de données a également pour objet le traitement, le regroupement, la classification des différents flux audio attribués à l'utilisateur. En effet, on ne se contente pas de transcrire sous forme de texte, les paroles prononcées par les locuteurs : ces paroles, dialogues échanges sont également conservés dans l'objectif de pouvoir être réutilisés par la suite, par exemple pour effectuer une deuxième reconnaissance vocale, qui pourrait être de meilleure qualité, ou à des fins d'analyse statistique et de comparaison.This unique voiceprint is generated either at the end of a (voluntary) speaker registration phase with the system, or when the system is used by an unregistered speaker (for example during a conference with several speakers, some or all of whom are not registered) or both. The purpose of this database is in particular to allow differentiation of the speakers in order to improve the voice recognition of each of these speakers. The database also has the purpose of processing, grouping and classifying the different audio streams allocated to the user. Indeed, we do not just transcribe in the form of text, the words spoken by the speakers: these words, dialogs exchanges are also kept in order to be able to be reused later, for example to perform a second voice recognition , which could be of better quality, or for statistical analysis and comparison.

Ainsi, l'empreinte vocale unique qui est enregistrée dans le système pour un locuteur donné peut être obtenue d'au moins deux manières différentes.Thus, the unique voiceprint that is registered in the system for a given speaker can be obtained in at least two different ways.

Une première façon d'obtenir une empreinte vocale unique consiste à s'enregistrer manuellement auprès du système. Cet enregistrement manuel comprend par exemple une création d'un compte locuteur (utilisateur) dans le système, par l'intermédiaire d'un service web. La création de ce compte s'accompagne de la fourniture, par le locuteur, d'un ensemble de données vocales. Cet ensemble de données vocale peut soit être obtenu directement par la lecture d'une ou plusieurs phrases prédéterminées au moment de l'enregistrement. Afin de permettre un enregistrement simple et peu consommateur de temps, le nombre de phrases à lire est volontairement réduit (une dizaine de phrases au maximum). Une autre possibilité, lors de l'enregistrement manuel consiste à télécharger un fichier sonore que le locuteur a préenregistré en lisant un certain nombre de phrases (comme dans l'enregistrement direct en ligne). Ce type d'enregistrement au service permet d'une part, comme indiqué précédemment, de générer une empreinte unique pour le locuteur, cette empreinte étant par la suite utilisée pour identifier le locuteur; l'enregistrement permet également, d'autre part, d'entraîner un ou plusieurs système de reconnaissance, à reconnaître la voix du locuteur.A first way to obtain a unique voiceprint is to register manually with the system. This manual recording includes, for example, the creation of a speaker (user) account in the system, via a web service. The creation of this account is accompanied by the provision by the speaker of a set of voice data. This voice data set can either be obtained directly by reading one or more predetermined sentences at the time of recording. In order to allow simple and time-saving recording, the number of sentences to be read is deliberately reduced (a maximum of ten sentences). Another possibility, during manual recording, is to download a sound file that the speaker has prerecorded by reading a certain number of sentences (as in direct online recording). This type of service recording makes it possible, on the one hand, as indicated above, to generate a unique fingerprint for the speaker, this fingerprint being subsequently used to identify the speaker; recording also makes it possible, on the other hand, to train one or more recognition systems, to recognize the speaker's voice.

Dans un mode de réalisation spécifique, le service en ligne dispose d'une pluralité de moteurs de reconnaissance vocale (d'éditeurs différents). Le flux vocal (en direct ou préenregistré) qui est fourni au système lors de l'enregistrement du locuteur est automatiquement transmis à ces moteurs de reconnaissance vocale, lesquels effectuent, de ίο manière indépendante, des apprentissages de la voix du locuteur, sur la base des phrases lues par le locuteur. Ce mode de réalisation, dans lequel plusieurs moteurs de reconnaissance vocale sont utilisés, est particulièrement adapté dans la mesure où il permet de bénéficier de plusieurs technologies de reconnaissance différentes. Les modules utilisés sont des modules du commerce, fournissant chacun une interface ouverte (API) permettant d'échanger des données avec le système.In a specific embodiment, the online service has a plurality of voice recognition engines (from different publishers). The voice stream (live or prerecorded) which is supplied to the system during the recording of the speaker is automatically transmitted to these voice recognition engines, which independently perform ίο learning of the speaker's voice, based on sentences read by the speaker. This embodiment, in which several speech recognition engines are used, is particularly suitable insofar as it makes it possible to benefit from several different recognition technologies. The modules used are commercial modules, each providing an open interface (API) for exchanging data with the system.

5.2. Identification et reconnaissance vocale5.2. Voice recognition and recognition

Un élément clé du système de l'invention réside dans la capacité du système à séparer les locuteurs puis à reconnaître les mots et phrases prononcés par ces locuteurs. L'identification du locuteur est mise en œuvre par l'intermédiaire d'une ou plusieurs empreintes vocales de ce locuteur, qui ont été préenregistrées (dans une phase préalable). Les empreintes vocales sont obtenues par l'intermédiaire de techniques connues et ne nécessitent pas de description complémentaire.A key element of the system of the invention resides in the ability of the system to separate the speakers and then to recognize the words and sentences spoken by these speakers. The identification of the speaker is implemented by means of one or more voiceprints of this speaker, which have been pre-recorded (in a prior phase). Voiceprints are obtained by known techniques and do not require further description.

La reconnaissance vocale est quant à elle mise en œuvre par l'intermédiaire d'un ou plusieurs moteurs de reconnaissance vocale qui délivre(nt), en fonction d'un flux d'entrée, des résultats de reconnaissance auquel le moteur de traitement de locuteur (MTrtUsrs) accède. Ainsi, par exemple, pour la reconnaissance d'un mot (ou d'une phrase) prononcé(e) par un locuteur, chaque module de reconnaissance est appelé par l'intermédiaire de son interface (API). Chacun fournit, en sortie, le mot (ou la phrase), reconnu(e), ainsi qu'une éventuelle probabilité de succès de la reconnaissance, qui est ensuite utilisé par le système pour déterminer et sélectionner le résultat le plus probable, en fonction notamment d'autres paramètres et obtenir un score de véracité qui, lorsqu'il excède un seuil déterminé, est considéré comme le résultat de la transcription.Speech recognition is implemented via one or more speech recognition engines which, according to an input stream, deliver recognition results to which the speaker processing engine (MTrtUsrs) accesses. Thus, for example, for the recognition of a word (or of a sentence) spoken by a speaker, each recognition module is called via its interface (API). Each provides, as output, the recognized word (or phrase), as well as a possible probability of success of the recognition, which is then used by the system to determine and select the most probable result, depending in particular other parameters and obtain a veracity score which, when it exceeds a determined threshold, is considered to be the result of the transcription.

Les paramètres de sélection sont par exemple :The selection parameters are for example:

le nombre d'occurrences d'un mot ou d'un terme au cours de la conversation, de l'échange : si un terme a déjà été prononcé par le locuteur, la probabilité d'occurrence de ce terme est augmenté pour le reste de la conversation ;the number of occurrences of a word or a term during the conversation, the exchange: if a term has already been spoken by the speaker, the probability of occurrence of this term is increased for the rest of the conversation ;

le nombre d'occurrences d'un mot ou d'un terme au cours de la conversation, de l'échange : si un terme a déjà été prononcé par un autre locuteur, la probabilité d'occurrence de ce terme est augmenté pour le reste de la conversation ;the number of occurrences of a word or a term during the conversation, the exchange: if a term has already been spoken by another speaker, the probability of occurrence of this term is increased for the rest conversation;

le nombre d'occurrences d'un mot ou d'un terme au cours d'une conversation ou d'un échange archivé : si un terme a déjà été prononcé par le locuteur, par le passé, la probabilité d'occurrence de ce terme est augmenté pour le reste de la conversation ; le nombre de modules de reconnaissance qui délivrent un résultat identique (lorsque plusieurs modules sont utilisés) ;the number of occurrences of a word or term during an archived conversation or exchange: if a term has already been spoken by the speaker, in the past, the probability of occurrence of this term is increased for the rest of the conversation; the number of recognition modules that deliver an identical result (when several modules are used);

En d'autres termes, plutôt que de se baser sur uniquement sur les résultats fournis par le(s) moteurs de reconnaissance vocale utilisés par le système, le moteur de traitement de locuteur utilise des données passées, que ce soit des données passées de la conversation ou de l'échange courant ou des données passées de conversations, d'échange ou d'enregistrements précédents, qui ont été conservés et archivés, dans la base de données de locuteurs. On présente, en relation avec la figure 2, un procédé de traitement de données vocales mis en œuvre par le présent système. Un tel procédé comprend :In other words, rather than relying solely on the results provided by the speech recognition engine (s) used by the system, the speaker processing engine uses past data, whether it is past data from the current conversation or exchange or past data from previous conversations, exchange or recordings, which have been retained and archived, in the speaker database. Referring to FIG. 2, a method for processing voice data implemented by the present system is presented. Such a method includes:

une phase d'obtention (P10), pour chaque locuteur, d'une empreinte vocale individuelle; la manière d'obtenir cette empreinte est décrite infra et supra dans des exemples de mise en œuvre ;a phase for obtaining (P10), for each speaker, an individual voice print; the manner of obtaining this imprint is described infra and supra in examples of implementation;

une phase de traitement (P20) d'au moins un flux audio issu d'un échange verbal entre les locuteurs comprenant au moins une itération des étapes suivantes :a processing phase (P20) of at least one audio stream resulting from a verbal exchange between the speakers comprising at least one iteration of the following steps:

enregistrement (P201), sous la forme d'au moins un flux audio principal dudit échange verbal ;recording (P201), in the form of at least one main audio stream of said verbal exchange;

identification (P202), à l'aide de l'empreinte vocale individuelle, d'un locuteur courant, parmi la pluralité de locuteur ;identification (P202), using the individual voice print, of a current speaker, among the plurality of speakers;

lorsqu'aucun flux audio n'existe pour le locuteur courant (P203), création (P204) d'un flux audio propre au locuteur courant ;when no audio stream exists for the current speaker (P203), creation (P204) of an audio stream specific to the current speaker;

marquage temporel (P205), dans ledit au moins un flux audio principal et dans ledit flux audio propre, en utilisant une donnée représentative dudit locuteur courant; cette donnée représentative du locuteur courant peut avantageusement être un hasché de l'empreinte vocale du locuteur courant ;time stamping (P205), in said at least one main audio stream and in said own audio stream, using data representative of said current speaker; this data representative of the current speaker can advantageously be a hash of the voiceprint of the current speaker;

Ce procédé permet, pour un échange ou une conversation donnée, d'enregistrer, de manière séparée, les différents flux issus des différents locuteurs. Ils sont marqués temporellement, afin de pouvoir segmenter les échanges et permettre une individualisation de la prise de parole lors des échanges. Un mode de réalisation de l'identification du locuteur est présenté infra.This process allows, for a given exchange or conversation, to record, separately, the different streams from different speakers. They are marked in time, in order to be able to segment the exchanges and allow individualization of speaking during the exchanges. An embodiment of the identification of the speaker is presented below.

À l'aide des flux audio, phase de reconnaissance est mise en œuvre. En fonction des modes de réalisation elle est mise en œuvre en temps réel ou en différé. Cette phase de reconnaissance comprend au moins une itération des étapes suivantes :Using audio streams, the recognition phase is implemented. Depending on the embodiments, it is implemented in real time or deferred. This recognition phase includes at least one iteration of the following steps:

transmission, à au moins un moteur de reconnaissance vocal, d'au moins une portion d'un flux audio propre (à un locuteur courant) ;transmission, to at least one voice recognition engine, of at least a portion of its own audio stream (to a current speaker);

obtention, à partir dudit au moins un moteur de reconnaissance vocal, d'au moins un résultat de reconnaissance, prenant la forme d'au moins un mot reconnu ;obtaining, from said at least one voice recognition engine, at least one recognition result, taking the form of at least one recognized word;

détermination d'un score de véracité dudit au moins un mot reconnu en fonction d'au moins un précédent résultat de reconnaissance ;determining a truth score of said at least one recognized word as a function of at least one previous recognition result;

lorsque ledit score de véracité excède un seuil déterminé, ajout dudit mot reconnu à une structure de donnée de reconnaissance.when said veracity score exceeds a determined threshold, adding said recognized word to a recognition data structure.

La détermination du score de véracité est mise en œuvre en fonction des différents modes de réalisation et notamment de la présence (ou non) de plusieurs moteurs de reconnaissance et de la présence (ou non) d'une probabilité de reconnaissance (fournie par le(s) moteur(s) de reconnaissance et de la disponibilité de résultats de transcription antérieurs.The determination of the veracity score is implemented according to the different embodiments and in particular the presence (or not) of several recognition engines and the presence (or not) of a probability of recognition (provided by the ( s) recognition engine (s) and the availability of previous transcription results.

5.3. Identification vocale d'un locuteur5.3. Voice identification of a speaker

On décrit ci-après l'identification vocale d'un locuteur, mise en œuvre par le moteur de traitement de locuteur (MTrtUsrs). L'identification vocale d'un locuteur est mise en œuvre par l'intermédiaire d'une pluralité de matrice d'énergie. Ces matrices d'énergie sont enregistrées dans la base de données d'identification de locuteurs (DBU), soit en étant directement associées à un utilisateur qui est enregistré au sein du système, soit en étant associées à un utilisateur non enregistré (utilisateur temporaire), qui est par exemple identifié durant une réunion ou durant un échange verbal. Comme explicité plus haut, lors de la mise en œuvre du système, on fait le tri entre les utilisateurs enregistrés et les utilisateurs non enregistrés (inconnu du système). Les matrices d'énergies sont créées d'une part pour enregistrer l'utilisateur et d'autre part pour reconnaître l'utilisateur lorsqu'il parle.The voice identification of a speaker is described below, implemented by the speaker processing engine (MTrtUsrs). The vocal identification of a speaker is implemented through a plurality of energy matrix. These energy matrices are recorded in the speaker identification database (DBU), either by being directly associated with a user who is registered in the system, or by being associated with an unregistered user (temporary user) , which is for example identified during a meeting or during a verbal exchange. As explained above, during the implementation of the system, a sort is made between registered users and non-registered users (unknown to the system). The energy matrices are created on the one hand to record the user and on the other hand to recognize the user when he speaks.

Enregistrement préalable du locuteurPrior registration of the speaker

Le principe d'identification des utilisateurs consiste à créer, à partir du flot de parole d'un locuteur, une ou plusieurs matrices d'énergie associées à ce locuteur. Supposons, à titre illustratif, nous disposons de plusieurs échantillons ou fichiers audio contenant le mot la, à chaque fois prononcé par un même utilisateur (par exemple un utilisateur en cours d'enregistrement). Ces fichiers ou échantillon sont dans le domaine temporel. Pour l'analyse (et la classification) de ces signaux, une transformée de Fourier à court terme (TFCT) est utilisée. L'avantage de la TFCT est de pouvoir représenter les informations de domaine fréquentiel dans le domaine temporel.The principle of user identification consists in creating, from the speech flow of a speaker, one or more energy matrices associated with this speaker. Suppose, by way of illustration, we have several samples or audio files containing the word la, each time pronounced by the same user (for example a user being recorded). These files or samples are in the time domain. For the analysis (and classification) of these signals, a short-term Fourier transform (TFCT) is used. The advantage of TFCT is that it can represent frequency domain information in the time domain.

Le choix du pas de temps de la TFCT est complexe. Si le pas de temps est trop faible, le nombre d'échantillons ne suffit pas, donc, les résultats de la transformée de Fourier ne sont pas fiables. Si le pas de temps est trop grand, certaines informations sont manquantes dans le domaine temporel. Pour cette raison, le pas de temps est choisi comme 40 ms.The choice of the time step of the TFCT is complex. If the time step is too small, the number of samples is not enough, therefore, the results of the Fourier transform are not reliable. If the time step is too large, certain information is missing in the time domain. For this reason, the time step is chosen as 40 ms.

À l'aide de la TFCT, la matrice d'énergie est calculée comme représentée dans la figure 3. Dans cette représentation illustrative, on dispose de dix fois le mot 'la', c'est-à-dire que l'utilisateur a prononcé dix fois le mot 'la' avec une intonation plus ou moins différente. Pour chacune de ces matrices, l'abscisse représente le temps, l'unité est la seconde. L'ordonnée représente la fréquence, l'unité est le Hertz (Hz). Le pas de temps est de 40 ms. Le pas de fréquence est de 50 Hz. Comme la plupart de l'énergie se trouve distribuée dans les fréquences entre 0 et 1000 Hz, la bande de fréquences est comprise entre 0 et 1000 Hz.Using the TFCT, the energy matrix is calculated as shown in Figure 3. In this illustrative representation, we have ten times the word 'la', that is to say that the user has pronounced the word 'la' ten times with a more or less different intonation. For each of these matrices, the abscissa represents time, unity is the second. The ordinate represents the frequency, the unit is Hertz (Hz). The time step is 40 ms. The frequency step is 50 Hz. As most of the energy is distributed in the frequencies between 0 and 1000 Hz, the frequency band is between 0 and 1000 Hz.

Après l'analyse de la TFCT, pour chaque mot, on obtient une matrice d'énergie. Nous avons choisi comme matrice d'énergie une matrice avec 24 lignes de bande de fréquence et 8 colonnes correspondent au temps. Pour comparer ces matrices, on normalise ces matrices d'énergie. La value maximale est fixée à 100.After the analysis of the TFCT, for each word, we obtain an energy matrix. We have chosen as an energy matrix a matrix with 24 frequency band lines and 8 columns corresponding to time. To compare these matrices, we normalize these energy matrices. The maximum value is fixed at 100.

Dans l'exemple de la figure 3, on dispose de dix matrices d'énergies. Chaque matrice dispose de 24 lignes pour le pas de la fréquence et de 8 colonnes pour le pas de temps. Ces matrices sont enregistrées dans la base de données d'identification de locuteurs (DBU), en lien avec l'utilisateur donné (qu'il soit enregistré ou non). Chaque matrice peut être enregistrée avec un nombre relativement faible de données : un octet suffit pour chaque valeur de la matrice (valeur normalisée à 100), soit au maximum 24x8=192 octets par matrice (sans optimisation), auxquels il est possible d'appliquer un algorithme de compression.In the example in Figure 3, there are ten energy matrices. Each matrix has 24 rows for the frequency step and 8 columns for the time step. These matrices are recorded in the speaker identification database (DBU), in connection with the given user (whether registered or not). Each matrix can be saved with a relatively small number of data: one byte is enough for each value of the matrix (value normalized to 100), i.e. a maximum of 24x8 = 192 bytes per matrix (without optimization), to which it is possible to apply a compression algorithm.

Dans un mode de réalisation particulier de la présente technique, l'empreinte vocale d'un locuteur est construite à partir d'une pluralité de matrice énergies, se rapportant à un ou plusieurs mots prononcés par le locuteur. D'autres éléments que les matrices énergies peuvent également être intégrés et/ou utiliser pour générer l'empreinte vocale d'un locuteur.In a particular embodiment of the present technique, the voiceprint of a speaker is constructed from a plurality of energy matrixes, relating to one or more words spoken by the speaker. Other elements than the energy matrices can also be integrated and / or used to generate the voice print of a speaker.

Reconnaissance du locuteurSpeaker recognition

On suppose que l'on dispose, dans la dans la base de données d'identification de locuteurs (DBU), d'une pluralité de matrices d'énergie associées à un utilisateur, et que cet utilisateur est en cours de discussion et enregistré par le système. Pour reconnaître cet utilisateur, le système sa base sur les matrices issue des mots prononcés par l'utilisateur. Dans une première phase, on suppose qu'un certain nombre de mots ont été reconnus par le système et que l'on dispose d'un échantillon audio pour ces mots reconnus. À titre illustratif, on suppose qu'un des mots reconnus est le mot « la ». Le système dispose déjà de matrices d'énergies issues de la prononciation de ce mot « la » (comme explicité précédemment).It is assumed that there is, in the in the speaker identification database (DBU), a plurality of energy matrices associated with a user, and that this user is being discussed and recorded by the system. To recognize this user, the system bases it on matrices from words spoken by the user. In a first phase, it is assumed that a certain number of words have been recognized by the system and that an audio sample is available for these recognized words. By way of illustration, it is assumed that one of the recognized words is the word "la". The system already has energy matrices from the pronunciation of this word "la" (as explained above).

Dans une deuxième phase, le système recherche donc les matrices correspondants au mot « la » qui ont été précédemment générées. Cette recherche est effectuée pour tous les utilisateurs «potentiels» (c'est-à-dire une liste d'utilisateurs possible, compte tenu des circonstances de l'enregistrement) : si par exemple l'enregistrement concerne quatre utilisateurs enregistrés dans le système, la recherche des matrices est effectuée sur ces quatre utilisateurs afin de raccourcir les délais de traitement.In a second phase, the system therefore searches for the matrices corresponding to the word "la" which were previously generated. This search is performed for all “potential” users (ie a list of possible users, taking into account the circumstances of the registration): if for example the registration concerns four users registered in the system, Matrix searches are performed on these four users in order to shorten processing times.

Sur la base des matrices d'énergies obtenues à l'issue de la recherche, l'identification de l'utilisateur est mise en œuvre en utilisant une corrélation de Pearson pour comparer ces matrices d'énergies. Plus précisément, on utilise le coefficient de corrélation de Pearson pour comparer les matrices d'énergies. Ce coefficient est calculé comme représenté dans l'équation suivante :On the basis of the energy matrices obtained at the end of the research, the identification of the user is implemented using a Pearson correlation to compare these energy matrices. More precisely, we use the Pearson correlation coefficient to compare the energy matrices. This coefficient is calculated as shown in the following equation:

dans laquelle :in which :

X {xl,... xn} est une matrice présente dans la base de donnée, que l'on va comparer ;X {xl, ... xn} is a matrix present in the database, which we are going to compare;

Y {yl,... yn} est la matrice à comparer, soit la matrice courante :Y {yl, ... yn} is the matrix to compare, i.e. the current matrix:

N est le nombre de valeurs dans les matrices.N is the number of values in the matrices.

La valeur « r » est comprise entre 0 et 1. Si /r/ < 0,4 les deux matrices ont une faible corrélation. Lorsque 0,4 =< /r/ <0,7 les deux matrices ont une corrélation moyenne. LorsqueThe value "r" is between 0 and 1. If / r / <0.4 the two matrices have a weak correlation. When 0.4 = </ r / <0.7 the two matrices have an average correlation. When

0,7 < /r/ <= 1, les deux matrices ont une corrélation beaucoup plus forte : ce dernier cas est considéré dans le cadre de la présente.0.7 </ r / <= 1, the two matrices have a much stronger correlation: the latter case is considered in the context of this.

Ainsi en utilisant la valeur du coefficient de corrélation de Pearson, avec un seuil prédéterminé égal à 0,7 (ou proche de 0,7), on décide de la similarité de deux matrices. L'identification du locuteur est effectuée sur les calculs de corrélation dont le résultat est le plus élevés (parmi les résultats supérieurs au seuil prédéterminé).Thus by using the value of the Pearson correlation coefficient, with a predetermined threshold equal to 0.7 (or close to 0.7), one decides on the similarity of two matrices. The identification of the speaker is carried out on the correlation calculations whose result is the highest (among the results above the predetermined threshold).

On présente, en relation avec la figure 4, le procédé mise en œuvre pour réaliser une identification de locuteur. Le procédé mis en œuvre comprend une étape de découpage (non représentée) des données audio, en fonction d'au moins un modèle de pause, délivrant un ensemble de données audio segmentées. Le procédé est mis en œuvre sur la base des données segmentées et il comprend, pour au moins donnée audio courante dudit ensemble de données audio segmentées :We present, in relation to FIG. 4, the method implemented for carrying out speaker identification. The method implemented comprises a step of cutting (not shown) the audio data, according to at least one pause model, delivering a set of segmented audio data. The method is implemented on the basis of the segmented data and it comprises, for at least current audio data of said set of segmented audio data:

au moins une étape de reconnaissance vocale (10) de ladite donnée audio courante, mise en œuvre par l'intermédiaire d'au moins un moteur de reconnaissance vocale, délivrant au moins un mot reconnu ou un indicateur d'absence de reconnaissance ; lorsqu'au moins un moteur de reconnaissance vocale délivre au moins un mot reconnu (20):at least one voice recognition step (10) of said current audio data, implemented by means of at least one voice recognition engine, delivering at least one recognized word or an indicator of lack of recognition; when at least one voice recognition engine delivers at least one recognized word (20):

une étape de recherche (201), au sein d'une basse de données, d'au moins un mot de référence correspondant audit au moins un mot reconnu, délivrant au moins une donnée d'identification vocale de référence ;a search step (201), within a database, of at least one reference word corresponding to said at least one recognized word, delivering at least one reference voice identification datum;

une étape d'obtention (202), à partir de ladite donnée audio courante, d'une donnée d'identification vocale courante ;a step of obtaining (202), from said current audio data, a current voice identification data;

une étape de calcul (203) d'au moins une correspondance entre ladite donnée d'identification vocale courante et ladite au moins une donnée d'identification vocale de référence, délivrant au moins un score de correspondance ; et lorsqu'un score de correspondance excède un seuil prédéterminé (205), une étape d'attribution (206) de ladite donnée audio courante à l'un desdits au moins deux interlocuteurs.a step of calculating (203) at least one correspondence between said current voice identification data and said at least one reference voice identification data, delivering at least one correspondence score; and when a correspondence score exceeds a predetermined threshold (205), a step of allocation (206) of said current audio data to one of said at least two interlocutors.

Ainsi, ce procédé permet de réaliser une distinction entre les différents locuteurs qui interviennent lors de l'échange vocal. Comme cela a été indiqué précédemment, ce procédé d'identification peut avantageusement être couplé à d'autres méthodes d'identification (notamment la spatialisation sonore), afin notamment de produire des résultats plus probant et/ou d'obtenir ces résultats de manière plus rapide.Thus, this method makes it possible to distinguish between the different speakers who intervene during the voice exchange. As indicated above, this identification method can advantageously be combined with other identification methods (in particular sound spatialization), in particular in order to produce more convincing results and / or to obtain these results more fast.

5.4. Description d'un cas d'usage5.4. Description of a use case

On décrit, dans ce cas d'usage, une mise en œuvre du système pour la reconnaissance et la retranscription des minutes d'une conférence de type conférence téléphonique à laquelle participe une pluralité de locuteurs, certains d'entre eux étant situés dans une même pièce, autour d'un dispositif de type pieuvre de conférence (par exemple deux locuteurs) et un troisième participant à distance par l'intermédiaire d'un combiné téléphonique, d'un ordinateur, etc. Une conférence est mise en œuvre et traitée au moins de manière indirecte par le système. Une conférence débute, pour le système, par une phase d'enregistrement d'une empreinte vocale de chacun des participants à la conférence. Cette phase comprend plusieurs étapes, parmi lesquelles :We describe, in this use case, an implementation of the system for recognizing and transcribing the minutes of a conference type telephone conference in which a plurality of speakers participate, some of them being located in the same room, around a conference octopus-type device (for example two speakers) and a third participant remotely via a telephone handset, a computer, etc. A conference is implemented and processed at least indirectly by the system. A conference begins, for the system, with a phase of recording a voiceprint of each of the participants in the conference. This phase includes several stages, among which:

une étape de transmission, à chaque locuteur participant à la conférence, d'une requête pour l'énonciation, par ce locuteur, de son nom et/ou de son prénom ; la requête prend par exemple la forme d'un message du type « vous entrez en conférence, veuillez prononcer vos noms et prénoms » :a step of transmitting, to each speaker participating in the conference, a request for the speaking, by this speaker, of his name and / or his first name; for example, the request takes the form of a message such as "you are entering a conference, please say your names and first names":

lorsque le locuteur participe à la conférence par téléphone, la phase d'enregistrement de l'empreinte est mise en œuvre au niveau de cette ligne téléphonique ;when the speaker participates in the conference by telephone, the fingerprint recording phase is implemented at this telephone line;

lorsque le locuteur participe à la conférence depuis un ordinateur, la phase d'enregistrement est mise en œuvre par l'intermédiaire de celui-ci, soit en local, sur l'ordinateur, soit sur le système, par transmission du flux audio résultant de l'énonciation ;when the speaker takes part in the conference from a computer, the recording phase is implemented through the latter, either locally, on the computer, or on the system, by transmitting the audio stream resulting from the saying;

lorsque le locuteur participe depuis une salle de conférence, le procédé mis en œuvre est le suivant :when the speaker participates from a conference room, the process implemented is as follows:

le système requiert l'énoncé du nombre de participant autour de la table par une phrase du type « veuillez indiquer combien de participant se trouvent autour de la table » une fois le nombre de participants obtenu (soit par saisie sur un clavier, soit par énoncée vocale), et pour chacun des participants, le système requiert, pour chacun, l'énoncée du nom et/ou du prénom de celui-ci ;the system requires the statement of the number of participants around the table by a sentence such as "please indicate how many participants are around the table" once the number of participants has been obtained (either by typing on a keyboard or by stated voice), and for each of the participants, the system requires, for each, the statement of their name and / or first name;

de plus, le système met en œuvre un algorithme de localisation permettant, en fonction de l'énoncée réalisée, d'obtenir une localisation spatiale du locuteur ;moreover, the system implements a location algorithm making it possible, as a function of the statement made, to obtain a spatial location of the speaker;

pour chaque locuteur, s'en suit une étape de calcul d'une empreinte vocale sur la base de l'énonciation précédente ; plusieurs cas sont possibles :for each speaker, there follows a step of calculating a voiceprint on the basis of the preceding utterance; several cases are possible:

soit le locuteur est inconnu du système : l'empreinte calculée est alors utilisée durant la conférence ;either the speaker is unknown to the system: the calculated fingerprint is then used during the conference;

soit le locuteur est connu du système (car il s'est enregistré précédemment) : en ce cas l'énoncée de son nom et/ou prénom (et la reconnaissance qui en est faite) est utilisée pour rechercher l'empreinte préenregistrée de le locuteur ; ceci permet d'utiliser l'une ou l'autre de ces empreintes pour la reconnaissance du locuteur ;either the speaker is known to the system (because he has previously registered): in this case the statement of his name and / or first name (and recognition thereof) is used to search for the prerecorded fingerprint of the speaker ; this allows one or other of these fingerprints to be used for speaker recognition;

La conférence se poursuit, pour le système, par l'enregistrement automatique et la reconnaissance des participants à la conférence. À nouveau, plusieurs cas de figure se présentent :The conference continues, for the system, with automatic registration and recognition of conference participants. Again, several cases arise:

lorsque le locuteur participe via téléphone, le flux audio issu du micro de ce téléphone est enregistré en continu et peut être décodé (éventuellement en continu également) ; l'empreinte du locuteur est utilisée pour attribuer ce flux au locuteur en question ; lorsque le locuteur participe via un ordinateur (ou une tablette, une connexion IP d'un smartphone), le processus est le même que pour une connexion téléphonique ; lorsque le locuteur participe autour d'une table de conférence, plusieurs procédés sont mise en œuvre de manière concomitante :when the speaker participates via telephone, the audio stream from the microphone of this telephone is recorded continuously and can be decoded (possibly also continuously); the speaker's fingerprint is used to assign this feed to the speaker in question; when the speaker participates via a computer (or a tablet, an IP connection from a smartphone), the process is the same as for a telephone connection; when the speaker participates around a conference table, several procedures are implemented concomitantly:

a. une reconnaissance de l'empreinte du locuteur à l'aide de l'empreinte préenregistrée : cette reconnaissance tient également compte de la spatialisation du son capté par le ou les micros ;at. recognition of the speaker's fingerprint using the pre-recorded fingerprint: this recognition also takes into account the spatialization of the sound picked up by the microphone (s);

b. un enregistrement du flux audio issu de la conférence (tous les locuteurs confondus) ;b. a recording of the audio stream from the conference (all speakers combined);

c. un enregistrement du flux audio issu de la conférence par locuteur :vs. a recording of the audio stream from the conference by speaker:

par exemple si deux locuteurs sont autour de la table pour la conférence, deux flux audio distincts sont enregistrés et les portions audio sont distribuées sur les deux flux en fonction de la reconnaissance de l'empreinte de du locuteur ;for example if two speakers are around the table for the conference, two separate audio streams are recorded and the audio portions are distributed over the two streams according to the recognition of the speaker's fingerprint;

D'un point de vue général, le système de l'invention intervient en deux temps : il reconnaît les locuteurs en temps réel lors de la tenue de la conférence : l'identification est effectuée en temps réel sur la base des empreintes précédemment calculées; il s'agit de créer les flux audio de chaque locuteur et de marquer (temporellement) les flux pour déterminer les instants auxquels les différents locuteurs ont pris la parole; on met alors en œuvre une synchronisation temporelle des flux audio qui permet notamment d'attribuer un ensemble de sons captés à un utilisateur donné ;From a general point of view, the system of the invention intervenes in two stages: it recognizes the speakers in real time during the holding of the conference: the identification is carried out in real time on the basis of the footprints previously calculated; it involves creating the audio streams for each speaker and marking (temporally) the streams to determine the moments at which the different speakers took the floor; one then implements a temporal synchronization of the audio streams which makes it possible in particular to attribute a set of sounds captured to a given user;

il reconnaît les paroles prononcées par chacun des locuteurs : cette phase de reconnaissance peut soit être mise en œuvre en temps réel, pour effectuer par exemple une transcription en temps réel de la conférence (par exemple à destination de personnes ayant perdues l'audition) ou en temps différé ; l'avantage du temps réel est de disposer, pour les participants, d'une trace immédiate des échanges verbaux ; l'inconvénient est que cela nécessite des ressources informatiques importantes, et que les risques d'erreurs sont plus élevés ; l'avantage du temps différé est qu'il nécessite moins de ressources informatiques, car les flux peuvent être traités les uns après les autres ;it recognizes the words spoken by each speaker: this recognition phase can either be implemented in real time, for example to carry out a real-time transcription of the conference (for example for people who have lost their hearing) or in deferred time; the advantage of real time is to have, for the participants, an immediate trace of the verbal exchanges; the disadvantage is that it requires significant IT resources, and that the risks of errors are higher; the advantage of deferred time is that it requires fewer IT resources, because the flows can be processed one after the other;

D'un point de vue général, le système de l'invention effectue soit un traitement direct de la conférence soit un traitement indirect de celle-ci. La distinction entre traitement direct et indirect de la conférence est la suivante :From a general point of view, the system of the invention performs either a direct processing of the conference or an indirect processing of the latter. The distinction between direct and indirect treatment of the conference is as follows:

en traitement direct, le système est en charge du multiplexage de la conférence, c'està-dire de monter les éventuels ponts téléphoniques avec les différents interlocuteurs (lorsqu'il y a une conférence téléphonique), en plus de l'enregistrement et du traitement des flux audio ;in direct processing, the system is in charge of conference multiplexing, that is to say setting up any telephone bridges with the different parties (when there is a conference call), in addition to recording and processing audio streams;

en traitement indirect, le système est en charge de l'enregistrement et du traitement des flux audio, comprenant notamment l'identification et le traitement de la parole des interlocuteurs : il enregistre les éventuels flux téléphoniques et les flux en provenance du ou des micros de la salle dans laquelle se tient la conférence.in indirect processing, the system is in charge of recording and processing audio streams, including in particular the identification and processing of the speech of the interlocutors: it records any telephone streams and the streams coming from the microphone (s) of the room in which the conference is held.

Claims (6)

REVENDICATIONS Procédé de traitement de données audio, lesdites données audio étant issues d'un échange vocal entre au moins deux locuteurs, ledit procédé comprenant une phase de traitement (P20) des données audio comprenant une étape d'identification de locuteur (P202) laquelle comprend une étape de découpage desdites données audio, en fonction d'au moins un modèle de pause, délivrant un ensemble de données audio segmentées, ledit procédé étant caractérisé en ce qu'il comprend, pour au moins une donnée audio courante dudit ensemble de données audio segmentées :Method for processing audio data, said audio data originating from a voice exchange between at least two speakers, said method comprising a phase of processing (P20) of audio data comprising a speaker identification step (P202) which comprises a step of splitting said audio data, as a function of at least one pause model, delivering a set of segmented audio data, said method being characterized in that it comprises, for at least one current audio data of said set of segmented audio data : au moins une étape de reconnaissance vocale (10) de ladite donnée audio courante, mise en œuvre par l'intermédiaire d'au moins un moteur de reconnaissance vocale, délivrant au moins un mot reconnu ou un indicateur d'absence de reconnaissance ; lorsqu'au moins un moteur de reconnaissance vocale délivre au moins un mot reconnu (20):at least one voice recognition step (10) of said current audio data, implemented by means of at least one voice recognition engine, delivering at least one recognized word or an indicator of lack of recognition; when at least one voice recognition engine delivers at least one recognized word (20): une étape de recherche (201), au sein d'une base de données, d'au moins un mot de référence correspondant audit au moins un mot reconnu, délivrant au moins une donnée d'identification vocale de référence ;a search step (201), within a database, of at least one reference word corresponding to said at least one recognized word, delivering at least one reference voice identification datum; une étape d'obtention (202), à partir de ladite donnée audio courante, d'une donnée d'identification vocale courante ;a step of obtaining (202), from said current audio data, a current voice identification data; une étape de calcul (203) d'au moins une correspondance entre ladite donnée d'identification vocale courante et ladite au moins une donnée d'identification vocale de référence, délivrant au moins un score de correspondance ; et lorsqu'un score de correspondance excède un seuil prédéterminé (205), une étape d'attribution (206) de ladite donnée audio courante à l'un desdits au moins deux interlocuteurs.a step of calculating (203) at least one correspondence between said current voice identification data and said at least one reference voice identification data, delivering at least one correspondence score; and when a correspondence score exceeds a predetermined threshold (205), a step of allocation (206) of said current audio data to one of said at least two interlocutors. Procédé selon la revendication 1, caractérisé en ce que l'étape d'obtention (202), à partir de ladite donnée audio courante, d'une donnée d'identification vocale courante comprend :Method according to claim 1, characterized in that the step of obtaining (202), from said current audio data, a current voice identification data comprises: une étape d'application, sur ladite donnée audio courante, laquelle prend la forme d'un signal audio x(t) monodimensionnel, d'une transformée de Fourier à court termea step of applying, on said current audio data item, which takes the form of a one-dimensional audio signal x (t), a short-term Fourier transform 3.3. 4.4. 5.5. 15 6.15 6. 20 7.20 7. 8.8. (TFCT), délivrant une matrice X, dite matrice d'énergie, de taille mxn, m canaux fréquentiels et n trames temporelles et dont l'échelle de fréquence est comprise entre 0 et 1kHz ;(TFCT), delivering an X matrix, called energy matrix, of size mxn, m frequency channels and n time frames and whose frequency scale is between 0 and 1 kHz; une étape de normalisation des valeurs de ladite matrice X, délivrant une matrice normalisée laquelle constitue la donnée d'identification vocale courante.a step of normalizing the values of said matrix X, delivering a standardized matrix which constitutes the current voice identification data. Procédé selon la revendication 2, caractérisé en ce que l'application de ladite transformée de Fourier à court terme sur ledit signal audio x(t) mono dimensionnel est effectué à un pas de temps de 40 ms.Method according to claim 2, characterized in that the application of said short-term Fourier transform on said audio signal x (t) mono dimensional is carried out at a time step of 40 ms. Procédé selon la revendication 2, caractérisé en ce que les valeurs des éléments de la matrice normalisée sont comprises entre 0 et 100.Method according to claim 2, characterized in that the values of the elements of the standardized matrix are between 0 and 100. Procédé selon la revendication 2, caractérisé en ce que ladite au moins une donnée d'identification vocale de référence se présente également sous la forme d'une matrice d'énergie normalisée, préalablement enregistrée au sein de ladite base de données.Method according to claim 2, characterized in that said at least one reference voice identification data item is also in the form of a standardized energy matrix, previously recorded in said database. Procédé selon la revendication 1, caractérisé en ce que l'étape de calcul (203) d'au moins une correspondance, délivrant le score de correspondance, comprend une étape de détermination d'une valeur de corrélation de Pearson de la donnée d'identification vocale courante et de ladite au moins une donnée d'identification vocale de référence.Method according to claim 1, characterized in that the step of calculating (203) at least one match, delivering the match score, comprises a step of determining a Pearson correlation value of the identification data current voice and said at least one reference voice identification data. Procédé selon la revendication 1, caractérisé en ce qu'il comprend, préalablement à ladite phase de traitement (20), une phase d'obtention (P10), pour chacun desdits au moins deux locuteurs, d'une empreinte vocale individuelle comprenant lesdites données d'identification vocale de référence.Method according to claim 1, characterized in that it comprises, prior to said processing phase (20), a phase for obtaining (P10), for each of said at least two speakers, an individual voice print comprising said data reference voice identification. Procédé selon la revendication 1, caractérisé en ce que ladite phase de traitement comprend en outre les étapes suivantes :Method according to claim 1, characterized in that said treatment phase further comprises the following steps: enregistrement (P201), sous la forme d'au moins un flux audio principal dudit échange verbal ;recording (P201), in the form of at least one main audio stream of said verbal exchange; lorsqu'aucun flux audio n'existe pour le locuteur courant (P203), création (P204) d'un flux audio propre au locuteur courant ;when no audio stream exists for the current speaker (P203), creation (P204) of an audio stream specific to the current speaker; marquage temporel (P205), dans ledit au moins un flux audio principal et dans ledit flux audio propre, en utilisant une donnée représentative dudit locuteur courant.time stamping (P205), in said at least one main audio stream and in said own audio stream, using data representative of said current speaker. 5 9. Système de traitement de données audio, lesdites données audio étant issues d'un échange vocal entre au moins deux locuteurs, ledit système comprenant un moteur de traitement de locuteur (MTrtUsrs), qui comprend des moyens d'identification de locuteur comprenant des moyens de découpage desdites données audio, en fonction d'au moins un modèle de pause, délivrant un ensemble de données audio segmentées,9. Audio data processing system, said audio data being produced by a voice exchange between at least two speakers, said system comprising a speaker processing engine (MTrtUsrs), which comprises speaker identification means comprising means for splitting said audio data, as a function of at least one pause model, delivering a set of segmented audio data, 10 ledit système étant caractérisé en ce qu'il comprend, pour au moins une donnée audio courante dudit ensemble de données audio segmentées :Said system being characterized in that it comprises, for at least one current audio data of said set of segmented audio data: des moyens de reconnaissance vocale de ladite donnée audio courante, mise en œuvre par l'intermédiaire d'au moins un moteur de reconnaissance vocale, délivrant au moins un mot reconnu ou un indicateur d'absence de reconnaissance ;means of voice recognition of said current audio data, implemented by means of at least one voice recognition engine, delivering at least one recognized word or an indicator of absence of recognition; 15 - des moyens de recherche, au sein d'une base de données, d'au moins un mot de référence correspondant audit au moins un mot reconnu, délivrant au moins une donnée d'identification vocale de référence ;15 - means for searching, within a database, at least one reference word corresponding to said at least one recognized word, delivering at least one reference voice identification datum; des moyens d'obtention à partir de ladite donnée audio courante, d'une donnée d'identification vocale courante ;means for obtaining from said current audio data, a current voice identification data; 20 - des moyens de calcul d'au moins une correspondance entre ladite donnée d'identification vocale courante et ladite au moins une donnée d'identification vocale de référence, délivrant au moins un score de correspondance ; et des moyens d'attribution (206) de ladite donnée audio courante à l'un desdits au moins deux interlocuteurs, mis en œuvre lorsqu'un score deMeans for calculating at least one correspondence between said current voice identification datum and said at least one reference voice identification datum, delivering at least one correspondence score; and means for allocating (206) said current audio data item to one of said at least two interlocutors, implemented when a score of 25 correspondance excède un seuil prédéterminé.25 match exceeds a predetermined threshold. 10. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur, caractérisé en ce qu'il comprend des instructions de code de programme pour l'exécution d’un procédé de traitement selon la revendication 1 à 8, lorsqu'il est exécuté sur un processeur.10. Product computer program downloadable from a communication network and / or stored on a medium readable by computer and / or executable by a microprocessor, characterized in that it comprises program code instructions for the execution of a processing method according to claim 1 to 8, when executed on a processor.
FR1660550A 2016-10-28 2016-10-28 METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, SYSTEM AND CORRESPONDING COMPUTER PROGRAM. Expired - Fee Related FR3058253B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1660550A FR3058253B1 (en) 2016-10-28 2016-10-28 METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, SYSTEM AND CORRESPONDING COMPUTER PROGRAM.
PCT/EP2017/077373 WO2018077987A1 (en) 2016-10-28 2017-10-25 Method of processing audio data from a vocal exchange, corresponding system and computer program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1660550 2016-10-28
FR1660550A FR3058253B1 (en) 2016-10-28 2016-10-28 METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, SYSTEM AND CORRESPONDING COMPUTER PROGRAM.

Publications (2)

Publication Number Publication Date
FR3058253A1 true FR3058253A1 (en) 2018-05-04
FR3058253B1 FR3058253B1 (en) 2019-07-12

Family

ID=57750237

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1660550A Expired - Fee Related FR3058253B1 (en) 2016-10-28 2016-10-28 METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, SYSTEM AND CORRESPONDING COMPUTER PROGRAM.

Country Status (2)

Country Link
FR (1) FR3058253B1 (en)
WO (1) WO2018077987A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110491370A (en) * 2019-07-15 2019-11-22 北京大米科技有限公司 A kind of voice stream recognition method, device, storage medium and server

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081782A (en) * 1993-12-29 2000-06-27 Lucent Technologies Inc. Voice command control and verification system
US20160217792A1 (en) * 2015-01-26 2016-07-28 Verint Systems Ltd. Word-level blind diarization of recorded calls with arbitrary number of speakers

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081782A (en) * 1993-12-29 2000-06-27 Lucent Technologies Inc. Voice command control and verification system
US20160217792A1 (en) * 2015-01-26 2016-07-28 Verint Systems Ltd. Word-level blind diarization of recorded calls with arbitrary number of speakers

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
GERALDINE DAMNATI ET AL: "Robust speaker turn role labeling of TV Broadcast News shows", 2011 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING : (ICASSP 2011) ; PRAGUE, CZECH REPUBLIC, 22 - 27 MAY 2011, IEEE, PISCATAWAY, NJ, 22 May 2011 (2011-05-22), pages 5684 - 5687, XP032001975, ISBN: 978-1-4577-0538-0, DOI: 10.1109/ICASSP.2011.5947650 *
HAN K J ET AL: "Forensically inspired approaches to automatic speaker recognition", 2011 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING : (ICASSP 2011) ; PRAGUE, CZECH REPUBLIC, 22 - 27 MAY 2011, IEEE, PISCATAWAY, NJ, 22 May 2011 (2011-05-22), pages 5160 - 5163, XP032001844, ISBN: 978-1-4577-0538-0, DOI: 10.1109/ICASSP.2011.5947519 *
KOFI BOAKYE ET AL: "Text-Constrained Speaker Recognition on a Text-Independent Task", ODYSSEY04 -- THE SPEAKER AND LANGUAGE RECOGNITION WORKSHOP, 31 March 2004 (2004-03-31), XP055391877, Retrieved from the Internet <URL:https://pdfs.semanticscholar.org/f3a5/db7a56fb6d43a77b4f1132a59ee83fffaab3.pdf> [retrieved on 20170718] *
TRIDIBESH DUTTA: "Text Dependent Speaker Identification Based on Spectrograms", PROCEEDINGS OF OF IMAGE AND VISION COMPUTING NEW ZEALAND 2007, 1 December 2007 (2007-12-01), pages 238 - 243, XP055391959 *

Also Published As

Publication number Publication date
WO2018077987A1 (en) 2018-05-03
FR3058253B1 (en) 2019-07-12

Similar Documents

Publication Publication Date Title
US10878824B2 (en) Speech-to-text generation using video-speech matching from a primary speaker
US10623573B2 (en) Personalized support routing based on paralinguistic information
EP1362343B1 (en) Method, module, device and server for voice recognition
US9093081B2 (en) Method and apparatus for real time emotion detection in audio interactions
US8798255B2 (en) Methods and apparatus for deep interaction analysis
US9300801B1 (en) Personality analysis of mono-recording system and methods
US8306814B2 (en) Method for speaker source classification
US9390725B2 (en) Systems and methods for noise reduction using speech recognition and speech synthesis
CN111294463B (en) Intelligent response method and system
Triantafyllopoulos et al. Deep speaker conditioning for speech emotion recognition
US9311914B2 (en) Method and apparatus for enhanced phonetic indexing and search
US20090150152A1 (en) Method and apparatus for fast search in call-center monitoring
US9711167B2 (en) System and method for real-time speaker segmentation of audio interactions
CN109256150A (en) Speech emotion recognition system and method based on machine learning
US9058384B2 (en) System and method for identification of highly-variable vocalizations
WO2009071795A1 (en) Automatic simultaneous interpretation system
CN109346057A (en) A kind of speech processing system of intelligence toy for children
FR3058253B1 (en) METHOD FOR PROCESSING AUDIO DATA FROM A VOICE EXCHANGE, SYSTEM AND CORRESPONDING COMPUTER PROGRAM.
TWI855595B (en) Dialogue-based speech recognition system and method therefor
Kulkarni et al. Project Vāc: Can a Text-to-Speech Engine Generate Human Sentiments?
US20250078574A1 (en) Automatic sign language interpreting
Lorré et al. LinTO: Assistant vocal open-source respectueux des donn\'ees personnelles pour les r\'eunions d'entreprise
FR3130440A1 (en) Method for selecting voice contents recorded in a database, according to their veracity factor.
CN117392984A (en) Voice recognition method and device
WO2024163817A1 (en) Systems and methods for generating a digital avatar that embodies audio, visual and behavioral traits of an individual while providing responses related to the individual&#39;s life story

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20180504

PLFP Fee payment

Year of fee payment: 3

ST Notification of lapse

Effective date: 20200906