|Publication number||US6513008 B2|
|Application number||US 09/808,132|
|Publication date||Jan 28, 2003|
|Filing date||Mar 15, 2001|
|Priority date||Mar 15, 2001|
|Also published as||CN1231887C, CN1547733A, DE60213573D1, EP1374222A1, EP1374222A4, EP1374222B1, US20020133348, WO2002075720A1, WO2002075720A8|
|Publication number||09808132, 808132, US 6513008 B2, US 6513008B2, US-B2-6513008, US6513008 B2, US6513008B2|
|Inventors||Steve Pearson, Peter Veprek, Jean-claude Junqua|
|Original Assignee||Matsushita Electric Industrial Co., Ltd.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (5), Non-Patent Citations (5), Referenced by (22), Classifications (7), Legal Events (5)|
|External Links: USPTO, USPTO Assignment, Espacenet|
1. Technical Field
The present invention relates generally to speech synthesis. More particularly, the present invention relates to a speech synthesizer customization system that is able to override speech synthesis data at all hierarchical levels of a dynamic data structure.
As the quality of the output of speech synthesizers continues to increase, more and more applications are beginning to incorporate synthesis technologies. For example, car navigation systems, as well as devices for the vision impaired are beginning to incorporate speech synthesizers. As the, popularity of speech synthesis increases, however, a number of limitations with regard to conventional approaches have become apparent.
A particular difficulty relates to the fact that size and development cost considerations limit the vocabulary with which conventional synthesizers are able to deal. Briefly, FIGS. 1 and 2 illustrate that the typical synthesizer will have a dynamic data structure with hierarchical levels, wherein the dynamic data structure includes a linguistic tree 20 and an acoustic tree 22. The linguistic tree 20 typically contains syntactic and linguistic objects for the sentence being synthesized, while the acoustic tree 22 holds prosodic and acoustic objects for that sentence. Thus, during synthesis of a sentence, the two hierarchical tree-like structures are “built up” (or populated) based on the input text. It will be appreciated that usually, a tree has nodes such that a “parent” node has “branches” to each of its “child” nodes. The linguistic tree 20 and the acoustic tree 22 are referred to as tree-like structures because, here, a parent node only has access to the first child and last child, while the rest of the children are contained in a list. Furthermore, each child has access to the corresponding parent. Nevertheless, the levels of the tree structures constitute a hierarchy.
The above tree structures and node information for a particular sentence are built up in real time by various synthesis modules, with the assistance of a fixed (or standard) database. For example, a parsing module typically generates clauses and phrases from the sentence being synthesized, while a phoneticizer uses the standard database to build up morphs and phonemes from the words in the sentence. Syllabification and allophone rules contained in the standard database generate syllables and allophones from words, morphs, and phonemes. Prosody algorithms generate prosodic phrases, prosodic words, etc. from all previous information.
As shown in FIG. 3, the standard database 24 typically therefore contains tables with information to be placed in the nodes of the trees 20, 22. This is especially true for contemporary “concatenation synthesis”. It should be noted that the standard database 24 is also naturally hierarchical, since the data stored in the standard database 24 is intended to supply information for various level nodes in the dynamic trees 20, 22. Furthermore, data at higher levels of the database 24 may refer to lower level data (or vice versa). For example, information about a certain kind of phrase may refer to sequences of words and their corresponding dictionary information below. In this manner, data is shared (and memory conserved) by possible multiple references to the same data item. Roughly speaking, the standard database 24 is a relational database.
It is important to note that the above-described database 24 is designed for general unlimited synthesis, and has significant space and development cost problems. Because of these normal limitations, the size and complexity of the database 24 is typically limited. As a result, in order to tailor a given synthesizer to a particular application, it has been found that a user database is often necessary. In fact, synthesizers routinely provide “user dictionaries” which are loaded into the synthesizer and are application specific. Often, markup languages allow commands to be embedded in the input text in order to alter the synthesized speech from the standard result. For example, one approach involves inserting high and low tone marks (including numeric values), into the text to indicate where, and how much to raise an intonation peak.
While the above-described conventional approaches to user databases are useful in some circumstances, a number of difficulties remain. For example, the subsequently generated speech synthesis data cannot be uniformly overridden at all hierarchical levels of the dynamic data structure. Rather, the conventional synthesizer deals with a maximum of one or two hierarchical levels, and each with different mechanisms. Furthermore, some of the hierarchical levels (such as diphone) are essentially inaccessible to text markup due to the inability to achieve the required level of granularity in linear text.
It is also important to note that conventional user database approaches are not able to override speech synthesis data within the normal synthesis sequence of computation. Imagine, for example, that we want to specify a new user supplied diphone A-B, but only if the requested stress level on A is 2 and certain kinds of allophones are found in the surrounding context of what is to be synthesized. It will be appreciated that certain conditions are only known after a complex set of allophone rules are applied (thus determining the allophone stream) and after a prosody module has selected words to de-emphasize, which in turn affects the stress level on a given phoneme. Under conventional approaches, this conditional information cannot practically be known in advance of synthesis. It is therefore virtually impossible to automatically “markup” the input text at every place where the customized diphone should be used. Simply put, user defined conditions cannot currently be based on internal states of the synthesis process, and are therefore severely limited under the traditional text markup process.
Another concern is that conventional user databases are typically not organized around the same hierarchical levels as the dynamic data structures and therefore provide inflexible control over where and what is modified during the synthesis.
The above and other objectives are provided by a speech synthesizer customization system in accordance with the present invention. The customization system has a template management tool for generating templates based on customization data from a user and replicated dynamic synthesis data from a text-to-speech (TTS) synthesizer. The replicated dynamic synthesis data is arranged in a dynamic data structure having hierarchical levels. The customization system further includes a user database that supplements a standard database of the synthesizer. The tool populates the user database with the templates such that the templates enable the user database to uniformly override subsequently generated speech synthesis data at all hierarchical levels of the dynamic data structure. The use of a tool therefore provides a mechanism for organizing, tuning, and maintaining hierarchical and multi-dimensionally sparse sets of user templates. Furthermore, providing a mechanism for uniformly overriding speech synthesis data reduces processing overhead and provides a more “natural” user database.
Further in accordance with the present invention, a user database is provided. The user database has a plurality of templates for overriding speech synthesis data of a TTS synthesizer. The speech synthesis data is arranged in a dynamic data structure having hierarchical levels. The user database further includes a hierarchical data structure organizing the templates such that the templates enable the user database to uniformly override subsequent generated speech synthesis data at all hierarchical levels of the dynamic data structure.
In another aspect of the invention, a method for customizing a synthesizer is provided. The method includes the step of generating templates based on customization data from a user and associated replicated dynamic synthesis data from the synthesizer. A standard database of the synthesizer is supplemented with a user database. The method further provides for populating the user database with the templates such that the templates enable the user database to uniformly override subsequently generated speech synthesis data at a plurality of a hierarchical levels in the dynamic data structure.
It is to be understood that both the foregoing general description and the following detailed description are merely exemplary of the invention, and are intended to provide an overview or framework for understanding the nature and character of the invention as it is claimed. The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute part of this specification. The drawings illustrate various features and embodiments of the invention, and together with the description serve to explain the principles and operation of the invention.
The present invention will become more fully understood from the detailed description and the accompanying drawings, wherein:
FIG. 1 is a diagram of a conventional linguistic tree structure, useful in understanding the invention;
FIG. 2 is a diagram of a conventional acoustic tree structure, useful in understanding the invention;
FIG. 3 is a block diagram of a conventional text-to-speech synthesizer, useful in understanding the invention;
FIG. 4 is a block diagram showing a speech synthesizer customization system in accordance with the principles of the present invention;
FIG. 5 is a block diagram of a template management tool according to one embodiment of the present invention; and
FIG. 6 is a diagram of a user database according to one embodiment of the present invention.
The following description of the preferred embodiment(s) is merely exemplary in nature and is in no way intended to limit the invention, its application, or uses.
Turning now to FIG. 4, a speech synthesizer customization system 10 is shown. It is important to note that the customization system 10 can be useful to applications such as car navigation, call routing, foreign language teaching, and synthesis of internet contents. In each of these applications, there may be a need to customize a general speech synthesizer 12 with a priori knowledge of the application environment. Thus, although the preferred embodiment will be described in reference to car navigation, the nature and scope of the invention is not so limited.
Generally, the customization system 10 has a template management tool 14 for generating templates based on customization data from a user 18 and replicated dynamic synthesis data 20 from a text-to-speech (TTS) synthesizer 12. As already discussed, the replicated dynamic synthesis data 20 is arranged in a dynamic data structure having hierarchical levels. The customization system 10 further includes a user database 22 supplementing a standard database 24 of the synthesizer 12. As will be discussed in greater detail below, the tool 10 populates the user database 22 with the templates 16 such that the templates 16 enable the user database 22 to uniformly override subsequently generated speech synthesis data at all hierarchical levels of the dynamic data structure.
FIG. 6 illustrates that each template 16 defines a condition/key under which the template 16 is used to override the speech synthesis data and an action/data to be executed in order to override the speech synthesis data. It will be appreciated that the condition can generally correspond to a hierarchical level of either a linguistic tree structure or an acoustic tree structure. Thus, templates 16 a-16 c correspond to a sentence level of a linguistic tree structure. It can be seen that the top level templates can be used to match a frame sentence, wherein matching frame sentences at the top level reduces run-time processing requirements at the lower levels. For example, the condition for template 16a is matched to the lower level template 16d and therefore only needs to be satisfied once to trigger the corresponding actions of both templates 16a and 16 d.
It can further be seen that templates 16 d-16 k have conditions that generally correspond to a word level of a linguistic tree structure. It can be seen that lower-level templates 16 d-16 g are used to customize fundamental frequency contours, and that template 16 e is additionally matched to top level templates 16 a and 16 b to reduce storage requirements. It will further be appreciated that simple “non-matched” templates such as template 16 f and 16 h can be used for more local customization.
Furthermore, an example of conditions corresponding to a syllable level of an acoustic tree structure are shown in templates 16 l and 16 m. It is important to note that matching can occur across tree structures. Thus, syllable level template 16 l (of the acoustic tree structure) can be matched to word level template 16 g (of the linguistic tree structure) in order to further conserve processing resources. FIG. 6 therefore illustrates that the templates 16 can be used to customize a variety of parameters. While the illustrated user database 22 is merely a snapshot of a typical database, it provides a useful illustration of the benefits associated with the present invention.
With continuing reference to FIGS. 4 and 5, the preferred template management tool 10 will be discussed in greater detail. It can be seen that generally the tool 10 includes a template generator 26, an output interface 28, and one or more input interfaces 30. The template generator 26 processes the replicated dynamic synthesis data 20 based on the customization data, and the output interface 28 graphically displays the replicated dynamic synthesis data 20 (and any other desirable data) to the user 18. The input interfaces 30 obtain the customization data from the user 18.
It is important to note that the method described herein for customizing the TTS synthesizer 12 is an iterative one. Thus, the arrows transitioning between the four regions shown in FIG. 4 can be viewed as part of a cyclical process in which templates are generated and the supplemental user database is populated repeatedly until a desired synthesizer output is obtained. It will be appreciated that the desired synthesizer output is largely dictated by the application for which the customization system is used (i.e., car navigation, vision impaired devices, etc.).
It is preferred that the input interfaces include a command interpreter 30 a operatively coupled between a keyboard device input and the template generator 26. A graphics tool module 30 b is operatively coupled between a mouse device input and the template generator 26. A sound processing module 30 c is operatively coupled between a microphone device input and the template generator 26. In one embodiment, the sound processing module 30 c includes an input wave form submodule 32 for generating an input wave form based on data obtained from the microphone device input. A pitch extraction module 34 generates pitch data based on the input waveform, while a formant analysis submodule 36 generates formant data based on the input waveform. It is further preferred that a phoneme labeling submodule 38 automatically labels phonemes based on the input waveform.
Those skilled in the art can now appreciate from the foregoing description that the broad teachings of the present invention can be implemented in a variety of forms. Therefore, while this invention can be described in connection with particular examples thereof, the true scope of the invention should not be so limited since other modifications will become apparent to the skilled practitioner upon a study of the drawings, specification and following claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5905972 *||Sep 30, 1996||May 18, 1999||Microsoft Corporation||Prosodic databases holding fundamental frequency templates for use in speech synthesis|
|US6163769 *||Oct 2, 1997||Dec 19, 2000||Microsoft Corporation||Text-to-speech using clustered context-dependent phoneme-based units|
|US6185533 *||Mar 15, 1999||Feb 6, 2001||Matsushita Electric Industrial Co., Ltd.||Generation and synthesis of prosody templates|
|US6260016 *||Nov 25, 1998||Jul 10, 2001||Matsushita Electric Industrial Co., Ltd.||Speech synthesis employing prosody templates|
|US20020013708 *||Jun 29, 2001||Jan 31, 2002||Andrew Walker||Speech synthesis|
|1||Meron, Yoram; Hirose, Keikichi; Efficient Weight Training for Selection Based Synthesis; Department of Information and Communication Engineering; University of Tokyo, Japan; Eurospeech, 1999.|
|2||Pearson, Steve; Kibre, Nicholas; Niedzielski, Nancy; A Synthesis Method Based on Concatenation of Demisyllables and a Residual Excited Vocal Tract Model; ICSLP; 1998; pp. 2739-2742.|
|3||Silverman, Kim; Beckman, Mary; Pitrelli, John; Ostendorf, Mari; Wightman, Colin; Price, Patti; Pierrehumbert, Janet; Hirschberg, Julia; TOBI: A Standard for Labeling English Prosody; ICSLP; 1992; pp. 867-870.|
|4||Yoram, Meron; Hirose, Keikichi; Language Taining System Utilizing Speech Modification; Department of Information and Communication Engineering, University of Tokyo, Japan; 1996.|
|5||Yoram, Meron; Hirose, Keikichi; Language Training System Utilizing Speech Modification; Department of Information and Communication Engineering, University of Tokyo, Japan; ICSLP; 1996.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7249025 *||May 9, 2003||Jul 24, 2007||Matsushita Electric Industrial Co., Ltd.||Portable device for enhanced security and accessibility|
|US8027837||Sep 15, 2006||Sep 27, 2011||Apple Inc.||Using non-speech sounds during text-to-speech synthesis|
|US8036894 *||Oct 11, 2011||Apple Inc.||Multi-unit approach to text-to-speech synthesis|
|US8380484||Feb 19, 2013||International Business Machines Corporation||Method and system of dynamically changing a sentence structure of a message|
|US8892446||Dec 21, 2012||Nov 18, 2014||Apple Inc.||Service orchestration for intelligent automated assistant|
|US8903716||Dec 21, 2012||Dec 2, 2014||Apple Inc.||Personalized vocabulary for digital assistant|
|US8930191||Mar 4, 2013||Jan 6, 2015||Apple Inc.||Paraphrasing of user requests and results by automated digital assistant|
|US8942986||Dec 21, 2012||Jan 27, 2015||Apple Inc.||Determining user intent based on ontologies of domains|
|US9117447||Dec 21, 2012||Aug 25, 2015||Apple Inc.||Using event alert text as input to an automated assistant|
|US9262612||Mar 21, 2011||Feb 16, 2016||Apple Inc.||Device access using voice authentication|
|US9300784||Jun 13, 2014||Mar 29, 2016||Apple Inc.||System and method for emergency calls initiated by voice command|
|US9318108||Jan 10, 2011||Apr 19, 2016||Apple Inc.||Intelligent automated assistant|
|US9330720||Apr 2, 2008||May 3, 2016||Apple Inc.||Methods and apparatus for altering audio output signals|
|US9338493||Sep 26, 2014||May 10, 2016||Apple Inc.||Intelligent automated assistant for TV user interactions|
|US9368114||Mar 6, 2014||Jun 14, 2016||Apple Inc.||Context-sensitive handling of interruptions|
|US20040225504 *||May 9, 2003||Nov 11, 2004||Junqua Jean-Claude||Portable device for enhanced security and accessibility|
|US20050177369 *||Feb 11, 2004||Aug 11, 2005||Kirill Stoimenov||Method and system for intuitive text-to-speech synthesis customization|
|US20050177541 *||Feb 4, 2004||Aug 11, 2005||Zorch, Inc.||Method and system for dynamically updating a process library|
|US20060036433 *||Aug 10, 2004||Feb 16, 2006||International Business Machines Corporation||Method and system of dynamically changing a sentence structure of a message|
|US20060224380 *||Mar 22, 2006||Oct 5, 2006||Gou Hirabayashi||Pitch pattern generating method and pitch pattern generating apparatus|
|US20070192105 *||Feb 16, 2006||Aug 16, 2007||Matthias Neeracher||Multi-unit approach to text-to-speech synthesis|
|US20080071529 *||Sep 15, 2006||Mar 20, 2008||Silverman Kim E A||Using non-speech sounds during text-to-speech synthesis|
|U.S. Classification||704/260, 704/268, 704/E13.004|
|International Classification||G10L13/06, G10L13/02|
|Mar 15, 2001||AS||Assignment|
Owner name: MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD., JAPAN
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PEARSON, STEVE;VEPREK, PETER;JUNQUA, JEAN-CLAUDE;REEL/FRAME:011618/0694
Effective date: 20010312
|Jun 30, 2006||FPAY||Fee payment|
Year of fee payment: 4
|Jul 1, 2010||FPAY||Fee payment|
Year of fee payment: 8
|May 27, 2014||AS||Assignment|
Owner name: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AME
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANASONIC CORPORATION;REEL/FRAME:033033/0163
Effective date: 20140527
|Jun 23, 2014||FPAY||Fee payment|
Year of fee payment: 12