US20060085194A1 - Speech synthesis apparatus and method, and storage medium - Google Patents
Speech synthesis apparatus and method, and storage medium Download PDFInfo
- Publication number
- US20060085194A1 US20060085194A1 US11/295,653 US29565305A US2006085194A1 US 20060085194 A1 US20060085194 A1 US 20060085194A1 US 29565305 A US29565305 A US 29565305A US 2006085194 A1 US2006085194 A1 US 2006085194A1
- Authority
- US
- United States
- Prior art keywords
- distortion
- synthesis
- unit
- modification
- obtaining
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/04—Details of speech synthesis systems, e.g. synthesiser structure or memory management
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/06—Elementary speech units used in speech synthesisers; Concatenation rules
Definitions
- the present invention relates to a speech synthesis apparatus and method for forming a synthesis unit inventory used in speech synthesis, and a storage medium.
- Synthetic speech produced by exploiting such technique contains a distortion due to modifying of synthesis units (to be referred to as a modification distortion hereinafter) and a distortion due to concatenations of synthesis units (to be referred to as a concatenation distortion hereinafter).
- a modification distortion hereinafter
- a concatenation distortion hereinafter
- the present invention has been made in consideration of the aforementioned prior art, and has as its object to provide a speech synthesis apparatus and method, which suppress deterioration of synthetic speech quality by selecting synthesis units to be registered in a synthesis unit inventory in consideration of the influences of concatenation and modification distortions.
- the present invention is described with use of synthesis unit and synthesis unit inventory of synthesis units and synthesis unit inventory.
- the synthesis unit represents a part for speech synthesis, and the synthesis unit can be called as a synthesis unit.
- a speech synthesis apparatus of the present invention comprising: distortion output means for obtaining a distortion produced upon modifying a synthesis unit on the basis of predetermined prosody information; and unit registration means for selecting a synthesis unit to be registered in a synthesis unit inventory used in speech synthesis on the basis of the distortion output from said distortion output means.
- a speech synthesis method of the present invention comprising: a distortion output step of obtaining a distortion produced upon modifying a synthesis unit on the basis of predetermined prosody information; and a unit registration step of selecting a synthesis unit to be registered in a synthesis unit inventory used in speech synthesis on the basis of the distortion output from the distortion output step.
- FIG. 1 is a block diagram showing the hardware arrangement of a speech synthesis apparatus according to an embodiment of the present invention
- FIG. 2 is a block diagram showing the module arrangement of a speech synthesis apparatus according to the first embodiment of the present invention
- FIG. 3 is a flow chart showing the flow of processing in an on-line module according to the first embodiment
- FIG. 4 is a block diagram showing the detailed arrangement of an off-line module according to the first embodiment
- FIG. 5 is a flow chart showing the flow of processing in the off-line module according to the first embodiment
- FIG. 6 is a view for explaining modification of synthesis units according to the first embodiment of the present invention.
- FIG. 7 is a view for explaining a concatenation distortion of synthesis units according to the first embodiment of the present invention.
- FIG. 8 is a view for explaining the determination process of distortions in synthesis units
- FIG. 9 is a view for explaining the determination process by Nbest.
- FIG. 10 is a view for explaining a case where synthesis unit units are represented by mixture of a diphone and half-diphone, according to the third embodiment of the present invention.
- FIG. 11 is a view for explaining a case where synthesis unit units are represented by half-diphones, according to the fourth embodiment of the present invention.
- FIG. 12 shows an example of the table format that determines concatenation distortions between candidates of /a.r/ and candidates of /r.i/ of a diphone according to the 12th embodiment of the present invention
- FIG. 13 shows an example of a table showing modification distortions according to the 13th embodiment of the present invention.
- FIG. 14 is a view showing an example upon estimating a modification distortion according to the 13th embodiment of the present invention.
- FIG. 1 is a block diagram showing the hardware arrangement of a speech synthesis apparatus according to an embodiment of the present invention. Note that this embodiment will exemplify a case wherein a general personal computer is used as a speech synthesis apparatus, but the present invention can be practiced using a dedicated speech synthesis apparatus or other apparatuses.
- reference numeral 101 denotes a control memory (ROM) which stores various control data used by a central processing unit (CPU) 102 .
- the CPU 102 controls the operation of the overall apparatus by executing a control program stored in a RAM 103 .
- Reference numeral 103 denotes a memory (RAM) which is used as a work area upon execution of various control processes by the CPU 102 to temporarily save various data, and loads and stores a control program from an external storage device 104 upon executing various processes by the CPU 102 .
- This external storage device includes, e.g., a hard disk, CD-ROM, or the like.
- Reference numeral 105 denotes a D/A converter for converting input digital data that represents a speech signal into an analog signal, and outputting the analog signal to a speaker 109 .
- Reference numeral 106 denotes an input unit which comprises, e.g., a keyboard and a pointing device such as a mouse or the like, which are operated by the operator.
- Reference numeral 107 denotes a display unit which comprises a CRT display, liquid crystal display, or the like.
- Reference numeral 108 denotes a bus which connects those units.
- Reference numeral 110 denotes a speech synthesis unit.
- a control program for controlling the speech synthesis unit 110 of this embodiment is loaded from the external storage device 104 , and is stored on the RAM 103 .
- Various data used by this control program are stored in the control memory 101 . Those data are fetched onto the memory (RAM) 103 as needed via the bus 108 under the control of the CPU 102 , and are used in the control processes of the CPU 102 .
- a control program including program codes of process implemented in the speech synthesis unit 110 may be loaded from the external storage device 104 and stored into the memory (RAM) 103 and the CPU 102 performs the processing along with the control program, such that the CPU 102 and the RAM 103 can implement the function of the speech synthesis unit 110 .
- the D/A converter 105 converts speech waveform data produced by executing the control program into an analog signal, and outputs the analog signal to the speaker 109 .
- FIG. 2 is a block diagram showing the module arrangement of the speech synthesis unit 110 according to this embodiment.
- the speech synthesis unit 110 roughly has two modules, i.e., a synthesis unit inventory formation module 2000 for executing a process for registering synthesis units in a synthesis unit inventory 206 , and a speech synthesis module 2001 for receiving text data, and executing a process for synthesizing and outputting speech corresponding to that text data.
- a synthesis unit inventory formation module 2000 for executing a process for registering synthesis units in a synthesis unit inventory 206
- a speech synthesis module 2001 for receiving text data, and executing a process for synthesizing and outputting speech corresponding to that text data.
- reference numeral 201 denotes a text input unit for receiving arbitrary text data from the input unit 106 or external storage device 104 ;
- numeral 202 denotes an analysis dictionary;
- numeral 203 denotes a language analyzer;
- numeral 204 denotes a prosody generation rule holding unit;
- numeral 205 denotes a prosody generator;
- numeral 206 denotes a synthesis unit inventory;
- numeral 207 denotes a synthesis unit selector;
- numeral 208 denotes a synthesis unit modification/concatenation unit;
- numeral 209 denotes a speech waveform output unit;
- numeral 210 denotes a speech database;
- numeral 211 denotes a synthesis unit inventory formation unit;
- numeral 212 denotes a text corpus. Text data of various contents can be input to the text corpus 212 via the input unit 106 and the like.
- the speech synthesis module 2001 will be explained first.
- the language analyzer 203 executes language analysis of text input from the text input unit 201 by looking up the analysis dictionary 202 .
- the analysis result is input to the prosody generator 205 .
- the prosody generator 205 generates a phonetic string and prosody information on the basis of the analysis result of the language analyzer 203 and information that pertains to prosody generation rules held in the prosody generation rule holding unit 204 , and outputs them to the synthesis unit selector 207 and synthesis unit modification/concatenation unit 208 .
- the synthesis unit selector 207 selects corresponding synthesis units from those held in the synthesis unit inventory 206 using the prosody generation result input from the prosody generator 205 .
- the synthesis unit modification/concatenation unit 208 modifies and concatenates synthesis units output from the synthesis unit selector 207 in accordance with the prosody generation result input from the prosody generator 205 to generate a speech waveform.
- the generated speech waveform is output by the speech waveform output unit 209 .
- the synthesis unit inventory formation module 2000 will be explained below.
- the synthesis unit inventory formation unit 211 selects synthesis units from the speech database 210 and registers them in the synthesis unit inventory 206 on the basis of a procedure to be described later.
- FIG. 3 is a flow chart showing the flow of a speech synthesis process (on-line process) in the speech synthesis module 2001 shown in FIG. 2 .
- step S 301 the text input unit 201 inputs text data in units of sentences, clauses, words, or the like, and the flow advances to step S 302 .
- step S 302 the language analyzer 203 executes language analysis of the text data.
- the flow advances to step S 303 , and the prosody generator 205 generates a phonetic string and prosody information on the basis of the analysis result obtained in step S 302 , and predetermined prosodic rules.
- step S 304 and the synthesis unit selector 207 selects for each phonetic string synthesis units registered in the synthesis unit inventory 206 on the basis of the prosody information obtained in step S 303 and the phonetic environment.
- step S 305 the synthesis unit modification/concatenation unit 208 modifies and concatenates synthesis units on the basis of the selected synthesis units and the prosody information generated in step S 303 .
- step S 306 the speech waveform output unit 209 outputs a speech waveform produced by the synthesis unit modification/concatenation unit 208 as a speech signal. In this way, synthetic speech corresponding to the input text is output.
- FIG. 4 is a block diagram showing the more detailed arrangement of the synthesis unit inventory formation module 2000 in FIG. 2 .
- the same reference numerals in FIG. 4 denote the same parts as in FIG. 2 , and FIG. 4 shows the arrangement of the synthesis unit inventory formation unit 211 as a characteristic feature of this embodiment in more detail.
- reference numeral 401 denotes a text input unit
- numeral 402 denotes a language analyzer
- numeral 403 denotes an analysis dictionary
- numeral 404 denotes a prosody generation rule holding unit
- numeral 405 denotes a prosody generator
- numeral 406 denotes a synthesis unit search unit
- numeral 407 denotes a synthesis unit holding unit
- numeral 408 denotes a synthesis unit modification unit
- numeral 409 denotes a modification distortion determination unit
- numeral 410 denotes a concatenation distortion determination unit
- numeral 411 denotes a distortion determination unit
- numeral 412 denotes a distortion holding unit
- numeral 413 denotes an Nbest determination unit
- numeral 414 denotes an Nbest holding unit
- numeral 415 denotes a registration unit determination unit
- numeral 416 denotes a registration unit holding unit.
- the module 2000 will be described in detail below.
- the text input unit 401 reads out text data from the text corpus 212 in units of sentences, and outputs the readout data to the language analyzer 402 .
- the language analyzer 402 analyzes text data input from the text input unit 401 by looking up the analysis dictionary 403 .
- the prosody generator 405 generates a phonetic string on the basis of the analysis result of the language analyzer 402 , and generates prosody information by looking up prosody generation rules (accent patterns, natural falling components, pitch patterns, and the like) held by the prosody generation rule holding unit 404 .
- the synthesis unit search unit 406 searches the speech database 210 for synthesis units, that consider a specific phonetic environment, in accordance with the prosody information and phonetic string generated by the prosody generator 405 .
- the found synthesis units are temporarily held by the synthesis unit holding unit 407 .
- the synthesis unit modification unit 408 modifies the synthesis units held in the synthesis unit holding unit 407 in correspondence with the prosody information generated by the prosody generator 405 .
- the modification process includes a process for concatenating synthesis units in correspondence with the prosody information, a process for modifying synthesis units by partially deleting them upon concatenating synthesis units, and the like.
- the modification distortion determination unit 409 determines a modification distortion from a change in acoustic feature beforehand after modification of synthesis units.
- the concatenation distortion determination unit 410 determines a concatenation distortion produced when two synthesis units are concatenated, on the basis of an acoustic feature near the terminal end of a preceding synthesis unit in a phonetic string, and that near the start end of the synthesis unit of interest.
- the distortion determination unit 411 determines a total distortion (also referred to as a distortion value) of each phonetic string in consideration of the modification distortion determined by the modification distortion determination unit 409 and the concatenation distortion determined by the concatenation distortion determination unit 410 .
- the distortion holding unit 412 holds the distortion value that reaches each synthesis unit, which is determined by the distortion determination unit 411 .
- the Nbest determination unit 413 obtains N best paths, which can minimize the distortion for each phonetic string, using an A* (a star) search algorithm.
- the Nbest holding unit 414 holds N optimal paths obtained by the Nbest determination unit 413 for each input text.
- the registration unit determination unit 415 selects synthesis units to be registered in the synthesis unit inventory 206 in the order of frequencies of occurrence on the basis of Nbest results in units of phonemes, which are held in the Nbest holding unit 414 .
- the registration unit holding unit 416 holds the synthesis units selected by the registration unit determination unit 415 .
- FIG. 5 is a flow chart showing the flow of processing in the synthesis unit inventory formation module 2000 shown in FIG. 4 .
- step S 501 the text input unit 401 reads out text data from the text corpus 212 in units of sentences. If no text data to be read out remains, the flow jumps to step S 512 to finally determine synthesis units to be registered. If text data to be read out remain, the flow advances to step S 502 , and the language analyzer 402 executes language analysis of the input text data using the analysis dictionary 403 . The flow then advances to step S 503 .
- step S 503 the prosody generator 405 generates prosody information and a phonetic string on the basis of the prosody generation rules held by the prosody generation rule holding unit 404 and the language analysis result in step S 502 .
- step S 504 The flow advances to step S 504 to process a phoneme in the phonetic string in the phonetic string generated in step S 503 in turn. If no phoneme to be processed remains in step S 504 , the flow jumps to step S 511 ; otherwise, the flow advances to step S 505 .
- the synthesis unit search unit 406 searches for each phoneme the speech database 210 for synthesis units which satisfy a phonetic environment and prosody rules, and saves the found synthesis units in the synthesis unit holding unit 407 .
- step S 506 The flow advances to step S 506 to sequentially process a plurality of synthesis units found by search. If no synthesis unit to be processed remains, the flow returns to step S 504 to process the next phoneme; otherwise, the flow advances to step S 507 to process a synthesis unit of the current phoneme.
- the synthesis unit modification unit 408 modifies the synthesis unit using the same scheme as that in the aforementioned speech synthesis process.
- the synthesis unit modification process includes, for example, pitch synchronous overlap and add (PSOLA), and the like.
- PSOLA pitch synchronous overlap and add
- the synthesis unit modification process uses that synthesis unit and prosody information.
- step S 508 the modification distortion determination unit 409 computes a change in acoustic feature before and after modification of the current synthesis unit as a modification distortion (this process will be described in detail later).
- the flow advances to step S 509 , and the concatenation distortion determination unit 410 computes concatenation distortions between the current synthesis unit and all synthesis units of the preceding phoneme (this process will be described in detail later).
- the flow advances to step S 510 , and the distortion determination unit 411 determines the distortion values of all paths that reach the current synthesis unit on the basis of the modification and concatenation distortions (this process will be described later).
- N the number of Nbest to be obtained
- step S 506 If all synthesis units in each phoneme are processed in step S 506 , and if all phonemes are processed in step S 504 , the flow proceeds to step S 511 .
- step S 511 the Nbest determination unit 413 makes an Nbest search using the A* search algorithm to obtain N best paths (to be also referred to as synthesis unit sequences), and holds them in the Nbest holding-unit 414 . The flow then returns to step S 511 .
- step S 501 Upon completion of processing for all the text data, the flow jumps from step S 501 to step S 512 , and the registration unit determination unit 415 selects synthesis units with a predetermined frequency of occurrence or higher on the basis of the Nbest results of all the text data for each phoneme.
- the value N of Nbest is empirically given by, e.g., exploratory experiments or the like.
- the synthesis units determined in this manner are registered in the synthesis unit inventory 206 via the registration unit holding unit 416 .
- FIG. 6 is a view for explaining the method of obtaining the modification distortion in step S 508 in FIG. 5 according to this embodiment.
- FIG. 6 illustrates a case wherein the pitch interval is broadened by the PSOLA scheme.
- the arrows indicate pitch marks, and the dotted lines represent the correspondence between pitch segments before and after modification.
- a given pitch unit e.g. 60
- a pitch unit is extracted by applying a Hanning window 65 having the same window duration to have a pitch mark 64 of a pitch unit 63 before modification, which corresponds to the pitch mark 61 , as the center, and a cepstrum is obtained in the same manner as that after modification.
- the distance between the obtained cepstrum is determined to be the modification distortion of the pitch unit 60 of interest. That is, a value obtained by dividing the sum total of modification distortions between pitch units after modification and corresponding pitch units before modification by the number Np of pitch units adopted in PSOLA is used as a modification distortion of that synthesis unit.
- FIG. 7 is a view for explaining the method of obtaining the concatenation distortion in this embodiment.
- a sum of absolute values of differences of these cepstrum vector elements is determined to be the concatenation distortion of the synthesis unit of interest. That is, as indicated by 700 in FIG. 7 , let Cpre i,j (i: the frame number, frame number “0” indicates a frame including the synthesis unit boundary, j: the element number of the vector) be elements of a cepstrum vector at the terminal end portion of a synthesis unit of the preceding phoneme. Also, as indicated by 701 in FIG. 7 , let Ccur i,j be elements of a cepstrum vector at the start end portion of the synthesis unit of interest.
- FIG. 8 illustrates the determination process of a distortion in synthesis units by the distortion determination unit 411 according to this embodiment.
- diphones are used as phonetic units.
- one circle indicates one synthesis unit in a given phoneme, and a numeral in the circle indicates the minimum value of the sum totals of distortion values that reach this synthesis unit.
- a numeral bounded by a rectangle indicates a distortion value between a synthesis unit of the preceding phoneme, and that of the phoneme of interest.
- each arrow indicates the relation between a synthesis unit of the preceding phoneme, and that of the phoneme of interest.
- Pn,m be the m-th synthesis unit of the n-th phoneme (the phoneme of interest) for the sake of simplicity.
- Synthesis units corresponding to N (N: the number of Nbest to be obtained) best distortion values in ascending order of that synthesis unit Pn,m are extracted from the preceding phoneme, Dn,m,k represents the k-th distortion value among those values, and PREn,m,k represents a synthesis unit of the preceding phoneme, which corresponds to that distortion value.
- a distortion value Dtotal (corresponding to Dn,m,k in the above description) is defined as a weighted sum of the aforementioned concatenation distortion Dc and modification distortion Dt.
- D total w ⁇ Dc +(1 ⁇ w ) ⁇ Dm :(0 ⁇ w ⁇ 1) where w is a weighting coefficient empirically obtained by, e.g., exploratory experiments or the like.
- the distortion holding unit 412 holds N best distortion values Dn,m,k, corresponding synthesis units PREn,m,k of the preceding phoneme, and the sum totals Sn,m,k of distortion values of paths that reach Dn,m,k via PREn,m,k.
- FIG. 8 shows an example wherein the minimum-value of the sum totals of paths that reach the synthesis unit Pn,m of interest is “222”.
- Reference numeral 80 denotes a path which concatenates the synthesis units PREn,m,1 and Pn,m.
- FIG. 9 illustrates the Nbest determination process.
- N best pieces of information have been obtained in each synthesis unit (forward search).
- the Nbest determination unit 413 obtains an Nbest path by spreading branches from a synthesis unit 90 at the end of a phoneme in the reverse order (backward search).
- a node to which branches are spread is selected to minimize the sum of the predicted value (a numeral beside each line) and the total distortion value (individual distortion values are indicated by numerals in rectangles) until that node is reached.
- the predicted value corresponds to a minimum distortion Sn,m,0 of the forward search result in the synthesis unit Pn,m. In this case, since the sum of predicted values is equal to that of the distortion values of a minimum path that reaches the left end in practice, it is guaranteed to obtain an optimal path owing to the nature of the A* search algorithm.
- FIG. 9 shows a state wherein the first-place path is determined.
- each circle indicates a synthesis unit
- the numeral in each circle indicates a distortion predicted value
- the bold line indicates the first-place path
- the numeral in each rectangle indicates a distortion value
- each numeral beside the line indicates a predicted distortion value.
- a node that corresponds to the minimum sum of the predicted value and the total distortion value to that node is selected from nodes indicated by double circles, and branches are spread to all (a maximum of N) synthesis units of the preceding phoneme, which are connected to that node. Nodes at the ends of the branches are indicated by double circles. By repeating this operation, N best paths are determined in ascending order of the total sum value.
- synthesis units which form a path with a minimum distortion can be selected and registered in the synthesis unit inventory.
- diphones are used as phonetic units.
- the present invention is not limited to such specific units, and phonemes, half-diphones, and the like may be used.
- a half-diphone is obtained by dividing a diphone into two segments at a phoneme boundary. The merit obtained when half-diphones are used as units will be briefly explained below.
- all kinds of diphones must be prepared in the synthesis unit inventory 206 .
- an unavailable half-diphone can be replaced by another half-diphone.
- diphones, phonemes, half-diphones, and the like are used as phonetic units.
- the present invention is not limited to such specific units, and those units may be used in combination.
- a phoneme which is frequently used may be expressed using a diphone as a unit, and a phoneme which is used less frequently may be expressed using two half-diphones.
- FIG. 10 shows an example wherein different synthesis units units mix.
- a phoneme “o.w” is expressed by a diphone, and its preceding and succeeding phonemes are expressed by half-diphones.
- a pair of half-diphones may be virtually used as a diphone. That is, since half-diphones-stored at successive locations in the source database have a concatenation distortion “0”, a modification distortion need only be considered in such case, and the computation volume can be greatly reduced.
- FIG. 11 shows this state. Numerals on the lines in FIG. 11 indicate concatenation distortions.
- pairs of half-diphones denoted by 1100 are read out from successive locations in a source database, and their concatenation distortions are uniquely determined to be “0”. Since pairs of half-diphones denoted by 1101 are not read out from successive locations in the source database, their concatenation distortions are individually computed.
- the entire phoneme obtained from one unit of text data undergoes distortion computation.
- the phoneme may be segmented at pause or unvoiced sound portions into periods, and distortion computations may be made in units of periods.
- the unvoiced sound portions correspond to, e.g, those of “p”, “t”, “k”, and the like. Since a concatenation distortion is normally “0” at a pause or unvoiced sound position, such unit is effective. In this way, optimal synthesis units can be selected in units of periods.
- cepstra are used upon computing a concatenation distortion, but the present invention is not limited to such specific parameters.
- a concatenation distortion may be computed using the sum of differences of waveforms before and after a concatenation point.
- a concatenation distortion may be computed using spectrum distance.
- a concatenation point is preferably synchronized with a pitch mark.
- a concatenation distortion is computed on the basis of the absolute values of differences in units of orders of cepstrum.
- the present invention is not limited to such specific method.
- a concatenation distortion is computed on the basis of the powers of the absolute values of differences (the absolute values need not be used when an exponent is an even number).
- N represents an exponent
- a larger N value results in higher sensitivity to a larger difference.
- a concatenation distortion is reduced on average.
- a cepstrum distance is used as a modification distortion.
- a modification distortion may be computed using the sum of differences of waveforms in given periods before and after modification.
- the modification distortion may be computed using spectrum distance.
- a modification distortion is computed based on information obtained from waveforms.
- the present invention is not limited to such specific method.
- the numbers of times of deletion and copying of pitch segments by PSOLA may be used as elements upon computing a modification distortion.
- a concatenation distortion is computed every time a synthesis unit is read out.
- the present invention is not limited to such specific method.
- concatenation distortions may be computed in advance, and may be held in the form of a table.
- FIG. 12 shows an example of a table which stores concatenation distortions between a diphone “/a.r/” and a diphone “/r.i/”.
- the ordinate plots synthesis units of “/a.r/”
- the abscissa plots synthesis units of “/r.i/”.
- a concatenation distortion between synthesis unit “id3 (candidate No. 3)” of “/a.r/” and synthesis unit “id2 (candidate No. 2)” of “/r.i/” is “3.6”.
- a modification distortion is computed every time a synthesis unit is modified.
- modification distortions may be computed in advance and may be held in the form of a table.
- FIG. 13 is a table of modification distortions obtained when a given diphone is changed in terms of the fundamental frequency and phonetic duration.
- ⁇ is a statistical average value of that diphone, and ⁇ is a standard deviation.
- FIG. 14 shows an example for estimating a modification distortion upon synthesis.
- a 5 ⁇ 5 table is formed on the basis of the statistical average value and standard deviation of a given diphone as the lattice points of the modification distortion table.
- the present invention is not limited to such specific table, but a table having arbitrary lattice points may be formed.
- lattice points may be conclusively given independently of the average value and the like. For example, a range that can be estimated by prosodic estimation may be equally divided.
- a distortion is quantified using the weighted sum of concatenation and modification distortions.
- Threshold values may be respectively set for concatenation and modification distortions, and when either of these threshold values exceed, a sufficiently large distortion value may be given so as not to select that synthesis unit.
- the respective units are constructed on a single computer.
- the present invention is not limited to such specific arrangement, and the respective units may be divisionally constructed on computers or processing apparatuses distributed on a network.
- the program is held in the control memory (ROM).
- ROM control memory
- the present invention is not limited to such specific arrangement, and the program may be implemented using an arbitrary storage medium such as an external storage or the like. Alternatively, the program may be implemented by a circuit that can attain the same operation.
- the present invention may be applied to either a system constituted by a plurality of devices, or an apparatus consisting of a single equipment.
- the present invention is also achieved by supplying a recording medium, which records a program code of software that can implement the functions of the above-mentioned embodiments to the system or apparatus, and reading out and executing the program code stored in the recording medium by a computer (or a CPU or MPU) of the system or apparatus.
- the program code itself read out from the recording medium implements the functions of the above-mentioned embodiments, and the recording medium which records the program code constitutes the present invention.
- the recording medium for supplying the program code for example, a floppy disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, magnetic tape, nonvolatile memory card, ROM, and the like may be used.
- the functions of the above-mentioned embodiments may be implemented not only by executing the readout program code by the computer but also by some or all of actual processing operations executed by an OS (operating system) running on the computer on the basis of an instruction of the program code.
- OS operating system
- the functions of the above-mentioned embodiments may be implemented by some or all of actual processing operations executed by a CPU or the like arranged in a function extension board or a function extension unit, which is inserted in or connected to the computer, after the program code read out from the recording medium is written in a memory of the extension board or unit.
Abstract
Input text data undergoes language analysis to generate prosody, and a speech database is searched for a synthesis unit on the basis of the prosody. A modification distortion of the found synthesis unit, and concatenation distortions upon connecting that synthesis unit to those in the preceding phoneme are computed, and a distortion determination unit weights the modification and concatenation distortions to determine the total distortion. An Nbest determination unit obtains N best paths that can minimize the distortion using the A* search algorithm, and a registration unit determination unit selects a synthesis unit to be registered in a synthesis unit inventory on the basis of the N best paths in the order of frequencies of occurrence, and registers it in the synthesis unit inventory.
Description
- The present invention relates to a speech synthesis apparatus and method for forming a synthesis unit inventory used in speech synthesis, and a storage medium.
- In speech synthesis apparatuses that produce synthetic speech on the basis of text data, a speech synthesis method which pastes and modifies synthesis units at desired pitch intervals while copying and/or deleting them in units of pitch waveforms (PSOLA: Pitch Synchronous Overlap and Add), and produces synthetic speech by concatenating these synthesis units is becoming popular today.
- Synthetic speech produced by exploiting such technique contains a distortion due to modifying of synthesis units (to be referred to as a modification distortion hereinafter) and a distortion due to concatenations of synthesis units (to be referred to as a concatenation distortion hereinafter). Such two different distortions seriously cause deterioration of the quality of synthetic speech. When the number of synthesis units that can be registered in a synthesis unit inventory is limited, it is nearly impossible to select synthesis units which reduce such distortions. Especially, when only one synthesis unit can be registered in a synthesis unit inventory in correspondence with one phonetic environment, it is totally impossible to select synthesis units which reduce the distortions. If such synthesis unit inventory is used, the quality of synthetic speech deteriorates inevitably due to the modification and concatenation distortions.
- The present invention has been made in consideration of the aforementioned prior art, and has as its object to provide a speech synthesis apparatus and method, which suppress deterioration of synthetic speech quality by selecting synthesis units to be registered in a synthesis unit inventory in consideration of the influences of concatenation and modification distortions.
- The present invention is described with use of synthesis unit and synthesis unit inventory of synthesis units and synthesis unit inventory. The synthesis unit represents a part for speech synthesis, and the synthesis unit can be called as a synthesis unit.
- In order to attain the objects, a speech synthesis apparatus of the present invention, comprising: distortion output means for obtaining a distortion produced upon modifying a synthesis unit on the basis of predetermined prosody information; and unit registration means for selecting a synthesis unit to be registered in a synthesis unit inventory used in speech synthesis on the basis of the distortion output from said distortion output means.
- In order to attain the objects, a speech synthesis method of the present invention, comprising: a distortion output step of obtaining a distortion produced upon modifying a synthesis unit on the basis of predetermined prosody information; and a unit registration step of selecting a synthesis unit to be registered in a synthesis unit inventory used in speech synthesis on the basis of the distortion output from the distortion output step.
- Other features and advantages of the present invention will be apparent from the following descriptions taken in conjunction with the accompanying drawings; in which like reference characters designate the same or similar parts throughout the figures thereof.
- The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the descriptions, serve to explain the principle of the invention.
-
FIG. 1 is a block diagram showing the hardware arrangement of a speech synthesis apparatus according to an embodiment of the present invention; -
FIG. 2 is a block diagram showing the module arrangement of a speech synthesis apparatus according to the first embodiment of the present invention; -
FIG. 3 is a flow chart showing the flow of processing in an on-line module according to the first embodiment; -
FIG. 4 is a block diagram showing the detailed arrangement of an off-line module according to the first embodiment; -
FIG. 5 is a flow chart showing the flow of processing in the off-line module according to the first embodiment; -
FIG. 6 is a view for explaining modification of synthesis units according to the first embodiment of the present invention; -
FIG. 7 is a view for explaining a concatenation distortion of synthesis units according to the first embodiment of the present invention; -
FIG. 8 is a view for explaining the determination process of distortions in synthesis units; -
FIG. 9 is a view for explaining the determination process by Nbest; -
FIG. 10 is a view for explaining a case where synthesis unit units are represented by mixture of a diphone and half-diphone, according to the third embodiment of the present invention; -
FIG. 11 is a view for explaining a case where synthesis unit units are represented by half-diphones, according to the fourth embodiment of the present invention; -
FIG. 12 shows an example of the table format that determines concatenation distortions between candidates of /a.r/ and candidates of /r.i/ of a diphone according to the 12th embodiment of the present invention; -
FIG. 13 shows an example of a table showing modification distortions according to the 13th embodiment of the present invention; and -
FIG. 14 is a view showing an example upon estimating a modification distortion according to the 13th embodiment of the present invention. - Preferred embodiments of the present invention will be described in detail hereinafter with reference to the accompanying drawings.
-
FIG. 1 is a block diagram showing the hardware arrangement of a speech synthesis apparatus according to an embodiment of the present invention. Note that this embodiment will exemplify a case wherein a general personal computer is used as a speech synthesis apparatus, but the present invention can be practiced using a dedicated speech synthesis apparatus or other apparatuses. - Referring to
FIG. 1 ,reference numeral 101 denotes a control memory (ROM) which stores various control data used by a central processing unit (CPU) 102. TheCPU 102 controls the operation of the overall apparatus by executing a control program stored in aRAM 103.Reference numeral 103 denotes a memory (RAM) which is used as a work area upon execution of various control processes by theCPU 102 to temporarily save various data, and loads and stores a control program from anexternal storage device 104 upon executing various processes by theCPU 102. This external storage device includes, e.g., a hard disk, CD-ROM, or the like.Reference numeral 105 denotes a D/A converter for converting input digital data that represents a speech signal into an analog signal, and outputting the analog signal to aspeaker 109.Reference numeral 106 denotes an input unit which comprises, e.g., a keyboard and a pointing device such as a mouse or the like, which are operated by the operator.Reference numeral 107 denotes a display unit which comprises a CRT display, liquid crystal display, or the like. Reference numeral 108 denotes a bus which connects those units.Reference numeral 110 denotes a speech synthesis unit. - In the above arrangement, a control program for controlling the
speech synthesis unit 110 of this embodiment is loaded from theexternal storage device 104, and is stored on theRAM 103. Various data used by this control program are stored in thecontrol memory 101. Those data are fetched onto the memory (RAM) 103 as needed via the bus 108 under the control of theCPU 102, and are used in the control processes of theCPU 102. A control program including program codes of process implemented in thespeech synthesis unit 110 may be loaded from theexternal storage device 104 and stored into the memory (RAM) 103 and theCPU 102 performs the processing along with the control program, such that theCPU 102 and theRAM 103 can implement the function of thespeech synthesis unit 110. The D/A converter 105 converts speech waveform data produced by executing the control program into an analog signal, and outputs the analog signal to thespeaker 109. -
FIG. 2 is a block diagram showing the module arrangement of thespeech synthesis unit 110 according to this embodiment. Thespeech synthesis unit 110 roughly has two modules, i.e., a synthesis unitinventory formation module 2000 for executing a process for registering synthesis units in asynthesis unit inventory 206, and aspeech synthesis module 2001 for receiving text data, and executing a process for synthesizing and outputting speech corresponding to that text data. - Referring to
FIG. 2 ,reference numeral 201 denotes a text input unit for receiving arbitrary text data from theinput unit 106 orexternal storage device 104;numeral 202 denotes an analysis dictionary;numeral 203 denotes a language analyzer;numeral 204 denotes a prosody generation rule holding unit;numeral 205 denotes a prosody generator;numeral 206 denotes a synthesis unit inventory;numeral 207 denotes a synthesis unit selector;numeral 208 denotes a synthesis unit modification/concatenation unit;numeral 209 denotes a speech waveform output unit;numeral 210 denotes a speech database;numeral 211 denotes a synthesis unit inventory formation unit; andnumeral 212 denotes a text corpus. Text data of various contents can be input to thetext corpus 212 via theinput unit 106 and the like. - The
speech synthesis module 2001 will be explained first. In thespeech synthesis module 2001, thelanguage analyzer 203 executes language analysis of text input from thetext input unit 201 by looking up theanalysis dictionary 202. The analysis result is input to theprosody generator 205. Theprosody generator 205 generates a phonetic string and prosody information on the basis of the analysis result of thelanguage analyzer 203 and information that pertains to prosody generation rules held in the prosody generationrule holding unit 204, and outputs them to thesynthesis unit selector 207 and synthesis unit modification/concatenation unit 208. Subsequently, thesynthesis unit selector 207 selects corresponding synthesis units from those held in thesynthesis unit inventory 206 using the prosody generation result input from theprosody generator 205. The synthesis unit modification/concatenation unit 208 modifies and concatenates synthesis units output from thesynthesis unit selector 207 in accordance with the prosody generation result input from theprosody generator 205 to generate a speech waveform. The generated speech waveform is output by the speechwaveform output unit 209. - The synthesis unit
inventory formation module 2000 will be explained below. - In this
module 2000, the synthesis unitinventory formation unit 211 selects synthesis units from thespeech database 210 and registers them in thesynthesis unit inventory 206 on the basis of a procedure to be described later. - A speech synthesis process of this embodiment with the above arrangement will be described below.
-
FIG. 3 is a flow chart showing the flow of a speech synthesis process (on-line process) in thespeech synthesis module 2001 shown inFIG. 2 . - In step S301, the
text input unit 201 inputs text data in units of sentences, clauses, words, or the like, and the flow advances to step S302. In step S302, thelanguage analyzer 203 executes language analysis of the text data. The flow advances to step S303, and theprosody generator 205 generates a phonetic string and prosody information on the basis of the analysis result obtained in step S302, and predetermined prosodic rules. The flow advances to step S304, and thesynthesis unit selector 207 selects for each phonetic string synthesis units registered in thesynthesis unit inventory 206 on the basis of the prosody information obtained in step S303 and the phonetic environment. The flow advances to step S305, and the synthesis unit modification/concatenation unit 208 modifies and concatenates synthesis units on the basis of the selected synthesis units and the prosody information generated in step S303. The flow then advances to step S306. In step S306, the speechwaveform output unit 209 outputs a speech waveform produced by the synthesis unit modification/concatenation unit 208 as a speech signal. In this way, synthetic speech corresponding to the input text is output. -
FIG. 4 is a block diagram showing the more detailed arrangement of the synthesis unitinventory formation module 2000 inFIG. 2 . The same reference numerals inFIG. 4 denote the same parts as inFIG. 2 , andFIG. 4 shows the arrangement of the synthesis unitinventory formation unit 211 as a characteristic feature of this embodiment in more detail. - Referring to
FIG. 4 ,reference numeral 401 denotes a text input unit; numeral 402 denotes a language analyzer; numeral 403 denotes an analysis dictionary; numeral 404 denotes a prosody generation rule holding unit; numeral 405 denotes a prosody generator; numeral 406 denotes a synthesis unit search unit; numeral 407 denotes a synthesis unit holding unit; numeral 408 denotes a synthesis unit modification unit; numeral 409 denotes a modification distortion determination unit; numeral 410 denotes a concatenation distortion determination unit; numeral 411 denotes a distortion determination unit; numeral 412 denotes a distortion holding unit; numeral 413 denotes an Nbest determination unit; numeral 414 denotes an Nbest holding unit; numeral 415 denotes a registration unit determination unit; and numeral 416 denotes a registration unit holding unit. - The
module 2000 will be described in detail below. - The
text input unit 401 reads out text data from thetext corpus 212 in units of sentences, and outputs the readout data to thelanguage analyzer 402. Thelanguage analyzer 402 analyzes text data input from thetext input unit 401 by looking up theanalysis dictionary 403. Theprosody generator 405 generates a phonetic string on the basis of the analysis result of thelanguage analyzer 402, and generates prosody information by looking up prosody generation rules (accent patterns, natural falling components, pitch patterns, and the like) held by the prosody generationrule holding unit 404. The synthesisunit search unit 406 searches thespeech database 210 for synthesis units, that consider a specific phonetic environment, in accordance with the prosody information and phonetic string generated by theprosody generator 405. The found synthesis units are temporarily held by the synthesisunit holding unit 407. The synthesisunit modification unit 408 modifies the synthesis units held in the synthesisunit holding unit 407 in correspondence with the prosody information generated by theprosody generator 405. The modification process includes a process for concatenating synthesis units in correspondence with the prosody information, a process for modifying synthesis units by partially deleting them upon concatenating synthesis units, and the like. - The modification
distortion determination unit 409 determines a modification distortion from a change in acoustic feature beforehand after modification of synthesis units. The concatenationdistortion determination unit 410 determines a concatenation distortion produced when two synthesis units are concatenated, on the basis of an acoustic feature near the terminal end of a preceding synthesis unit in a phonetic string, and that near the start end of the synthesis unit of interest. Thedistortion determination unit 411 determines a total distortion (also referred to as a distortion value) of each phonetic string in consideration of the modification distortion determined by the modificationdistortion determination unit 409 and the concatenation distortion determined by the concatenationdistortion determination unit 410. Thedistortion holding unit 412 holds the distortion value that reaches each synthesis unit, which is determined by thedistortion determination unit 411. TheNbest determination unit 413 obtains N best paths, which can minimize the distortion for each phonetic string, using an A* (a star) search algorithm. TheNbest holding unit 414 holds N optimal paths obtained by theNbest determination unit 413 for each input text. The registrationunit determination unit 415 selects synthesis units to be registered in thesynthesis unit inventory 206 in the order of frequencies of occurrence on the basis of Nbest results in units of phonemes, which are held in theNbest holding unit 414. The registrationunit holding unit 416 holds the synthesis units selected by the registrationunit determination unit 415. -
FIG. 5 is a flow chart showing the flow of processing in the synthesis unitinventory formation module 2000 shown inFIG. 4 . - In step S501, the
text input unit 401 reads out text data from thetext corpus 212 in units of sentences. If no text data to be read out remains, the flow jumps to step S512 to finally determine synthesis units to be registered. If text data to be read out remain, the flow advances to step S502, and thelanguage analyzer 402 executes language analysis of the input text data using theanalysis dictionary 403. The flow then advances to step S503. In step S503, theprosody generator 405 generates prosody information and a phonetic string on the basis of the prosody generation rules held by the prosody generationrule holding unit 404 and the language analysis result in step S502. The flow advances to step S504 to process a phoneme in the phonetic string in the phonetic string generated in step S503 in turn. If no phoneme to be processed remains in step S504, the flow jumps to step S511; otherwise, the flow advances to step S505. In step S505, the synthesisunit search unit 406 searches for each phoneme thespeech database 210 for synthesis units which satisfy a phonetic environment and prosody rules, and saves the found synthesis units in the synthesisunit holding unit 407. - An example will be explained below. If text data (Japanese text “kon-nichi wa” which comprises five words) is input, that data undergoes language analysis to generate prosody information containing accents, intonations, and the like. This text data is decomposed into the following phoneme if diphones are used as phonetic units:
/k k.o o.X X.n n.i i.t t.i i.w w.a a/
Note that “X” indicates a sound “”, and “/” indicates silence.
- The flow advances to step S506 to sequentially process a plurality of synthesis units found by search. If no synthesis unit to be processed remains, the flow returns to step S504 to process the next phoneme; otherwise, the flow advances to step S507 to process a synthesis unit of the current phoneme. In step S507, the synthesis
unit modification unit 408 modifies the synthesis unit using the same scheme as that in the aforementioned speech synthesis process. The synthesis unit modification process includes, for example, pitch synchronous overlap and add (PSOLA), and the like. The synthesis unit modification process uses that synthesis unit and prosody information. Upon completion of modifying of the synthesis unit, the flow advances to step S508. In step S508, the modificationdistortion determination unit 409 computes a change in acoustic feature before and after modification of the current synthesis unit as a modification distortion (this process will be described in detail later). The flow advances to step S509, and the concatenationdistortion determination unit 410 computes concatenation distortions between the current synthesis unit and all synthesis units of the preceding phoneme (this process will be described in detail later). The flow advances to step S510, and thedistortion determination unit 411 determines the distortion values of all paths that reach the current synthesis unit on the basis of the modification and concatenation distortions (this process will be described later). N (N: the number of Nbest to be obtained) best distortion values of a path that reaches the current synthesis unit, and a pointer to a synthesis unit of the preceding phoneme, which represents that path, are held in thedistortion holding unit 412. The flow then returns to step S506 to check if synthesis units to be processed remain in the current phoneme. - If all synthesis units in each phoneme are processed in step S506, and if all phonemes are processed in step S504, the flow proceeds to step S511. In step S511, the
Nbest determination unit 413 makes an Nbest search using the A* search algorithm to obtain N best paths (to be also referred to as synthesis unit sequences), and holds them in the Nbest holding-unit 414. The flow then returns to step S511. - Upon completion of processing for all the text data, the flow jumps from step S501 to step S512, and the registration
unit determination unit 415 selects synthesis units with a predetermined frequency of occurrence or higher on the basis of the Nbest results of all the text data for each phoneme. Note that the value N of Nbest is empirically given by, e.g., exploratory experiments or the like. The synthesis units determined in this manner are registered in thesynthesis unit inventory 206 via the registrationunit holding unit 416. -
FIG. 6 is a view for explaining the method of obtaining the modification distortion in step S508 inFIG. 5 according to this embodiment. -
FIG. 6 illustrates a case wherein the pitch interval is broadened by the PSOLA scheme. The arrows indicate pitch marks, and the dotted lines represent the correspondence between pitch segments before and after modification. In this embodiment, the modification distortion is expressed based on the cepstrum distance of each pitch unit (to be also referred to as a micro unit) before and after modification. More specifically, a Hanning window 62 (window duration=25.6 msec) is applied to have apitch mark 61 of a given pitch unit (e.g., 60) after modification as the center, so as to extract thatpitch unit 60 as well as neighboring pitch units. The extractedpitch unit 60 undergoes cepstrum analysis. Then, a pitch unit is extracted by applying aHanning window 65 having the same window duration to have apitch mark 64 of apitch unit 63 before modification, which corresponds to thepitch mark 61, as the center, and a cepstrum is obtained in the same manner as that after modification. The distance between the obtained cepstrum is determined to be the modification distortion of thepitch unit 60 of interest. That is, a value obtained by dividing the sum total of modification distortions between pitch units after modification and corresponding pitch units before modification by the number Np of pitch units adopted in PSOLA is used as a modification distortion of that synthesis unit. The modification distortion can be described by:
where Ctar i,j represents the j-th element of a cepstrum of the i-th pitch segment after modification, and Corg i,j similarly represents the j-th element of a cepstrum of the i-th pitch segment before modification corresponding to that after modification. -
FIG. 7 is a view for explaining the method of obtaining the concatenation distortion in this embodiment. - This concatenation distortion indicates a distortion produced at a concatenation point between a synthesis unit of the preceding phoneme and the current, synthesis unit, and is expressed using the cepstrum distance. More specifically, a total of five frames, i.e., a
frame 70 or 71 (frame duration=5 msec, analysis window width=25.6 msec) that includes a synthesis unit boundary, and two each preceding and succeeding frames are used as objects from which a concatenation distortion is to be computed. Note that a cepstrum is defined by a total of 17-dimensional vector elements from 0-th order (power) to 16-th order (power). A sum of absolute values of differences of these cepstrum vector elements is determined to be the concatenation distortion of the synthesis unit of interest. That is, as indicated by 700 inFIG. 7 , let Cpre i,j (i: the frame number, frame number “0” indicates a frame including the synthesis unit boundary, j: the element number of the vector) be elements of a cepstrum vector at the terminal end portion of a synthesis unit of the preceding phoneme. Also, as indicated by 701 inFIG. 7 , let Ccur i,j be elements of a cepstrum vector at the start end portion of the synthesis unit of interest. Then, a concatenation distortion Dc of the synthesis unit of interest is described by: -
FIG. 8 illustrates the determination process of a distortion in synthesis units by thedistortion determination unit 411 according to this embodiment. In this embodiment, diphones are used as phonetic units. - In
FIG. 8 , one circle indicates one synthesis unit in a given phoneme, and a numeral in the circle indicates the minimum value of the sum totals of distortion values that reach this synthesis unit. A numeral bounded by a rectangle indicates a distortion value between a synthesis unit of the preceding phoneme, and that of the phoneme of interest. Also, each arrow indicates the relation between a synthesis unit of the preceding phoneme, and that of the phoneme of interest. Let Pn,m be the m-th synthesis unit of the n-th phoneme (the phoneme of interest) for the sake of simplicity. Synthesis units corresponding to N (N: the number of Nbest to be obtained) best distortion values in ascending order of that synthesis unit Pn,m are extracted from the preceding phoneme, Dn,m,k represents the k-th distortion value among those values, and PREn,m,k represents a synthesis unit of the preceding phoneme, which corresponds to that distortion value. Then, a sum total Sn,m,k of distortion values in a path that reaches the synthesis unit Pn,m via PREn,m,k is given by:
Sn,m,k=Sn−1,x,0+Dn,m,k (for x=PREn,m,k) - The distortion value of this embodiment will be described below. In this embodiment, a distortion value Dtotal (corresponding to Dn,m,k in the above description) is defined as a weighted sum of the aforementioned concatenation distortion Dc and modification distortion Dt.
Dtotal=w×Dc+(1−w)×Dm:(0≦w≦1)
where w is a weighting coefficient empirically obtained by, e.g., exploratory experiments or the like. When w=0, the distortion value is explained by the modification distortion Dm alone; when w=1, the distortion value depends on the concatenation distortion Dc alone. - The
distortion holding unit 412 holds N best distortion values Dn,m,k, corresponding synthesis units PREn,m,k of the preceding phoneme, and the sum totals Sn,m,k of distortion values of paths that reach Dn,m,k via PREn,m,k. -
FIG. 8 shows an example wherein the minimum-value of the sum totals of paths that reach the synthesis unit Pn,m of interest is “222”. The distortion value—of the synthesis unit Pn,m at that time is Dn,m,1 (k=1), and a synthesis unit of the preceding phoneme corresponding to this distortion value Dn,m,1 is PREn,m,1 (corresponding to Pn-1,m 81 inFIG. 8 ).Reference numeral 80 denotes a path which concatenates the synthesis units PREn,m,1 and Pn,m. -
FIG. 9 illustrates the Nbest determination process. - Upon completion of step S510, N best pieces of information have been obtained in each synthesis unit (forward search). The
Nbest determination unit 413 obtains an Nbest path by spreading branches from asynthesis unit 90 at the end of a phoneme in the reverse order (backward search). A node to which branches are spread is selected to minimize the sum of the predicted value (a numeral beside each line) and the total distortion value (individual distortion values are indicated by numerals in rectangles) until that node is reached. Note that the predicted value corresponds to a minimum distortion Sn,m,0 of the forward search result in the synthesis unit Pn,m. In this case, since the sum of predicted values is equal to that of the distortion values of a minimum path that reaches the left end in practice, it is guaranteed to obtain an optimal path owing to the nature of the A* search algorithm. -
FIG. 9 shows a state wherein the first-place path is determined. - In
FIG. 9 , each circle indicates a synthesis unit, the numeral in each circle indicates a distortion predicted value, the bold line indicates the first-place path, the numeral in each rectangle indicates a distortion value, and each numeral beside the line indicates a predicted distortion value. In order to obtain the second-place path, a node that corresponds to the minimum sum of the predicted value and the total distortion value to that node is selected from nodes indicated by double circles, and branches are spread to all (a maximum of N) synthesis units of the preceding phoneme, which are connected to that node. Nodes at the ends of the branches are indicated by double circles. By repeating this operation, N best paths are determined in ascending order of the total sum value.FIG. 9 shows an example wherein branches are spread while N=2. - As described above, according to the first embodiment, synthesis units which form a path with a minimum distortion can be selected and registered in the synthesis unit inventory.
- In the first embodiment, diphones are used as phonetic units. However, the present invention is not limited to such specific units, and phonemes, half-diphones, and the like may be used. A half-diphone is obtained by dividing a diphone into two segments at a phoneme boundary. The merit obtained when half-diphones are used as units will be briefly explained below. Upon producing synthetic speech of arbitrary text, all kinds of diphones must be prepared in the
synthesis unit inventory 206. By contrast, when half-diphones are used as units, an unavailable half-diphone can be replaced by another half-diphone. For example, when a half-diphone “/a.n.0/” is used in place of a half-diphone “/a.b.0/(the left side of a diphone “a.b”), synthetic speech can be satisfactorily produced while minimizing deterioration of sound quality. In this manner, the size of thesynthesis unit inventory 206 can be reduced. - In the first and second embodiments, diphones, phonemes, half-diphones, and the like are used as phonetic units. However, the present invention is not limited to such specific units, and those units may be used in combination. For example, a phoneme which is frequently used may be expressed using a diphone as a unit, and a phoneme which is used less frequently may be expressed using two half-diphones.
-
FIG. 10 shows an example wherein different synthesis units units mix. InFIG. 10 , a phoneme “o.w” is expressed by a diphone, and its preceding and succeeding phonemes are expressed by half-diphones. - In the third embodiment, if information indicating whether or not half-diphone is read out from successive locations in a source database is available, and half-diphones are read out from successive locations, a pair of half-diphones may be virtually used as a diphone. That is, since half-diphones-stored at successive locations in the source database have a concatenation distortion “0”, a modification distortion need only be considered in such case, and the computation volume can be greatly reduced.
-
FIG. 11 shows this state. Numerals on the lines inFIG. 11 indicate concatenation distortions. - Referring to
FIG. 11 , pairs of half-diphones denoted by 1100 are read out from successive locations in a source database, and their concatenation distortions are uniquely determined to be “0”. Since pairs of half-diphones denoted by 1101 are not read out from successive locations in the source database, their concatenation distortions are individually computed. - In the first embodiment, the entire phoneme obtained from one unit of text data undergoes distortion computation. However, the present invention is not limited to such specific scheme. For example, the phoneme may be segmented at pause or unvoiced sound portions into periods, and distortion computations may be made in units of periods. Note that the unvoiced sound portions correspond to, e.g, those of “p”, “t”, “k”, and the like. Since a concatenation distortion is normally “0” at a pause or unvoiced sound position, such unit is effective. In this way, optimal synthesis units can be selected in units of periods.
- In the description of the first embodiment, cepstra are used upon computing a concatenation distortion, but the present invention is not limited to such specific parameters. For example, a concatenation distortion may be computed using the sum of differences of waveforms before and after a concatenation point. Also, a concatenation distortion may be computed using spectrum distance. In this case, a concatenation point is preferably synchronized with a pitch mark.
- In the description of the first embodiment, actual numerical values of the window length, shift length, the orders of cepstrum, the number of frames, and the like are used upon computing a concatenation distortion. However, the present invention is not limited to such specific numerical values. A concatenation distortion may be computed using an arbitrary window length, shift length, order, and the number of frames.
- In the description of the first embodiment, the sum total of differences in units of orders of cepstrum is used upon computing a concatenation distortion. However, the present invention is not limited to such specific method. For example, orders may be normalized using a statistical nature (normalization coefficient rj). In this case, a concatenation distortion Dc is given by:
- In the description of the first embodiment, a concatenation distortion is computed on the basis of the absolute values of differences in units of orders of cepstrum. However, the present invention is not limited to such specific method. For example, a concatenation distortion is computed on the basis of the powers of the absolute values of differences (the absolute values need not be used when an exponent is an even number). If N represents an exponent, a concatenation distortion Dc is given by:
Dc=ΣΣ|Cprei,j−Ccuri,j| N
A larger N value results in higher sensitivity to a larger difference. As a consequence, a concatenation distortion is reduced on average. - In the first embodiment, a cepstrum distance is used as a modification distortion. However, the present invention is not limited to this. For example, a modification distortion may be computed using the sum of differences of waveforms in given periods before and after modification. Also, the modification distortion may be computed using spectrum distance.
- In the first embodiment, a modification distortion is computed based on information obtained from waveforms. However, the present invention is not limited to such specific method. For example, the numbers of times of deletion and copying of pitch segments by PSOLA may be used as elements upon computing a modification distortion.
- In the first embodiment, a concatenation distortion is computed every time a synthesis unit is read out. However, the present invention is not limited to such specific method. For example, concatenation distortions may be computed in advance, and may be held in the form of a table.
-
FIG. 12 shows an example of a table which stores concatenation distortions between a diphone “/a.r/” and a diphone “/r.i/”. InFIG. 12 , the ordinate plots synthesis units of “/a.r/”, and the abscissa plots synthesis units of “/r.i/”. For example, a concatenation distortion between synthesis unit “id3 (candidate No. 3)” of “/a.r/” and synthesis unit “id2 (candidate No. 2)” of “/r.i/” is “3.6”. When all concatenation distortions between diphones that can be concatenated are prepared in the form of a table in this way, since computations of concatenation distortions upon synthesizing synthesis units can be done by only table lookup, the computation volume can be greatly reduced, and the computation time can be greatly shortened. - In the first embodiment, a modification distortion is computed every time a synthesis unit is modified. However, the present invention is not limited to such specific method. For example, modification distortions may be computed in advance and may be held in the form of a table.
-
FIG. 13 is a table of modification distortions obtained when a given diphone is changed in terms of the fundamental frequency and phonetic duration. - In
FIG. 13 , μ is a statistical average value of that diphone, and σ is a standard deviation. For example, the following table formation method may be used. An average value and variance are statistically computed in association with the fundamental frequency and phonetic duration. Based on these values, the PSOLA method is applied using twenty five (=5×5) different fundamental frequencies and phonetic durations as targets to compute modification distortions in the table one by one. Upon synthesis, if the target fundamental frequency and phonetic duration are determined, a modification distortion can be estimated by interpolation (or extrapolation) of neighboring values in the table. -
FIG. 14 shows an example for estimating a modification distortion upon synthesis. - In
FIG. 14 , the full circle indicates the target fundamental frequency and phonetic duration. If modification distortions at respective lattice points are determined to be A, B, C, and D from the table, a modification deformation Dm can be described by:
Dm={A·(1−y)+C·y}×(1−x)+{B·(1·y)+D·y}×x - In the 13th embodiment, a 5×5 table is formed on the basis of the statistical average value and standard deviation of a given diphone as the lattice points of the modification distortion table. However, the present invention is not limited to such specific table, but a table having arbitrary lattice points may be formed. Also, lattice points may be conclusively given independently of the average value and the like. For example, a range that can be estimated by prosodic estimation may be equally divided.
- In the first embodiment, a distortion is quantified using the weighted sum of concatenation and modification distortions. However, the present invention is not limited to such specific method. Threshold values may be respectively set for concatenation and modification distortions, and when either of these threshold values exceed, a sufficiently large distortion value may be given so as not to select that synthesis unit.
- In the above embodiments, the respective units are constructed on a single computer. However, the present invention is not limited to such specific arrangement, and the respective units may be divisionally constructed on computers or processing apparatuses distributed on a network.
- In the above embodiments, the program is held in the control memory (ROM). However, the present invention is not limited to such specific arrangement, and the program may be implemented using an arbitrary storage medium such as an external storage or the like. Alternatively, the program may be implemented by a circuit that can attain the same operation.
- Note that the present invention may be applied to either a system constituted by a plurality of devices, or an apparatus consisting of a single equipment. The present invention is also achieved by supplying a recording medium, which records a program code of software that can implement the functions of the above-mentioned embodiments to the system or apparatus, and reading out and executing the program code stored in the recording medium by a computer (or a CPU or MPU) of the system or apparatus.
- In this case, the program code itself read out from the recording medium implements the functions of the above-mentioned embodiments, and the recording medium which records the program code constitutes the present invention. As the recording medium for supplying the program code, for example, a floppy disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, magnetic tape, nonvolatile memory card, ROM, and the like may be used.
- The functions of the above-mentioned embodiments may be implemented not only by executing the readout program code by the computer but also by some or all of actual processing operations executed by an OS (operating system) running on the computer on the basis of an instruction of the program code.
- Furthermore, the functions of the above-mentioned embodiments may be implemented by some or all of actual processing operations executed by a CPU or the like arranged in a function extension board or a function extension unit, which is inserted in or connected to the computer, after the program code read out from the recording medium is written in a memory of the extension board or unit.
- As described above, according to the above embodiments, since synthesis units to be registered in the synthesis unit inventory are selected in consideration of concatenation and modification distortions, synthetic speech which suffers less deterioration of sound quality can be produced even when a synthesis unit inventory that registers a small number of synthesis units is used.
- The present invention is not limited to the above embodiments and various changes and modifications can be made within the spirit and scope of the present invention. Therefore, to apprise the public of the scope of the present invention, the following claims are made.
Claims (23)
1. A synthesis unit selection apparatus comprising:
n-best obtaining means for obtaining one or more best sequences of synthesis units corresponding to a phonetic string on the basis of a distortion obtained by concatenating synthesis units;
obtaining means for obtaining a plurality of sequences by applying said n-best obtaining means to a corpus including a plurality of phonetic strings; and
selection means for selecting synthesis units on the basis of the plurality of sequences obtained by said obtaining means.
2. The apparatus according to claim 1 , wherein the distortion comprises at least one of a concatenation distortion and a modification distortion, and the modification distortion is a distortion between a synthesis unit before and after modification.
3. The apparatus according to claim 1 , further comprising:
text reception means for receiving text data,
wherein the plurality of phonetic strings are included in the text data received by said text reception means.
4. The apparatus according to claim 1 , further comprising:
registration means for registering the synthesis units selected by said selection means in a synthesis unit inventory in a memory.
5. The apparatus according to claim 2 , wherein said selection means selects a synthesis units on the basis of a weighted sum of the concatenation and modification distortions.
6. (canceled)
7. (canceled)
8. The apparatus according to claim 2 , wherein said obtaining means determines the modification distortion by looking up a table that stores the modification distortion.
9. The apparatus according to claim 2 , wherein said obtaining means determines the concatenation distortion by looking up a table that stores the concatenation distortion.
10. (canceled)
11. A synthesis unit selection method comprising:
an n-best obtaining step of obtaining one or more best sequences of synthesis units corresponding to a phonetic string on the basis of a distortion obtained by concatenating synthesis units;
an obtaining step of obtaining a plurality of sequences by applying said n-best obtaining step to a corpus including a plurality of phonetic strings; and
a selection step of selecting synthesis units on the basis of the plurality of sequences obtained in said obtaining step.
12. The method according to claim 11 , wherein the distortion comprises at least one of a concatenation distortion and a modification distortion, and the modification distortion is a distortion between a synthesis unit before and after modification.
13. The method according to claim 11 , further comprising the step of:
receiving text data,
wherein the plurality of phonetic strings are included in the text data received in said receiving step.
14. The method according to claim 11 , further comprising the step of:
registering the synthesis units selected in said selection step in a synthesis unit inventory.
15. The method according to claim 12 , wherein in said selection step, a synthesis unit is selected on the basis of a weighted sum of the concatenation and modification distortions.
16. (canceled)
17. (canceled)
18. The method according to claim 12 , wherein in said obtaining step, the modification distortion is determined by looking up a table that stores the modification distortion.
19. The method according to claim 12 , wherein in said obtaining step, the concatenation distortion is determined by looking up a table that stores the concatenation distortion.
20. (canceled)
21. A computer readable storage medium storing a program that implements the method recited in claim 11 .
22. A synthesis unit selection apparatus comprising:
an n-best obtaining unit configured to obtain one or more best sequences of synthesis units corresponding to a phonetic string on the basis of a distortion obtained by concatenating synthesis units;
an obtaining unit configured to obtain a plurality of sequences by applying said n-best obtaining unit to a corpus including a plurality of phonetic strings; and
a selection unit configured to select synthesis units on the basis of the plurality of sequences obtained by said obtaining unit.
23. A program for implementing a synthesis unit selection method comprising:
an n-best obtaining step module for obtaining one or more best sequences of synthesis units corresponding to a phonetic string on the basis of a distortion obtained by concatenating synthesis units;
an obtaining step module for obtaining a plurality of sequences by applying said n-best obtaining step module to a corpus including a plurality of phonetic strings; and
a selection step module for selecting synthesis units on the basis of the plurality of sequences obtained by said obtaining step module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/295,653 US20060085194A1 (en) | 2000-03-31 | 2005-12-07 | Speech synthesis apparatus and method, and storage medium |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000-099420 | 2000-03-31 | ||
JP2000099420A JP4454780B2 (en) | 2000-03-31 | 2000-03-31 | Audio information processing apparatus, method and storage medium |
US09/818,581 US6980955B2 (en) | 2000-03-31 | 2001-03-28 | Synthesis unit selection apparatus and method, and storage medium |
US10/928,114 US7039588B2 (en) | 2000-03-31 | 2004-08-30 | Synthesis unit selection apparatus and method, and storage medium |
US11/295,653 US20060085194A1 (en) | 2000-03-31 | 2005-12-07 | Speech synthesis apparatus and method, and storage medium |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/928,114 Division US7039588B2 (en) | 2000-03-31 | 2004-08-30 | Synthesis unit selection apparatus and method, and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
US20060085194A1 true US20060085194A1 (en) | 2006-04-20 |
Family
ID=34106103
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/928,114 Expired - Fee Related US7039588B2 (en) | 2000-03-31 | 2004-08-30 | Synthesis unit selection apparatus and method, and storage medium |
US11/295,653 Abandoned US20060085194A1 (en) | 2000-03-31 | 2005-12-07 | Speech synthesis apparatus and method, and storage medium |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/928,114 Expired - Fee Related US7039588B2 (en) | 2000-03-31 | 2004-08-30 | Synthesis unit selection apparatus and method, and storage medium |
Country Status (1)
Country | Link |
---|---|
US (2) | US7039588B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1857924A1 (en) * | 2006-05-18 | 2007-11-21 | Kabushiki Kaisha Toshiba | Speech synthesis apparatus and method |
US20080154605A1 (en) * | 2006-12-21 | 2008-06-26 | International Business Machines Corporation | Adaptive quality adjustments for speech synthesis in a real-time speech processing system based upon load |
US20090018836A1 (en) * | 2007-03-29 | 2009-01-15 | Kabushiki Kaisha Toshiba | Speech synthesis system and speech synthesis method |
US20130268275A1 (en) * | 2007-09-07 | 2013-10-10 | Nuance Communications, Inc. | Speech synthesis system, speech synthesis program product, and speech synthesis method |
Families Citing this family (133)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
US7401020B2 (en) * | 2002-11-29 | 2008-07-15 | International Business Machines Corporation | Application of emotion-based intonation and prosody to speech in text-to-speech systems |
US7577568B2 (en) * | 2003-06-10 | 2009-08-18 | At&T Intellctual Property Ii, L.P. | Methods and system for creating voice files using a VoiceXML application |
JP3895758B2 (en) * | 2004-01-27 | 2007-03-22 | 松下電器産業株式会社 | Speech synthesizer |
KR100571835B1 (en) * | 2004-03-04 | 2006-04-17 | 삼성전자주식회사 | Apparatus and Method for generating recording sentence for Corpus and the Method for building Corpus using the same |
WO2006040908A1 (en) * | 2004-10-13 | 2006-04-20 | Matsushita Electric Industrial Co., Ltd. | Speech synthesizer and speech synthesizing method |
US20080177548A1 (en) * | 2005-05-31 | 2008-07-24 | Canon Kabushiki Kaisha | Speech Synthesis Method and Apparatus |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US20070124148A1 (en) * | 2005-11-28 | 2007-05-31 | Canon Kabushiki Kaisha | Speech processing apparatus and speech processing method |
US7924986B2 (en) * | 2006-01-27 | 2011-04-12 | Accenture Global Services Limited | IVR system manager |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
JP2008225254A (en) * | 2007-03-14 | 2008-09-25 | Canon Inc | Speech synthesis apparatus, method, and program |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
US8352272B2 (en) | 2008-09-29 | 2013-01-08 | Apple Inc. | Systems and methods for text to speech synthesis |
US8352268B2 (en) | 2008-09-29 | 2013-01-08 | Apple Inc. | Systems and methods for selective rate of speech and speech preferences for text to speech synthesis |
US8396714B2 (en) | 2008-09-29 | 2013-03-12 | Apple Inc. | Systems and methods for concatenation of words in text to speech synthesis |
US8712776B2 (en) | 2008-09-29 | 2014-04-29 | Apple Inc. | Systems and methods for selective text to speech synthesis |
WO2010067118A1 (en) | 2008-12-11 | 2010-06-17 | Novauris Technologies Limited | Speech recognition involving a mobile device |
US8380507B2 (en) | 2009-03-09 | 2013-02-19 | Apple Inc. | Systems and methods for determining the language to use for speech generated by a text to speech engine |
US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US10706373B2 (en) | 2011-06-03 | 2020-07-07 | Apple Inc. | Performing actions associated with task items that represent tasks to perform |
US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
WO2011089450A2 (en) | 2010-01-25 | 2011-07-28 | Andrew Peter Nelson Jerram | Apparatuses, methods and systems for a digital conversation management platform |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US10762293B2 (en) | 2010-12-22 | 2020-09-01 | Apple Inc. | Using parts-of-speech tagging and named entity recognition for spelling correction |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
FR2993088B1 (en) * | 2012-07-06 | 2014-07-18 | Continental Automotive France | METHOD AND SYSTEM FOR VOICE SYNTHESIS |
US9576574B2 (en) | 2012-09-10 | 2017-02-21 | Apple Inc. | Context-sensitive handling of interruptions by intelligent digital assistant |
US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
CN113470640B (en) | 2013-02-07 | 2022-04-26 | 苹果公司 | Voice trigger of digital assistant |
US9368114B2 (en) | 2013-03-14 | 2016-06-14 | Apple Inc. | Context-sensitive handling of interruptions |
CN105027197B (en) | 2013-03-15 | 2018-12-14 | 苹果公司 | Training at least partly voice command system |
WO2014144579A1 (en) | 2013-03-15 | 2014-09-18 | Apple Inc. | System and method for updating an adaptive speech recognition model |
WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
KR101922663B1 (en) | 2013-06-09 | 2018-11-28 | 애플 인크. | Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
KR101809808B1 (en) | 2013-06-13 | 2017-12-15 | 애플 인크. | System and method for emergency calls initiated by voice command |
DE112014003653B4 (en) | 2013-08-06 | 2024-04-18 | Apple Inc. | Automatically activate intelligent responses based on activities from remote devices |
US9620105B2 (en) | 2014-05-15 | 2017-04-11 | Apple Inc. | Analyzing audio input for efficient speech and music recognition |
US10592095B2 (en) | 2014-05-23 | 2020-03-17 | Apple Inc. | Instantaneous speaking of content on touch devices |
US9502031B2 (en) | 2014-05-27 | 2016-11-22 | Apple Inc. | Method for supporting dynamic grammars in WFST-based ASR |
US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9734193B2 (en) | 2014-05-30 | 2017-08-15 | Apple Inc. | Determining domain salience ranking from ambiguous words in natural speech |
TWI566107B (en) | 2014-05-30 | 2017-01-11 | 蘋果公司 | Method for processing a multi-part voice command, non-transitory computer readable storage medium and electronic device |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
US10289433B2 (en) | 2014-05-30 | 2019-05-14 | Apple Inc. | Domain specific language for encoding assistant dialog |
US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
US10789041B2 (en) | 2014-09-12 | 2020-09-29 | Apple Inc. | Dynamic thresholds for always listening speech trigger |
US9606986B2 (en) | 2014-09-29 | 2017-03-28 | Apple Inc. | Integrated word N-gram and class M-gram language models |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
JP6415929B2 (en) * | 2014-10-30 | 2018-10-31 | 株式会社東芝 | Speech synthesis apparatus, speech synthesis method and program |
US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
US9711141B2 (en) | 2014-12-09 | 2017-07-18 | Apple Inc. | Disambiguating heteronyms in speech synthesis |
US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
US10726197B2 (en) * | 2015-03-26 | 2020-07-28 | Lenovo (Singapore) Pte. Ltd. | Text correction using a second input |
US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
WO2017046887A1 (en) * | 2015-09-16 | 2017-03-23 | 株式会社東芝 | Speech synthesis device, speech synthesis method, speech synthesis program, speech synthesis model learning device, speech synthesis model learning method, and speech synthesis model learning program |
US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
DK179588B1 (en) | 2016-06-09 | 2019-02-22 | Apple Inc. | Intelligent automated assistant in a home environment |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
US10043516B2 (en) | 2016-09-23 | 2018-08-07 | Apple Inc. | Intelligent automated assistant |
US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
DK201770439A1 (en) | 2017-05-11 | 2018-12-13 | Apple Inc. | Offline personal assistant |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
DK201770432A1 (en) | 2017-05-15 | 2018-12-21 | Apple Inc. | Hierarchical belief states for digital assistants |
DK179560B1 (en) | 2017-05-16 | 2019-02-18 | Apple Inc. | Far-field extension for digital assistant services |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5633984A (en) * | 1991-09-11 | 1997-05-27 | Canon Kabushiki Kaisha | Method and apparatus for speech processing |
US5924067A (en) * | 1996-03-25 | 1999-07-13 | Canon Kabushiki Kaisha | Speech recognition method and apparatus, a computer-readable storage medium, and a computer- readable program for obtaining the mean of the time of speech and non-speech portions of input speech in the cepstrum dimension |
US6236962B1 (en) * | 1997-03-13 | 2001-05-22 | Canon Kabushiki Kaisha | Speech processing apparatus and method and computer readable medium encoded with a program for recognizing input speech by performing searches based on a normalized current feature parameter |
US6240384B1 (en) * | 1995-12-04 | 2001-05-29 | Kabushiki Kaisha Toshiba | Speech synthesis method |
US20010032079A1 (en) * | 2000-03-31 | 2001-10-18 | Yasuo Okutani | Speech signal processing apparatus and method, and storage medium |
US20020051955A1 (en) * | 2000-03-31 | 2002-05-02 | Yasuo Okutani | Speech signal processing apparatus and method, and storage medium |
US6546367B2 (en) * | 1998-03-10 | 2003-04-08 | Canon Kabushiki Kaisha | Synthesizing phoneme string of predetermined duration by adjusting initial phoneme duration on values from multiple regression by adding values based on their standard deviations |
US6662159B2 (en) * | 1995-11-01 | 2003-12-09 | Canon Kabushiki Kaisha | Recognizing speech data using a state transition model |
US6665641B1 (en) * | 1998-11-13 | 2003-12-16 | Scansoft, Inc. | Speech synthesis using concatenation of speech waveforms |
US6697780B1 (en) * | 1999-04-30 | 2004-02-24 | At&T Corp. | Method and apparatus for rapid acoustic unit selection from a large speech corpus |
US7013278B1 (en) * | 2000-07-05 | 2006-03-14 | At&T Corp. | Synthesis-based pre-selection of suitable units for concatenative speech |
US7082396B1 (en) * | 1999-04-30 | 2006-07-25 | At&T Corp | Methods and apparatus for rapid acoustic unit selection from a large speech corpus |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3397372B2 (en) * | 1993-06-16 | 2003-04-14 | キヤノン株式会社 | Speech recognition method and apparatus |
JP3450411B2 (en) * | 1994-03-22 | 2003-09-22 | キヤノン株式会社 | Voice information processing method and apparatus |
JP3530591B2 (en) * | 1994-09-14 | 2004-05-24 | キヤノン株式会社 | Speech recognition apparatus, information processing apparatus using the same, and methods thereof |
JP3581401B2 (en) * | 1994-10-07 | 2004-10-27 | キヤノン株式会社 | Voice recognition method |
JP3453456B2 (en) * | 1995-06-19 | 2003-10-06 | キヤノン株式会社 | State sharing model design method and apparatus, and speech recognition method and apparatus using the state sharing model |
JPH09258771A (en) * | 1996-03-25 | 1997-10-03 | Canon Inc | Voice processing method and device |
US5913193A (en) * | 1996-04-30 | 1999-06-15 | Microsoft Corporation | Method and system of runtime acoustic unit selection for speech synthesis |
US6366883B1 (en) * | 1996-05-15 | 2002-04-02 | Atr Interpreting Telecommunications | Concatenation of speech segments by use of a speech synthesizer |
JPH1097276A (en) * | 1996-09-20 | 1998-04-14 | Canon Inc | Method and device for speech recognition, and storage medium |
JPH10161692A (en) * | 1996-12-03 | 1998-06-19 | Canon Inc | Voice recognition device, and method of recognizing voice |
JPH10187195A (en) * | 1996-12-26 | 1998-07-14 | Canon Inc | Method and device for speech synthesis |
US6163769A (en) * | 1997-10-02 | 2000-12-19 | Microsoft Corporation | Text-to-speech using clustered context-dependent phoneme-based units |
JP3180764B2 (en) * | 1998-06-05 | 2001-06-25 | 日本電気株式会社 | Speech synthesizer |
-
2004
- 2004-08-30 US US10/928,114 patent/US7039588B2/en not_active Expired - Fee Related
-
2005
- 2005-12-07 US US11/295,653 patent/US20060085194A1/en not_active Abandoned
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5633984A (en) * | 1991-09-11 | 1997-05-27 | Canon Kabushiki Kaisha | Method and apparatus for speech processing |
US6662159B2 (en) * | 1995-11-01 | 2003-12-09 | Canon Kabushiki Kaisha | Recognizing speech data using a state transition model |
US6240384B1 (en) * | 1995-12-04 | 2001-05-29 | Kabushiki Kaisha Toshiba | Speech synthesis method |
US5924067A (en) * | 1996-03-25 | 1999-07-13 | Canon Kabushiki Kaisha | Speech recognition method and apparatus, a computer-readable storage medium, and a computer- readable program for obtaining the mean of the time of speech and non-speech portions of input speech in the cepstrum dimension |
US6236962B1 (en) * | 1997-03-13 | 2001-05-22 | Canon Kabushiki Kaisha | Speech processing apparatus and method and computer readable medium encoded with a program for recognizing input speech by performing searches based on a normalized current feature parameter |
US6546367B2 (en) * | 1998-03-10 | 2003-04-08 | Canon Kabushiki Kaisha | Synthesizing phoneme string of predetermined duration by adjusting initial phoneme duration on values from multiple regression by adding values based on their standard deviations |
US6665641B1 (en) * | 1998-11-13 | 2003-12-16 | Scansoft, Inc. | Speech synthesis using concatenation of speech waveforms |
US6697780B1 (en) * | 1999-04-30 | 2004-02-24 | At&T Corp. | Method and apparatus for rapid acoustic unit selection from a large speech corpus |
US7082396B1 (en) * | 1999-04-30 | 2006-07-25 | At&T Corp | Methods and apparatus for rapid acoustic unit selection from a large speech corpus |
US20010032079A1 (en) * | 2000-03-31 | 2001-10-18 | Yasuo Okutani | Speech signal processing apparatus and method, and storage medium |
US20020051955A1 (en) * | 2000-03-31 | 2002-05-02 | Yasuo Okutani | Speech signal processing apparatus and method, and storage medium |
US7013278B1 (en) * | 2000-07-05 | 2006-03-14 | At&T Corp. | Synthesis-based pre-selection of suitable units for concatenative speech |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1857924A1 (en) * | 2006-05-18 | 2007-11-21 | Kabushiki Kaisha Toshiba | Speech synthesis apparatus and method |
US20070271099A1 (en) * | 2006-05-18 | 2007-11-22 | Kabushiki Kaisha Toshiba | Speech synthesis apparatus and method |
US8468020B2 (en) | 2006-05-18 | 2013-06-18 | Kabushiki Kaisha Toshiba | Speech synthesis apparatus and method wherein more than one speech unit is acquired from continuous memory region by one access |
US8731933B2 (en) | 2006-05-18 | 2014-05-20 | Kabushiki Kaisha Toshiba | Speech synthesis apparatus and method utilizing acquisition of at least two speech unit waveforms acquired from a continuous memory region by one access |
US9666179B2 (en) | 2006-05-18 | 2017-05-30 | Kabushiki Kaisha Toshiba | Speech synthesis apparatus and method utilizing acquisition of at least two speech unit waveforms acquired from a continuous memory region by one access |
US20080154605A1 (en) * | 2006-12-21 | 2008-06-26 | International Business Machines Corporation | Adaptive quality adjustments for speech synthesis in a real-time speech processing system based upon load |
US20090018836A1 (en) * | 2007-03-29 | 2009-01-15 | Kabushiki Kaisha Toshiba | Speech synthesis system and speech synthesis method |
US8108216B2 (en) * | 2007-03-29 | 2012-01-31 | Kabushiki Kaisha Toshiba | Speech synthesis system and speech synthesis method |
US20130268275A1 (en) * | 2007-09-07 | 2013-10-10 | Nuance Communications, Inc. | Speech synthesis system, speech synthesis program product, and speech synthesis method |
US9275631B2 (en) * | 2007-09-07 | 2016-03-01 | Nuance Communications, Inc. | Speech synthesis system, speech synthesis program product, and speech synthesis method |
Also Published As
Publication number | Publication date |
---|---|
US7039588B2 (en) | 2006-05-02 |
US20050027532A1 (en) | 2005-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7039588B2 (en) | Synthesis unit selection apparatus and method, and storage medium | |
US6980955B2 (en) | Synthesis unit selection apparatus and method, and storage medium | |
US6778960B2 (en) | Speech information processing method and apparatus and storage medium | |
US6684187B1 (en) | Method and system for preselection of suitable units for concatenative speech | |
US7668717B2 (en) | Speech synthesis method, speech synthesis system, and speech synthesis program | |
US20050209855A1 (en) | Speech signal processing apparatus and method, and storage medium | |
US6826531B2 (en) | Speech information processing method and apparatus and storage medium using a segment pitch pattern model | |
US20010032079A1 (en) | Speech signal processing apparatus and method, and storage medium | |
JP2003295880A (en) | Speech synthesis system for connecting sound-recorded speech and synthesized speech together | |
US8478595B2 (en) | Fundamental frequency pattern generation apparatus and fundamental frequency pattern generation method | |
US6832192B2 (en) | Speech synthesizing method and apparatus | |
JP4533255B2 (en) | Speech synthesis apparatus, speech synthesis method, speech synthesis program, and recording medium therefor | |
US6202048B1 (en) | Phonemic unit dictionary based on shifted portions of source codebook vectors, for text-to-speech synthesis | |
US20060178873A1 (en) | Method of synthesis for a steady sound signal | |
JP4454780B2 (en) | Audio information processing apparatus, method and storage medium | |
KR100759172B1 (en) | Sound synthesizing device, sound synthesizing method, and storage medium storing sound synthesizing program therein | |
US20130117026A1 (en) | Speech synthesizer, speech synthesis method, and speech synthesis program | |
JP2853731B2 (en) | Voice recognition device | |
JP2004226505A (en) | Pitch pattern generating method, and method, system, and program for speech synthesis | |
JP2004354644A (en) | Speech synthesizing method, device and computer program therefor, and information storage medium stored with same | |
JP2005091747A (en) | Speech synthesizer | |
JP3576792B2 (en) | Voice information processing method | |
JP3423276B2 (en) | Voice synthesis method | |
JP2004233774A (en) | Speech synthesizing method, speech synthesizing device and speech synthesizing program | |
US9230536B2 (en) | Voice synthesizer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |