WO2013008384A1 - 音声合成装置、音声合成方法および音声合成プログラム - Google Patents

音声合成装置、音声合成方法および音声合成プログラム Download PDF

Info

Publication number
WO2013008384A1
WO2013008384A1 PCT/JP2012/003760 JP2012003760W WO2013008384A1 WO 2013008384 A1 WO2013008384 A1 WO 2013008384A1 JP 2012003760 W JP2012003760 W JP 2012003760W WO 2013008384 A1 WO2013008384 A1 WO 2013008384A1
Authority
WO
WIPO (PCT)
Prior art keywords
phoneme
state
index
voiced
voicedness
Prior art date
Application number
PCT/JP2012/003760
Other languages
English (en)
French (fr)
Inventor
康行 三井
正徳 加藤
玲史 近藤
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US14/131,409 priority Critical patent/US9520125B2/en
Priority to JP2013523777A priority patent/JP5979146B2/ja
Publication of WO2013008384A1 publication Critical patent/WO2013008384A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • G10L13/10Prosody rules derived from text; Stress or intonation
    • G10L2013/105Duration

Definitions

  • the present invention relates to a speech synthesizer, a speech synthesis method, and a speech synthesis program that perform waveform generation in speech synthesis using phoneme duration information generated by a statistical method.
  • HMM speech synthesis using a hidden Markov model is known as a speech synthesis method using a statistical method.
  • the prosody generated by the HMM speech synthesis is expressed using a specific number of states.
  • MSD-HMM Multi-Space Probability Distribution HMM
  • a voiced index an index indicating the degree of voicedness
  • the phoneme duration of each phoneme may be shortened.
  • speech synthesis is performed using such data, it is difficult to reproduce the phoneme duration.
  • an object of the present invention is to provide a speech synthesizer, a speech synthesis method, and a speech synthesis program that can represent phonemes with a duration shorter than the duration when modeled by a statistical method.
  • the speech synthesizer uses a voicedness index, which is an index indicating the degree of voicedness of each state expressing a phoneme modeled by a statistical method, and a boundary with another phoneme adjacent to the phoneme.
  • Phoneme boundary updating means for updating the phoneme boundary position is provided.
  • the speech synthesis method uses a voicedness index, which is an index indicating the degree of voicedness of each state expressing a phoneme modeled by a statistical method, and a boundary with another phoneme adjacent to the phoneme.
  • the phoneme boundary position is updated.
  • the speech synthesis program uses a voicing index, which is an index indicating the degree of voicedness of each state expressing a phoneme modeled by a statistical method, on a computer, and uses other phonemes adjacent to the phoneme.
  • a phoneme boundary update process for updating a phoneme boundary position that is a boundary between
  • a phoneme can be expressed with a duration length shorter than the duration length when modeled by a statistical method.
  • FIG. 1 is a block diagram showing a configuration example of a first embodiment of a speech synthesizer according to the present invention.
  • the speech synthesizer in this embodiment includes a language analysis unit 11, a state duration generation unit 12, a pitch pattern generation unit 13, a voiced index extraction unit 14, a phoneme boundary movement direction determination unit 15, and a phoneme duration.
  • a long generation unit 16, a waveform generation unit 17, a prosody model storage unit 18, and a speech unit database (hereinafter referred to as speech unit DB) storage unit 19 are provided.
  • the prosodic model storage unit 18 stores prosodic models generated by a statistical method.
  • the prosodic model indicates a model created by MSD-HMM.
  • the voicing index 22 is an index indicating the degree of voicedness, and is information derived for each state from the prosodic model when learning by a statistical method.
  • the prosodic model storage unit 18 may store the voicing index 22 itself set for each state. Further, the prosody model storage unit 18 may not store the voicing index 22 itself, but the voicing index extraction unit 14 described later may derive the voicing index from the prosodic model.
  • the voiced index is an index indicating whether each state expressed by the HMM has a feature of voiced sound or a feature of unvoiced sound (including silence). It is judged that the characteristic as a voiced sound is stronger as the voicedness index is larger.
  • a method for deriving a voicing index for example, a method of using a mixing coefficient of a Gaussian mixture model (Gaussian mixture model: GMM) as a voicing indicator, as represented by Equation (27) in Non-Patent Document 1. Is mentioned.
  • the unvoiced sound has the property that the energy in the high frequency (high frequency) part is large. Furthermore, the shape of the spectrum has the property that the high band is larger than the low band. Therefore, the result of analyzing the spectrum component using Fourier transform (FFT) or the like may be used as a voiced index. Further, a result obtained by using a voiced / unvoiced determination method using numerical values such as a linear prediction coefficient, a zero crossing rate, and a waveform power may be used as a voicedness index.
  • FFT Fourier transform
  • a voicedness index is set for each state
  • a voicedness index may be set for each frame unit.
  • the speech segment DB storage unit 19 stores attributes for each unit (segment) for creating speech. This attribute includes the waveform of each phoneme, information indicating vowels / consonants, information indicating voiced / unvoiced, and the like. These pieces of information are stored in advance in the speech unit DB storage unit 19. Note that information indicating voiced / unvoiced may not be stored in the speech segment DB storage unit 19, and the phoneme boundary moving direction determination unit 15, which will be described later, may determine whether it is voiced or unvoiced based on the information indicating the phoneme. . However, since the speech element DB storage unit 19 stores information indicating voiced / unvoiced, the phoneme boundary moving direction determination unit 15 does not need to perform the above-described determination process. Therefore, it is more preferable to store information indicating voiced / unvoiced in the speech segment DB storage unit 19 in advance from the viewpoint of increasing the processing speed.
  • the prosodic model storage unit 18 and the speech segment DB storage unit 19 are realized by, for example, a magnetic disk.
  • the language analysis unit 11 performs language analysis processing such as morphological analysis on the input text 21. In addition, the language analysis unit 11 performs processing for adding or changing additional information necessary for speech synthesis, such as accent positions and accent phrase breaks, on the language analysis result. However, the language analysis processing performed by the language analysis unit 11 is not limited to the above content. In addition, the language analysis unit 11 performs processing for analyzing the reading of characters included in the input text 21.
  • the state duration generator 12 calculates the state duration based on the analysis result by the language analyzer 11 and the prosodic model. Note that the phoneme duration is generated by the phoneme duration generation unit 16 described later. In the following description, a case where one phoneme is expressed in five states will be described as an example. Further, the pitch pattern generation unit 13 generates a pitch pattern based on the calculation result by the state duration generation unit 12 and the prosodic model.
  • the voiced index extracting unit 14 extracts a voiced index corresponding to each state from the prosodic model storage unit 18. For example, when the prosody model storage unit 18 stores the voicing index 22 set for each state, the voicing index extraction unit 14 extracts the voicing index 22 corresponding to each state from the prosodic model storage unit 18. May be.
  • the voiced index extracting unit 14 may read the prosody model from the prosody model storage unit 18 and derive the voiced index of each state from the prosody model. In this case, it is desirable that the prosodic model includes spectral information.
  • the phoneme boundary moving direction determination unit 15 uses a voicing index of each state expressing a phoneme modeled by a statistical method, and a boundary with another phoneme adjacent to the phoneme (hereinafter referred to as a phoneme boundary position). Update).
  • the phoneme boundary moving direction determination unit 15 specifies whether each state representing a phoneme indicates a voiced state or an unvoiced state. Specifically, the phoneme boundary moving direction determination unit 15 determines whether or not the voicedness index for each state exceeds a predetermined threshold. When the voiced index exceeds the threshold, the phoneme boundary moving direction determination unit 15 specifies that the state indicates a voiced state. On the other hand, when the voiced index does not exceed the threshold, the phoneme boundary moving direction determination unit 15 specifies that the state indicates an unvoiced state.
  • the phoneme boundary moving direction determination unit 15 may set a flag for each state after specifying that each state indicates a voiced state or an unvoiced state. For example, the phoneme boundary moving direction determination unit 15 may set a flag “H” for each state to indicate a voiced state and a flag “L” for each state.
  • voiced determination information the result of determining whether the voiced state or the unvoiced state is based on the voiced index (here, the flag “H” and the flag “L”) will be referred to as voiced determination information.
  • the phoneme boundary moving direction determination unit 15 determines the direction of moving the phoneme boundary position depending on whether the phonemes before and after the phoneme boundary are unvoiced or voiced and whether the state before and after the phoneme boundary is voiced or unvoiced.
  • the type when the phoneme is an unvoiced sound is denoted as “U”
  • the type when the phoneme is a voiced sound is denoted as “V”.
  • the type determined in this way is referred to as a UV type. That is, it can be said that the UV type is information for identifying whether each phoneme is an unvoiced sound or a voiced sound.
  • the phoneme boundary moving direction determination unit 15 extracts the unit phoneme information 23 corresponding to each phoneme from the speech unit DB storage unit 19 and determines whether each phoneme is an unvoiced sound or a voiced sound.
  • FIG. 2 is a flowchart showing an example of processing for determining the direction in which the phoneme boundary position is moved.
  • the phoneme boundary moving direction determination unit 15 determines whether adjacent phonemes (that is, phonemes before and after the phoneme boundary) are of the same UV type (step S11). If the UV types are the same (Yes in step S11), the phoneme boundary moving direction determination unit 15 ends the process. On the other hand, when the UV types are different (No in step S11), the phoneme boundary moving direction determination unit 15 determines the relationship between the voicedness determination information indicated by the states before and after the phoneme boundary (step S12). Specifically, the phoneme boundary movement direction determination unit 15 determines the movement direction of the phoneme boundary position based on a predetermined correspondence.
  • FIG. 3 is an explanatory diagram showing an example of the correspondence relationship between the voicedness determination information and the movement direction of the phoneme boundary position.
  • the table illustrated in FIG. 3 is a table that defines the direction in which the phoneme boundary position is moved in accordance with the content of the voicedness determination information (L or H) in each state in the case of unvoiced sound (U) and voiced sound (V). It is. For example, when adjacent phonemes are arranged in the order of unvoiced sound (U) and voiced sound (V), the voicedness determination information of unvoiced sound is “L” and the voicedness determination information of voiced sound is “H”. In this case, it is derived from this table that the phoneme boundary is not changed (that is, the phoneme boundary is not moved).
  • the phoneme boundary moving direction determination unit 15 moves the phoneme boundary position to the V side (step S13).
  • both of the voicedness determination information indicated by the adjacent states are “H” (HH in step S12)
  • the phoneme boundary moving direction determination unit 15 moves the phoneme boundary position to the U side (step S14).
  • the phoneme boundary moving direction determination unit 15 ends the process without moving the phoneme boundary position.
  • FIG. 4 is an explanatory diagram illustrating an example of a method for changing a phoneme boundary.
  • the example shown in FIG. 4 indicates that the phoneme boundary between unvoiced sound and voiced sound (hereinafter referred to as “UV boundary”) is moved according to the voicedness determination information indicated by the adjacent state.
  • each phoneme illustrated in FIG. 4 is represented by five states, and one cell represents one state.
  • the phoneme “a” is an unvoiced sound
  • the phoneme “b” is a voiced sound.
  • the phoneme boundary moving direction determination unit 15 sets the phoneme boundary to the V side (ie, voiced sound). To the side) by the width of one state.
  • the phoneme boundary moving direction determination unit 15 sets the phoneme boundary to the V side (that is, Move to the voiced side) by the width of one state. After moving the phoneme boundary position, the phoneme boundary moving direction determination unit 15 verifies the voicedness determination information indicated by the adjacent state at the phoneme boundary, and repeats the same processing.
  • the phoneme boundary moving direction determination unit 15 determines the phoneme boundary position. It is not moved (refer to FIGS. 4C and 4D).
  • the phoneme boundary moving direction determination unit 15 moves the phoneme boundary position by a length corresponding to the width of each state. For example, in the case of one frame per state, if one frame is 5 msec, the phoneme boundary moving direction determination unit 15 moves the phoneme boundary position by 5 msec.
  • the phoneme boundary moving direction determination unit 15 sets the voicedness determination information based on whether or not the voicedness index for each state exceeds a predetermined threshold and updates the phoneme boundary position.
  • the method by which the phoneme boundary moving direction determination unit 15 updates the phoneme boundary position is not limited to the above method.
  • the phoneme boundary moving direction determination unit 15 may update the phoneme boundary position based on, for example, a difference in voicedness index between adjacent states. In this case, it is not necessary to specify whether each state indicates a voiced state or an unvoiced state.
  • the phoneme boundary moving direction determination unit 15 sequentially calculates the difference ⁇ v i of the voicedness index. The phoneme boundary moving direction determination unit 15 determines a boundary between the i ⁇ 1th state and the ith state when ⁇ v i exceeds a preset threshold.
  • FIG. 5 is an explanatory diagram illustrating an example of a method for determining a boundary without specifying a voiced / unvoiced state.
  • the threshold value is 0.8.
  • the phoneme boundary movement direction determining unit 15 determines the boundary by using the difference Delta] v i and the threshold voiced index. Additional phoneme boundary movement direction determining section 15 may determine the boundary by changes in the difference Delta] v i. Also, the phoneme boundary movement direction determining section 15 may determine the boundary by using the difference (second difference) is delta 2 v i of Delta] v i.
  • the phoneme duration generation unit 16 calculates the duration of each phoneme based on the phoneme boundary position moved by the phoneme boundary movement direction determination unit 15. For example, it is assumed that the phoneme boundary moving direction determination unit 15 moves the phoneme boundary position in the direction of shortening the target phoneme, the moved width is one frame, and one frame is 5 msec. In this case, the phoneme duration generation unit 16 may set the phoneme duration as a time obtained by reducing the duration of the phoneme by 5 msec. However, the method by which the phoneme duration generation unit 16 calculates the phoneme duration is not limited to the above method.
  • the waveform generation unit 17 generates a speech waveform based on the phoneme duration length calculated by the phoneme duration generation unit 16 and the pitch pattern generated by the pitch pattern generation unit 13. In other words, the waveform generation unit 17 generates synthesized speech based on these pieces of information.
  • Language analysis unit 11, state duration generation unit 12, pitch pattern generation unit 13, voiced index extraction unit 14, phoneme boundary moving direction determination unit 15, phoneme duration generation unit 16, waveform generation unit 17 is realized by a CPU of a computer that operates according to a program (speech synthesis program).
  • the program is stored in a storage unit (not shown) of the speech synthesizer, and the CPU reads the program, and in accordance with the program, the language analysis unit 11, the state duration generation unit 12, the pitch pattern generation unit 13, and the voiced It may operate as the sex index extraction unit 14, the phoneme boundary moving direction determination unit 15, the phoneme duration generation unit 16, and the waveform generation unit 17.
  • Each of the generation units 17 may be realized by dedicated hardware.
  • FIG. 6 is a flowchart showing an example of the operation of the speech synthesizer in this embodiment.
  • the language analysis unit 11 performs language analysis processing such as morphological analysis (step S21).
  • the state duration generator 12 calculates the state duration based on the analysis result by the language analyzer 11 and the prosodic model stored in the prosodic model storage unit 18 (step S22).
  • the pitch pattern generation unit 13 generates a pitch pattern based on the calculation result by the state duration generation unit 12 and the prosodic model (step S23).
  • the voicing index extraction unit 14 extracts the voicing index 22 of each state from the prosodic model storage unit 18 (step S24).
  • the phoneme boundary moving direction determination unit 15 updates the phoneme boundary position using the voicing index of each state expressing the phoneme modeled by the HMM (step S25).
  • the phoneme boundary moving direction determination unit 15 may determine the direction in which the phoneme boundary position is moved based on the voicedness determination information.
  • the phoneme boundary moving direction determination unit 15 may determine the direction in which the phoneme boundary position is moved based on the difference in voicedness index between adjacent states.
  • the phoneme duration generation unit 16 calculates the duration of each phoneme based on the phoneme boundary position moved by the phoneme boundary movement direction determination unit 15 (step S26). Then, the waveform generation unit 17 generates a speech waveform based on the phoneme duration length calculated by the phoneme duration generation unit 16 and the pitch pattern generated by the pitch pattern generation unit 13 (step S27).
  • the phoneme boundary moving direction determination unit 15 uses the voicing index of each state expressing phonemes modeled by a statistical method (for example, MSD-HMM), The phoneme boundary position with other phonemes adjacent to the phoneme is updated. Therefore, phonemes can be expressed with a duration length shorter than the duration length when modeled by a statistical method.
  • a statistical method for example, MSD-HMM
  • FIG. 7 is an explanatory diagram showing an example of the result of changing the phoneme boundary position.
  • the phoneme duration is at least the number of analysis frames ⁇ the number of states. Therefore, as illustrated in FIG. 7B, for example, the phoneme duration of d immediately after the pause needs to be expressed in five states although it is less than 25 msec.
  • the phoneme boundary position is updated using the voicedness index. Therefore, for example, by setting the state of d immediately after the pause to 3 states, it is possible to represent phonemes with a short duration (see FIG. 7C).
  • Embodiment 2 a second embodiment of the present invention will be described.
  • the voicedness index is a value derived by various calculations (in this embodiment, a statistical method). Therefore, an appropriate numerical value is not always obtained. If the voiced index is inappropriate, it is difficult to appropriately determine the voiced / unvoiced boundary in the first embodiment.
  • There are roughly two cases where the voicing index is inappropriate. The first is a case where the voicing determination information in each state within the target phoneme is switched twice or more. The second case is a case where all states (frames) indicate a voiced state or an unvoiced state opposite to the target phoneme segment phoneme information.
  • FIG. 8 is an explanatory diagram showing an example of an inappropriate voicedness index.
  • the case illustrated in FIGS. 8A and 8C corresponds to the first case described above.
  • the voicedness determination information is “L” only in the center state of the voiced phoneme.
  • the example shown in FIG. 8C corresponds to the second case described above. Also in this case, since there are a plurality of boundary candidates, it is difficult to determine the boundary similarly.
  • the case illustrated in FIG. 8B corresponds to the second case.
  • all states (frames) of voiced phonemes indicate unvoiced states.
  • there is no switching point between the voicedness determination information “H” and “L” there is no boundary candidate, so it is difficult to determine the boundary.
  • a method for appropriately determining a phoneme boundary position even when an inappropriate value is included in the voiced index will be described.
  • FIG. 9 is a block diagram showing a configuration example of the second embodiment of the speech synthesizer according to the present invention.
  • the speech synthesizer in this embodiment includes a language analysis unit 11, a state duration generation unit 12, a pitch pattern generation unit 13, a voiced index extraction unit 14, a phoneme boundary movement direction determination unit 15, and a phoneme duration.
  • a long generation unit 16, a waveform generation unit 17, a prosody model storage unit 18, a speech segment DB storage unit 19, and a voicing index determination unit 20 are provided. That is, the speech synthesizer in the present embodiment is different from the speech synthesizer in the first embodiment in that the speech synthesizer further includes a voicing index determination unit 20.
  • the voicing index determination unit 20 determines whether or not the voicing index in each state is appropriate, and changes the inappropriate voicing index to an appropriate value. As described above, the voicing index determination unit 20 may determine that the voicing index is inappropriate when the voicing determination information is switched twice or more in one phoneme. Further, the voicing index determination unit 20 is voicing when the voicing determination information (voiced state / unvoiced information) of the target phoneme indicates information (for example, reverse information) different from the segment information. It may be determined that the index is inappropriate. As described above, the voicedness index determination unit 20 determines that the phoneme boundary position is inappropriate when “a plurality of candidates” or “no candidates exist”.
  • the voiced index determination unit 20 changes the inappropriate voiced index to an appropriate value.
  • the voicedness index determination unit 20 may change the voicedness determination information based on the unit phoneme information 23 of the corresponding phoneme stored in the speech unit DB storage unit 19.
  • the voicedness index determination unit 20 when the segment phoneme information of the corresponding phoneme indicates that it is voiced, the voicedness index determination unit 20 is that all the frames belonging to the phoneme are voiced (that is, the voicedness determination information is “H”). Is determined). On the other hand, when the segment phoneme information of the corresponding phoneme indicates that it is unvoiced, the voicedness index determination unit 20 is that all frames belonging to the phoneme are unvoiced (that is, the voicedness determination information is “L”). Judge. Then, the voicedness index determination unit 20 changes the voicedness determination information of the original phoneme with the determined voicedness determination information.
  • the voiced index determination unit 20 does not use the unit phoneme information of the corresponding phoneme stored in the speech unit DB storage unit 19, and One may be determined as a phoneme boundary position.
  • the voicedness index determination unit 20 may determine, for example, the switching location closest to the original phoneme boundary position as the phoneme boundary position.
  • the voicedness index determination unit 20 may determine the original boundary as it is as a boundary between voiced and unvoiced.
  • FIG. 10 is an explanatory diagram illustrating an example of processing for determining a phoneme boundary position.
  • the example shown in FIG. 10 (1) shows an initial state of voicedness determination information.
  • the voiced phoneme (V) voicedness determination information is arranged in the order of “LHLHL”.
  • Each frame in the voiced phoneme (V) is indicated by F1 to F5.
  • the last frame of the unvoiced phoneme (U 1 ) located before the voiced phoneme (V) is F0, and the first frame of the unvoiced phoneme (U 2 ) located after the voiced phoneme (V) is F6. To do.
  • the voicedness index determination unit 20 pays attention to the boundary between unvoiced phonemes and voiced phonemes (that is, frame F0 and frame F1). Both of the voicedness determination information of the frame F0 and the frame F1 are “L”. Therefore, the voicing index determination unit 20 pays attention to the voicing determination information between neighboring frames.
  • the voicedness determination information of the frame F1 is “L”
  • the voicedness determination information of the frame F2 is “H”. Therefore, the voicedness index determination unit 20 determines that the boundary between the frame F1 and the frame F2 is the switching point closest to the original phoneme boundary position. Then, the voicedness index determination unit 20 moves the phoneme boundary position to the switching location (see FIG. 10 (2)).
  • the voicedness index determination unit 20 determines that the boundary between the frames F4 and F5 is the closest switching point to the original phoneme boundary position (that is, the boundary between the frames F5 and F6). Then, the voiced index determination unit 20 moves the phoneme boundary position to the switching location (see FIG. 10 (3)). In the example shown in FIG. 10, the frame F3 having the center unvoiced state is ignored.
  • the voicedness index determination unit 20 may determine, as the phoneme boundary position, a point indicating the maximum difference among points exceeding a predetermined threshold. Further, when there is no switching point between voiced and unvoiced, there is no state having a voicedness index exceeding the threshold. In this case, for example, the voicedness index determination unit 20 may determine the point indicating the maximum difference as the phoneme boundary position. In this case, the phoneme boundary position can be determined even when there is no state having a voiced index exceeding the threshold.
  • FIG. 11 is a flowchart showing an example of the operation of the speech synthesizer in the present embodiment. It should be noted that the processing from performing the language analysis processing of the input text 21 to generating the duration length and pitch pattern based on the prosodic model and extracting the voicing index 22 is from step S21 to step S24 shown in FIG. It is the same as the processing.
  • the voicedness index determination unit 20 determines whether or not the voicedness index of each state is appropriate (step S31). If the voicing index is inappropriate (No in step S31), the voicing index determination unit 20 changes the voicing determination information of the original phoneme to an appropriate voicing index (step S32).
  • the phoneme boundary moving direction determination unit 15 updates the phoneme boundary position (step S25). Thereafter, the phoneme duration generation unit 16 calculates the duration of each phoneme based on the phoneme boundary position, and the waveform generation unit 17 generates the speech waveform based on the phoneme duration and the pitch pattern.
  • the processing is the same as the processing from step S26 to step S27 shown in FIG.
  • the voicedness index determination unit 20 determines whether or not the voicedness index in each state is appropriate, and changes the voicedness index determined to be inappropriate to an appropriate value. Therefore, in addition to the effects of the first embodiment, it is possible to prevent an error from occurring in the boundary determination by correcting the voicedness index of each state to an appropriate value.
  • FIG. 12 is a block diagram showing an example of the minimum configuration of the speech synthesizer according to the present invention.
  • the speech synthesizer 80 according to the present invention has a voicing index (for example, a state from a prosodic model) that is an index indicating the degree of voicedness of each state expressing a phoneme modeled by a statistical method (for example, MSD-HMM).
  • Phoneme boundary update means 81 (for example, a phoneme boundary moving direction determination unit 15) is used to update a phoneme boundary position that is a boundary with another phoneme adjacent to the phoneme. . Therefore, phonemes can be expressed with a duration length shorter than the duration length when modeled by a statistical method.
  • the phoneme boundary updating unit 81 indicates whether each state representing a phoneme indicates a voiced state (for example, a state in which the flag “H” is set) or an unvoiced state (for example, a state in which the flag “L” is set). Voicedness determination information), and when one of the adjacent phonemes indicates unvoiced sound (for example, “U” in the UV type) and the other phoneme indicates voiced sound (for example, “V” in the UV type), the voiced
  • the moving direction of the phoneme boundary position may be determined according to a rule (for example, the correspondence relationship illustrated in FIG. 3) determined in advance based on the relationship between the state and the unvoiced state.
  • the phoneme boundary updating unit 81 specifies the state expressing the phoneme as a voiced state when the voicedness index exceeds a predetermined threshold, and determines the phoneme when the voiced index is equal to or less than the predetermined threshold.
  • the state to be expressed may be specified as a silent state.
  • the phoneme boundary update means 81 may update the phoneme boundary position based on the difference (for example, ⁇ v i ) of the voicedness index between adjacent states.
  • the phoneme boundary update unit 81 is configured such that when the difference between the voicedness index of one adjacent state and the voicedness index of the other state exceeds a predetermined threshold, A position between one state and the other state may be determined as a phoneme boundary position.
  • the speech synthesizer 80 may include phoneme duration calculation means (for example, phoneme duration generation unit 16) that calculates a phoneme duration based on the updated phoneme boundary position.
  • phoneme duration calculation means for example, phoneme duration generation unit 16
  • the phoneme boundary update unit 81 may update the phoneme boundary position in units of length corresponding to the state width (for example, frame length).
  • the speech synthesizer 80 determines whether or not the voicing index of each state is appropriate, and changes the voicing index determined to be inappropriate to an appropriate value (for example, voicing index determination). Part 20). With such a configuration, the voicing index of each state is corrected to an appropriate value, so that it is possible to prevent an error from occurring in the boundary determination.
  • the voiced index determination means is used when the voicedness determination information, which is the result of determining whether the voiced state or the unvoiced state is determined based on the voiced index, is switched two or more times within one phoneme, or as a target
  • the phoneme voicing determination information indicates information that is different from the segment information that is predetermined as information indicating the phoneme property (for example, a voiced state or an unvoiced state opposite to the unit phoneme information is displayed) (If it is shown), it may be determined that the voicing index is inappropriate.
  • the present invention is preferably applied to a speech synthesizer using phoneme duration information generated by a statistical method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

 統計的手法によりモデル化された場合の継続時間長よりも短い継続時間長で音素を表現できる音声合成装置、音声合成方法および音声合成プログラムを提供する。本発明による音声合成装置80は、統計的手法によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標を用いて、その音素に隣接する他の音素との境界である音素境界位置を更新する音素境界更新手段81を備えている。

