KR102417806B1 - Voice synthesis apparatus which processes spacing on reading for sentences and the operating method thereof - Google Patents

Voice synthesis apparatus which processes spacing on reading for sentences and the operating method thereof Download PDF

Info

Publication number
KR102417806B1
KR102417806B1 KR1020200119646A KR20200119646A KR102417806B1 KR 102417806 B1 KR102417806 B1 KR 102417806B1 KR 1020200119646 A KR1020200119646 A KR 1020200119646A KR 20200119646 A KR20200119646 A KR 20200119646A KR 102417806 B1 KR102417806 B1 KR 102417806B1
Authority
KR
South Korea
Prior art keywords
word
words
sentence
pronunciation
silence
Prior art date
Application number
KR1020200119646A
Other languages
Korean (ko)
Other versions
KR20220037094A (en
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 KR1020200119646A priority Critical patent/KR102417806B1/en
Publication of KR20220037094A publication Critical patent/KR20220037094A/en
Application granted granted Critical
Publication of KR102417806B1 publication Critical patent/KR102417806B1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/93Discriminating between voiced and unvoiced parts of speech signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/025Phonemes, fenemes or fenones being the recognition units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/027Syllables being the recognition units

Abstract

문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치 및 그 동작 방법이 개시된다. 본 발명은 소정의 훈련 문장들로부터 획득된 음소별 평균 발음 소요 시간과 평균 묵음 지속 시간 및 어절별 묵음의 등장 비율을 기초로, 소정의 문장에 대한 음성 합성이 수행될 때, 상기 문장에 존재하는 어절들 중 묵음 구간을 갖는 것으로 예측되는 어절을 선택한 후 선택된 어절 후단에 묵음 구간을 삽입함으로써, 보다 자연스러운 합성 음성이 생성될 수 있도록 지원하는 기술에 대한 것이다.Disclosed are a speech synthesizing apparatus for performing spacing processing on sentences and an operating method thereof. According to the present invention, when speech synthesis is performed for a predetermined sentence, based on the average pronunciation required time for each phoneme, the average duration of silence, and the appearance ratio of silence for each word obtained from predetermined training sentences, the A technology for supporting a more natural synthetic voice to be generated by selecting a word predicted to have a silent section among words and inserting a silence section at the end of the selected word.

Description

문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치 및 그 동작 방법{VOICE SYNTHESIS APPARATUS WHICH PROCESSES SPACING ON READING FOR SENTENCES AND THE OPERATING METHOD THEREOF}Speech synthesizing apparatus for space-reading processing for sentences and operating method thereof

본 발명은 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치 및 그 동작 방법에 대한 것이다.The present invention relates to a speech synthesizing apparatus for performing space-reading processing on sentences and to a method of operating the same.

최근, 텍스트를 음성으로 변환하는 텍스트 음성 변환(Text to Speech: TTS) 기술이 발전함에 따라, 이러한 기술을 이용한 다양한 음성 처리 기반 서비스가 출시되고 있다.Recently, as text-to-speech (TTS) technology for converting text into speech develops, various speech processing-based services using this technology have been released.

특히, 텍스트 음성 변환 기술은 텍스트를 음성으로 변환하는 음성 합성 기술이기 때문에, 시각 정보 없이 음성만으로 정보를 전달해야 하는 음성 자동 응답 분야나 시각 장애인들을 위한 보조 도구 분야에서 활용 가치가 아주 높다.In particular, since the text-to-speech technology is a speech synthesis technology that converts text into speech, it has a very high application value in the field of automatic speech response where information must be delivered only by voice without visual information or in the field of assistive tools for the visually impaired.

일반적으로 음성 합성 기술은 음성 데이터로부터 음성 파형을 파라미터로 모델링한 다음, 그 음향 모델로부터 원하는 텍스트에 해당하는 음성 파형을 합성하는 파라미터 방식 음성 합성(parametric speech synthesis) 기술과 발성 가능한 대규모의 음성 파형들을 수집하여 코퍼스 형태로 구축한 다음에 합성하고자 하는 텍스트에 해당하면서 가장 자연스러운 발성이 되도록 작은 음편(음성파형조각)들을 그 코퍼스로부터 선택하고, 이들을 서로 접합하는 음편 선택 방식 음성 합성(unit selection speech synthesis) 기술 또는 이 두 방식을 혼합한 (hybrid speech synthesis) 기술로 나누어진다. In general, speech synthesis technology models a speech waveform from speech data as a parameter, and then synthesizes a speech waveform corresponding to a desired text from the acoustic model. Unit selection speech synthesis, in which small pieces (speech waveform fragments) are selected from the corpus to correspond to the text to be synthesized and to be uttered most naturally It is divided into technology or a combination of these two methods (hybrid speech synthesis).

어느 방식이든지 합성된 음성 파형이 자연스럽고 명료한 고품질의 음성이 되기 위해서는 인간이 발성하는 음성에서 나타나는 여러 문맥에 따른 음운현상들로부터 발생되는 음성 단위들을 음향 모델로 잘 모델링하거나, 코퍼스 내의 음편으로 효과적으로 포함시켜야 한다. 이와 더불어 한글 음성에는 어절이나 구절 사이에서 빈번하게 띄어읽기가 나타나며, 이러한 띄어읽기를 통해 음성이 내포하는 언어적인 의미를 보다 잘 전달하게 될 뿐 아니라, 청취적인 측면에서 음성 자체의 자연스러움도 개선된다. 여기서 음성발화에서의 띄어읽기는, 실제 물리적인 의미로는 그 구간에서 파형의 크기가 0 이거나 귀로 들리지 않을 정도로 작은 값으로 구성된 묵음(short pause)으로 해석된다.Either way, in order for the synthesized speech waveform to become natural and clear high-quality speech, the speech units generated from phonological phenomena according to various contexts appearing in human voice must be well modeled as an acoustic model or effectively used as a sound piece within the corpus. should be included In addition, spacing occurs frequently between words and phrases in Korean voices, and through this spacing, the linguistic meaning of the voice is better conveyed, and the naturalness of the voice itself is improved in terms of listening. . Here, spacing in speech is interpreted as a short pause in which the amplitude of the waveform is 0 or small enough to be inaudible in the actual physical meaning.

이러한 이유에서 음성 합성기로부터 생성된 합성 음성에서 띄어읽기를 의미하는 묵음을 문맥에 따라 적절하게 추가하면, 인간이 발성한 것처럼 의미 전달이 보다 명료해지고 자연스럽게 될 수 있다.For this reason, if silence, which means spacing, is appropriately added according to the context in the synthesized speech generated by the speech synthesizer, the meaning can be transmitted more clearly and naturally as if uttered by a human.

따라서, 소정의 문장을 음성으로 합성하는 과정에서 합성 음성의 적절한 위치에 묵음을 추가함으로써, 합성 음성이 보다 자연스럽게 생성될 수 있도록 지원하는 음성 합성 기술에 대한 연구가 필요하다.Accordingly, there is a need for research on a speech synthesis technology that supports a more natural synthesis of a synthesized voice by adding silence to an appropriate position of the synthesized voice in the process of synthesizing a predetermined sentence into a voice.

본 발명은 소정의 훈련 문장들로부터 획득된 음소별 평균 발음 소요 시간과 평균 묵음 간격 시간 및 어절별 묵음의 등장 비율을 기초로, 소정의 문장에 대한 음성 합성이 수행될 때, 상기 문장에 존재하는 어절들 중 묵음 구간을 갖는 것으로 예측되는 어절을 선택한 후 선택된 어절 후단에 묵음 구간을 삽입함으로써, 보다 자연스러운 합성 음성이 생성될 수 있도록 지원하고자 한다.According to the present invention, when speech synthesis is performed for a predetermined sentence, based on the average pronunciation required time for each phoneme, the average silence interval time and the appearance ratio of silence for each word obtained from predetermined training sentences, the It is intended to support the generation of a more natural synthetic voice by selecting a word predicted to have a silence section among words and inserting a silence section at the end of the selected word.

본 발명의 일실시예에 따른 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치는 사전 설정된 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 훈련 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 평균 발음 소요 시간에 대한 측정값이 저장되어 있는 발음 소요 시간 정보 저장부, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 음성이 존재하지 않는 묵음 구간 간의 평균 간격 시간에 대한 측정값이 저장되어 있는 묵음 시간 정보 저장부, 상기 복수의 훈련 문장들에 포함된 복수의 어절들과, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 어절들 각각이 발음된 직후에 묵음 구간이 등장한 비율에 대한 측정값이 서로 대응되어 저장되어 있는 비율 저장부, 사용자에 의해 제1 문장에 대한 텍스트 음성 변환(Text to Speech: TTS) 명령이 인가되면, 상기 제1 문장으로부터 상기 제1 문장을 구성하는 복수의 제1 음소들과 상기 제1 문장을 구성하는 복수의 제1 어절들을 추출하는 정보 추출부, 상기 발음 소요 시간 정보 저장부를 참조하여 상기 복수의 제1 음소들 각각에 대응되는 평균 발음 소요 시간에 대한 측정값을 확인한 후 상기 복수의 제1 어절들 각각에 대해, 각 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산하여 합산 값을 생성함으로써, 상기 복수의 제1 어절들 각각에 대해서 생성된 합산 값을 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간으로 지정하는 지정부, 상기 묵음 시간 정보 저장부를 참조하여 상기 평균 간격 시간에 대한 측정값을 확인하고, 상기 비율 저장부를 참조하여 상기 복수의 제1 어절들 각각에 대응되는 비율에 대한 측정값을 확인하며, 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간을 기초로 상기 복수의 제1 어절들 간의 발음 지속 시간을 연산한 후 상기 평균 간격 시간과 상기 복수의 제1 어절들 각각에 대응되는 비율 및 상기 복수의 제1 어절들 간의 발음 지속 시간을 기초로 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 적어도 하나의 제2 어절을 선택하는 어절 선택부, 상기 적어도 하나의 제2 어절이 선택되면, 상기 제1 문장에서 상기 적어도 하나의 제2 어절이 끝나는 지점에 사전 설정된 묵음 기호를 삽입하는 묵음 기호 삽입부 및 사전 설정된 음성 합성 모델을 기초로 상기 제1 문장에 대한 합성 음성을 생성하되, 상기 제1 문장에서 상기 묵음 기호가 삽입된 지점에 대해 사전 설정된 묵음 시간만큼에 대응되는 묵음 구간이 포함된 상기 합성 음성을 생성하는 음성 합성부를 포함한다.In the speech synthesizing apparatus for performing spacing processing on a sentence according to an embodiment of the present invention, when each of a plurality of preset training sentences is pronounced as a voice, each of a plurality of phonemes included in the plurality of training sentences A pronunciation required time information storage unit in which a measurement value of the average pronunciation required to be pronounced is stored; A silence time information storage unit in which a measurement value for When a text-to-speech (TTS) command for the first sentence is applied by the user, the ratio storage unit in which the measured values for the ratio at which the silent section appears immediately after being matched with each other are stored, the first sentence An information extractor for extracting a plurality of first phonemes constituting the first sentence and a plurality of first words constituting the first sentence from the After checking the measurement value of the average pronunciation required time corresponding to each word, for each of the plurality of first words, the measurement values for the average pronunciation time of the phonemes included in each word are added to generate a sum value, Measurement of the average interval time with reference to a designation unit for designating the sum value generated for each of the plurality of first words as a word pronunciation time corresponding to each of the plurality of first words, and the silence time information storage unit a value is checked, and a measurement value of a ratio corresponding to each of the plurality of first words is checked with reference to the ratio storage unit, and the plurality of words are pronounced based on a word pronunciation time corresponding to each of the plurality of first words. After calculating the pronunciation duration between the first words of A word selector that selects at least one second word predicted to have a silent section in the first sentence based on time. When the at least one second word is selected, the at least one second word in the first sentence 2 Generates a synthesized voice for the first sentence based on a silence symbol insertion unit that inserts a preset silence symbol at the end of a word and a preset speech synthesis model, wherein the silence symbol is inserted in the first sentence and a voice synthesizer for generating the synthesized voice including a silence section corresponding to the preset silence time.

또한, 본 발명의 일실시예에 따른 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치의 동작 방법은 사전 설정된 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 훈련 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 평균 발음 소요 시간에 대한 측정값이 저장되어 있는 발음 소요 시간 정보 저장부를 유지하는 단계, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 음성이 존재하지 않는 묵음 구간 간의 평균 간격 시간에 대한 측정값이 저장되어 있는 묵음 시간 정보 저장부를 유지하는 단계, 상기 복수의 훈련 문장들에 포함된 복수의 어절들과, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 어절들 각각이 발음된 직후에 묵음 구간이 등장한 비율에 대한 측정값이 서로 대응되어 저장되어 있는 비율 저장부를 유지하는 단계, 사용자에 의해 제1 문장에 대한 텍스트 음성 변환 명령이 인가되면, 상기 제1 문장으로부터 상기 제1 문장을 구성하는 복수의 제1 음소들과 상기 제1 문장을 구성하는 복수의 제1 어절들을 추출하는 단계, 상기 발음 소요 시간 정보 저장부를 참조하여 상기 복수의 제1 음소들 각각에 대응되는 평균 발음 소요 시간에 대한 측정값을 확인한 후 상기 복수의 제1 어절들 각각에 대해, 각 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산하여 합산 값을 생성함으로써, 상기 복수의 제1 어절들 각각에 대해서 생성된 합산 값을 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간으로 지정하는 단계, 상기 묵음 시간 정보 저장부를 참조하여 상기 평균 간격 시간에 대한 측정값을 확인하고, 상기 비율 저장부를 참조하여 상기 복수의 제1 어절들 각각에 대응되는 비율에 대한 측정값을 확인하며, 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간을 기초로 상기 복수의 제1 어절들 간의 발음 지속 시간을 연산한 후 상기 평균 간격 시간과 상기 복수의 제1 어절들 각각에 대응되는 비율 및 상기 복수의 제1 어절들 간의 발음 지속 시간을 기초로 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 적어도 하나의 제2 어절을 선택하는 단계, 상기 적어도 하나의 제2 어절이 선택되면, 상기 제1 문장에서 상기 적어도 하나의 제2 어절이 끝나는 지점에 사전 설정된 묵음 기호를 삽입하는 단계 및 사전 설정된 음성 합성 모델을 기초로 상기 제1 문장에 대한 합성 음성을 생성하되, 상기 제1 문장에서 상기 묵음 기호가 삽입된 지점에 대해 사전 설정된 묵음 시간만큼에 대응되는 묵음 구간이 포함된 상기 합성 음성을 생성하는 단계를 포함한다.In addition, in the method of operating a speech synthesis apparatus for performing spacing processing on a sentence according to an embodiment of the present invention, when each of a plurality of preset training sentences is pronounced by voice, the maintaining a pronunciation duration information storage unit in which a measurement value of an average pronunciation duration required for each of a plurality of phonemes to be pronounced is stored; Maintaining a silence time information storage unit in which a measurement value for an average interval time between non-silent sections is stored, a plurality of words included in the plurality of training sentences, and each of the plurality of training sentences is pronounced by voice When each of the plurality of words is pronounced, the step of maintaining the ratio storage unit in which the measured values for the ratio of the silent section appear in correspondence with each other are stored, the text-to-speech command for the first sentence by the user If approved, extracting a plurality of first phonemes constituting the first sentence and a plurality of first words constituting the first sentence from the first sentence, referring to the pronunciation required time information storage unit After checking the measurement value of the average pronunciation time corresponding to each of the first phonemes of designating the summation value generated for each of the plurality of first words by generating a value as a word pronunciation time corresponding to each of the plurality of first words; the average interval with reference to the silence time information storage unit Check the measured value for time, check the measured value for the ratio corresponding to each of the plurality of first words with reference to the ratio storage unit, and determine the word pronunciation time corresponding to each of the plurality of first words After calculating the pronunciation duration between the plurality of first words based on the average interval time, the ratio corresponding to each of the plurality of first words and the plurality of first words selecting at least one second word predicted to have a silence section in the first sentence based on a pronunciation duration between the words; if the at least one second word is selected, the at least one second word in the first sentence Inserting a preset silence symbol at the end of one second word and generating a synthesized voice for the first sentence based on a preset speech synthesis model, wherein the silence symbol is inserted in the first sentence and generating the synthesized voice including a silence section corresponding to a preset silence time.

본 발명은 소정의 훈련 문장들로부터 획득된 음소별 평균 발음 소요 시간과 평균 묵음 간격 시간 및 어절별 묵음의 등장 비율을 기초로, 소정의 문장에 대한 음성 합성이 수행될 때, 상기 문장에 존재하는 어절들 중 묵음 구간을 갖는 것으로 예측되는 어절을 선택한 후 선택된 어절 후단에 묵음 구간을 삽입함으로써, 보다 자연스러운 합성 음성이 생성될 수 있도록 지원할 수 있다.According to the present invention, when speech synthesis is performed for a predetermined sentence, based on the average pronunciation required time for each phoneme, the average silence interval time and the appearance ratio of silence for each word obtained from predetermined training sentences, the By selecting a word predicted to have a silence section among words and inserting a silence section at the end of the selected word, it is possible to support the generation of a more natural synthesized voice.

도 1은 본 발명의 일실시예에 따른 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치의 동작 방법을 도시한 순서도이다.
1 is a diagram showing the structure of a speech synthesis apparatus for performing space-reading processing on a sentence according to an embodiment of the present invention.
2 is a flowchart illustrating a method of operating a speech synthesis apparatus for performing space reading processing on a sentence according to an embodiment of the present invention.

이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. These descriptions are not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. While describing each drawing, like reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, refer to those of ordinary skill in the art to which the present invention belongs. It has the same meaning as is commonly understood by those who have it.

본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.In this document, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. In addition, in various embodiments of the present invention, each of the components, functional blocks or means may be composed of one or more sub-components, and the electrical, electronic, and mechanical functions performed by each component are electronic. A circuit, an integrated circuit, an ASIC (Application Specific Integrated Circuit), etc. may be implemented as various well-known devices or mechanical elements, and may be implemented separately or two or more may be integrated into one.

한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.On the other hand, the blocks in the accompanying block diagram or steps in the flowchart are computer program instructions that are loaded in a processor or memory of equipment capable of data processing, such as a general-purpose computer, a special-purpose computer, a portable notebook computer, and a network computer, and perform specified functions. can be interpreted as meaning Since these computer program instructions may be stored in a memory provided in a computer device or in a memory readable by a computer, the functions described in the blocks of the block diagrams or the steps of the flowcharts are produced as articles of manufacture containing instruction means for performing the same. it might be In addition, each block or each step may represent a module, segment, or portion of code comprising one or more executable instructions for executing the specified logical function(s). It should also be noted that, in some alternative embodiments, it is also possible for the functions recited in blocks or steps to be executed out of the prescribed order. For example, two blocks or steps shown one after another may be performed substantially simultaneously or in the reverse order, and in some cases, some blocks or steps may be omitted.

도 1은 본 발명의 일실시예에 따른 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치의 구조를 도시한 도면이다. 1 is a diagram showing the structure of a speech synthesis apparatus for performing space-reading processing on a sentence according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 음성 합성 장치(110)는 발음 소요 시간 정보 저장부(111), 묵음 시간 정보 저장부(112), 비율 저장부(113), 정보 추출부(114), 지정부(115), 어절 선택부(116), 묵음 기호 삽입부(117) 및 음성 합성부(118)를 포함한다.1 , the speech synthesis apparatus 110 according to the present invention includes a pronunciation required time information storage unit 111 , a silence time information storage unit 112 , a ratio storage unit 113 , an information extraction unit 114 , It includes a designation unit 115 , a word selection unit 116 , a silence inserting unit 117 , and a voice synthesis unit 118 .

발음 소요 시간 정보 저장부(111)에는 사전 설정된 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 훈련 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 평균 발음 소요 시간에 대한 측정값이 저장되어 있다.In the pronunciation required time information storage unit 111, when each of a plurality of preset training sentences is pronounced by voice, the average pronunciation duration required for each of the plurality of phonemes included in the plurality of training sentences is pronounced. The measured values are saved.

예컨대, 상기 복수의 훈련 문장들이 '1000개'의 문장들이라고 하는 경우, 발음 소요 시간 정보 저장부(111)에는 '1000개'의 문장들을 실제로 음성으로 발음하였을 때, '1000개'의 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 평균 발음 소요 시간에 대한 측정값이 저장되어 있을 수 있다.For example, when it is said that the plurality of training sentences are '1000 sentences', the pronunciation required time information storage unit 111 contains '1000 sentences' when the '1000 sentences' are actually pronounced by voice. A measurement value of an average pronunciation time required to pronounce each of a plurality of phonemes included in .

관련해서, '1000개'의 문장들 중 '오늘은 날씨가 참 좋아요'라는 문장이 있다고 하는 경우, '오늘은 날씨가 참 좋아요'라는 문장에 포함된 음소는 'ㅗㄴㅡㄹㅡㄴㄴㅏㄹㅆㅣㄱㅏㅊㅏㅁㅈㅗㅎㅏㅛ'가 될 수 있는데, '오늘은 날씨가 참 좋아요'라는 문장이 실제로 음성으로 발음되는 경우, 각 음소가 '오늘은 날씨가 참 좋아요'라는 문장 내에서 발음되는 시간은 '0.500 0.615 0.710 0.754 0.925 1.020 1.356 1.427 1.638 1.996 2.520 2.723 2.856 3.001 3.800 3.873 3.984 4.102 4.310 4.423 4.501'[msec]가 될 수 있다. 이때, 관리자는 '오늘은 날씨가 참 좋아요'라는 문장 내의 각 음소가 발음되는 시간을 기초로 각 음소가 발음되는데 소요되는 지속시간을 연산할 수 있다. 예컨대, 두 번째로 등장하는 음소인 'ㄴ'이 발음되는데 소요되는 시간은 상기 문장 내에서 'ㅡ'가 발음되는 시간인 '0.710msec'와 'ㄴ'이 발음되는 시간인 '0.615msec' 간의 차이인 '0.098msec'로 연산될 수 있다.In relation to this, if there is a sentence 'the weather is very nice today' among '1000 sentences', the phoneme included in the sentence 'the weather is very nice today' is 'ㅗㄴㅡㄹㅡㄴㄹㅆㅣ' It could be 'Ahhhhhhhh', and if the sentence 'The weather is nice today' is actually pronounced as a voice, the time each phoneme is pronounced within the sentence 'The weather is great today' is '0.500 0.615 0.710 0.754 0.925 1.020 1.356 1.427 1.638 1.996 2.520 2.723 2.856 3.001 3.800 3.873 3.984 4.102 4.310 4.423 4.501'[msec]. In this case, the manager may calculate the duration required for each phoneme to be pronounced based on the time at which each phoneme in the sentence 'The weather is very nice today'. For example, the time it takes to pronounce the second phoneme 'ㄴ' is the difference between '0.710 msec', which is the time for 'ㅡ', and '0.615 msec', which is the time for 'ㄴ', is pronounced in the sentence. It can be calculated as '0.098msec'.

이러한 방식으로, 관리자는 '1000개' 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 발음 소요 시간을 모두 연산한 후 각 음소별로 발음 소요 시간의 평균을 연산함으로써, 상기 복수의 음소들 각각의 평균 발음 소요 시간을 측정하여 발음 소요 시간 정보 저장부(111) 상에 저장해 둘 수 있다.In this way, the manager calculates the total pronunciation time required to pronounce each of the plurality of phonemes included in the '1000' sentences and calculates the average of the pronunciation required time for each phoneme, so that the plurality of phonemes are The average pronunciation required time may be measured and stored in the pronunciation required time information storage unit 111 .

지금까지 설명한 사항을 종합하면, 발음 소요 시간 정보 저장부(111)에는 하기의 표 1과 같이 정보가 저장되어 있을 수 있다.Summarizing the matters described so far, the pronunciation required time information storage unit 111 may store information as shown in Table 1 below.

복수의 음소들multiple phonemes 평균 발음 소요 시간Average pronunciation time go 0.078msec0.078msec you 0.092msec0.092msec do 0.052msec0.052msec ...... ......

묵음 시간 정보 저장부(112)에는 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 음성이 존재하지 않는 묵음 구간 간의 평균 간격 시간에 대한 측정값이 저장되어 있다.In the silence time information storage unit 112 , when each of the plurality of training sentences is pronounced by voice, a measurement value of an average interval time between silence sections in which no voice is present is stored.

예컨대, 앞서 언급한 예와 같이, '1000개'의 훈련 문장들이 있다고 하고, 그 중 '오늘은 날씨가 참 좋아요'라는 문장이 있다고 하는 경우, '오늘은 날씨가 참 좋아요'라는 문장은 음성으로 발음되었을 때, '날씨가', '참', '좋아요'라는 어절 간에 잠깐의 묵음이 존재할 수 있다. 이때, 관리자는 '오늘은 날씨가 참 좋아요'라는 문장에서 존재하는 2개의 묵음 구간 간의 간격 시간을 측정할 수 있고, 이러한 방식으로, 관리자는 '1000개'의 훈련 문장들 각각에 존재하는 묵음 구간 간의 간격 시간을 측정할 수 있다. 그러고 나서, 관리자는 '1000개의 훈련 문장들 각각에 존재하는 묵음 구간 간의 간격 시간의 전체 평균인 상기 평균 간격 시간을 측정한 후 이에 대한 측정값을 묵음 시간 정보 저장부(112)에 저장해 둘 수 있다.For example, as in the above-mentioned example, if there are '1000' training sentences, and among them there is a sentence 'The weather is very nice today', the sentence 'The weather is very nice today' is voiced. When pronounced, there may be a brief silence between the words 'weather', 'true', and 'like'. In this case, the manager can measure the interval time between two silence sections existing in the sentence 'The weather is really nice today', and in this way, the manager can measure the silence section existing in each of the '1000' training sentences. Interval time can be measured. Then, the administrator can store the measured value in the silence time information storage unit 112 after measuring the average interval time, which is the overall average of the interval time between silence sections in each of the 1000 training sentences. .

즉, 묵음 시간 정보 저장부(112)에 저장된 상기 평균 간격 시간은 복수의 훈련 문장들이 음성으로 발음되었을 때, 상기 복수의 훈련 문장들에서 등장하는 묵음 구간 간의 간격 시간에 대한 전체 평균 값이다.That is, the average interval time stored in the silence time information storage unit 112 is an overall average value of the interval time between silence sections appearing in the plurality of training sentences when a plurality of training sentences are pronounced by voice.

비율 저장부(113)에는 상기 복수의 훈련 문장들에 포함된 복수의 어절들과, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 어절들 각각이 발음된 직후에 묵음 구간이 등장한 비율에 대한 측정값이 서로 대응되어 저장되어 있다.The ratio storage unit 113 includes a plurality of words included in the plurality of training sentences, and when each of the plurality of training sentences is pronounced by voice, a silence section is stored immediately after each of the plurality of words is pronounced. Measured values for the appeared ratios are stored in correspondence with each other.

예컨대, 앞서 언급한 예와 같이, '1000개'의 훈련 문장들이 있다고 하고, 그 중 '오늘은 날씨가 참 좋아요'라는 문장이 있다고 하는 경우, '오늘은 날씨가 참 좋아요'라는 문장은 '오늘은', '날씨가', '참', '좋아요'라고 하는 어절들로 구성될 수 있는데, 이때, '오늘은 날씨가 참 좋아요'라는 문장에서는 앞서 언급한 바와 같이, '날씨가', '참', '좋아요'라는 어절 간에 잠깐의 묵음이 존재할 수 있다. 따라서, '오늘은 날씨가 참 좋아요'라는 문장에서는 '날씨가'라는 어절 뒤에 묵음 구간이 등장하고, '참'이라는 어절 뒤에 묵음 구간이 등장하게 된다. 이때, 관리자는 '오늘은 날씨가 참 좋아요'라는 문장으로부터 '날씨가'라는 어절에 대해서 묵음 구간이 '1회' 등장하고, '참'이라는 어절에 대해서 묵음 구간이 '1회' 등장하는 것으로 카운트할 수 있다.For example, as in the above example, if there are '1000' training sentences, and among them there is a sentence 'The weather is very good today', the sentence 'The weather is very nice today' is 'today'. It can be composed of words such as ', 'weather', 'true', and 'good'. There may be a brief silence between the words 'true' and 'like'. Therefore, in the sentence 'the weather is really nice today', a silent section appears after the word 'weather' and a silent section appears after the word 'true'. At this time, the manager said that from the sentence 'The weather is really nice today', the silence section appears '1 time' for the word 'weather' and the silence section appears '1 time' for the word 'true'. can count

이러한 방식으로, 관리자는 '1000개'의 훈련 문장들로부터 '1000개'의 훈련 문장들에 포함된 복수의 어절들을 리스트업한 후 '1000개'의 훈련 문장들에서 각 어절이 등장하는 횟수를 카운트하고, '1000개'의 훈련 문장들에서 각 어절의 뒤에 묵음 구간이 등장한 횟수를 카운트함으로써, '1000개'의 훈련 문장들에서 상기 복수의 어절들 각각이 발음된 직후에 묵음 구간이 등장한 비율을 산출하여 비율 저장부(113) 상에 저장해 둘 수 있다.In this way, the manager lists up a plurality of words included in the '1000' training sentences from the '1000' training sentences and counts the number of times each word appears in the '1000' training sentences. By counting and counting the number of times a silent section appears after each word in '1000' training sentences, the ratio of the silent section appearing immediately after each of the plurality of words in '1000' training sentences is pronounced can be calculated and stored in the ratio storage unit 113 .

지금까지 설명한 사항을 종합하면, 비율 저장부(113)에는 하기의 표 2와 같이 정보가 저장되어 있을 수 있다.Summarizing the matters described so far, information may be stored in the ratio storage unit 113 as shown in Table 2 below.

복수의 어절들multiple words 비율ratio 오늘은Today is 10%10% 날씨가The weather 23%23% Oh yeah 85%85% ...... ......

이렇게, 발음 소요 시간 저장부(111), 묵음 시간 정보 저장부(112) 및 비율 저장부(113) 상에 상기 복수의 훈련 문장들을 기초로 측정된 소정의 정보가 저장되어 있는 상황에서, 사용자에 의해 제1 문장에 대한 텍스트 음성 변환(Text to Speech: TTS) 명령이 인가되면, 정보 추출부(114)는 상기 제1 문장으로부터 자소-음소 변환을 수행하여 상기 제1 문장을 구성하는 복수의 제1 음소들과 상기 제1 문장을 구성하는 복수의 제1 어절들을 추출한다.In this way, in a situation in which predetermined information measured based on the plurality of training sentences is stored in the pronunciation required time storage unit 111 , the silence time information storage unit 112 , and the ratio storage unit 113 , the user When a text-to-speech (TTS) command for the first sentence is applied by the One phoneme and a plurality of first words constituting the first sentence are extracted.

예컨대, 상기 제1 문장이 '날씨가 참 좋습니다'라는 문장이라고 하는 경우, 정보 추출부(114)는 상기 제1 문장으로부터 'ㄴㅏㄹㅆㅣㄱㅏㅊㅏㅁㅈㅗㅎㅅㅡㅂㄴㅣㄷㅏ'라고 하는 복수의 제1 음소들과 '날씨가', '참', '좋습니다'라고 하는 복수의 제1 어절들을 추출할 수 있다.For example, if the first sentence is a sentence 'the weather is very nice', the information extracting unit 114 may include a plurality of first sentences 'ㄴ' from the first sentence. It is possible to extract phonemes and a plurality of first words such as 'weather', 'true', and 'good'.

지정부(115)는 발음 소요 시간 정보 저장부(111)를 참조하여 상기 복수의 제1 음소들 각각에 대응되는 평균 발음 소요 시간에 대한 측정값을 확인한 후 상기 복수의 제1 어절들 각각에 대해, 각 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산하여 합산 값을 생성함으로써, 상기 복수의 제1 어절들 각각에 대해서 생성된 합산 값을 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간으로 지정한다.The designation unit 115 refers to the pronunciation required time information storage unit 111 to check the measurement value of the average pronunciation required time corresponding to each of the plurality of first phonemes, and then applies the , by adding up the measurement values for the average pronunciation time of phonemes included in each word to generate a sum value, corresponding to the sum value generated for each of the plurality of first words to each of the plurality of first words It is designated as the pronunciation time of the word to be used.

관련해서, 앞서 언급한 예와 같이, 상기 복수의 제1 음소들이 'ㄴㅏㄹㅆㅣㄱㅏㅊㅏㅁㅈㅗㅎㅅㅡㅂㄴㅣㄷㅏ'이고, 상기 복수의 제1 어절들이 '날씨가', '참', '좋습니다'라고 하는 경우, 지정부(115)는 발음 소요 시간 정보 저장부(111)를 참조하여 상기 복수의 제1 음소들인 'ㄴㅏㄹㅆㅣㄱㅏㅊㅏㅁㅈㅗㅎㅅㅡㅂㄴㅣㄷㅏ' 각각의 평균 발음 소요 시간에 대한 측정값을 확인한 후 '날씨가'라는 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산함으로써, '날씨가'라는 어절에 대응되는 어절 발음 시간을 지정할 수 있고, '참'이라는 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산함으로써, '참'이라는 어절에 대응되는 어절 발음 시간을 지정할 수 있으며, '좋습니다'라는 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산함으로써, '좋습니다'라는 어절에 대응되는 어절 발음 시간을 지정할 수 있다.In relation to this, as in the above-mentioned example, the first phonemes of the plurality are 'ㄴㅆㅣahahahahahahaha,' and the first words of the plurality are 'weather', 'true', 'good'. ', the designation unit 115 refers to the pronunciation required time information storage unit 111 to determine the average pronunciation time of each of the plurality of first phonemes, 'ネㅆㅣahahahahahahaha'. After checking the measurement value for 'weather', by adding up the measured values for the average pronunciation time of the phonemes included in the word 'weather', it is possible to designate the pronunciation time of the word corresponding to the word 'weather' and 'true'. By adding up the measurement values for the average pronunciation time of phonemes included in the word word, it is possible to designate the word pronunciation time corresponding to the word ‘true’, and the average pronunciation time of the phonemes included in the word ‘good’ By summing the measured values, it is possible to designate the pronunciation time of the word corresponding to the word 'good'.

어절 선택부(116)는 묵음 시간 정보 저장부(112)를 참조하여 상기 평균 간격 시간에 대한 측정값을 확인하고, 비율 저장부(113)를 참조하여 상기 복수의 제1 어절들 각각에 대응되는 비율에 대한 측정값을 확인하며, 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간을 기초로 상기 복수의 제1 어절들 간의 발음 지속 시간을 연산한 후 상기 평균 간격 시간과 상기 복수의 제1 어절들 각각에 대응되는 비율 및 상기 복수의 제1 어절들 간의 발음 지속 시간을 기초로 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 적어도 하나의 제2 어절을 선택한다.The word selection unit 116 refers to the silence time information storage unit 112 to confirm the measurement value of the average interval time, and refers to the ratio storage unit 113 to determine the value corresponding to each of the plurality of first words. A measurement value of the ratio is checked, and a pronunciation duration between the plurality of first words is calculated based on a word pronunciation time corresponding to each of the plurality of first words, and then the average interval time and the plurality of first words are calculated. At least one second word predicted to have a silent section in the first sentence is selected based on a ratio corresponding to each of the first words and a pronunciation duration between the plurality of first words.

이때, 본 발명의 일실시예에 따르면, 어절 선택부(116)는 하기의 표 3으로 나타낸 바와 같은 (a) 내지 (e) 과정을 반복 수행함으로써, (d) 과정을 통해서 하나씩 선택되는 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 상기 적어도 하나의 제2 어절로 선택할 수 있다.At this time, according to an embodiment of the present invention, the word selector 116 repeats steps (a) to (e) as shown in Table 3 below, thereby selecting the words selected one by one through the process (d). The at least one second word that is predicted to have a silence section in the first sentence may be selected.

(a) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 첫 번째인 어절을 기준 어절로 결정
(b) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 상기 기준 어절 이후인 나머지 어절들을 확인
(c) 상기 기준 어절에 대응되는 어절 발음 시간을 상기 기준 어절에 대응되는 발음 지속 시간으로 지정하고, 상기 나머지 어절들 각각에 대해, 상기 제1 문장에서 상기 기준 어절로부터 상기 나머지 어절들 각각까지의 어절 발음 시간의 누적 합계를 연산한 후, 상기 나머지 어절들 각각에 대해서 연산된 누적 합계를 상기 나머지 어절들 각각에 대응되는 발음 지속 시간으로 지정
(d) 상기 기준 어절과 상기 나머지 어절들 각각의 발음 지속 시간이 상기 평균 간격 시간에 근접한지 여부 및 상기 기준 어절과 상기 나머지 어절들 각각에 대응되는 비율의 크기에 기초하여, 상기 기준 어절과 상기 나머지 어절들 중 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어느 하나의 어절을 선택
(e) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 상기 (d) 과정에서 선택된 어절의 바로 다음인 어절이 상기 (a) 과정에서의 상기 기준 어절로 결정되도록 처리
(a) determining a word having a first position in the first sentence among the plurality of first words as a reference word
(b) checking the remaining words after the reference word in the first sentence among the plurality of first words
(c) designating a word pronunciation time corresponding to the reference word as a pronunciation duration corresponding to the reference word, and for each of the remaining words, from the reference word to each of the remaining words in the first sentence After calculating the cumulative sum of word pronunciation time, the cumulative sum calculated for each of the remaining words is designated as the pronunciation duration corresponding to each of the remaining words
(d) based on whether the pronunciation duration of each of the reference word and the remaining words is close to the average interval time and the magnitude of the ratio corresponding to each of the reference word and the remaining words, the reference word and the Select any one word predicted to have a silent section in the first sentence among the remaining words
(e) processing so that, among the plurality of first words, a word whose position in the first sentence is immediately following the word selected in step (d) is determined as the reference word in step (a)

이때, 본 발명의 일실시예에 따르면, 어절 선택부(116)는 상기 (d) 과정에서 상기 기준 어절과 상기 나머지 어절들 각각에 대해 하기의 수학식 1의 연산에 따른 연산 값을 산출한 후 상기 기준 어절과 상기 나머지 어절들 중 상기 연산 값이 최소인 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어느 하나의 어절로 선택할 수 있다.At this time, according to an embodiment of the present invention, the word selector 116 calculates an operation value according to the operation of Equation 1 below for each of the reference word and the remaining words in the process (d). A word having the smallest calculation value among the reference word and the remaining words may be selected as any one word predicted to have a silent section in the first sentence.

Figure 112020098678734-pat00001
Figure 112020098678734-pat00001

여기서, Xi는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대한 상기 연산 값으로, Ii는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대응되는 발음 지속 시간, T는 상기 평균 간격 시간, Pi는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대응되는 비율, a는 사전 설정된 비율 조절 상수로서 양의 실수 값을 의미한다.Here, X i is the operation value for the reference word and the i-th word among the remaining words, I i is the pronunciation duration corresponding to the i-th word among the reference word and the remaining words, T is the average The interval time, P i , is a ratio corresponding to the i-th word among the reference word and the remaining words, and a is a preset ratio control constant and means a positive real value.

예컨대, 전술한 예와 같이, 상기 복수의 제1 어절들이 '날씨가', '참', '좋습니다'라고 하는 경우, 어절 선택부(116)는 묵음 시간 정보 저장부(112)를 참조하여 상기 평균 간격 시간에 대한 측정값을 확인하고, 비율 저장부(113)를 참조하여 상기 복수의 제1 어절들인 '날씨가', '참', '좋습니다' 각각에 대응되는 비율에 대한 측정값을 확인할 수 있다.For example, as in the above example, when the plurality of first words say 'weather', 'true', or 'good', the word selector 116 refers to the silence time information storage unit 112 and Check the measured value for the average interval time, and check the measured value for the ratio corresponding to each of the plurality of first words 'weather', 'true', and 'good' with reference to the ratio storage unit 113 can

그리고, 어절 선택부(116)는 상기 복수의 제1 어절들인 '날씨가', '참', '좋습니다' 중 상기 제1 문장에서의 위치가 첫 번째인 어절인 '날씨가'를 기준 어절로 결정할 수 있다.And, the word selector 116 uses 'weather', which is the first word in the first sentence among the plurality of first words, 'weather', 'true', and 'good' as a reference word. can decide

그 이후, 어절 선택부(116)는 상기 복수의 제1 어절들인 '날씨가', '참', '좋습니다' 중 상기 제1 문장에서의 위치가 상기 기준 어절인 '날씨가' 이후에 해당되는 나머지 어절들로 '참', '좋습니다'를 확인할 수 있다.After that, the word selector 116 determines that the position in the first sentence of the plurality of first words, 'weather', 'true', and 'good', is after 'weather' as the reference word. You can check 'true' and 'good' with the remaining words.

그러고 나서, 어절 선택부(116)는 상기 기준 어절인 '날씨가'에 대응되는 어절 발음 시간을 상기 기준 어절인 '날씨가'에 대응되는 발음 지속 시간으로 지정하고, 상기 제1 문장에서 상기 기준 어절인 '날씨가'와 상기 나머지 어절들 중 하나인 '참'까지의 어절 발음 시간의 누적 합계를 연산하여, 해당 누적 합계를 '참'이라는 어절에 대응되는 발음 지속 시간으로 지정하며, 상기 제1 문장에서 상기 기준 어절인 '날씨가'와 상기 나머지 어절들 중 또 다른 하나인 '좋습니다'까지의 어절 발음 시간의 누적 합계를 연산함으로써, 연산된 누적 합계를 '좋습니다'라는 어절에 대응되는 발음 지속 시간으로 지정할 수 있다. 여기서, 상기 제1 문장에서 상기 기준 어절인 '날씨가'와 '좋습니다'까지는 '날씨가'와 '참'과 '좋습니다'라는 3개의 어절이 존재하기 때문에, 어절 선택부(116)는 '좋습니다'라는 어절에 대응되는 발음 지속 시간을 산출하기 위해, '날씨가'에 대응되는 어절 발음 시간, '참'에 대응되는 어절 발음 시간, '좋습니다'에 대응되는 어절 발음 시간을 모두 누적 합산할 수 있다.Then, the word selector 116 designates a word pronunciation time corresponding to the reference word 'weather' as a pronunciation duration corresponding to the reference word 'weather', and in the first sentence, The cumulative sum of the word pronunciation times up to the word 'weather' and 'true', which is one of the remaining words, is calculated, and the cumulative sum is designated as the pronunciation duration corresponding to the word 'true', and the second By calculating the cumulative sum of word pronunciation times from 'weather', which is the reference word, and 'good', which is another one of the remaining words, in one sentence, the calculated cumulative sum is used to pronounce the word corresponding to the word 'good'. It can be specified as a duration. Here, from the first sentence to the standard words 'weather' and 'good', there are three words 'weather', 'true', and 'good', so the word selector 116 is 'good' In order to calculate the pronunciation duration corresponding to the word ', the word pronunciation time corresponding to 'weather', the word pronunciation time corresponding to 'true', and the word pronunciation time corresponding to 'good' can all be accumulated. have.

이렇게, 상기 기준 어절인 '날씨가' 및 상기 나머지 어절들인 '참'과 '좋습니다'라는 어절에 대응되는 발음 지속 시간이 지정되면, 어절 선택부(116)는 상기 기준 어절인 '날씨가'와 상기 나머지 어절들인 '참', '좋습니다' 각각에 대해 지정된 발음 지속 시간과 묵음 시간 정보 저장부(112)로부터 확인되는 상기 평균 간격 시간에 대한 측정값 및 비율 저장부(113)로부터 확인되는 상기 기준 어절인 '날씨가'와 상기 나머지 어절들인 '참', '좋습니다' 각각에 대응되는 비율에 대한 측정값을 상기 수학식 1에 입력으로 인가함으로써, 상기 기준 어절인 '날씨가'와 상기 나머지 어절들인 '참', '좋습니다' 각각에 대응되는 연산 값을 산출할 수 있다.In this way, when the pronunciation duration corresponding to the reference word 'weather' and the remaining words 'true' and 'good' is designated, the word selector 116 sets the standard word 'weather' and The standard confirmed from the measurement value and the ratio storage unit 113 for the average interval time checked from the silence time information storage unit 112 and the pronunciation duration time designated for each of the remaining words, 'true' and 'good' By applying the measurement value of the ratio corresponding to each of the word 'weather' and the other words 'true' and 'good' to Equation 1 as an input, the reference word 'weather' and the other words It is possible to calculate an operation value corresponding to each of 'true' and 'good'.

그 이후, 어절 선택부(116)는 상기 기준 어절인 '날씨가'와 상기 나머지 어절들인 '참', '좋습니다' 중 상기 연산 값이 최소인 어절을 선택할 수 있다. 관련해서, 상기 연산 값이 최소라는 의미는 상기 수학식 1에서 특정 어절에 대해서 지정된 발음 지속 시간이 상기 평균 간격 시간에 근접하면서, 상기 복수의 훈련 문장들에서 상기 특정 어절 뒤에 묵음이 나오는 비율이 크다는 의미이다. 상기 특정 어절에 대해서 지정된 발음 지속 시간이 상기 평균 간격 시간에 근접하다는 것은 상기 제1 문장에서 상기 기준 어절인 '날씨가'로부터 상기 특정 어절까지 발음되는 지속 시간이 상기 복수의 훈련 문장들에서 등장하는 묵음 간격에 대한 평균 값에 근접하다는 의미이고, 상기 특정 어절에 대응되는 비율이 크다는 의미는 상기 복수의 훈련 문장들에서 상기 특정 어절 뒤에 묵음이 나온 횟수가 많다는 의미이다. 따라서, 상기 수학식 1에서 산출된 연산 값이 작은 경우, 해당 연산 값을 갖는 어절 뒤에는 묵음이 나올 확률이 높은 경우라고 예측할 수 있다.Thereafter, the word selector 116 may select a word having the smallest calculated value from among the reference word 'weather' and the remaining words 'true' and 'good'. In relation, the meaning that the operation value is the minimum means that the pronunciation duration specified for the specific word in Equation 1 approaches the average interval time, and the ratio of silence after the specific word in the plurality of training sentences is large. it means That the pronunciation duration specified for the specific word is close to the average interval time means that the duration of pronunciation from 'weather' as the reference word in the first sentence to the specific word appears in the plurality of training sentences It means that it is close to the average value of the silence interval, and that the ratio corresponding to the specific word is large means that the number of times that silence appears after the specific word in the plurality of training sentences is large. Therefore, when the calculated value in Equation 1 is small, it can be predicted that there is a high probability that silence appears after the word having the corresponding calculated value.

만약, 상기 기준 어절인 '날씨가'와 상기 나머지 어절들인 '참', '좋습니다' 중 상기 연산 값이 최소인 어절이 '참'이라는 어절이라고 하는 경우, 어절 선택부(116)는 상기 기준 어절인 '날씨가'와 상기 나머지 어절들인 '참', '좋습니다' 중 '참'이라는 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어절로 선택할 수 있다.If the word with the smallest calculated value among the reference word 'weather' and the remaining words 'true' and 'good' is called 'true', the word selector 116 is the standard word 'Weather is' and the word 'true' among the remaining words 'true' and 'good' may be selected as a word predicted to have a silent section in the first sentence.

그 이후, 어절 선택부(116)는 상기 복수의 제1 어절들인 '날씨가', '참', '좋습니다' 중 상기 제1 문장에서의 위치가 '참'라는 어절의 바로 다음에 해당되는 어절인 '좋습니다'를 확인한 후 '좋습니다'라는 어절을 다시 기준 어절로 결정하여 지금까지 설명한 묵음 구간을 갖는 어절을 선택하기 위한 과정을 반복할 수 있다.After that, the word selector 116 is a word immediately following the word 'true' in the first sentence among the plurality of first words 'weather', 'true', and 'good'. After confirming 'good', the word 'good' is determined again as a reference word, and the process for selecting a word having a silent section described so far can be repeated.

다만, '좋습니다'라는 어절은 상기 제1 문장에서 마지막 지점에 위치하는 어절로서, '좋습니다'가 상기 기준 어절로 결정되는 경우, '좋습니다' 다음에 존재하는 나머지 어절이 존재하지 않기 때문에, 어절 선택부(116)는 묵음 구간을 갖는 어절을 선택하기 위한 과정을 종료할 수 있다.However, the word 'good' is a word located at the last point in the first sentence, and when 'good' is determined as the reference word, the remaining words after 'good' do not exist, so the word choice is The unit 116 may end the process for selecting a word having a silent section.

이렇게, 어절 선택부(116)는 지금까지 설명한 방식에 따라, 상기 복수의 제1 어절들인 '날씨가', '참', '좋습니다' 중 '참'이라고 하는 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 상기 적어도 하나의 제2 어절로 선택할 수 있다.In this way, according to the method described so far, the word selector 116 selects the word 'true' among the plurality of first words 'weather', 'true', and 'good' in the silence section in the first sentence. may be selected as the at least one second word predicted to have

묵음 기호 삽입부(117)는 어절 선택부(116)에서 상기 적어도 하나의 제2 어절의 선택이 완료되면, 상기 제1 문장에서 상기 적어도 하나의 제2 어절이 끝나는 지점에 사전 설정된 묵음 기호를 삽입한다.When the selection of the at least one second word by the word selector 116 is completed, the silence inserting unit 117 inserts a preset silence at the end of the at least one second word in the first sentence. do.

예컨대, 전술한 예와 같이, 상기 제1 문장이 '날씨가 참 좋습니다'라고 하고, 상기 적어도 하나의 제2 어절이 '참'이라고 하며, 상기 사전 설정된 묵음 기호를 'pause'라고 한다면, 묵음 기호 삽입부(117)는 상기 제1 문장인 '날씨가 참 좋습니다'에서 상기 적어도 하나의 제2 어절인 '참'이 끝나는 지점에 'pause'라고 하는 묵음 기호를 삽입함으로써, '날씨가 참 pause 좋습니다'라고 하는 보정된 제1 문장을 생성할 수 있다.For example, as in the above example, if the first sentence says 'the weather is great', the at least one second word says 'true', and the preset silence sign is 'pause', a silence symbol The insertion unit 117 inserts a silence sign called 'pause' at the point where the at least one second word 'true' ends in the first sentence 'the weather is very nice', It is possible to generate a corrected first sentence saying '.

음성 합성부(118)는 사전 설정된 음성 합성 모델을 기초로 상기 제1 문장에 대한 합성 음성을 생성하되, 상기 제1 문장에서 상기 묵음 기호가 삽입된 지점에 대해 사전 설정된 묵음 시간만큼에 대응되는 묵음 구간이 포함된 상기 합성 음성을 생성한다.The speech synthesis unit 118 generates a synthesized speech for the first sentence based on a preset speech synthesis model, but silences corresponding to a preset silence time for a point where the silence symbol is inserted in the first sentence. The synthesized speech including the section is generated.

예컨대, 묵음 기호가 삽입된 상기 제1 문장이 '날씨가 참 pause 좋습니다'라고 하고, 상기 사전 설정된 묵음 시간이 '500msec'라고 하는 경우, 음성 합성부(118)는 '날씨가 참 좋습니다'에 대응되는 합성 음성을 생성하되, '날씨가'와 '참' 사이에 '500msec' 동안 지속되는 묵음 구간을 포함시켜 상기 합성 음성을 생성할 수 있다.For example, when the first sentence in which a silence symbol is inserted says 'the weather is very nice to pause' and the preset silence time is '500 msec', the speech synthesis unit 118 responds to 'the weather is very nice' However, the synthesized voice may be generated by including a silence section lasting for '500 msec' between 'weather' and 'true'.

도 2는 본 발명의 일실시예에 따른 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치의 동작 방법을 도시한 순서도이다. 2 is a flowchart illustrating a method of operating a speech synthesis apparatus for performing space reading processing on a sentence according to an embodiment of the present invention.

단계(S210)에서는 사전 설정된 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 훈련 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 평균 발음 소요 시간에 대한 측정값이 저장되어 있는 발음 소요 시간 정보 저장부를 유지한다.In step S210, when each of a plurality of preset training sentences is pronounced by voice, a measurement value of the average pronunciation time required to pronounce each of the plurality of phonemes included in the plurality of training sentences is stored, Maintains a pronunciation required time information storage unit.

단계(S220)에서는 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 음성이 존재하지 않는 묵음 구간 간의 평균 간격 시간에 대한 측정값이 저장되어 있는 묵음 시간 정보 저장부를 유지한다.In step S220, when each of the plurality of training sentences is pronounced by voice, a silence time information storage unit in which a measurement value of an average interval time between silence sections in which a voice is not present is stored is maintained.

단계(S230)에서는 상기 복수의 훈련 문장들에 포함된 복수의 어절들과, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 어절들 각각이 발음된 직후에 묵음 구간이 등장한 비율에 대한 측정값이 서로 대응되어 저장되어 있는 비율 저장부를 유지한다.In step S230, when a plurality of words included in the plurality of training sentences and each of the plurality of training sentences are pronounced by voice, a silent section appears immediately after each of the plurality of words is pronounced. It maintains a ratio storage unit in which the measured values are stored in correspondence with each other.

단계(S240)에서는 사용자에 의해 제1 문장에 대한 텍스트 음성 변환 명령이 인가되면, 상기 제1 문장으로부터 상기 제1 문장을 구성하는 복수의 제1 음소들과 상기 제1 문장을 구성하는 복수의 제1 어절들을 추출한다.In step S240, when a text-to-speech command for the first sentence is applied by the user, from the first sentence, a plurality of first phonemes constituting the first sentence and a plurality of second phonemes constituting the first sentence 1 Extract words.

단계(S250)에서는 상기 발음 소요 시간 정보 저장부를 참조하여 상기 복수의 제1 음소들 각각에 대응되는 평균 발음 소요 시간에 대한 측정값을 확인한 후 상기 복수의 제1 어절들 각각에 대해, 각 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산하여 합산 값을 생성함으로써, 상기 복수의 제1 어절들 각각에 대해서 생성된 합산 값을 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간으로 지정한다.In step S250, after checking the measurement value of the average pronunciation required time corresponding to each of the plurality of first phonemes with reference to the pronunciation required time information storage unit, for each of the plurality of first words, each word is Word pronunciation time corresponding to each of the plurality of first words by summing the measured values for the average pronunciation required time of the included phonemes to generate a sum value, so that the sum value generated for each of the plurality of first words designate as

단계(S260)에서는 상기 묵음 시간 정보 저장부를 참조하여 상기 평균 간격 시간에 대한 측정값을 확인하고, 상기 비율 저장부를 참조하여 상기 복수의 제1 어절들 각각에 대응되는 비율에 대한 측정값을 확인하며, 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간을 기초로 상기 복수의 제1 어절들 간의 발음 지속 시간을 연산한 후 상기 평균 간격 시간과 상기 복수의 제1 어절들 각각에 대응되는 비율 및 상기 복수의 제1 어절들 간의 발음 지속 시간을 기초로 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 적어도 하나의 제2 어절을 선택한다.In step S260, the measurement value of the average interval time is checked with reference to the silence time information storage unit, and the measurement value of the ratio corresponding to each of the plurality of first words is checked with reference to the ratio storage unit, , after calculating the pronunciation duration between the plurality of first words based on the word pronunciation time corresponding to each of the plurality of first words, the average interval time and the ratio corresponding to each of the plurality of first words and selecting at least one second word predicted to have a silence section in the first sentence based on a pronunciation duration between the plurality of first words.

단계(S270)에서는 상기 적어도 하나의 제2 어절이 선택되면, 상기 제1 문장에서 상기 적어도 하나의 제2 어절이 끝나는 지점에 사전 설정된 묵음 기호를 삽입한다.In step S270, when the at least one second word is selected, a preset silence symbol is inserted at the point where the at least one second word ends in the first sentence.

단계(S280)에서는 사전 설정된 음성 합성 모델을 기초로 상기 제1 문장에 대한 합성 음성을 생성하되, 상기 제1 문장에서 상기 묵음 기호가 삽입된 지점에 대해 사전 설정된 묵음 시간만큼에 대응되는 묵음 구간이 포함된 상기 합성 음성을 생성한다.In step S280, a synthesized speech for the first sentence is generated based on a preset speech synthesis model, but a silence section corresponding to a preset silence time for a point where the silence symbol is inserted in the first sentence is Generate the synthesized speech included.

이때, 본 발명의 일실시예에 따르면, 단계(S260)에서는 상기 표 3과 같은 (a) 내지 (e) 과정을 반복 수행함으로써, (d) 과정을 통해서 하나씩 선택되는 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 상기 적어도 하나의 제2 어절로 선택할 수 있다.At this time, according to an embodiment of the present invention, in step S260, by repeating steps (a) to (e) as shown in Table 3 above, the words selected one by one through step (d) are separated from the first sentence. The at least one second word predicted to have a silent section may be selected.

이때, 본 발명의 일실시예에 따르면, 단계(S260)에서는 상기 (d) 과정에서 상기 기준 어절과 상기 나머지 어절들 각각에 대해 상기 수학식 1의 연산에 따른 연산 값을 산출한 후 상기 기준 어절과 상기 나머지 어절들 중 상기 연산 값이 최소인 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어느 하나의 어절로 선택할 수 있다.At this time, according to an embodiment of the present invention, in step S260, after calculating the calculation value according to the operation of Equation 1 for each of the reference word and the remaining words in the process (d), the reference word and a word having the smallest calculation value among the remaining words may be selected as any one word predicted to have a silence section in the first sentence.

이상, 도 2를 참조하여 본 발명의 일실시예에 따른 음성 합성 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 음성 합성 장치의 동작 방법은 도 1을 이용하여 설명한 음성 합성 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.In the above, an operation method of the speech synthesis apparatus according to an embodiment of the present invention has been described with reference to FIG. 2 . Here, since the operation method of the speech synthesis apparatus according to an embodiment of the present invention may correspond to the configuration of the operation of the speech synthesis apparatus 110 described with reference to FIG. 1 , a more detailed description thereof will be omitted. .

본 발명의 일실시예에 따른 음성 합성 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The method of operating a speech synthesis apparatus according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through combination with a computer.

또한, 본 발명의 일실시예에 따른 음성 합성 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.In addition, the method of operating a speech synthesis apparatus according to an embodiment of the present invention may be implemented in the form of a computer program command for execution through combination with a computer and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, in the present invention, specific matters such as specific components, etc., and limited embodiments and drawings have been described, but these are only provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , various modifications and variations are possible from these descriptions by those of ordinary skill in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims described below, but also all of the claims and all equivalents or equivalent modifications to the claims will be said to belong to the scope of the spirit of the present invention. .

110: 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치
111: 발음 소요 시간 정보 저장부 112: 묵음 시간 정보 저장부
113: 비율 저장부 114: 정보 추출부
115: 지정부 116: 간격 시간 생성부
117: 어절 선택부 118: 묵음 기호 삽입부
119: 음성 합성부
110: Speech synthesizing device for space-reading processing for sentences
111: pronunciation duration information storage unit 112: silence time information storage unit
113: ratio storage unit 114: information extraction unit
115: designation unit 116: interval time generation unit
117: word selection unit 118: silence symbol insertion unit
119: speech synthesis unit

Claims (8)

사전 설정된 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 훈련 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 평균 발음 소요 시간에 대한 측정값이 저장되어 있는 발음 소요 시간 정보 저장부;
상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 음성이 존재하지 않는 묵음 구간 간의 평균 간격 시간에 대한 측정값이 저장되어 있는 묵음 시간 정보 저장부;
상기 복수의 훈련 문장들에 포함된 복수의 어절들과, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 어절들 각각이 발음된 직후에 묵음 구간이 등장한 비율에 대한 측정값이 서로 대응되어 저장되어 있는 비율 저장부;
사용자에 의해 제1 문장에 대한 텍스트 음성 변환(Text to Speech: TTS) 명령이 인가되면, 상기 제1 문장으로부터 상기 제1 문장을 구성하는 복수의 제1 음소들과 상기 제1 문장을 구성하는 복수의 제1 어절들을 추출하는 정보 추출부;
상기 발음 소요 시간 정보 저장부를 참조하여 상기 복수의 제1 음소들 각각에 대응되는 평균 발음 소요 시간에 대한 측정값을 확인한 후 상기 복수의 제1 어절들 각각에 대해, 각 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산하여 합산 값을 생성함으로써, 상기 복수의 제1 어절들 각각에 대해서 생성된 합산 값을 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간으로 지정하는 지정부;
상기 묵음 시간 정보 저장부를 참조하여 상기 평균 간격 시간에 대한 측정값을 확인하고, 상기 비율 저장부를 참조하여 상기 복수의 제1 어절들 각각에 대응되는 비율에 대한 측정값을 확인하며, 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간을 기초로 상기 복수의 제1 어절들 간의 발음 지속 시간을 연산한 후 상기 평균 간격 시간과 상기 복수의 제1 어절들 각각에 대응되는 비율 및 상기 복수의 제1 어절들 간의 발음 지속 시간을 기초로 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 적어도 하나의 제2 어절을 선택하는 어절 선택부;
상기 적어도 하나의 제2 어절이 선택되면, 상기 제1 문장에서 상기 적어도 하나의 제2 어절이 끝나는 지점에 사전 설정된 묵음 기호를 삽입하는 묵음 기호 삽입부; 및
사전 설정된 음성 합성 모델을 기초로 상기 제1 문장에 대한 합성 음성을 생성하되, 상기 제1 문장에서 상기 묵음 기호가 삽입된 지점에 대해 사전 설정된 묵음 시간만큼에 대응되는 묵음 구간이 포함된 상기 합성 음성을 생성하는 음성 합성부
를 포함하고,
상기 어절 선택부는
하기의 (a) 내지 (e) 과정을 반복 수행함으로써, (d) 과정을 통해서 하나씩 선택되는 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 상기 적어도 하나의 제2 어절로 선택하는 것을 특징으로 하는 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치.
(a) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 첫 번째인 어절을 기준 어절로 결정
(b) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 상기 기준 어절 이후인 나머지 어절들을 확인
(c) 상기 기준 어절에 대응되는 어절 발음 시간을 상기 기준 어절에 대응되는 발음 지속 시간으로 지정하고, 상기 나머지 어절들 각각에 대해, 상기 제1 문장에서 상기 기준 어절로부터 상기 나머지 어절들 각각까지의 어절 발음 시간의 누적 합계를 연산한 후, 상기 나머지 어절들 각각에 대해서 연산된 누적 합계를 상기 나머지 어절들 각각에 대응되는 발음 지속 시간으로 지정
(d) 상기 기준 어절과 상기 나머지 어절들 각각의 발음 지속 시간이 상기 평균 간격 시간에 근접한지 여부 및 상기 기준 어절과 상기 나머지 어절들 각각에 대응되는 비율의 크기에 기초하여, 상기 기준 어절과 상기 나머지 어절들 중 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어느 하나의 어절을 선택
(e) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 상기 (d) 과정에서 선택된 어절의 바로 다음인 어절이 상기 (a) 과정에서의 상기 기준 어절로 결정되도록 처리
Pronunciation time information in which a measurement value of the average pronunciation time required to pronounce each of the plurality of phonemes included in the plurality of training sentences is stored when each of the plurality of preset training sentences is pronounced by voice storage;
a silence time information storage unit storing a measurement value of an average interval time between silence sections in which no speech is present when each of the plurality of training sentences is pronounced by speech;
A plurality of words included in the plurality of training sentences, and when each of the plurality of training sentences are voiced, a measurement value of the ratio of the silence section appearing immediately after each of the plurality of words is pronounced a ratio storage unit stored in correspondence with each other;
When a text-to-speech (TTS) command for a first sentence is applied by the user, a plurality of first phonemes constituting the first sentence and a plurality of first sentences constituting the first sentence from the first sentence an information extraction unit for extracting first words of
After checking the measurement value of the average pronunciation required time corresponding to each of the plurality of first phonemes with reference to the pronunciation required time information storage unit, for each of the plurality of first words, the average of the phonemes included in each word A designation unit for generating a sum value by adding up the measurement values for the pronunciation required time, and designating the sum value generated for each of the plurality of first words as the word pronunciation time corresponding to each of the plurality of first words ;
Check the measured value of the average interval time with reference to the silence time information storage unit, check the measured value of the ratio corresponding to each of the plurality of first words with reference to the ratio storage unit, After calculating the pronunciation duration between the plurality of first words based on the word pronunciation time corresponding to each of the first words, the average interval time and the ratio corresponding to each of the plurality of first words and the plurality of first words a word selector configured to select at least one second word predicted to have a silent section in the first sentence based on a pronunciation duration between the first words;
a silence symbol inserting unit that, when the at least one second word is selected, inserts a preset silence symbol at a point where the at least one second word ends in the first sentence; and
A synthesized voice for the first sentence is generated based on a preset voice synthesis model, and the synthesized voice includes a silence section corresponding to a preset silence time for a point where the silence symbol is inserted in the first sentence. speech synthesis unit that generates
including,
The word selector
By repeating steps (a) to (e) below, one word selected through step (d) is selected as the at least one second word predicted to have a silent section in the first sentence. A speech synthesis device that performs space-reading processing on sentences with
(a) determining a word having a first position in the first sentence among the plurality of first words as a reference word
(b) checking the remaining words after the reference word in the first sentence among the plurality of first words
(c) designating a word pronunciation time corresponding to the reference word as a pronunciation duration corresponding to the reference word, and for each of the remaining words, from the reference word to each of the remaining words in the first sentence After calculating the cumulative sum of word pronunciation time, the cumulative sum calculated for each of the remaining words is designated as the pronunciation duration corresponding to each of the remaining words
(d) based on whether the pronunciation duration of each of the reference word and the remaining words is close to the average interval time and the magnitude of the ratio corresponding to each of the reference word and the remaining words, the reference word and the Select any one word predicted to have a silent section in the first sentence among the remaining words
(e) processing so that, among the plurality of first words, a word whose position in the first sentence is immediately following the word selected in step (d) is determined as the reference word in step (a)
삭제delete 제1항에 있어서,
상기 어절 선택부는
상기 (d) 과정에서 상기 기준 어절과 상기 나머지 어절들 각각에 대해 하기의 수학식 1의 연산에 따른 연산 값을 산출한 후 상기 기준 어절과 상기 나머지 어절들 중 상기 연산 값이 최소인 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어느 하나의 어절로 선택하는 것을 특징으로 하는 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치.
[수학식 1]
Figure 112022027674970-pat00002

여기서, Xi는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대한 상기 연산 값으로, Ii는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대응되는 발음 지속 시간, T는 상기 평균 간격 시간, Pi는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대응되는 비율, a는 사전 설정된 비율 조절 상수로서 양의 실수 값임.
According to claim 1,
The word selector
In the step (d), after calculating an operation value according to the operation of Equation 1 below for each of the reference word and the remaining words, the word having the smallest calculated value among the reference word and the remaining words is said A speech synthesis apparatus for performing spacing processing on a sentence, characterized in that the first sentence is selected as any one word predicted to have a silent section.
[Equation 1]
Figure 112022027674970-pat00002

Here, X i is the operation value for the reference word and the i-th word among the remaining words, I i is the pronunciation duration corresponding to the i-th word among the reference word and the remaining words, T is the average Interval time, P i is a ratio corresponding to the i-th word among the reference word and the remaining words, and a is a preset ratio adjustment constant and is a positive real value.
사전 설정된 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 훈련 문장들에 포함된 복수의 음소들 각각이 발음되는데 소요되는 평균 발음 소요 시간에 대한 측정값이 저장되어 있는 발음 소요 시간 정보 저장부를 유지하는 단계;
상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 음성이 존재하지 않는 묵음 구간 간의 평균 간격 시간에 대한 측정값이 저장되어 있는 묵음 시간 정보 저장부를 유지하는 단계;
상기 복수의 훈련 문장들에 포함된 복수의 어절들과, 상기 복수의 훈련 문장들 각각이 음성으로 발음되었을 때, 상기 복수의 어절들 각각이 발음된 직후에 묵음 구간이 등장한 비율에 대한 측정값이 서로 대응되어 저장되어 있는 비율 저장부를 유지하는 단계;
사용자에 의해 제1 문장에 대한 텍스트 음성 변환(Text to Speech: TTS) 명령이 인가되면, 상기 제1 문장으로부터 상기 제1 문장을 구성하는 복수의 제1 음소들과 상기 제1 문장을 구성하는 복수의 제1 어절들을 추출하는 단계;
상기 발음 소요 시간 정보 저장부를 참조하여 상기 복수의 제1 음소들 각각에 대응되는 평균 발음 소요 시간에 대한 측정값을 확인한 후 상기 복수의 제1 어절들 각각에 대해, 각 어절에 포함된 음소들의 평균 발음 소요 시간에 대한 측정값을 합산하여 합산 값을 생성함으로써, 상기 복수의 제1 어절들 각각에 대해서 생성된 합산 값을 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간으로 지정하는 단계;
상기 묵음 시간 정보 저장부를 참조하여 상기 평균 간격 시간에 대한 측정값을 확인하고, 상기 비율 저장부를 참조하여 상기 복수의 제1 어절들 각각에 대응되는 비율에 대한 측정값을 확인하며, 상기 복수의 제1 어절들 각각에 대응되는 어절 발음 시간을 기초로 상기 복수의 제1 어절들 간의 발음 지속 시간을 연산한 후 상기 평균 간격 시간과 상기 복수의 제1 어절들 각각에 대응되는 비율 및 상기 복수의 제1 어절들 간의 발음 지속 시간을 기초로 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 적어도 하나의 제2 어절을 선택하는 단계;
상기 적어도 하나의 제2 어절이 선택되면, 상기 제1 문장에서 상기 적어도 하나의 제2 어절이 끝나는 지점에 사전 설정된 묵음 기호를 삽입하는 단계; 및
사전 설정된 음성 합성 모델을 기초로 상기 제1 문장에 대한 합성 음성을 생성하되, 상기 제1 문장에서 상기 묵음 기호가 삽입된 지점에 대해 사전 설정된 묵음 시간만큼에 대응되는 묵음 구간이 포함된 상기 합성 음성을 생성하는 단계
를 포함하고,
상기 적어도 하나의 제2 어절을 선택하는 단계는
하기의 (a) 내지 (e) 과정을 반복 수행함으로써, (d) 과정을 통해서 하나씩 선택되는 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 상기 적어도 하나의 제2 어절로 선택하는 것을 특징으로 하는 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치의 동작 방법.
(a) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 첫 번째인 어절을 기준 어절로 결정
(b) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 상기 기준 어절 이후인 나머지 어절들을 확인
(c) 상기 기준 어절에 대응되는 어절 발음 시간을 상기 기준 어절에 대응되는 발음 지속 시간으로 지정하고, 상기 나머지 어절들 각각에 대해, 상기 제1 문장에서 상기 기준 어절로부터 상기 나머지 어절들 각각까지의 어절 발음 시간의 누적 합계를 연산한 후, 상기 나머지 어절들 각각에 대해서 연산된 누적 합계를 상기 나머지 어절들 각각에 대응되는 발음 지속 시간으로 지정
(d) 상기 기준 어절과 상기 나머지 어절들 각각의 발음 지속 시간이 상기 평균 간격 시간에 근접한지 여부 및 상기 기준 어절과 상기 나머지 어절들 각각에 대응되는 비율의 크기에 기초하여, 상기 기준 어절과 상기 나머지 어절들 중 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어느 하나의 어절을 선택
(e) 상기 복수의 제1 어절들 중 상기 제1 문장에서의 위치가 상기 (d) 과정에서 선택된 어절의 바로 다음인 어절이 상기 (a) 과정에서의 상기 기준 어절로 결정되도록 처리
Pronunciation time information in which a measurement value of the average pronunciation time required to pronounce each of the plurality of phonemes included in the plurality of training sentences is stored when each of the plurality of preset training sentences is pronounced by voice maintaining a storage unit;
maintaining a silence time information storage unit in which a measurement value of an average interval time between silence sections in which no speech is present is stored when each of the plurality of training sentences is pronounced by speech;
A plurality of words included in the plurality of training sentences, and when each of the plurality of training sentences are voiced, a measurement value of the ratio of the silence section appearing immediately after each of the plurality of words is pronounced maintaining a ratio storage unit stored in correspondence with each other;
When a text-to-speech (TTS) command for a first sentence is applied by the user, a plurality of first phonemes constituting the first sentence and a plurality of first sentences constituting the first sentence from the first sentence extracting first words of
After checking the measurement value of the average pronunciation required time corresponding to each of the plurality of first phonemes with reference to the pronunciation required time information storage unit, for each of the plurality of first words, the average of the phonemes included in each word designating the sum value generated for each of the plurality of first words as word pronunciation time corresponding to each of the plurality of first words by summing the measurement values for the pronunciation required time to generate a sum value;
Check the measured value of the average interval time with reference to the silence time information storage unit, check the measured value of the ratio corresponding to each of the plurality of first words with reference to the ratio storage unit, After calculating the pronunciation duration between the plurality of first words based on the word pronunciation time corresponding to each of the first words, the average interval time and the ratio corresponding to each of the plurality of first words and the plurality of first words selecting at least one second word predicted to have a silent section in the first sentence based on a pronunciation duration between the first words;
inserting a preset silence symbol at a point where the at least one second word ends in the first sentence when the at least one second word is selected; and
A synthesized voice for the first sentence is generated based on a preset voice synthesis model, and the synthesized voice includes a silence section corresponding to a preset silence time for a point where the silence symbol is inserted in the first sentence. steps to create
including,
The step of selecting the at least one second word
By repeating steps (a) to (e) below, one word selected through step (d) is selected as the at least one second word predicted to have a silent section in the first sentence. A method of operating a speech synthesis device that performs space-reading processing on a sentence of .
(a) determining a word having a first position in the first sentence among the plurality of first words as a reference word
(b) checking the remaining words after the reference word in the first sentence among the plurality of first words
(c) designating a word pronunciation time corresponding to the reference word as a pronunciation duration corresponding to the reference word, and for each of the remaining words, from the reference word to each of the remaining words in the first sentence After calculating the cumulative sum of word pronunciation time, the cumulative sum calculated for each of the remaining words is designated as the pronunciation duration corresponding to each of the remaining words
(d) based on whether the pronunciation duration of each of the reference word and the remaining words is close to the average interval time and the magnitude of the ratio corresponding to each of the reference word and the remaining words, the reference word and the Select any one word predicted to have a silent section in the first sentence among the remaining words
(e) processing so that, among the plurality of first words, a word whose position in the first sentence is immediately following the word selected in step (d) is determined as the reference word in step (a)
삭제delete 제4항에 있어서,
상기 적어도 하나의 제2 어절을 선택하는 단계는
상기 (d) 과정에서 상기 기준 어절과 상기 나머지 어절들 각각에 대해 하기의 수학식 1의 연산에 따른 연산 값을 산출한 후 상기 기준 어절과 상기 나머지 어절들 중 상기 연산 값이 최소인 어절을 상기 제1 문장에서 묵음 구간을 갖는 것으로 예측되는 어느 하나의 어절로 선택하는 것을 특징으로 하는 문장에 대한 띄어읽기 처리를 수행하는 음성 합성 장치의 동작 방법.
[수학식 1]
Figure 112022027674970-pat00003

여기서, Xi는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대한 상기 연산 값으로, Ii는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대응되는 발음 지속 시간, T는 상기 평균 간격 시간, Pi는 상기 기준 어절과 상기 나머지 어절들 중 i번째 어절에 대응되는 비율, a는 사전 설정된 비율 조절 상수로서 양의 실수 값임.
5. The method of claim 4,
The step of selecting the at least one second word
In the step (d), after calculating an operation value according to the operation of Equation 1 below for each of the reference word and the remaining words, the word having the smallest calculated value among the reference word and the remaining words is said A method of operating a speech synthesizing apparatus for performing spacing processing on a sentence, characterized in that the first sentence is selected as any one word predicted to have a silent section.
[Equation 1]
Figure 112022027674970-pat00003

Here, X i is the operation value for the reference word and the i-th word among the remaining words, I i is the pronunciation duration corresponding to the i-th word among the reference word and the remaining words, T is the average Interval time, P i is a ratio corresponding to the i-th word among the reference word and the remaining words, and a is a preset ratio adjustment constant and is a positive real value.
제4항 또는 제6항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium recording a computer program for executing the method of any one of claims 4 or 6 through combination with a computer. 제4항 또는 제6항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of claims 4 or 6 through combination with a computer.
KR1020200119646A 2020-09-17 2020-09-17 Voice synthesis apparatus which processes spacing on reading for sentences and the operating method thereof KR102417806B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200119646A KR102417806B1 (en) 2020-09-17 2020-09-17 Voice synthesis apparatus which processes spacing on reading for sentences and the operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200119646A KR102417806B1 (en) 2020-09-17 2020-09-17 Voice synthesis apparatus which processes spacing on reading for sentences and the operating method thereof

Publications (2)

Publication Number Publication Date
KR20220037094A KR20220037094A (en) 2022-03-24
KR102417806B1 true KR102417806B1 (en) 2022-07-06

Family

ID=80935667

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200119646A KR102417806B1 (en) 2020-09-17 2020-09-17 Voice synthesis apparatus which processes spacing on reading for sentences and the operating method thereof

Country Status (1)

Country Link
KR (1) KR102417806B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100373329B1 (en) * 1999-08-17 2003-02-25 한국전자통신연구원 Apparatus and method for text-to-speech conversion using phonetic environment and intervening pause duration
KR100408650B1 (en) * 2001-10-24 2003-12-06 한국전자통신연구원 A method for labeling break strength automatically by using classification and regression tree

Also Published As

Publication number Publication date
KR20220037094A (en) 2022-03-24

Similar Documents

Publication Publication Date Title
CN105788589B (en) Audio data processing method and device
US10347238B2 (en) Text-based insertion and replacement in audio narration
US9275631B2 (en) Speech synthesis system, speech synthesis program product, and speech synthesis method
US7869999B2 (en) Systems and methods for selecting from multiple phonectic transcriptions for text-to-speech synthesis
US7912716B2 (en) Generating words and names using N-grams of phonemes
US20070239455A1 (en) Method and system for managing pronunciation dictionaries in a speech application
US20090259475A1 (en) Voice quality change portion locating apparatus
JP2007249212A (en) Method, computer program and processor for text speech synthesis
JP4406440B2 (en) Speech synthesis apparatus, speech synthesis method and program
US9129596B2 (en) Apparatus and method for creating dictionary for speech synthesis utilizing a display to aid in assessing synthesis quality
KR102087301B1 (en) Sentence selection device for speech synthesis training to build a speech synthesizer based on the voice of a personal speaker and operating method thereof
JP6013104B2 (en) Speech synthesis method, apparatus, and program
WO2016103652A1 (en) Speech processing device, speech processing method, and recording medium
KR102417806B1 (en) Voice synthesis apparatus which processes spacing on reading for sentences and the operating method thereof
JP5294700B2 (en) Speech recognition and synthesis system, program and method
JP2003186489A (en) Voice information database generation system, device and method for sound-recorded document creation, device and method for sound recording management, and device and method for labeling
EP1589524B1 (en) Method and device for speech synthesis
KR102300484B1 (en) Sentence selection device for speech synthesis training to build a personal speech synthesizer based on speech data of another speaker and operating method thereof
KR102287156B1 (en) Sentence selection device for speech synthesis training based on phoneme string for constructing speech synthesizer and operating method thereof
JP3881970B2 (en) Speech data set creation device for perceptual test, computer program, sub-cost function optimization device for speech synthesis, and speech synthesizer
JP2014106313A (en) Spoken language analyzer and method and program for the same
CN111696530B (en) Target acoustic model obtaining method and device
JP5301376B2 (en) Speech synthesis apparatus and program
Dong et al. A Unit Selection-based Speech Synthesis Approach for Mandarin Chinese.
EP1640968A1 (en) Method and device for speech synthesis

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right