Description

音声合成装置、音声合成方法および音声合成プログラム
 本発明は、統計的手法によって生成される音素継続時間長情報を用いて音声合成における波形生成を行う音声合成装置、音声合成方法および音声合成プログラムに関する。
 統計的手法を用いた音声合成方法として、隠れマルコフモデル(Hidden Markov Model :HMM)を用いたHMM音声合成が知られている。HMM音声合成により生成される韻律は、特定の数の状態を用いて表現される。
 また、有声音と無声音のピッチパタンを同時にモデル化する方法として、MSD-HMM(Multi-Space Probability Distribution HMM)が知られている(非特許文献1参照。)。MSD-HMMに基づく音声合成では、波形を生成する際、有声らしさの度合いを示す指標(以下、有声性指標と記す。)に基づいて、波形を有声として生成するか無声として生成するかが判断される。
宮崎、外3名、「多空間上の確率分布に基づいたHMMとピッチパタンモデルへの応用」、電子情報通信学会技術研究報告、社団法人電子情報通信学会、1998年4月24日、pp.19-26
 音素の継続時間長(以下、音素継続時間長と記す。)は、各状態を表すフレームの長さの和になる。そのため、ターゲットとする音素の継続時間長は、分析フレーム数×状態数よりも短くすることはできない。例えば、1フレームの長さが5msecであり、状態数が5であるとする。この場合、最短の音素継続時間長は、5msec×5状態=25msecになり、この長さよりも短くすることはできない。
 分析の解像度を上げる(すなわち、フレーム幅を短くする)ことで、最短の音素継続時間長を短くすることは可能である。しかし、単純に分析の解像度を上げてしまうと、計算量が増大してしまうという問題がある。
 また、音素によっては、非常に音素継続時間が短い学習データしか存在しない可能性がある。例えば、早口の人の発声から学習データを作成している場合、各音素の音素継続時間長が短くなる可能性がある。このようなデータを使用して音声合成を行う場合、音素継続時間長を再現することは困難である。
 そこで、本発明は、統計的手法によりモデル化された場合の継続時間長よりも短い継続時間長で音素を表現できる音声合成装置、音声合成方法および音声合成プログラムを提供することを目的とする。
 本発明による音声合成装置は、統計的手法によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標を用いて、その音素に隣接する他の音素との境界である音素境界位置を更新する音素境界更新手段を備えたことを特徴とする。
 本発明による音声合成方法は、統計的手法によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標を用いて、その音素に隣接する他の音素との境界である音素境界位置を更新することを特徴とする。
 本発明による音声合成プログラムは、コンピュータに、統計的手法によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標を用いて、その音素に隣接する他の音素との境界である音素境界位置を更新する音素境界更新処理を実行させることを特徴とする。
 本発明によれば、統計的手法によりモデル化された場合の継続時間長よりも短い継続時間長で音素を表現できる。
本発明による音声合成装置の第1の実施形態の構成例を示すブロック図である。 音素境界位置を移動させる方向を決定する処理の例を示すフローチャートである。 有声性判定情報と音素境界位置の移動方向との対応関係の例を示す説明図である。 音素境界位置を変更する方法の例を示す説明図である。 境界を決定する方法の例を示す説明図である。 第1の実施形態における音声合成装置の動作の例を示すフローチャートである。 音素境界位置を変更した結果の例を示す説明図である。 不適切な有声性指標の例を示す説明図である。 本発明による音声合成装置の第2の実施形態の構成例を示すブロック図である。 音素境界位置を判断する処理の例を示す説明図である。 第2の実施形態における音声合成装置の動作の例を示すフローチャートである。 本発明による音声合成装置の最小構成の例を示すブロック図である。
 以下、本発明の実施形態を図面を参照して説明する。
実施形態1.
 図1は、本発明による音声合成装置の第1の実施形態の構成例を示すブロック図である。本実施形態における音声合成装置は、言語解析部11と、状態継続長生成部12と、ピッチパタン生成部13と、有声性指標抽出部14と、音素境界移動方向決定部15と、音素継続時間長生成部16と、波形生成部17と、韻律モデル記憶部18と、音声素片データベース(以下、音声素片DBと記す。)記憶部19とを備えている。
 韻律モデル記憶部18は、統計的手法で生成された韻律モデルを記憶する。ここでは、韻律モデルは、MSD-HMMにより作成されたモデルを示す。有声性指標22は、上述するように、有声らしさの度合いを示す指標であり、統計的手法で学習した際に韻律モデルから状態ごとに導出される情報である。韻律モデル記憶部18は、各状態に設定される有声性指標22そのものを記憶していてもよい。また、韻律モデル記憶部18が有声性指標22そのものを記憶せず、後述する有声性指標抽出部14が、韻律モデルから有声性指標を導出するようにしてもよい。
 上述するように、有声性指標とは、HMMで表現される各状態が有声音の特徴を持つか、無声音(無音を含む)の特徴を持つかを示す指標である。有声性指標が大きいほど、有声音としての特徴が強いと判断される。有声性指標を導出する方法の具体例として、例えば、非特許文献1の式(27)で表されるように、ガウシアン混合モデル(Gaussian mixture model : GMM)の混合係数を有声性指標として用いる方法が挙げられる。
 また、一般に無声音は、高域(周波数的に高い)部分のエネルギーが大きい性質を有する。さらに、スペクトルの形状は、低域よりも高域の方が大きいという性質を有する。そこで、フーリエ変換(FFT)等を用いてスペクトル成分を分析した結果を有声性指標として用いてもよい。また、線形予測係数や、零交叉率、波形のパワーなど、数値を用いる有声/無声判定手法を用いて求めた結果を有声性指標として用いてもよい。
 また、本実施形態では、状態ごとに有声性指標が設定される場合を例に説明するが、フレームの単位ごとに有声性指標が設定されていてもよい。
 音声素片DB記憶部19は、音声を作成する単位(素片)ごとの属性を記憶する。この属性には、各音素の波形や、母音/子音を示す情報、有声/無声を示す情報などが含まれる。これらの情報は、予め音声素片DB記憶部19に記憶される。なお、有声/無声を示す情報を音声素片DB記憶部19に記憶せず、後述する音素境界移動方向決定部15が、音素を示す情報に基づいて、有声か無声かを判断してもよい。ただし、音声素片DB記憶部19が有声/無声を示す情報を記憶しておくことで、音素境界移動方向決定部15は上述する判断処理を行う必要がなくなる。そのため、有声/無声を示す情報を予め音声素片DB記憶部19に記憶するほうが、処理速度を上げる観点からより好ましい。
 韻律モデル記憶部18、及び音声素片DB記憶部19は、例えば、磁気ディスク等により実現される。
 言語解析部11は、入力テキスト21に対して、例えば形態素解析等の言語解析処理を行う。また、言語解析部11は、言語解析結果に対して、アクセント位置やアクセント句区切りなど、音声合成に必要な付加的情報を付与したり、変更を加えたりする処理を行う。ただし、言語解析部11が行う言語解析処理は、上記内容に限定されない。言語解析部11は、他にも、入力テキスト21に含まれる文字の読みを解析する処理などを行う。
 状態継続長生成部12は、言語解析部11による解析結果および韻律モデルに基づいて、状態継続長を計算する。なお、音素継続時間長は、後述する音素継続時間長生成部16で生成される。以下の説明では、1音素が5状態で表現される場合を例に説明する。また、ピッチパタン生成部13は、状態継続長生成部12による計算結果および韻律モデルに基づいてピッチパタンを生成する。
 有声性指標抽出部14は、韻律モデル記憶部18から各状態に対応する有声性指標を抽出する。例えば、韻律モデル記憶部18が各状態に設定された有声性指標22を記憶している場合、有声性指標抽出部14は、各状態に対応する有声性指標22を韻律モデル記憶部18から抽出してもよい。また、有声性指標抽出部14は、韻律モデル記憶部18から韻律モデルを読み込み、その韻律モデルから各状態の有声性指標を導出してもよい。この場合、韻律モデルにはスペクトル情報が含まれていることが望ましい。
 音素境界移動方向決定部15は、統計的手法によりモデル化された音素を表現する各状態の有声性指標を用いて、その音素に隣接する他の音素との境界(以下、音素境界位置と記す。)を更新する。
 まず、音素境界移動方向決定部15は、音素を表現する各状態が有声状態を示すか無声状態を示すか特定する。具体的には、音素境界移動方向決定部15は、状態ごとの有声性指標が、予め定めた閾値を超えるか否か判断する。有声性指標が閾値を超えている場合、音素境界移動方向決定部15は、その状態が有声状態を示すと特定する。一方、有声性指標が閾値を超えていない場合、音素境界移動方向決定部15は、その状態が無声状態を示すと特定する。音素境界移動方向決定部15は、各状態が有声状態または無声状態を示すことを特定したあと、各状態に対してフラグを設定してもよい。音素境界移動方向決定部15は、例えば、有声状態を示す場合にはフラグ「H」を、無声状態を示す場合にはフラグ「L」を各状態に対して設定してもよい。
 以下の説明では、有声性指標に基づいて有声状態か無声状態かが判定された結果(ここでは、フラグ「H」およびフラグ「L」)のことを有声性判定情報と記す。
 次に、音素境界移動方向決定部15は、音素境界前後の音素が無声音か有声音か、また、音素境界前後の状態が有声状態か無声状態かによって、音素境界位置を移動させる方向を決定する。以下、音素が無声音(ポーズなどの無音も含む)の場合の種別を「U」と記し、音素が有声音の場合の種別を「V」と記す。また、このように定めた種別のことをUV種別と記す。すなわち、UV種別とは、各音素が無声音か有声音かを識別する情報であると言える。具体的には、音素境界移動方向決定部15は、各音素に対応する素片音素情報23を音声素片DB記憶部19から抽出し、各音素が無声音か有声音かを判断する。
 図2は、音素境界位置を移動させる方向を決定する処理の例を示すフローチャートである。まず、音素境界移動方向決定部15は、隣接する音素(すなわち、音素境界前後の音素)同士が、同じUV種別か否かを判断する(ステップS11)。UV種別が同じ場合(ステップS11におけるYes)、音素境界移動方向決定部15は、処理を終了する。一方、UV種別が異なる場合(ステップS11におけるNo)、音素境界移動方向決定部15は、音素境界前後の状態それぞれが示す有声性判定情報の関係を判断する(ステップS12)。具体的には、音素境界移動方向決定部15は、予め定めた対応関係に基づいて、音素境界位置の移動方向を決定する。
 図3は、有声性判定情報と音素境界位置の移動方向との対応関係の例を示す説明図である。図3に例示する表は、無声音(U)、有声音(V)それぞれの場合における各状態の有声性判定情報(LまたはH)の内容に応じて音素境界位置を移動する方向を定義した表である。例えば、隣接する音素が無声音(U)、有声音(V)の順に並んでいる場合に、無声音の有声性判定情報が「L」であり、有声音の有声性判定情報が「H」である場合、この表からは、音素境界を変更しない(すなわち、音素境界を移動させない)ことが導かれる。
 隣接する状態が示す有声性判定情報の両方が「L」の場合(ステップS12におけるLL)、音素境界移動方向決定部15は、音素境界位置をV側に移動させる(ステップS13)。また、隣接する状態が示す有声性判定情報の両方が「H」の場合(ステップS12におけるHH)、音素境界移動方向決定部15は、音素境界位置をU側に移動させる(ステップS14)。一方、隣接する状態が示す有声性判定情報の内容が異なっている場合(ステップS12における「その他」)、音素境界移動方向決定部15は、音素境界位置を移動させず、処理を終了する。
 音素境界を移動させる処理について、図4を用いてさらに説明する。図4は、音素境界を変更する方法の例を示す説明図である。図4に示す例では、無声音と有声音の音素境界(以下、U-V境界と記す。)を、隣接する状態が示す有声性判定情報に応じて移動していることを示す。ここで、図4に例示する各音素は5状態で表わされ、1マスが1状態を表している。なお、ここでは、音素「a」を無声音、音素「b」を有声音とする。
 音素境界で隣接する状態が示す有声性判定情報が、いずれも「L」の場合(図4(a)参照。)、音素境界移動方向決定部15は、音素境界をV側(すなわち、有声音側)に1状態分の幅だけ移動する。また、音素境界で隣接する状態が示す有声性判定情報が、いずれも「H」の場合(図4(b)参照。)、音素境界移動方向決定部15は、音素境界をV側(すなわち、有声音側)に1状態分の幅だけ移動する。音素境界移動方向決定部15は、音素境界位置を移動させた後、その音素境界で隣接する状態が示す有声性判定情報を検証し、同様の処理を繰り返す。一方、音素境界で隣接する状態が示す有声性判定情報が、それぞれ「H」と「L」、または、「L」と「H」の場合、音素境界移動方向決定部15は、音素境界位置を移動させない(図4(c),(d)参照。)。
 音素境界の位置を移動させる際、音素境界移動方向決定部15は、各状態の幅に相当する長さだけ音素境界位置を移動させる。例えば、1状態1フレームである場合、1フレームが5msecであれば、音素境界移動方向決定部15は、5msec分音素境界位置を移動させる。
 上記説明では、音素境界移動方向決定部15が、状態ごとの有声性指標が予め定めた閾値を超えるか否かで有声性判定情報を設定して、音素境界位置を更新する方法を説明した。ただし、音素境界移動方向決定部15が音素境界位置を更新する方法は、上記方法に限定されない。音素境界移動方向決定部15は、例えば、隣接する状態間の有声性指標の差分に基づいて、音素境界位置を更新してもよい。この場合、各状態が有声状態を示すか無声状態を示すか特定する必要はない。
 以下、有声状態か無声状態かを特定せずに境界を決定する方法を、具体例を用いて説明する。ここで、U-V境界を挟んだ2つの音素の総状態数をM、有声性指標をv(0≦v≦1,i∈M)とすると、隣接する有声性指標の差分は、Δv=v-vi-1で表される。境界を決定する際、音素境界移動方向決定部15は、有声性指標の差分Δvを順番に計算する。そして、音素境界移動方向決定部15は、Δvが予め設定した閾値を超えた時点で、i-1番目の状態とi番目の状態との間を境界と決定する。
 図5は、有声状態/無声状態を特定せずに境界を決定する方法の例を示す説明図である。ここでは、閾値を0.8とする。図5(A)に示す例では、i=1から順番にΔvを求めていくと、i=7のときΔv=0.81になり、vが閾値を超える。そこで、音素境界移動方向決定部15は、i=6のフレームとi=7のフレームとの間をU-V境界と決定する。
 同様に、図5(B)に示す例では、i=1から順番にΔvを求めていくと、i=4のときΔv=0.81になり、Δvが閾値を超える。そこで、音素境界移動方向決定部15は、i=3のフレームとi=4のフレームとの間をU-V境界と決定する。また、図5(C)に示す例では、i=1から順番にΔvを求めていくと、i=6のときΔv=0.81になり、Δvが閾値を超える。そこで、音素境界移動方向決定部15は、i=5のフレームとi=6のフレームとの間をU-V境界と決定する。すなわち、この場合、境界の変更は行われないことになる。
 なお、図5に示す例では、音素境界移動方向決定部15が有声性指標の差分Δvと閾値とを用いて境界を決定する場合について説明した。他にも、音素境界移動方向決定部15は、差分Δvの推移により境界を決定してもよい。また、音素境界移動方向決定部15は、Δvの差分(2階差分)であるΔを用いて境界を決定してもよい。
 音素継続時間長生成部16は、音素境界移動方向決定部15が移動させた音素境界位置に基づいて、各音素の継続時間長を計算する。音素境界移動方向決定部15が、例えば、対象とする音素を短くする方向に音素境界位置を移動させ、その移動させた幅が1フレームであり、1フレームが5msecであるとする。この場合、音素継続時間長生成部16は、その音素の継続時間長を5msec分減少させた時間を音素継続時間長としてもよい。ただし、音素継続時間長生成部16が音素継続時間長を計算する方法は、上記方法に限定されない。
 波形生成部17は、音素継続時間長生成部16が計算した音素継続時間長とピッチパタン生成部13が生成したピッチパタンとに基づいて、音声波形を生成する。言い換えると、波形生成部17は、これらの情報に基づいて合成音声を生成する。
 言語解析部11と、状態継続長生成部12と、ピッチパタン生成部13と、有声性指標抽出部14と、音素境界移動方向決定部15と、音素継続時間長生成部16と、波形生成部17とは、プログラム(音声合成プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、音声合成装置の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、言語解析部11、状態継続長生成部12、ピッチパタン生成部13、有声性指標抽出部14、音素境界移動方向決定部15、音素継続時間長生成部16、及び波形生成部17として動作してもよい。また、言語解析部11と、状態継続長生成部12と、ピッチパタン生成部13と、有声性指標抽出部14と、音素境界移動方向決定部15と、音素継続時間長生成部16と、波形生成部17とは、それぞれが専用のハードウェアで実現されていてもよい。
 次に、本実施形態における音声合成装置の動作を説明する。図6は、本実施形態における音声合成装置の動作の例を示すフローチャートである。音声合成装置に入力テキスト21が入力されると、言語解析部11は、形態素解析等の言語解析処理を行う(ステップS21)。そして、状態継続長生成部12は、言語解析部11による解析結果および韻律モデル記憶部18に記憶された韻律モデルに基づいて状態継続長を計算する(ステップS22)。
 ピッチパタン生成部13は、状態継続長生成部12による計算結果および韻律モデルに基づいて、ピッチパタンを生成する(ステップS23)。一方、有声性指標抽出部14は、韻律モデル記憶部18から各状態の有声性指標22を抽出する(ステップS24)。その後、音素境界移動方向決定部15は、HMMによりモデル化された音素を表現する各状態の有声性指標を用いて、音素境界位置を更新する(ステップS25)。このとき、音素境界移動方向決定部15は、有声性判定情報に基づいて音素境界位置を移動させる方向を決定してもよい。また、音素境界移動方向決定部15は、隣接する状態間の有声性指標の差分に基づいて、音素境界位置を移動させる方向を決定してもよい。
 音素継続時間長生成部16は、音素境界移動方向決定部15が移動させた音素境界位置に基づいて、各音素の継続時間長を計算する(ステップS26)。そして、波形生成部17は、音素継続時間長生成部16が計算した音素継続時間長とピッチパタン生成部13が生成したピッチパタンとに基づいて、音声波形を生成する(ステップS27)。
 以上のように、本実施形態によれば、音素境界移動方向決定部15が、統計的手法(例えば、MSD-HMM)によりモデル化された音素を表現する各状態の有声性指標を用いて、その音素に隣接する他の音素との音素境界位置を更新する。よって、統計的手法によりモデル化された場合の継続時間長よりも短い継続時間長で音素を表現できる。
 図7は、音素境界位置を変更した結果の例を示す説明図である。例えば、1音素が5状態で表現される場合(図7(A)参照)、一般的な方法を用いた場合、音素継続時間長は、最短でも分析フレーム数×状態数になる。そのため、図7(B)に例示するように、例えば、ポーズ直後のdの音素継続時間長は、25msecを下回るにも関わらず、5状態で表現する必要があった。しかし、本実施形態では、有声性指標を用いて音素境界位置を更新する。そのため、例えば、ポーズ直後のdの状態を3状態とすることにより、短い継続時間長で音素を表現することが可能になる(図7(C)参照)。
実施形態2.
 次に、本発明の第2の実施形態を説明する。本実施形態では、有声性指標に不適切な値が含まれる可能性があることを想定する。すなわち、有声性指標は、各種の計算(本実施形態では、統計的手法)により導出される値である。そのため、必ずしも適切な数値が得られるとは限らない。有声性指標が不適切であると、第1の実施形態において、有声/無声の境界を適切に決定することが困難になる。
 有声性指標が不適切な場合として、大きく分けて2つの場合が考えられる。1つ目は、対象とする音素内の各状態における有声性判定情報が2回以上切り替わる場合である。2つ目は、全ての状態(フレーム)が対象とする音素の素片音素情報と逆の有声状態または無声状態を示している場合である。
 図8は、不適切な有声性指標の例を示す説明図である。図8に示す例では、図8(A)および図8(C)に例示する場合が、上述した1つ目の場合に該当する。例えば、図8(A)に示す例では、有声音素における中央の状態のみ、有声性判定情報が「L」になっている。このような場合、音素境界位置の候補である有声性判定情報「H」と「L」との切り替わり箇所が複数あるため、境界を確定することは困難である。図8(C)に示す例は、上述した2つ目の場合に該当する。この場合も境界の候補が複数存在するため、同様に境界を確定することは困難である。
 また、図8(B)に例示する場合が、2つ目の場合に該当する。図8(B)に示す例では、有声音素の全ての状態(フレーム)が無声状態を示している。この場合、有声性判定情報「H」と「L」との切り替わり箇所が存在せず、境界の候補が存在しないため、境界を確定することが困難である。本実施形態では、このように有声性指標に不適切な値が含まれる場合であっても、音素境界位置を適切に決定する方法を説明する。
 図9は、本発明による音声合成装置の第2の実施形態の構成例を示すブロック図である。なお、第1の実施形態と同様の構成については、図1と同一の符号を付し、説明を省略する。本実施形態における音声合成装置は、言語解析部11と、状態継続長生成部12と、ピッチパタン生成部13と、有声性指標抽出部14と、音素境界移動方向決定部15と、音素継続時間長生成部16と、波形生成部17と、韻律モデル記憶部18と、音声素片DB記憶部19と、有声性指標判定部20とを備えている。すなわち、本実施形態における音声合成装置は、有声性指標判定部20をさらに備えている点において、第1の実施形態における音声合成装置と異なる。
 有声性指標判定部20は、各状態の有声性指標が適切か否かを判定し、不適切な有声性指標を適切な値に変更する。上述するように、有声性指標判定部20は、有声性判定情報が1音素内において2回以上切り替わっている場合に、有声性指標が不適切であると判定してもよい。また、有声性指標判定部20は、対象とする音素の有声性判定情報(有声状態/無声情報)が素片情報とは異なる情報(例えば、逆の情報)を示している場合に、有声性指標が不適切であると判定してもよい。このように、有声性指標判定部20は、音素境界位置について「候補が複数ある」または「候補が存在しない」場合に不適切と判定する。
 そして、有声性指標が不適切であると判定された場合、有声性指標判定部20は、不適切な有声性指標を適切な値に変更する。有声性指標判定部20は、例えば、音声素片DB記憶部19に記憶されている該当音素の素片音素情報23に基づいて、有声性判定情報を変更してもよい。
 具体的には、該当音素の素片音素情報が有声であることを示す場合、有声性指標判定部20は、その音素に属するフレームが全て有声である(すなわち、有声性判定情報が「H」である)と判断する。一方、該当音素の素片音素情報が無声であることを示す場合、有声性指標判定部20は、その音素に属するフレームが全て無声である(すなわち、有声性判定情報が「L」である)と判断する。そして、有声性指標判定部20は、判断した有声性判定情報で、もとの音素の有声性判定情報を変更する。
 また、有声と無声が切り替わる位置が複数存在する場合、有声性指標判定部20は、音声素片DB記憶部19に記憶されている該当音素の素片音素情報を用いずに、その切り替わる位置の1つを音素境界位置と判断してもよい。有声性指標判定部20は、例えば、もとの音素境界位置に最も近い切り替わり箇所を音素境界位置と判断してもよい。ここで、切り替わり箇所の候補が元の境界と一致する場合、有声性指標判定部20は、元の境界をそのまま有声と無声との境界と判断すればよい。
 図10は、音素境界位置を判断する処理の例を示す説明図である。図10(1)に示す例は、有声性判定情報の初期状態を示す。また、この初期状態では、有声音素(V)の有声性判定情報が、「LHLHL」の順に並んでいることを示す。また、有声音素(V)内の各フレームをF1~F5で示す。また、有声音素(V)の前に位置する無声音素(U)の最後のフレームをF0とし、有声音素(V)の後に位置する無声音素(U)の最初のフレームをF6とする。
 まず、有声性指標判定部20は、無声音素と有声音素との境界(すなわち、フレームF0とフレームF1)に着目する。フレームF0とフレームF1の有声性判定情報は、いずれも「L」である。そこで、有声性指標判定部20は、その近傍のフレーム間の有声性判定情報に着目する。ここで、フレームF1の有声性判定情報は「L」であり、フレームF2の有声性判定情報は「H」である。そこで、有声性指標判定部20は、フレームF1とフレームF2との境界をもとの音素境界位置に最も近い切り替わり箇所と判断する。そして、有声性指標判定部20は、その切り替わり箇所に音素境界位置を移動させる(図10(2)参照)。
 次に、有声音素と無声音素との境界(すなわち、フレームF5とフレームF6)近傍のフレームに着目する。ここで、フレームF4の有声性判定情報は「L」であり、フレームF5の有声性判定情報は「H」である。そこで、有声性指標判定部20は、フレームF4とフレームF5との境界をもとの音素境界位置(すなわち、フレームF5とフレームF6の境界)に最も近い切り替わり箇所と判断する。そして、有声性指標判定部20は、その切り替わり箇所に音素境界位置を移動させる(図10(3)参照)。なお、図10に示す例では、中央の無声状態を持つフレームF3は、無視されることになる。
 なお、上記説明では、各フレームの有声性判定情報を用いて有声音素と無声音素の境界を決定する場合について説明した。ただし、離散値である有声性判定情報を用いずに、連続値である有声性指標を直接用いてもよい。この場合、有声性指標判定部20は、例えば、予め定めた閾値を超える点のうち、最大の差分を示す点を音素境界位置と判断してもよい。また、有声と無声との切り替わり点が存在しない場合、閾値を超える有声性指標を持つ状態は存在しない。この場合、有声性指標判定部20は、例えば、最大の差分を示す点を音素境界位置と判断してもよい。この場合、閾値を超える有声性指標を持つ状態が存在しなくても、音素境界位置を確定することが可能になる。
 次に、本実施形態における音声合成装置の動作を説明する。図11は、本実施形態における音声合成装置の動作の例を示すフローチャートである。なお、入力テキスト21の言語解析処理を行い、韻律モデルに基づいて継続時間長およびピッチパタンを生成し、有声性指標22を抽出するまでの処理は、図6に示すステップS21~ステップS24までの処理と同様である。
 その後、有声性指標判定部20は、各状態の有声性指標が適切か否かを判定する(ステップS31)。有声性指標が不適切である場合(ステップS31におけるNo)、有声性指標判定部20は、もとの音素の有声性判定情報を適切な有声性指標に変更する(ステップS32)。
 有声性指標が適切であった場合(ステップS31におけるYes)、または、有声性指標の変更後、音素境界移動方向決定部15は、音素境界位置を更新する(ステップS25)。以降、音素継続時間長生成部16が音素境界位置に基づいて各音素の継続時間長を計算し、波形生成部17が音素継続時間長とピッチパタンとに基づいて、音声波形を生成するまでの処理は、図6に示すステップS26~ステップS27までの処理と同様である。
 以上のように、本実施形態によれば、有声性指標判定部20が各状態の有声性指標が適切か否かを判定し、不適切と判定した有声性指標を適切な値に変更する。そのため、第1の実施形態の効果に加え、各状態の有声性指標が適切な値に修正されることにより、境界の判定に誤りが発生することを防止できる。
 次に、本発明の最小構成の例を説明する。図12は、本発明による音声合成装置の最小構成の例を示すブロック図である。本発明による音声合成装置80は、統計的手法(例えば、MSD-HMM)によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標(例えば、韻律モデルから状態ごとに導出される情報)を用いて、その音素に隣接する他の音素との境界である音素境界位置を更新する音素境界更新手段81(例えば、音素境界移動方向決定部15)を備えている。そのため、統計的手法によりモデル化された場合の継続時間長よりも短い継続時間長で音素を表現できる。
 音素境界更新手段81は、音素を表現する各状態が有声状態(例えば、フラグ「H」を設定した状態)を示すか無声状態(例えば、フラグ「L」を設定した状態)を示すか(例えば、有声性判定情報)を特定し、隣接する音素の一方が無声音(例えば、UV種別における「U」)を示し他方の音素が有声音(例えば、UV種別における「V」)を示す場合、有声状態と無声状態との関係に基づいて予め定められた規則(例えば、図3に例示する対応関係)に応じて、音素境界位置の移動方向を決定してもよい。
 このとき、音素境界更新手段81は、有声性指標が予め定められた閾値を超える場合に音素を表現する状態を有声状態と特定し、有声性指標が予め定められた閾値以下の場合に音素を表現する状態を無声状態と特定してもよい。
 また、音素境界更新手段81は、隣接する状態間の有声性指標の差分(例えば、Δv)に基づいて、音素境界位置を更新してもよい。具体的には、音素境界更新手段81は、音素境界更新手段は、隣接する一方の状態の有声性指標と他方の状態の有声性指標との差分が予め定められた閾値を超えた場合、その一方の状態と他方の状態との間の位置を音素境界位置と決定してもよい。
 また、音声合成装置80は、更新された音素境界位置に基づいて音素の継続時間長を計算する音素継続長計算手段(例えば、音素継続時間長生成部16)を備えていてもよい。
 また、音素境界更新手段81は、状態の幅(例えば、フレーム長)に対応する長さの単位で音素境界位置を更新してもよい。
 また、音声合成装置80は、各状態の有声性指標が適切か否かを判定し、不適切と判定した有声性指標を適切な値に変更する有声性指標判定手段(例えば、有声性指標判定部20)を備えていてもよい。そのような構成により、各状態の有声性指標が適切な値に修正されるため、境界の判定に誤りが発生することを防止できる。
 また、有声性指標判定手段は、有声性指標に基づいて有声状態か無声状態かが判定された結果である有声性判定情報が1音素内において2回以上切り替わっている場合、または、対象とする音素の有声性判定情報が、音素の性質を示す情報として予め定められた情報である素片情報とは異なる情報を示している場合(例えば、素片音素情報と逆の有声状態または無声状態を示している場合)に、有声性指標が不適切であると判定してもよい。
 以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2011年7月11日に出願された日本特許出願2011-152849を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明は、統計的手法によって生成される音素継続時間長情報を用いる音声合成装置に好適に適用される。
 11 言語解析部
 12 状態継続長生成部
 13 ピッチパタン生成部
 14 有声性指標抽出部
 15 音素境界移動方向決定部
 16 音素継続時間長生成部
 17 波形生成部
 18 韻律モデル記憶部
 19 音声素片データベース記憶部
 20 有声性指標判定部

Claims (15)

  1.  統計的手法によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標を用いて、当該音素に隣接する他の音素との境界である音素境界位置を更新する音素境界更新手段を備えた
     ことを特徴とする音声合成装置。
  2.  音素境界更新手段は、音素を表現する各状態が有声状態を示すか無声状態を示すかを特定し、隣接する音素の一方が無声音を示し他方の音素が有声音を示す場合、前記有声状態と無声状態との関係に基づいて予め定められた規則に応じて、音素境界位置の移動方向を決定する
     請求項1記載の音声合成装置。
  3.  音素境界更新手段は、有声性指標が予め定められた閾値を超える場合に音素を表現する状態を有声状態と特定し、有声性指標が予め定められた閾値以下の場合に音素を表現する状態を無声状態と特定する
     請求項2記載の音声合成装置。
  4.  音素境界更新手段は、隣接する状態間の有声性指標の差分に基づいて、音素境界位置を更新する
     請求項1記載の音声合成装置。
  5.  音素境界更新手段は、隣接する一方の状態の有声性指標と他方の状態の有声性指標との差分が予め定められた閾値を超えた場合、当該一方の状態と他方の状態との間の位置を音素境界位置と決定する
     請求項4記載の音声合成装置。
  6.  更新された音素境界位置に基づいて音素の継続時間長を計算する音素継続長計算手段を備えた
     請求項1から請求項5のうちのいずれか1項に記載の音声合成装置。
  7.  音素境界更新手段は、状態の幅に対応する長さの単位で音素境界位置を更新する
     請求項1から請求項6のうちのいずれか1項に記載の音声合成装置。
  8.  各状態の有声性指標が適切か否かを判定し、不適切と判定した有声性指標を適切な値に変更する有声性指標判定手段を備えた
     請求項1から請求項7のうちのいずれか1項に記載の音声合成装置。
  9.  有声性指標判定手段は、有声性指標に基づいて有声状態か無声状態かが判定された結果である有声性判定情報が1音素内において2回以上切り替わっている場合、または、対象とする音素の前記有声性判定情報が、音素の性質を示す情報として予め定められた情報である素片情報とは異なる情報を示している場合に、有声性指標が不適切であると判定する
     請求項8記載の音声合成装置。
  10.  統計的手法によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標を用いて、当該音素に隣接する他の音素との境界である音素境界位置を更新する
     ことを特徴とする音声合成方法。
  11.  音素を表現する各状態が有声状態を示すか無声状態を示すかを特定し、隣接する音素の一方が無声音を示し他方の音素が有声音を示す場合、前記有声状態と無声状態との関係に基づいて予め定められた規則に応じて、音素境界位置の移動方向を決定する
     請求項10記載の音声合成方法。
  12.  隣接する状態間の有声性指標の差分に基づいて、音素境界位置を更新する
     請求項10記載の音声合成方法。
  13.  コンピュータに、
     統計的手法によりモデル化された音素を表現する各状態の有声らしさの度合いを示す指標である有声性指標を用いて、当該音素に隣接する他の音素との境界である音素境界位置を更新する音素境界更新処理
     を実行させるための音声合成プログラム。
  14.  コンピュータに、
     音素境界更新処理で、音素を表現する各状態が有声状態を示すか無声状態を示すかを特定させ、隣接する音素の一方が無声音を示し他方の音素が有声音を示す場合、前記有声状態と無声状態との関係に基づいて予め定められた規則に応じて、音素境界位置の移動方向を決定させる
     請求項13記載の音声合成プログラム。
  15.  コンピュータに、
     音素境界更新処理で、隣接する状態間の有声性指標の差分に基づいて、音素境界位置を更新させる
     請求項13記載の音声合成プログラム。
PCT/JP2012/003760 2011-07-11 2012-06-08 音声合成装置、音声合成方法および音声合成プログラム WO2013008384A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/131,409 US9520125B2 (en) 2011-07-11 2012-06-08 Speech synthesis device, speech synthesis method, and speech synthesis program
JP2013523777A JP5979146B2 (ja) 2011-07-11 2012-06-08 音声合成装置、音声合成方法および音声合成プログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-152849 2011-07-11
JP2011152849 2011-07-11

Publications (1)

Publication Number Publication Date
WO2013008384A1 true WO2013008384A1 (ja) 2013-01-17

Family

ID=47505695

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/003760 WO2013008384A1 (ja) 2011-07-11 2012-06-08 音声合成装置、音声合成方法および音声合成プログラム

Country Status (3)

Country Link
US (1) US9520125B2 (ja)
JP (1) JP5979146B2 (ja)
WO (1) WO2013008384A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017015821A (ja) * 2015-06-29 2017-01-19 日本電信電話株式会社 音声合成装置、音声合成方法、およびプログラム
CN107945786A (zh) * 2017-11-27 2018-04-20 北京百度网讯科技有限公司 语音合成方法和装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672811B2 (en) * 2012-11-29 2017-06-06 Sony Interactive Entertainment Inc. Combining auditory attention cues with phoneme posterior scores for phone/vowel/syllable boundary detection
CN107481715B (zh) * 2017-09-29 2020-12-08 百度在线网络技术(北京)有限公司 用于生成信息的方法和装置
CN112242132B (zh) * 2019-07-18 2024-06-14 阿里巴巴集团控股有限公司 语音合成中的数据标注方法、装置和系统
CN114360587A (zh) * 2021-12-27 2022-04-15 北京百度网讯科技有限公司 识别音频的方法、装置、设备、介质及产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169583A (ja) * 2000-12-05 2002-06-14 Hitachi Ulsi Systems Co Ltd 音声合成方法及び音声合成装置
JP2004341259A (ja) * 2003-05-15 2004-12-02 Matsushita Electric Ind Co Ltd 音声素片伸縮装置およびその方法
JP2007233181A (ja) * 2006-03-02 2007-09-13 Casio Comput Co Ltd 音声合成装置、音声合成方法、及び、プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6236964B1 (en) * 1990-02-01 2001-05-22 Canon Kabushiki Kaisha Speech recognition apparatus and method for matching inputted speech and a word generated from stored referenced phoneme data
EP1138038B1 (en) * 1998-11-13 2005-06-22 Lernout & Hauspie Speech Products N.V. Speech synthesis using concatenation of speech waveforms
KR100486735B1 (ko) * 2003-02-28 2005-05-03 삼성전자주식회사 최적구획 분류신경망 구성방법과 최적구획 분류신경망을이용한 자동 레이블링방법 및 장치
JP4551803B2 (ja) * 2005-03-29 2010-09-29 株式会社東芝 音声合成装置及びそのプログラム
CN101346758B (zh) * 2006-06-23 2011-07-27 松下电器产业株式会社 感情识别装置
US8155964B2 (en) * 2007-06-06 2012-04-10 Panasonic Corporation Voice quality edit device and voice quality edit method
JP5159279B2 (ja) * 2007-12-03 2013-03-06 株式会社東芝 音声処理装置及びそれを用いた音声合成装置。
JP5665780B2 (ja) * 2012-02-21 2015-02-04 株式会社東芝 音声合成装置、方法およびプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169583A (ja) * 2000-12-05 2002-06-14 Hitachi Ulsi Systems Co Ltd 音声合成方法及び音声合成装置
JP2004341259A (ja) * 2003-05-15 2004-12-02 Matsushita Electric Ind Co Ltd 音声素片伸縮装置およびその方法
JP2007233181A (ja) * 2006-03-02 2007-09-13 Casio Comput Co Ltd 音声合成装置、音声合成方法、及び、プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MIYAZAKI ET AL.: "A STUDY ON PITCH PATTERN GENERATION USING HMMS BASED ON MULTI-SPACE PROBABILITY DISTRIBUTIONS", TECHNICAL REPORT OF IEICE SP, vol. 98, no. 33, 24 April 1998 (1998-04-24), pages 27 - 34 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017015821A (ja) * 2015-06-29 2017-01-19 日本電信電話株式会社 音声合成装置、音声合成方法、およびプログラム
CN107945786A (zh) * 2017-11-27 2018-04-20 北京百度网讯科技有限公司 语音合成方法和装置

Also Published As

Publication number Publication date
JP5979146B2 (ja) 2016-08-24
JPWO2013008384A1 (ja) 2015-02-23
US20140149116A1 (en) 2014-05-29
US9520125B2 (en) 2016-12-13

Similar Documents

Publication Publication Date Title
US10529314B2 (en) Speech synthesizer, and speech synthesis method and computer program product utilizing multiple-acoustic feature parameters selection
JP5979146B2 (ja) 音声合成装置、音声合成方法および音声合成プログラム
US8175881B2 (en) Method and apparatus using fused formant parameters to generate synthesized speech
US10540956B2 (en) Training apparatus for speech synthesis, speech synthesis apparatus and training method for training apparatus
JP5085700B2 (ja) 音声合成装置、音声合成方法およびプログラム
US8315871B2 (en) Hidden Markov model based text to speech systems employing rope-jumping algorithm
JP3910628B2 (ja) 音声合成装置、音声合成方法およびプログラム
JP2005043666A (ja) 音声認識装置
JP2006084715A (ja) 素片セット作成方法および装置
JP6669081B2 (ja) 音声処理装置、音声処理方法、およびプログラム
JP5983604B2 (ja) 素片情報生成装置、音声合成装置、音声合成方法および音声合成プログラム
JP4533255B2 (ja) 音声合成装置、音声合成方法、音声合成プログラムおよびその記録媒体
JP5930738B2 (ja) 音声合成装置及び音声合成方法
JP5474713B2 (ja) 音声合成装置、音声合成方法および音声合成プログラム
JP5874639B2 (ja) 音声合成装置、音声合成方法及び音声合成プログラム
JP2012237925A (ja) 音声合成装置とその方法とプログラム
Ni et al. Quantitative and structural modeling of voice fundamental frequency contours of speech in Mandarin
US20120316881A1 (en) Speech synthesizer, speech synthesis method, and speech synthesis program
Özer F0 Modeling For Singing Voice Synthesizers with LSTM Recurrent Neural Networks
WO2014017024A1 (ja) 音声合成装置、音声合成方法、及び音声合成プログラム
JP4630038B2 (ja) 音声波形データベース構築方法、この方法を実施する装置およびプログラム
JPH1097289A (ja) 音声素片選択方法,音声合成装置,及び命令記憶媒体
Black et al. Using the Tilt Intonation Model: A Data-Driven Approach

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12810798

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013523777

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14131409

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12810798

Country of ref document: EP

Kind code of ref document: A1