System
The system addresses the challenge of generating high-quality custom voices by collecting, preprocessing, and training neural networks to reproduce specific voice characteristics, facilitating easy and efficient creation of personalized audio content.
Patent Information
- Application Number
- JP2024141542
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-22
- Publication Date
- 2026-03-06
AI Technical Summary
Existing speech synthesis technologies struggle to generate high-quality speech with specific voice characteristics, particularly those of voice actors or idols, requiring manual expertise and effort, and lack efficient systems for custom voice generation.
A system that includes audio collection, preprocessing, extraction of acoustic features, training a speech synthesis model, receiving text input, and generating voice data, enabling high-quality custom voices by collecting and processing audio from specific voice actors or idols, performing noise reduction, normalization, and segmentation, and using neural networks to reproduce their voices.
Enables easy generation of high-quality custom voices with specific voice characteristics, allowing users to create personalized audio content efficiently and effectively.
Smart Images

Figure 2026038207000001 
Figure 2026038207000002 
Figure 2026038207000003
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] While speech synthesis technology has made great strides in recent years, most systems focus on generating generic voices, making it difficult to generate speech with specific voice characteristics. In particular, there is a growing need to generate custom messages using the voices of specific voice actors or idols, but few systems exist that meet this need. Furthermore, manually recreating a specific voice requires a high level of expertise and effort. Therefore, there is a demand for a system that can easily generate high-quality speech in a specific voice. [Means for solving the problem]
[0005] To solve the above-mentioned problems, the present invention provides the following means: a system including means for collecting recommended voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a speech synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, and means for providing the generated voice data. This makes it possible to generate voice according to text input by a user while retaining specific voice characteristics, thereby easily providing high-quality custom voices.
[0006] An "audio collection means" is a device or software function that captures and stores audio data from a particular audio source.
[0007] "Preprocessing means" refers to the function of a device or software that performs processes such as noise removal and normalization on collected audio data to make it suitable for analysis and learning.
[0008] "Means for extracting acoustic features" refers to a device or software function for extracting acoustic features such as Mel-Frequency Cepstral Coefficients (MFCCs) from preprocessed speech data.
[0009] "Means for training a speech synthesis model" refers to a device or software function that uses extracted acoustic features to construct and train a speech synthesis model, such as a neural network, to reproduce a specific voice.
[0010] The "means for receiving text input" refers to a device or software function that allows a user to input the content they wish to generate in text format and receive the text data.
[0011] "Means for generating voice data" refers to the functionality of a device or software for creating voice data based on received text using a trained voice synthesis model.
[0012] "Means for providing audio data" refers to the functionality of a device or software for transmitting the generated audio data to a user and storing or providing it in a reproducible format. [Brief explanation of the drawings]
[0013] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14]FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0014] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0015] First, the terms used in the following description will be explained.
[0016] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0017] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0018] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0019] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0020] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0021] [First embodiment]
[0022] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0023] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0024] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0025] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0026] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0027] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0028] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0029] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0030] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0031] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0032] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0033] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0034] The present invention relates to a system for generating high-quality custom voices using the voices of specific voice actors or idols. Specific embodiments of this system will be described below.
[0035] System Overview
[0036] The system has a flow in which a user collects specific speech, the server preprocesses and learns it, and finally generates speech based on the user's input text. This system includes the following main processing steps.
[0037] Audio collection and preprocessing
[0038] 1. A user uses their device (e.g., PC, smartphone) to collect audio of a specific voice actor or idol from CDs or digital audio files, including the voice actor's lines, singing voice, interviews, etc.
[0039] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[0040] Audio data preprocessing
[0041] 1. The server receives the uploaded audio file and first performs noise reduction, a filtering process to remove background noise and unwanted sounds.
[0042] 2. The server then performs a normalization process to unify the audio levels, ensuring consistency of the audio.
[0043] 3. The server then divides the audio data into appropriate lengths and labels each audio clip. This division is important for improving speech recognition accuracy.
[0044] Extraction of acoustic features and training of speech synthesis models
[0045] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs), which capture the inherent characteristics of the audio.
[0046] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce specific vocal characteristics.
[0047] 3. The server stores the trained model in a database and manages it in a reusable format.
[0048] Text input and speech generation
[0049] 1. The user inputs the content of the voice to be generated in text format. The input interface is displayed on a web browser or a dedicated application.
[0050] 2. The terminal provides a means of communication to send the entered text to the server.
[0051] Speech generation and delivery
[0052] 1. The server generates voice data based on the received text using a trained speech synthesis model, which creates a voice that speaks the text content in the voice of a specific voice actor or idol.
[0053] 2. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[0054] 3. The device saves the received audio file in a playable format and provides an interface that allows the user to play it.
[0055] Specific examples
[0056] For example, if a user wants to create a custom message using specific lines from a popular voice actor:
[0057] 1. The user extracts the audio files from a CD containing the voice actor's lines and saves them on their computer.
[0058] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[0059] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[0060] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[0061] 5. Using the trained model, generate speech based on the text entered by the user: "Good morning, it's a nice day today."
[0062] 6. The server sends the generated audio data to the user's device, where the user can play it.
[0063] This series of processes allows the user to easily create a high-quality voice message in a specific voice.
[0064] The processing flow will be explained below.
[0065] Step 1:
[0066] Users extract their favorite idol's voice from a CD or digital audio file and save it to their PC, then upload the audio file using the provided interface.
[0067] Step 2:
[0068] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[0069] Step 3:
[0070] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[0071] Step 4:
[0072] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[0073] Step 5:
[0074] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[0075] Step 6:
[0076] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[0077] Step 7:
[0078] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[0079] Step 8:
[0080] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[0081] Step 9:
[0082] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[0083] Step 10:
[0084] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[0085] Step 11:
[0086] The device sends the input text data to the server, which triggers the speech generation process.
[0087] Step 12:
[0088] The server inputs the received text into a speech synthesis model to generate audio data, in the process speaking the text content in a specific voice.
[0089] Step 13:
[0090] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[0091] Step 14:
[0092] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[0093] Example 1
[0094] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0095] Currently, existing speech synthesis systems on the market face the challenge of easily generating high-quality custom speech using specific speech data. Collecting specific speech, preprocessing it to extract acoustic features, and finally synthesizing speech using a neural network poses numerous technical challenges. Furthermore, the lack of a series of preprocessing steps, such as noise reduction, normalization, and segmentation and labeling of speech data, can degrade the final speech quality. A new approach to address these challenges is needed.
[0096] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0097] In this invention, the server includes means for collecting specific voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, means for receiving uploaded voice files and performing noise reduction, means for normalizing to unify the voice level, means for dividing the voice data into appropriate lengths and labeling each voice clip, means for extracting acoustic features from the preprocessed voice clips, means for inputting the extracted acoustic features into a neural network-based voice synthesis model to train the model, and means for storing the trained model in a database. This enables easy generation of high-quality custom voices using specific voices.
[0098] "Specific voice" refers to the voice of an individual person, such as a specific voice actor or idol, and is voice data used for voice synthesis.
[0099] "Preprocessing" refers to the initial processing steps to improve the overall audio quality, such as denoising and normalising the audio data, splitting and labelling audio clips, etc.
[0100] "Acoustic features" are feature values extracted from speech signals and are data used primarily to represent the inherent characteristics of speech. Specifically, they include Mel-Frequency Cepstrum Coefficients (MFCCs).
[0101] A "speech synthesis model" is a machine learning model that is trained using acoustic features as input and is designed to reproduce specific speech characteristics.
[0102] "Text input" refers to an operation in which the user inputs the voice content that he or she wishes to generate in text form.
[0103] "Noise reduction" is a process that removes background noise and unnecessary sounds from audio data, and is achieved using filtering technology.
[0104] "Normalization" is a process for unifying the volume level of audio data to ensure consistency.
[0105] "Segmentation and labeling" is the process of dividing audio data into segments of appropriate length and assigning labels to each segment.
[0106] A "neural network" is a machine learning algorithm used to train a speech synthesis model, and has a network structure consisting of multiple layers of nodes.
[0107] A "database" is a system for systematically storing and managing trained speech synthesis models and speech data.
[0108] This invention is a system for generating high-quality custom voices using specific voices. The system has a flow in which a user collects specific voices, a server preprocesses and learns the collected voices, and finally generates voices based on the user's input text. The embodiments for implementing the invention will be described with specific examples.
[0109] Hardware and software used
[0110] The following hardware and software are used to implement this system.
[0111] 1. User device: A device such as a PC or smartphone that can collect audio files and upload them to a server.
[0112] 2. Server: A high-performance computer that preprocesses speech data, extracts acoustic features, trains models, and generates speech.
[0113] 3. Software: Audio processing libraries (e.g., FFmpeg, librosa), deep learning frameworks (e.g., TENSORFLOW®, PyTorch).
[0114] Processing flow and specific examples
[0115] Audio collection and uploading
[0116] 1. Users collect the audio of a specific voice actor or idol using a computer or smartphone. For example, they extract the audio from a CD containing the voice actor's lines or download it from an online distribution site.
[0117] 2. The device provides an interface for the user to select the audio file and upload it to the server. This can be done using the file upload function of a web browser or the file selection dialog of a dedicated application.
[0118] Audio data preprocessing
[0119] 3. The server receives the uploaded audio file and first performs noise filtering. The open source audio processing library FFmpeg can be used.
[0120] 4. The server then normalizes the audio to make the volume level uniform. This can also be done using FFmpeg.
[0121] 5. The server splits the normalized audio into appropriate lengths. To ensure consistency across audio clips, the segmentation is performed using audio processing tools or scripts.
[0122] Acoustic feature extraction and model training
[0123] 6. The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clip. The features are generated using librosa, a Python audio processing library.
[0124] 7. The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using deep learning frameworks such as TensorFlow and PyTorch.
[0125] 8. The server saves the trained model in a database for future reuse.
[0126] Text input and speech generation
[0127] 9. The user inputs the generated voice content in text format through a text input interface on a web browser or a dedicated application.
[0128] 10. The terminal sends the entered text data to the server using an HTTP request.
[0129] Speech generation and delivery
[0130] 11. The server generates voice data based on the received text data using a pre-trained speech synthesis model. For example, if you input a prompt phrase such as "Good morning, it's a nice day today," the corresponding voice will be generated.
[0131] 12. The server converts the generated audio data into a file format such as MP3 or WAV and sends it to the user's device. This is done by returning the file as an HTTP response.
[0132] 13. The terminal saves the received audio file and provides a playback interface. The user can click the play button to play the generated audio file.
[0133] By following these steps, users can easily generate high-quality custom voices using specific voices. This system efficiently performs a series of processes from voice collection to pre-processing, training, and voice generation.
[0134] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0135] Step 1:
[0136] Users can collect audio of a specific voice actor or idol using a computer or smartphone, for example by extracting audio files from a CD containing the actor's lines or by downloading them from an online distribution site.
[0137] Input: Audio files collected from CDs and online distribution sites.
[0138] Output: Audio file saved on the user's device.
[0139] Step 2:
[0140] The terminal provides an interface for the user to select the audio file specified by the user and upload it to the server, such as the file upload function of a web browser or a file selection dialog of a dedicated application.
[0141] Input: Audio files saved by the user on their device.
[0142] Output: The audio file that will be uploaded to the server.
[0143] Step 3:
[0144] The server receives the uploaded audio file and first performs noise filtering using the open source audio processing library FFmpeg. It applies noise removal filtering to produce clearer audio.
[0145] Input: Uploaded audio file.
[0146] Output: Denoised audio file.
[0147] Step 4:
[0148] The server then performs an audio normalization process, again using FFmpeg, to equalize the volume level of the audio, adjusting the amplitude of the entire audio waveform to maintain a consistent volume level.
[0149] Input: The audio file with noise removed.
[0150] Output: Normalized audio file.
[0151] Step 5:
[0152] The server splits the normalized audio into clips of appropriate length, labels each clip, and runs a segmentation algorithm using audio processing tools or scripts to ensure each segment has consistent context and audio characteristics.
[0153] Input: Normalized audio file.
[0154] Output: Labeled audio clips.
[0155] Step 6:
[0156] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips using the Python audio processing library librosa. A feature vector is generated from each audio clip and used as input data for the audio model.
[0157] Input: Labeled audio clips.
[0158] Output: Acoustic feature vector.
[0159] Step 7:
[0160] The server uses the extracted acoustic features to train a neural network-based speech synthesis model using deep learning frameworks such as TensorFlow and PyTorch. The training process involves optimizing the model parameters through a large dataset of speech features.
[0161] Input: Acoustic feature vector.
[0162] Output: A trained speech synthesis model.
[0163] Step 8:
[0164] The server stores the trained model in a database that contains the speech synthesis model parameters and metadata for future reuse.
[0165] Input: A trained speech synthesis model.
[0166] Output: A speech synthesis model stored in a database.
[0167] Step 9:
[0168] The user inputs the contents of the voice to be generated in text format through a text input interface on a web browser or a dedicated application, for example, "Good morning, it's a nice day today."
[0169] Input: The text of the speech you want to generate.
[0170] Output: Text entered into a web browser or application.
[0171] Step 10:
[0172] The terminal sends the input text data to the server using an HTTP request. Communication with the server is established and the text data is securely transmitted.
[0173] Input: The text entered by the user.
[0174] Output: The text data sent to the server.
[0175] Step 11:
[0176] The server generates voice data based on the received text data using a trained speech synthesis model. For example, it converts the text "Good morning, it's a nice day today" into voice.
[0177] Input: Text data, trained speech synthesis model.
[0178] Output: The generated audio data.
[0179] Step 12:
[0180] The server converts the generated audio data into a file format such as MP3 or WAV, and sends it to the user's device. The audio file is sent as an HTTP response.
[0181] Input: The generated audio data.
[0182] Output: Audio files in MP3 and WAV formats.
[0183] Step 13:
[0184] The terminal stores the received audio file and provides a playback interface, and when the user clicks the play button, the generated audio file is played.
[0185] Input: MP3 or WAV format audio files.
[0186] Output: Playable audio file and playback interface.
[0187] (Application example 1)
[0188] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0189] In the field of audiobooks and other audio content, there is no system in place that allows users to generate high-quality audio in the voices of their preferred voice actors and artists, forcing users to rely on limited audio options and making it difficult to create customized audio content.
[0190] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0191] In this invention, the server includes means for collecting recommended voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a speech synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, and means for playing the generated voice data, thereby enabling users to easily generate and play high-quality custom voice content in the voice of a specific voice actor or artist.
[0192] "Recommended audio" refers to audio data of specific voice actors or artists selected for collection.
[0193] "Preprocessing" refers to the process of noise removal and normalization performed on collected audio data.
[0194] "Acoustic features" are characteristic data such as Mel-Frequency Cepstrum Coefficients (MFCCs) extracted from speech data.
[0195] A "speech synthesis model" is a neural network-based model for generating speech data based on acoustic features.
[0196] "Text input" refers to the act of inputting the content of the audio content that the user wants to generate as a character string.
[0197] "Speech data" refers to a speech file generated by a speech synthesis model based on text input.
[0198] The "providing means" refers to a system or method for transmitting the generated voice data to the user.
[0199] The "playback means" is a means for using an audio playback device or software to enable a user to listen to the generated audio data.
[0200] System Configuration
[0201] To implement this invention, the following hardware and software are required. The hardware includes a smartphone and a server. The software includes a Python environment, TensorFlow, Keras, the Librosa library, the Pydub library, and the Wave library.
[0202] Processing content
[0203] The server performs the process in the following steps.
[0204] 1. Collecting voice samples: Users can collect voice data from specific voice actors or artists by uploading audio files via their smartphones or computers.
[0205] 2. Pre-processing: The server performs noise reduction and normalization on the collected audio data, which is necessary to improve the audio quality.
[0206] 3. Extraction of acoustic features: Extract acoustic features such as Mel-Frequency Cepstrum Coefficients (MFCCs) from the preprocessed speech data.
[0207] 4. Training the speech synthesis model: The extracted acoustic features are used to train a neural network-based speech synthesis model.
[0208] 5. Text input: The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or web browser.
[0209] 6. Generate speech data: The server uses the trained speech synthesis model to generate speech data based on the user input text.
[0210] 7. Providing the generated voice data: The server provides the generated voice data to the user. The voice data can be downloaded in a file format (e.g., MP3, WAV).
[0211] 8. Playback: Users can play the generated audio data on their smartphones or computers.
[0212] Specific examples
[0213] As a concrete example, we will describe the operation of the system where a user generates the text "Hello, how are you?" in the voice of a particular voice actor.
[0214] 1. Users use the "Audio Dream" app to collect audio clips with their favorite voice actors.
[0215] 2. The app preprocesses these audios, extracts their features, and trains a model.
[0216] 3. The user types "Hello, how are you?" and the server converts the text into synthesized speech and sends it back.
[0217] 4. The app plays the synthesized voice and the user can hear the message in the voice of the specified voice actor.
[0218] Prompt Sentence Examples
[0219] Example prompts to input to a generative AI model:
[0220] Convert text to speech for "Hello, how are you?" in the voice of a specific voice actor. The process involves collecting audio data, preprocessing, extracting features, training a model, converting text to speech, and delivering the resulting audio file.
[0221] This allows users to easily create and play high-quality custom audio content in the voice of a specific voice actor or artist.
[0222] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0223] Step 1:
[0224] Collecting voice samples
[0225] A user collects audio data of their favorite voice actors or artists. Specifically, they extract audio from CDs or digital audio files and save them on their computer or smartphone. Next, they upload the audio files to the server using the device's upload interface. The input of this step is the audio files, and the output is the audio data stored on the server.
[0226] Step 2:
[0227] Audio data preprocessing
[0228] The server receives the uploaded audio files and performs preprocessing such as noise reduction and normalization. For example, it filters out background noise and makes the audio level uniform. This process improves the audio quality. The input of this step is the collected audio data, and the output is the preprocessed audio data.
[0229] Step 3:
[0230] Acoustic feature extraction
[0231] The server extracts acoustic features such as Mel-Frequency Cepstral Coefficients (MFCCs) from the preprocessed audio data. Specifically, it analyzes the audio data using the Librosa library and extracts the audio's unique features as numerical data. The input of this step is the preprocessed audio data, and the output is acoustic feature data.
[0232] Step 4:
[0233] Training the speech synthesis model
[0234] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. Specifically, it builds the model using TensorFlow and Keras and trains the speech synthesis algorithm based on the acoustic features. The input of this step is the acoustic feature data, and the output is a trained speech synthesis model.
[0235] Step 5:
[0236] Accepting text input
[0237] The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or a web browser. The input of this step is the user's text input, and the output is text data sent to the server.
[0238] Step 6:
[0239] Generating audio data
[0240] The server uses the trained speech synthesis model to generate speech data based on the user's input text. Specifically, the server uses the user's text data as a prompt and generates a speech waveform through a neural network. The inputs of this step are the text data and the speech synthesis model, and the output is the generated audio file.
[0241] Step 7:
[0242] Providing generated voice data
[0243] The server provides the generated audio data to the user in a file format (e.g., MP3, WAV). The user can receive the audio file through a download link. The input of this step is the generated audio file, and the output is the audio data sent to the user's device.
[0244] Step 8:
[0245] Playing back the generated audio
[0246] The user plays the generated audio data on a smartphone or PC. For example, audio playback software or a dedicated app can be used. The input for this step is the audio data stored on the user's device, and the output is the played audio.
[0247] The above processing steps allow users to easily generate and play high-quality custom audio content in the voice of a particular voice actor or artist.
[0248] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0249] This invention combines a system that generates high-quality custom voices using the voices of specific voice actors or idols with an emotion engine that recognizes the user's emotions. This system can adjust the voice tone and intonation according to the user's emotions while retaining the characteristics of the specific voice. Specific embodiments of this system are described below.
[0250] System Overview
[0251] The system has a flow in which a user collects specific voice, the server performs preprocessing and learning, and finally generates voice based on the user's input text and emotion. This system includes the following main processing steps.
[0252] Audio collection and preprocessing
[0253] 1. A user collects audio of a specific voice actor or idol from CDs or digital audio files and saves them on a PC. This includes the voice actor's lines, singing, interviews, etc.
[0254] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[0255] Audio data preprocessing
[0256] 1. The server receives the uploaded audio file and stores it in the database. Then it reads the file and checks the audio quality first.
[0257] 2. After checking the audio quality, the server applies a noise reduction filter to reduce background noise and then normalizes the noise-removed audio data.
[0258] 3. The server splits the normalized audio data into short clips, marks the beginning and end of each clip, and labels them as individual audio segments.
[0259] Extraction of acoustic features and training of speech synthesis models
[0260] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs).
[0261] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce the characteristics of a specific voice.
[0262] 3. The server stores the trained model in a database and manages it in a reusable format.
[0263] Text input and emotion recognition
[0264] 1. The user inputs the voice content to be generated in text format. The input interface is displayed in a web browser or a dedicated application.
[0265] 2. The device sends the text data and emotion input data entered by the user to the server. The emotion input data is analyzed in real time based on the emotion options selected by the user and voice input.
[0266] Speech production and emotion regulation
[0267] 1. The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine recognizes the user's emotion and reflects the analysis results in the speech synthesis model.
[0268] 2. The server appropriately adjusts the tone and intonation of the generated speech based on the emotion recognition results.
[0269] 3. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[0270] Audio provided
[0271] 1. The device saves the received audio file in a playable format and provides the user with a playback interface, allowing the user to play and enjoy the generated audio.
[0272] Specific examples
[0273] For example, suppose a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and further change the content of the message depending on the user's emotions.
[0274] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer.
[0275] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[0276] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[0277] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[0278] 5. The user types "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[0279] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[0280] 7. The server sends the generated audio data to the user's device, where the user plays it.
[0281] This system allows users to easily generate voices that not only match specific voices but also emotional responses.
[0282] The processing flow will be explained below.
[0283] Step 1:
[0284] Users extract their favorite idol's audio from a CD or digital audio file and save it on their PC, then upload the audio file to the server using the provided interface.
[0285] Step 2:
[0286] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[0287] Step 3:
[0288] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[0289] Step 4:
[0290] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[0291] Step 5:
[0292] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[0293] Step 6:
[0294] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[0295] Step 7:
[0296] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[0297] Step 8:
[0298] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[0299] Step 9:
[0300] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[0301] Step 10:
[0302] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[0303] Step 11:
[0304] The device also provides the user with an emotion setting interface, where the user selects the emotion (e.g., cheerful, sad, angry, etc.) of the generated voice in addition to the text. This information is also sent to the server.
[0305] Step 12:
[0306] The device sends the input text data and emotion data to the server, which triggers the speech generation process.
[0307] Step 13:
[0308] The server generates voice data using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion data and adjusts the voice tone and intonation based on the results.
[0309] Step 14:
[0310] The server then adjusts the tone and intonation of the generated voice appropriately based on the emotion recognition results. For example, if you select the "energetic" emotion, the voice tone will be set to a bright and lively tone.
[0311] Step 15:
[0312] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[0313] Step 16:
[0314] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[0315] Example 2
[0316] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0317] Conventional speech synthesis systems have difficulty generating custom voices using the voices of specific voice actors or idols. Furthermore, they lack the ability to adjust the tone and intonation of the voice according to the user's emotions. This makes it impossible to generate high-quality custom voices that meet the user's needs.
[0318] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0319] In this invention, the server includes means for collecting recommended voices, means for preprocessing voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for storing the trained voice synthesis model in a database, means for receiving text input from a user, means for receiving emotion data from the user, means for generating voice data based on the input text and the emotion data, means for adjusting the tone and intonation of the generated voice data, and means for providing the generated voice data, thereby enabling the generation of high-quality custom voices according to the user's emotions.
[0320] "Recommended voice" refers to the voice data of a specific voice actor or idol, and is the voice data that serves as the basis for generating custom voices in the system.
[0321] "Preprocessing" refers to the process of performing processes such as noise removal and normalization on collected voice data to prepare it in a format suitable for extracting acoustic features and training a voice synthesis model.
[0322] "Acoustic features" are characteristic information extracted from speech signals, including Mel-Frequency Cepstrum Coefficients (MFCCs), which numerically represent the characteristics of speech data.
[0323] A "speech synthesis model" is a trained neural network-based model that generates custom speech based on input acoustic features and text data.
[0324] A "database" is a storage system for storing speech data and trained speech synthesis models so that they can be accessed and reused as needed.
[0325] "Text input" refers to inputting the content of the voice that the user wants to generate as a string of characters, and is the data that forms the basis for voice generation in the system.
[0326] "Emotion data" is data that expresses the user's emotional state and is input along with the text data, which adjusts the tone and intonation of the generated voice.
[0327] The "means for generating voice data" refers to a process for generating voice using a voice synthesis model based on text data and emotion data, thereby creating a custom voice.
[0328] The "means for adjusting tone and intonation" is a process for changing the tone and intonation of the generated voice data in accordance with the emotional data, to make the voice more realistic and emotionally rich.
[0329] The "means for providing" refers to the process of converting the generated audio data into an appropriate file format and providing it to the user, with the aim of allowing the user to receive the audio in a reproducible form.
[0330] MODE FOR CARRYING OUT THE INVENTION
[0331] The present invention is a system that collects specific voices, performs pre-processing and training on a server, and finally generates custom voices based on the user's input text and emotions. Specific embodiments of this system will be described below.
[0332] System Overview
[0333] The system works by using dedicated software and hardware to create speech based on the user's input text and emotion data, after which the server performs preprocessing and training of a speech synthesis model.
[0334] Audio collection
[0335] Users use CDs or digital audio files to collect the audio of a particular voice actor or idol, save them on their computers, and then use specialized audio editing software (e.g., Audacity) to extract only the parts they want.
[0336] Uploading and Preprocessing
[0337] The terminal provides an interface for users to upload collected audio files to the server. Users select and upload audio files using a web browser or a dedicated application. The terminal then transfers the selected files to the server.
[0338] The server receives the uploaded audio file and stores it in a database. The server then checks the quality of the audio file and applies a noise reduction filter (e.g., Noisereduce) to reduce background noise. The server then normalizes the denoised audio data and splits it into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used for these processes.
[0339] Acoustic feature extraction and model training
[0340] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio.
[0341] The server then uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using frameworks such as TensorFlow and PyTorch, and a model designed to reproduce the characteristics of a specific voice is constructed. Once the model is trained, it is stored in a database and managed in a reusable format.
[0342] Text input and emotion recognition
[0343] The user inputs the content of the voice to be generated in text format. The user enters the text into an input field in a dedicated web browser or application, and selects an emotion option. The emotion data is sent to the server along with the text.
[0344] Speech production and emotion regulation
[0345] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine analyzes the user's emotions and reflects the results in the speech synthesis model.
[0346] The server adjusts the tone and intonation of the generated voice based on the emotion recognition result. For example, if the user selects the "energetic" emotion, the server sets the tone brighter and the intonation lively.
[0347] The generated audio data is converted into a file format such as MP3 or WAV and sent from the server to the terminal.
[0348] Audio provision and playback
[0349] The terminal stores the received audio file in a playable format and provides a playback interface to the user, through which the user can play and enjoy the generated audio.
[0350] Specific examples
[0351] For example, if a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and then change the content depending on the emotion, the following steps can be taken.
[0352] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer. Using dedicated software, they can edit only the necessary parts.
[0353] 2. Upload the audio file to the server using the device's upload interface.
[0354] 3. The server receives the audio file, stores it in a database, denoises it, normalizes it, and splits it into 2-second clips.
[0355] 4. The server extracts MFCC acoustic features from the preprocessed speech data and trains a neural network model.
[0356] 5. The user enters the text "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[0357] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[0358] 7. The server converts the generated audio data into MP3 format and sends it to the user's device.
[0359] 8. The device stores the received audio file and provides a playback interface, allowing the user to play it and enjoy the cheerful message, "Good morning, it's a nice day today."
[0360] Prompt Sentence Examples
[0361] You can generate a custom voice by inputting the prompt sentence below into the generative AI model.
[0362] example:
[0363] "Please generate a message saying 'Good morning, it's a nice day today' in a cheerful voice by a female voice actor. Please use an MP3 file."
[0364] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0365] Step 1: Collect and store audio
[0366] Users collect the audio of a particular voice actor or idol from CDs or digital audio files and save them on their PC. They then use specialized audio editing software (e.g., Audacity) to extract only the lines or parts they need. The input data is an audio file, and the output data is also an edited audio file.
[0367] Step 2: Upload your audio file
[0368] The terminal provides an interface for users to upload collected audio files to the server. Users use a web browser or application to select audio files and click the upload button. The input data is the audio file stored on the user's PC, and the output data is the audio file transferred to the server.
[0369] Step 3: Receiving and storing audio data
[0370] The server receives the uploaded audio file and stores it in the database. It checks the format of the audio file and converts it to the correct format using the appropriate codec (e.g. FFmpeg). The input data is the uploaded audio file, and the output data is the audio file stored on the server.
[0371] Step 4: Check audio quality and remove noise
[0372] The server checks the quality of the received audio file and applies a noise reduction filter to reduce background noise. A noise reduction algorithm (e.g., Noisereduce) is used to remove noise from the audio data. The input data is the converted audio file, and the output data is the denoised audio file.
[0373] Step 5: Normalization
[0374] The server normalizes the noise-removed audio data to equalize the volume, ensuring consistent volume levels. The input data is the noise-removed audio file, and the output data is the normalized audio file.
[0375] Step 6: Split the audio clip
[0376] The server splits the normalized audio data into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used to mark the beginning and end of the audio clips and label each clip. The input data is the normalized audio file, and the output data is the split audio clips.
[0377] Step 7: Extraction of acoustic features
[0378] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients: MFCCs) from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio data. The input data are the segmented audio clips, and the output data are the extracted acoustic features.
[0379] Step 8: Training the speech synthesis model
[0380] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using a neural network framework such as TensorFlow or PyTorch to build a model that reproduces the characteristics of a specific voice. The input data are the acoustic features, and the output data is the trained speech synthesis model.
[0381] Step 9: Save the speech synthesis model
[0382] The server stores the trained speech synthesis model in a database and manages it in a reusable format. The input data is the trained speech synthesis model, and the output data is the saved speech synthesis model.
[0383] Step 10: Enter text and select emotion
[0384] The user inputs the speech content to be generated in text format and selects emotion options. The input interface uses a dedicated web browser or application. The input data is text input and emotion data, and the output data is the transmission of the input data to the server.
[0385] Step 11: Speech production and emotion regulation
[0386] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion and reflects the results in the speech synthesis model. The input data is text data and emotion data, and the output data is the generated speech data.
[0387] Step 12: Adjust the tone and intonation of the audio data
[0388] The server adjusts the tone and intonation of the generated voice data to generate voice that matches the emotion. For example, if the user selects the emotion "energetic," the server sets the tone bright and the intonation lively. The input data is the generated voice data, and the output data is the voice data with the adjusted tone and intonation.
[0389] Step 13: Convert and provide audio data
[0390] The server converts the generated audio data into an appropriate file format, such as MP3 or WAV, and sends it to the user's device. The input data is the adjusted audio data, and the output data is the converted audio file.
[0391] Step 14: Save and play the audio file
[0392] The terminal saves the received audio file in a playable format and provides a playback interface for the user, through which the user can play and enjoy the generated audio. The input data is the converted audio file, and the output data is the played audio.
[0393] (Application example 2)
[0394] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0395] Today, food delivery service users are looking for a more advanced user experience than simply receiving order confirmations and progress notifications. However, conventional systems lack the ability to deliver voice notifications with a tone and intonation that reflects emotions, making it difficult to provide personalized service to individual users. Furthermore, if a user wanted to receive voice notifications in the voice of a specific voice actor or idol, it was extremely difficult to realize this desire.
[0396] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0397] In this invention, the server includes means for analyzing a user's emotions through emotion recognition, means for generating voice data based on the analyzed emotion data, and means for adjusting the tone and intonation of the voice based on the emotion data analyzed through emotion recognition. This enables a food delivery service user to receive notifications in the voice of a specific voice actor or idol with a tone and intonation that corresponds to the emotion.
[0398] "Preferred Voice" refers to the particular voice that the user wishes to use.
[0399] "Means for preprocessing audio data" refers to techniques for removing noise and normalizing raw audio data.
[0400] The "means for extracting acoustic features" is a method for extracting characteristic parameters such as Mel-frequency cepstrum coefficients from speech data.
[0401] "Means for training a speech synthesis model" refers to a method of using a machine learning model such as a neural network to acquire speech synthesis capabilities based on acoustic features.
[0402] "Means for receiving text input" refers to an interface through which the system receives and processes character data entered by a user.
[0403] "Means for analyzing user emotions through emotion recognition" refers to algorithms and technologies that infer a user's emotional state from input text or voice.
[0404] "Means for generating voice data based on analyzed emotion data" refers to the process of using emotion recognition results to generate voice corresponding to the user's emotion.
[0405] "Means for adjusting the tone and intonation of speech" refers to technology that changes the intonation or tone of the generated speech to match the user's emotional state.
[0406] "Means for providing generated speech data" refers to the method or interface used to communicate synthesized speech to the user.
[0407] A specific system for implementing this invention is configured using the following hardware and software. First, the system saves recommended voices collected by users to a PC and uploads them to a server. The server receives the uploaded voice data and applies a noise reduction filter and normalization process. Next, the server extracts acoustic features from the preprocessed voice data, primarily using Mel-Frequency Cepstrum Coefficients (MFCC). Based on this, a voice synthesis model using a neural network is trained.
[0408] The hardware used is primarily a smartphone (iOS or ANDROID®), which serves as the device through which the user receives the speech generation results. The software used includes Google® Cloud Text-to-Speech API and IBM Watson® Text-to-Speech for speech recognition and synthesis, and Microsoft® Azure® Emotion API for emotion recognition. Firebase and MySQL® are used for database management.
[0409] When a user inputs text, the device sends this text data to a server. The server uses an emotion recognition engine to analyze the user's emotions from the input text and generates voice data based on this. The tone and intonation of the generated voice data are appropriately adjusted based on the emotion recognition results. Finally, the generated voice data is implemented as a smartphone application and provided to the user.
[0410] For example, if a user enters the text "Did your order complete successfully?", the emotion recognition engine will detect the user's anxiety and generate a gentle voice response saying "Yes, your order has been completed successfully." This voice message will be sent to the user's smartphone and played back immediately.
[0411] An example of a specific prompt sentence to input into the generative AI model is as follows:
[0412] "Is my order completed successfully?"
[0413] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0414] Step 1:
[0415] The user collects recommended audio. The user saves the audio of a specific voice actor or idol in MP3 or WAV format on their PC and prepares the file. Here, the audio file is input.
[0416] Step 2:
[0417] The device uploads the audio data to the server. Using a dedicated application or a web browser interface, the user selects the audio files they have collected and sends them to the server, where they are uploaded.
[0418] Step 3:
[0419] The server preprocesses the audio data. It applies a noise reduction filter to the received audio file and performs normalization processing. The processed audio data is output. Here, noise reduction and standardization of the audio data are performed.
[0420] Step 4:
[0421] The server extracts acoustic features, primarily Mel-Frequency Cepstrum Coefficients (MFCCs), from the preprocessed audio data. The acoustic features are output and provided to the neural network, where the audio data is converted into numerical data.
[0422] Step 5:
[0423] The server trains a speech synthesis model. A neural network model is trained based on the extracted acoustic features. The speech synthesis model is output and stored in a database. Here, machine learning is used to improve the speech reproduction ability.
[0424] Step 6:
[0425] The user inputs text. The content of the voice that the user wants to generate is input in text format through the smartphone application interface. The input text is sent to the server, where the user's desired voice message is entered.
[0426] Step 7:
[0427] The terminal sends text and emotion input data to the server. Along with the text entered by the user, emotion options (e.g., joy, anxiety, etc.) are also sent to the server. Emotion data is input. Here, the user's emotional state is conveyed to the system.
[0428] Step 8:
[0429] The server performs emotion recognition and analyzes the user's emotions. Based on the received text data, the Microsoft Azure Emotion API is used to identify emotions. The emotion analysis results are output. Here, emotion recognition is applied to the text data.
[0430] Step 9:
[0431] The server generates voice data. Based on the analyzed emotion data, a trained voice synthesis model is used to generate voice with a tone and intonation that matches the user's emotion. The generated voice data is output in file format. Here, emotion-adjusted voice is created.
[0432] Step 10:
[0433] The server sends the generated audio data to the device, saves the generated audio in MP3 or WAV format, and sends it to the user's smartphone, where the generated audio file is provided to the user.
[0434] Step 11:
[0435] The device plays the received audio data. The user can listen to the audio data sent from the server using the playback interface on the smartphone. The audio file is output in a playable format. Here, the user can enjoy the custom audio.
[0436] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0437] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0438] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0439] [Second embodiment]
[0440] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0441] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0442] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0443] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0444] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0445] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0446] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0447] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0448] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0449] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0450] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0451] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0452] The present invention relates to a system for generating high-quality custom voices using the voices of specific voice actors or idols. Specific embodiments of this system will be described below.
[0453] System Overview
[0454] The system has a flow in which a user collects specific speech, the server preprocesses and learns it, and finally generates speech based on the user's input text. This system includes the following main processing steps.
[0455] Audio collection and preprocessing
[0456] 1. A user uses their device (e.g., PC, smartphone) to collect audio of a specific voice actor or idol from CDs or digital audio files, including the voice actor's lines, singing voice, interviews, etc.
[0457] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[0458] Audio data preprocessing
[0459] 1. The server receives the uploaded audio file and first performs noise reduction, a filtering process to remove background noise and unwanted sounds.
[0460] 2. The server then performs a normalization process to unify the audio levels, ensuring consistency of the audio.
[0461] 3. The server then divides the audio data into appropriate lengths and labels each audio clip. This division is important for improving speech recognition accuracy.
[0462] Extraction of acoustic features and training of speech synthesis models
[0463] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs), which capture the inherent characteristics of the audio.
[0464] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce specific vocal characteristics.
[0465] 3. The server stores the trained model in a database and manages it in a reusable format.
[0466] Text input and speech generation
[0467] 1. The user inputs the content of the voice to be generated in text format. The input interface is displayed on a web browser or a dedicated application.
[0468] 2. The terminal provides a means of communication to send the entered text to the server.
[0469] Speech generation and delivery
[0470] 1. The server generates voice data based on the received text using a trained speech synthesis model, which creates a voice that speaks the text content in the voice of a specific voice actor or idol.
[0471] 2. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[0472] 3. The device saves the received audio file in a playable format and provides an interface that allows the user to play it.
[0473] Specific examples
[0474] For example, if a user wants to create a custom message using specific lines from a popular voice actor:
[0475] 1. The user extracts the audio files from a CD containing the voice actor's lines and saves them on their computer.
[0476] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[0477] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[0478] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[0479] 5. Using the trained model, generate speech based on the text entered by the user: "Good morning, it's a nice day today."
[0480] 6. The server sends the generated audio data to the user's device, where the user can play it.
[0481] This series of processes allows the user to easily create a high-quality voice message in a specific voice.
[0482] The processing flow will be explained below.
[0483] Step 1:
[0484] Users extract their favorite idol's voice from a CD or digital audio file and save it to their PC, then upload the audio file using the provided interface.
[0485] Step 2:
[0486] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[0487] Step 3:
[0488] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[0489] Step 4:
[0490] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[0491] Step 5:
[0492] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[0493] Step 6:
[0494] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[0495] Step 7:
[0496] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[0497] Step 8:
[0498] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[0499] Step 9:
[0500] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[0501] Step 10:
[0502] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[0503] Step 11:
[0504] The device sends the input text data to the server, which triggers the speech generation process.
[0505] Step 12:
[0506] The server inputs the received text into a speech synthesis model to generate audio data, in the process speaking the text content in a specific voice.
[0507] Step 13:
[0508] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[0509] Step 14:
[0510] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[0511] Example 1
[0512] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0513] Currently, existing speech synthesis systems on the market face the challenge of easily generating high-quality custom speech using specific speech data. Collecting specific speech, preprocessing it to extract acoustic features, and finally synthesizing speech using a neural network poses numerous technical challenges. Furthermore, the lack of a series of preprocessing steps, such as noise reduction, normalization, and segmentation and labeling of speech data, can degrade the final speech quality. A new approach to address these challenges is needed.
[0514] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0515] In this invention, the server includes means for collecting specific voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, means for receiving uploaded voice files and performing noise reduction, means for normalizing to unify the voice level, means for dividing the voice data into appropriate lengths and labeling each voice clip, means for extracting acoustic features from the preprocessed voice clips, means for inputting the extracted acoustic features into a neural network-based voice synthesis model to train the model, and means for storing the trained model in a database. This enables easy generation of high-quality custom voices using specific voices.
[0516] "Specific voice" refers to the voice of an individual person, such as a specific voice actor or idol, and is voice data used for voice synthesis.
[0517] "Preprocessing" refers to the initial processing steps to improve the overall audio quality, such as denoising and normalising the audio data, splitting and labelling audio clips, etc.
[0518] "Acoustic features" are feature values extracted from speech signals and are data used primarily to represent the inherent characteristics of speech. Specifically, they include Mel-Frequency Cepstrum Coefficients (MFCCs).
[0519] A "speech synthesis model" is a machine learning model that is trained using acoustic features as input and is designed to reproduce specific speech characteristics.
[0520] "Text input" refers to an operation in which the user inputs the voice content that he or she wishes to generate in text form.
[0521] "Noise reduction" is a process that removes background noise and unnecessary sounds from audio data, and is achieved using filtering technology.
[0522] "Normalization" is a process for unifying the volume level of audio data to ensure consistency.
[0523] "Segmentation and labeling" is the process of dividing audio data into segments of appropriate length and assigning labels to each segment.
[0524] A "neural network" is a machine learning algorithm used to train a speech synthesis model, and has a network structure consisting of multiple layers of nodes.
[0525] A "database" is a system for systematically storing and managing trained speech synthesis models and speech data.
[0526] This invention is a system for generating high-quality custom voices using specific voices. The system has a flow in which a user collects specific voices, a server preprocesses and learns the collected voices, and finally generates voices based on the user's input text. The embodiments for implementing the invention will be described with specific examples.
[0527] Hardware and software used
[0528] The following hardware and software are used to implement this system.
[0529] 1. User device: A device such as a PC or smartphone that can collect audio files and upload them to a server.
[0530] 2. Server: A high-performance computer that preprocesses speech data, extracts acoustic features, trains models, and generates speech.
[0531] 3. Software: Audio processing libraries (e.g., FFmpeg, librosa), deep learning frameworks (e.g., TensorFlow, PyTorch).
[0532] Processing flow and specific examples
[0533] Audio collection and uploading
[0534] 1. Users collect the audio of a specific voice actor or idol using a computer or smartphone. For example, they extract the audio from a CD containing the voice actor's lines or download it from an online distribution site.
[0535] 2. The device provides an interface for the user to select the audio file and upload it to the server. This can be done using the file upload function of a web browser or the file selection dialog of a dedicated application.
[0536] Audio data preprocessing
[0537] 3. The server receives the uploaded audio file and first performs noise filtering. The open source audio processing library FFmpeg can be used.
[0538] 4. The server then normalizes the audio to make the volume level uniform. This can also be done using FFmpeg.
[0539] 5. The server splits the normalized audio into appropriate lengths. To ensure consistency across audio clips, the segmentation is performed using audio processing tools or scripts.
[0540] Acoustic feature extraction and model training
[0541] 6. The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clip. The features are generated using librosa, a Python audio processing library.
[0542] 7. The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using deep learning frameworks such as TensorFlow and PyTorch.
[0543] 8. The server saves the trained model in a database for future reuse.
[0544] Text input and speech generation
[0545] 9. The user inputs the generated voice content in text format through a text input interface on a web browser or a dedicated application.
[0546] 10. The terminal sends the entered text data to the server using an HTTP request.
[0547] Speech generation and delivery
[0548] 11. The server generates voice data based on the received text data using a pre-trained speech synthesis model. For example, if you input a prompt phrase such as "Good morning, it's a nice day today," the corresponding voice will be generated.
[0549] 12. The server converts the generated audio data into a file format such as MP3 or WAV and sends it to the user's device. This is done by returning the file as an HTTP response.
[0550] 13. The terminal saves the received audio file and provides a playback interface. The user can click the play button to play the generated audio file.
[0551] By following these steps, users can easily generate high-quality custom voices using specific voices. This system efficiently performs a series of processes from voice collection to pre-processing, training, and voice generation.
[0552] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0553] Step 1:
[0554] Users can collect audio of a specific voice actor or idol using a computer or smartphone, for example by extracting audio files from a CD containing the actor's lines or by downloading them from an online distribution site.
[0555] Input: Audio files collected from CDs and online distribution sites.
[0556] Output: Audio file saved on the user's device.
[0557] Step 2:
[0558] The terminal provides an interface for the user to select the audio file specified by the user and upload it to the server, such as the file upload function of a web browser or a file selection dialog of a dedicated application.
[0559] Input: Audio files saved by the user on their device.
[0560] Output: The audio file that will be uploaded to the server.
[0561] Step 3:
[0562] The server receives the uploaded audio file and first performs noise filtering using the open source audio processing library FFmpeg. It applies noise removal filtering to produce clearer audio.
[0563] Input: Uploaded audio file.
[0564] Output: Denoised audio file.
[0565] Step 4:
[0566] The server then performs an audio normalization process, again using FFmpeg, to equalize the volume level of the audio, adjusting the amplitude of the entire audio waveform to maintain a consistent volume level.
[0567] Input: The audio file with noise removed.
[0568] Output: Normalized audio file.
[0569] Step 5:
[0570] The server splits the normalized audio into clips of appropriate length, labels each clip, and runs a segmentation algorithm using audio processing tools or scripts to ensure each segment has consistent context and audio characteristics.
[0571] Input: Normalized audio file.
[0572] Output: Labeled audio clips.
[0573] Step 6:
[0574] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips using the Python audio processing library librosa. A feature vector is generated from each audio clip and used as input data for the audio model.
[0575] Input: Labeled audio clips.
[0576] Output: Acoustic feature vector.
[0577] Step 7:
[0578] The server uses the extracted acoustic features to train a neural network-based speech synthesis model using deep learning frameworks such as TensorFlow and PyTorch. The training process involves optimizing the model parameters through a large dataset of speech features.
[0579] Input: Acoustic feature vector.
[0580] Output: A trained speech synthesis model.
[0581] Step 8:
[0582] The server stores the trained model in a database that contains the speech synthesis model parameters and metadata for future reuse.
[0583] Input: A trained speech synthesis model.
[0584] Output: A speech synthesis model stored in a database.
[0585] Step 9:
[0586] The user inputs the contents of the voice to be generated in text format through a text input interface on a web browser or a dedicated application, for example, "Good morning, it's a nice day today."
[0587] Input: The text of the speech you want to generate.
[0588] Output: Text entered into a web browser or application.
[0589] Step 10:
[0590] The terminal sends the input text data to the server using an HTTP request. Communication with the server is established and the text data is securely transmitted.
[0591] Input: The text entered by the user.
[0592] Output: The text data sent to the server.
[0593] Step 11:
[0594] The server generates voice data based on the received text data using a trained speech synthesis model. For example, it converts the text "Good morning, it's a nice day today" into voice.
[0595] Input: Text data, trained speech synthesis model.
[0596] Output: The generated audio data.
[0597] Step 12:
[0598] The server converts the generated audio data into a file format such as MP3 or WAV, and sends it to the user's device. The audio file is sent as an HTTP response.
[0599] Input: The generated audio data.
[0600] Output: Audio files in MP3 and WAV formats.
[0601] Step 13:
[0602] The terminal stores the received audio file and provides a playback interface, and when the user clicks the play button, the generated audio file is played.
[0603] Input: MP3 or WAV format audio files.
[0604] Output: Playable audio file and playback interface.
[0605] (Application example 1)
[0606] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0607] In the field of audiobooks and other audio content, there is no system in place that allows users to generate high-quality audio in the voices of their preferred voice actors and artists, forcing users to rely on limited audio options and making it difficult to create customized audio content.
[0608] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0609] In this invention, the server includes means for collecting recommended voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a speech synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, and means for playing the generated voice data, thereby enabling users to easily generate and play high-quality custom voice content in the voice of a specific voice actor or artist.
[0610] "Recommended audio" refers to audio data of specific voice actors or artists selected for collection.
[0611] "Preprocessing" refers to the process of noise removal and normalization performed on collected audio data.
[0612] "Acoustic features" are characteristic data such as Mel-Frequency Cepstrum Coefficients (MFCCs) extracted from speech data.
[0613] A "speech synthesis model" is a neural network-based model for generating speech data based on acoustic features.
[0614] "Text input" refers to the act of inputting the content of the audio content that the user wants to generate as a character string.
[0615] "Speech data" refers to a speech file generated by a speech synthesis model based on text input.
[0616] The "providing means" refers to a system or method for transmitting the generated voice data to the user.
[0617] The "playback means" is a means for using an audio playback device or software to enable a user to listen to the generated audio data.
[0618] System Configuration
[0619] To implement this invention, the following hardware and software are required. The hardware includes a smartphone and a server. The software includes a Python environment, TensorFlow, Keras, the Librosa library, the Pydub library, and the Wave library.
[0620] Processing content
[0621] The server performs the process in the following steps.
[0622] 1. Collecting voice samples: Users can collect voice data from specific voice actors or artists by uploading audio files via their smartphones or computers.
[0623] 2. Pre-processing: The server performs noise reduction and normalization on the collected audio data, which is necessary to improve the audio quality.
[0624] 3. Extraction of acoustic features: Extract acoustic features such as Mel-Frequency Cepstrum Coefficients (MFCCs) from the preprocessed speech data.
[0625] 4. Training the speech synthesis model: The extracted acoustic features are used to train a neural network-based speech synthesis model.
[0626] 5. Text input: The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or web browser.
[0627] 6. Generate speech data: The server uses the trained speech synthesis model to generate speech data based on the user input text.
[0628] 7. Providing the generated voice data: The server provides the generated voice data to the user. The voice data can be downloaded in a file format (e.g., MP3, WAV).
[0629] 8. Playback: Users can play the generated audio data on their smartphones or computers.
[0630] Specific examples
[0631] As a concrete example, we will describe the operation of the system where a user generates the text "Hello, how are you?" in the voice of a particular voice actor.
[0632] 1. Users use the "Audio Dream" app to collect audio clips with their favorite voice actors.
[0633] 2. The app preprocesses these audios, extracts their features, and trains a model.
[0634] 3. The user types "Hello, how are you?" and the server converts the text into synthesized speech and sends it back.
[0635] 4. The app plays the synthesized voice and the user can hear the message in the voice of the specified voice actor.
[0636] Prompt Sentence Examples
[0637] Example prompts to input to a generative AI model:
[0638] Convert text to speech for "Hello, how are you?" in the voice of a specific voice actor. The process involves collecting audio data, preprocessing, extracting features, training a model, converting text to speech, and delivering the resulting audio file.
[0639] This allows users to easily create and play high-quality custom audio content in the voice of a specific voice actor or artist.
[0640] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0641] Step 1:
[0642] Collecting voice samples
[0643] A user collects audio data of their favorite voice actors or artists. Specifically, they extract audio from CDs or digital audio files and save them on their computer or smartphone. Next, they upload the audio files to the server using the device's upload interface. The input of this step is the audio files, and the output is the audio data stored on the server.
[0644] Step 2:
[0645] Audio data preprocessing
[0646] The server receives the uploaded audio files and performs preprocessing such as noise reduction and normalization. For example, it filters out background noise and makes the audio level uniform. This process improves the audio quality. The input of this step is the collected audio data, and the output is the preprocessed audio data.
[0647] Step 3:
[0648] Acoustic feature extraction
[0649] The server extracts acoustic features such as Mel-Frequency Cepstral Coefficients (MFCCs) from the preprocessed audio data. Specifically, it analyzes the audio data using the Librosa library and extracts the audio's unique features as numerical data. The input of this step is the preprocessed audio data, and the output is acoustic feature data.
[0650] Step 4:
[0651] Training the speech synthesis model
[0652] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. Specifically, it builds the model using TensorFlow and Keras and trains the speech synthesis algorithm based on the acoustic features. The input of this step is the acoustic feature data, and the output is a trained speech synthesis model.
[0653] Step 5:
[0654] Accepting text input
[0655] The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or a web browser. The input of this step is the user's text input, and the output is text data sent to the server.
[0656] Step 6:
[0657] Generating audio data
[0658] The server uses the trained speech synthesis model to generate speech data based on the user's input text. Specifically, the server uses the user's text data as a prompt and generates a speech waveform through a neural network. The inputs of this step are the text data and the speech synthesis model, and the output is the generated audio file.
[0659] Step 7:
[0660] Providing generated voice data
[0661] The server provides the generated audio data to the user in a file format (e.g., MP3, WAV). The user can receive the audio file through a download link. The input of this step is the generated audio file, and the output is the audio data sent to the user's device.
[0662] Step 8:
[0663] Playing back the generated audio
[0664] The user plays the generated audio data on a smartphone or PC. For example, audio playback software or a dedicated app can be used. The input for this step is the audio data stored on the user's device, and the output is the played audio.
[0665] The above processing steps allow users to easily generate and play high-quality custom audio content in the voice of a particular voice actor or artist.
[0666] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0667] This invention combines a system that generates high-quality custom voices using the voices of specific voice actors or idols with an emotion engine that recognizes the user's emotions. This system can adjust the voice tone and intonation according to the user's emotions while retaining the characteristics of the specific voice. Specific embodiments of this system are described below.
[0668] System Overview
[0669] The system has a flow in which a user collects specific voice, the server performs preprocessing and learning, and finally generates voice based on the user's input text and emotion. This system includes the following main processing steps.
[0670] Audio collection and preprocessing
[0671] 1. A user collects audio of a specific voice actor or idol from CDs or digital audio files and saves them on a PC. This includes the voice actor's lines, singing, interviews, etc.
[0672] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[0673] Audio data preprocessing
[0674] 1. The server receives the uploaded audio file and stores it in the database. Then it reads the file and checks the audio quality first.
[0675] 2. After checking the audio quality, the server applies a noise reduction filter to reduce background noise and then normalizes the noise-removed audio data.
[0676] 3. The server splits the normalized audio data into short clips, marks the beginning and end of each clip, and labels them as individual audio segments.
[0677] Extraction of acoustic features and training of speech synthesis models
[0678] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs).
[0679] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce the characteristics of a specific voice.
[0680] 3. The server stores the trained model in a database and manages it in a reusable format.
[0681] Text input and emotion recognition
[0682] 1. The user inputs the voice content to be generated in text format. The input interface is displayed in a web browser or a dedicated application.
[0683] 2. The device sends the text data and emotion input data entered by the user to the server. The emotion input data is analyzed in real time based on the emotion options selected by the user and voice input.
[0684] Speech production and emotion regulation
[0685] 1. The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine recognizes the user's emotion and reflects the analysis results in the speech synthesis model.
[0686] 2. The server appropriately adjusts the tone and intonation of the generated speech based on the emotion recognition results.
[0687] 3. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[0688] Audio provided
[0689] 1. The device saves the received audio file in a playable format and provides the user with a playback interface, allowing the user to play and enjoy the generated audio.
[0690] Specific examples
[0691] For example, suppose a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and further change the content of the message depending on the user's emotions.
[0692] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer.
[0693] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[0694] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[0695] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[0696] 5. The user types "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[0697] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[0698] 7. The server sends the generated audio data to the user's device, where the user plays it.
[0699] This system allows users to easily generate voices that not only match specific voices but also emotional responses.
[0700] The processing flow will be explained below.
[0701] Step 1:
[0702] Users extract their favorite idol's audio from a CD or digital audio file and save it on their PC, then upload the audio file to the server using the provided interface.
[0703] Step 2:
[0704] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[0705] Step 3:
[0706] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[0707] Step 4:
[0708] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[0709] Step 5:
[0710] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[0711] Step 6:
[0712] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[0713] Step 7:
[0714] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[0715] Step 8:
[0716] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[0717] Step 9:
[0718] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[0719] Step 10:
[0720] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[0721] Step 11:
[0722] The device also provides the user with an emotion setting interface, where the user selects the emotion (e.g., cheerful, sad, angry, etc.) of the generated voice in addition to the text. This information is also sent to the server.
[0723] Step 12:
[0724] The device sends the input text data and emotion data to the server, which triggers the speech generation process.
[0725] Step 13:
[0726] The server generates voice data using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion data and adjusts the voice tone and intonation based on the results.
[0727] Step 14:
[0728] The server then adjusts the tone and intonation of the generated voice appropriately based on the emotion recognition results. For example, if you select the "energetic" emotion, the voice tone will be set to a bright and lively tone.
[0729] Step 15:
[0730] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[0731] Step 16:
[0732] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[0733] Example 2
[0734] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0735] Conventional speech synthesis systems have difficulty generating custom voices using the voices of specific voice actors or idols. Furthermore, they lack the ability to adjust the tone and intonation of the voice according to the user's emotions. This makes it impossible to generate high-quality custom voices that meet the user's needs.
[0736] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0737] In this invention, the server includes means for collecting recommended voices, means for preprocessing voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for storing the trained voice synthesis model in a database, means for receiving text input from a user, means for receiving emotion data from the user, means for generating voice data based on the input text and the emotion data, means for adjusting the tone and intonation of the generated voice data, and means for providing the generated voice data, thereby enabling the generation of high-quality custom voices according to the user's emotions.
[0738] "Recommended voice" refers to the voice data of a specific voice actor or idol, and is the voice data that serves as the basis for generating custom voices in the system.
[0739] "Preprocessing" refers to the process of performing processes such as noise removal and normalization on collected voice data to prepare it in a format suitable for extracting acoustic features and training a voice synthesis model.
[0740] "Acoustic features" are characteristic information extracted from speech signals, including Mel-Frequency Cepstrum Coefficients (MFCCs), which numerically represent the characteristics of speech data.
[0741] A "speech synthesis model" is a trained neural network-based model that generates custom speech based on input acoustic features and text data.
[0742] A "database" is a storage system for storing speech data and trained speech synthesis models so that they can be accessed and reused as needed.
[0743] "Text input" refers to inputting the content of the voice that the user wants to generate as a string of characters, and is the data that forms the basis for voice generation in the system.
[0744] "Emotion data" is data that expresses the user's emotional state and is input along with the text data, which adjusts the tone and intonation of the generated voice.
[0745] The "means for generating voice data" refers to a process for generating voice using a voice synthesis model based on text data and emotion data, thereby creating a custom voice.
[0746] The "means for adjusting tone and intonation" is a process for changing the tone and intonation of the generated voice data in accordance with the emotional data, to make the voice more realistic and emotionally rich.
[0747] The "means for providing" refers to the process of converting the generated audio data into an appropriate file format and providing it to the user, with the aim of allowing the user to receive the audio in a reproducible form.
[0748] MODE FOR CARRYING OUT THE INVENTION
[0749] The present invention is a system that collects specific voices, performs pre-processing and training on a server, and finally generates custom voices based on the user's input text and emotions. Specific embodiments of this system will be described below.
[0750] System Overview
[0751] The system works by using dedicated software and hardware to create speech based on the user's input text and emotion data, after which the server performs preprocessing and training of a speech synthesis model.
[0752] Audio collection
[0753] Users use CDs or digital audio files to collect the audio of a particular voice actor or idol, save them on their computers, and then use specialized audio editing software (e.g., Audacity) to extract only the parts they want.
[0754] Uploading and Preprocessing
[0755] The terminal provides an interface for users to upload collected audio files to the server. Users select and upload audio files using a web browser or a dedicated application. The terminal then transfers the selected files to the server.
[0756] The server receives the uploaded audio file and stores it in a database. The server then checks the quality of the audio file and applies a noise reduction filter (e.g., Noisereduce) to reduce background noise. The server then normalizes the denoised audio data and splits it into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used for these processes.
[0757] Acoustic feature extraction and model training
[0758] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio.
[0759] The server then uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using frameworks such as TensorFlow and PyTorch, and a model designed to reproduce the characteristics of a specific voice is constructed. Once the model is trained, it is stored in a database and managed in a reusable format.
[0760] Text input and emotion recognition
[0761] The user inputs the content of the voice to be generated in text format. The user enters the text into an input field in a dedicated web browser or application, and selects an emotion option. The emotion data is sent to the server along with the text.
[0762] Speech production and emotion regulation
[0763] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine analyzes the user's emotions and reflects the results in the speech synthesis model.
[0764] The server adjusts the tone and intonation of the generated voice based on the emotion recognition result. For example, if the user selects the "energetic" emotion, the server sets the tone brighter and the intonation lively.
[0765] The generated audio data is converted into a file format such as MP3 or WAV and sent from the server to the terminal.
[0766] Audio provision and playback
[0767] The terminal stores the received audio file in a playable format and provides a playback interface to the user, through which the user can play and enjoy the generated audio.
[0768] Specific examples
[0769] For example, if a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and then change the content depending on the emotion, the following steps can be taken.
[0770] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer. Using dedicated software, they can edit only the necessary parts.
[0771] 2. Upload the audio file to the server using the device's upload interface.
[0772] 3. The server receives the audio file, stores it in a database, denoises it, normalizes it, and splits it into 2-second clips.
[0773] 4. The server extracts MFCC acoustic features from the preprocessed speech data and trains a neural network model.
[0774] 5. The user enters the text "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[0775] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[0776] 7. The server converts the generated audio data into MP3 format and sends it to the user's device.
[0777] 8. The device stores the received audio file and provides a playback interface, allowing the user to play it and enjoy the cheerful message, "Good morning, it's a nice day today."
[0778] Prompt Sentence Examples
[0779] You can generate a custom voice by inputting the prompt sentence below into the generative AI model.
[0780] example:
[0781] "Please generate a message saying 'Good morning, it's a nice day today' in a cheerful voice by a female voice actor. Please use an MP3 file."
[0782] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0783] Step 1: Collect and store audio
[0784] Users collect the audio of a particular voice actor or idol from CDs or digital audio files and save them on their PC. They then use specialized audio editing software (e.g., Audacity) to extract only the lines or parts they need. The input data is an audio file, and the output data is also an edited audio file.
[0785] Step 2: Upload your audio file
[0786] The terminal provides an interface for users to upload collected audio files to the server. Users use a web browser or application to select audio files and click the upload button. The input data is the audio file stored on the user's PC, and the output data is the audio file transferred to the server.
[0787] Step 3: Receiving and storing audio data
[0788] The server receives the uploaded audio file and stores it in the database. It checks the format of the audio file and converts it to the correct format using the appropriate codec (e.g. FFmpeg). The input data is the uploaded audio file, and the output data is the audio file stored on the server.
[0789] Step 4: Check audio quality and remove noise
[0790] The server checks the quality of the received audio file and applies a noise reduction filter to reduce background noise. A noise reduction algorithm (e.g., Noisereduce) is used to remove noise from the audio data. The input data is the converted audio file, and the output data is the denoised audio file.
[0791] Step 5: Normalization
[0792] The server normalizes the noise-removed audio data to equalize the volume, ensuring consistent volume levels. The input data is the noise-removed audio file, and the output data is the normalized audio file.
[0793] Step 6: Split the audio clip
[0794] The server splits the normalized audio data into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used to mark the beginning and end of the audio clips and label each clip. The input data is the normalized audio file, and the output data is the split audio clips.
[0795] Step 7: Extraction of acoustic features
[0796] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients: MFCCs) from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio data. The input data are the segmented audio clips, and the output data are the extracted acoustic features.
[0797] Step 8: Training the speech synthesis model
[0798] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using a neural network framework such as TensorFlow or PyTorch to build a model that reproduces the characteristics of a specific voice. The input data are the acoustic features, and the output data is the trained speech synthesis model.
[0799] Step 9: Save the speech synthesis model
[0800] The server stores the trained speech synthesis model in a database and manages it in a reusable format. The input data is the trained speech synthesis model, and the output data is the saved speech synthesis model.
[0801] Step 10: Enter text and select emotion
[0802] The user inputs the speech content to be generated in text format and selects emotion options. The input interface uses a dedicated web browser or application. The input data is text input and emotion data, and the output data is the transmission of the input data to the server.
[0803] Step 11: Speech production and emotion regulation
[0804] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion and reflects the results in the speech synthesis model. The input data is text data and emotion data, and the output data is the generated speech data.
[0805] Step 12: Adjust the tone and intonation of the audio data
[0806] The server adjusts the tone and intonation of the generated voice data to generate voice that matches the emotion. For example, if the user selects the emotion "energetic," the server sets the tone bright and the intonation lively. The input data is the generated voice data, and the output data is the voice data with the adjusted tone and intonation.
[0807] Step 13: Convert and provide audio data
[0808] The server converts the generated audio data into an appropriate file format, such as MP3 or WAV, and sends it to the user's device. The input data is the adjusted audio data, and the output data is the converted audio file.
[0809] Step 14: Save and play the audio file
[0810] The terminal saves the received audio file in a playable format and provides a playback interface for the user, through which the user can play and enjoy the generated audio. The input data is the converted audio file, and the output data is the played audio.
[0811] (Application example 2)
[0812] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0813] Today, food delivery service users are looking for a more advanced user experience than simply receiving order confirmations and progress notifications. However, conventional systems lack the ability to deliver voice notifications with a tone and intonation that reflects emotions, making it difficult to provide personalized service to individual users. Furthermore, if a user wanted to receive voice notifications in the voice of a specific voice actor or idol, it was extremely difficult to realize this desire.
[0814] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0815] In this invention, the server includes means for analyzing a user's emotions through emotion recognition, means for generating voice data based on the analyzed emotion data, and means for adjusting the tone and intonation of the voice based on the emotion data analyzed through emotion recognition. This enables a food delivery service user to receive notifications in the voice of a specific voice actor or idol with a tone and intonation that corresponds to the emotion.
[0816] "Preferred Voice" refers to the particular voice that the user wishes to use.
[0817] "Means for preprocessing audio data" refers to techniques for removing noise and normalizing raw audio data.
[0818] The "means for extracting acoustic features" is a method for extracting characteristic parameters such as Mel-frequency cepstrum coefficients from speech data.
[0819] "Means for training a speech synthesis model" refers to a method of using a machine learning model such as a neural network to acquire speech synthesis capabilities based on acoustic features.
[0820] "Means for receiving text input" refers to an interface through which the system receives and processes character data entered by a user.
[0821] "Means for analyzing user emotions through emotion recognition" refers to algorithms and technologies that infer a user's emotional state from input text or voice.
[0822] "Means for generating voice data based on analyzed emotion data" refers to the process of using emotion recognition results to generate voice corresponding to the user's emotion.
[0823] "Means for adjusting the tone and intonation of speech" refers to technology that changes the intonation or tone of the generated speech to match the user's emotional state.
[0824] "Means for providing generated speech data" refers to the method or interface used to communicate synthesized speech to the user.
[0825] A specific system for implementing this invention is configured using the following hardware and software. First, the system saves recommended voices collected by users to a PC and uploads them to a server. The server receives the uploaded voice data and applies a noise reduction filter and normalization process. Next, the server extracts acoustic features from the preprocessed voice data, primarily using Mel-Frequency Cepstrum Coefficients (MFCC). Based on this, a voice synthesis model using a neural network is trained.
[0826] The hardware used is primarily a smartphone (iOS or Android), which serves as the device through which the user receives the speech generation results. The software used includes Google Cloud Text-to-Speech API and IBM Watson Text-to-Speech for speech recognition and synthesis, and Microsoft Azure Emotion API for emotion recognition. Additionally, Firebase and MySQL are used for database management.
[0827] When a user inputs text, the device sends this text data to a server. The server uses an emotion recognition engine to analyze the user's emotions from the input text and generates voice data based on this. The tone and intonation of the generated voice data are appropriately adjusted based on the emotion recognition results. Finally, the generated voice data is implemented as a smartphone application and provided to the user.
[0828] For example, if a user enters the text "Did your order complete successfully?", the emotion recognition engine will detect the user's anxiety and generate a gentle voice response saying "Yes, your order has been completed successfully." This voice message will be sent to the user's smartphone and played back immediately.
[0829] An example of a specific prompt sentence to input into the generative AI model is as follows:
[0830] "Is my order completed successfully?"
[0831] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0832] Step 1:
[0833] The user collects recommended audio. The user saves the audio of a specific voice actor or idol in MP3 or WAV format on their PC and prepares the file. Here, the audio file is input.
[0834] Step 2:
[0835] The device uploads the audio data to the server. Using a dedicated application or a web browser interface, the user selects the audio files they have collected and sends them to the server, where they are uploaded.
[0836] Step 3:
[0837] The server preprocesses the audio data. It applies a noise reduction filter to the received audio file and performs normalization processing. The processed audio data is output. Here, noise reduction and standardization of the audio data are performed.
[0838] Step 4:
[0839] The server extracts acoustic features, primarily Mel-Frequency Cepstrum Coefficients (MFCCs), from the preprocessed audio data. The acoustic features are output and provided to the neural network, where the audio data is converted into numerical data.
[0840] Step 5:
[0841] The server trains a speech synthesis model. A neural network model is trained based on the extracted acoustic features. The speech synthesis model is output and stored in a database. Here, machine learning is used to improve the speech reproduction ability.
[0842] Step 6:
[0843] The user inputs text. The content of the voice that the user wants to generate is input in text format through the smartphone application interface. The input text is sent to the server, where the user's desired voice message is entered.
[0844] Step 7:
[0845] The terminal sends text and emotion input data to the server. Along with the text entered by the user, emotion options (e.g., joy, anxiety, etc.) are also sent to the server. Emotion data is input. Here, the user's emotional state is conveyed to the system.
[0846] Step 8:
[0847] The server performs emotion recognition and analyzes the user's emotions. Based on the received text data, the Microsoft Azure Emotion API is used to identify emotions. The emotion analysis results are output. Here, emotion recognition is applied to the text data.
[0848] Step 9:
[0849] The server generates voice data. Based on the analyzed emotion data, a trained voice synthesis model is used to generate voice with a tone and intonation that matches the user's emotion. The generated voice data is output in file format. Here, emotion-adjusted voice is created.
[0850] Step 10:
[0851] The server sends the generated audio data to the device, saves the generated audio in MP3 or WAV format, and sends it to the user's smartphone, where the generated audio file is provided to the user.
[0852] Step 11:
[0853] The device plays the received audio data. The user can listen to the audio data sent from the server using the playback interface on the smartphone. The audio file is output in a playable format. Here, the user can enjoy the custom audio.
[0854] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0855] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0856] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0857] [Third embodiment]
[0858] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0859] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0860] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0861] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0862] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0863] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0864] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0865] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0866] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0867] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0868] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0869] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[0870] The present invention relates to a system for generating high-quality custom voices using the voices of specific voice actors or idols. Specific embodiments of this system will be described below.
[0871] System Overview
[0872] The system has a flow in which a user collects specific speech, the server preprocesses and learns it, and finally generates speech based on the user's input text. This system includes the following main processing steps.
[0873] Audio collection and preprocessing
[0874] 1. A user uses their device (e.g., PC, smartphone) to collect audio of a specific voice actor or idol from CDs or digital audio files, including the voice actor's lines, singing voice, interviews, etc.
[0875] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[0876] Audio data preprocessing
[0877] 1. The server receives the uploaded audio file and first performs noise reduction, a filtering process to remove background noise and unwanted sounds.
[0878] 2. The server then performs a normalization process to unify the audio levels, ensuring consistency of the audio.
[0879] 3. The server then divides the audio data into appropriate lengths and labels each audio clip. This division is important for improving speech recognition accuracy.
[0880] Extraction of acoustic features and training of speech synthesis models
[0881] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs), which capture the inherent characteristics of the audio.
[0882] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce specific vocal characteristics.
[0883] 3. The server stores the trained model in a database and manages it in a reusable format.
[0884] Text input and speech generation
[0885] 1. The user inputs the content of the voice to be generated in text format. The input interface is displayed on a web browser or a dedicated application.
[0886] 2. The terminal provides a means of communication to send the entered text to the server.
[0887] Speech generation and delivery
[0888] 1. The server generates voice data based on the received text using a trained speech synthesis model, which creates a voice that speaks the text content in the voice of a specific voice actor or idol.
[0889] 2. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[0890] 3. The device saves the received audio file in a playable format and provides an interface that allows the user to play it.
[0891] Specific examples
[0892] For example, if a user wants to create a custom message using specific lines from a popular voice actor:
[0893] 1. The user extracts the audio files from a CD containing the voice actor's lines and saves them on their computer.
[0894] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[0895] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[0896] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[0897] 5. Using the trained model, generate speech based on the text entered by the user: "Good morning, it's a nice day today."
[0898] 6. The server sends the generated audio data to the user's device, where the user can play it.
[0899] This series of processes allows the user to easily create a high-quality voice message in a specific voice.
[0900] The processing flow will be explained below.
[0901] Step 1:
[0902] Users extract their favorite idol's voice from a CD or digital audio file and save it to their PC, then upload the audio file using the provided interface.
[0903] Step 2:
[0904] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[0905] Step 3:
[0906] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[0907] Step 4:
[0908] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[0909] Step 5:
[0910] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[0911] Step 6:
[0912] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[0913] Step 7:
[0914] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[0915] Step 8:
[0916] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[0917] Step 9:
[0918] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[0919] Step 10:
[0920] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[0921] Step 11:
[0922] The device sends the input text data to the server, which triggers the speech generation process.
[0923] Step 12:
[0924] The server inputs the received text into a speech synthesis model to generate audio data, in the process speaking the text content in a specific voice.
[0925] Step 13:
[0926] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[0927] Step 14:
[0928] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[0929] Example 1
[0930] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0931] Currently, existing speech synthesis systems on the market face the challenge of easily generating high-quality custom speech using specific speech data. Collecting specific speech, preprocessing it to extract acoustic features, and finally synthesizing speech using a neural network poses numerous technical challenges. Furthermore, the lack of a series of preprocessing steps, such as noise reduction, normalization, and segmentation and labeling of speech data, can degrade the final speech quality. A new approach to address these challenges is needed.
[0932] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0933] In this invention, the server includes means for collecting specific voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, means for receiving uploaded voice files and performing noise reduction, means for normalizing to unify the voice level, means for dividing the voice data into appropriate lengths and labeling each voice clip, means for extracting acoustic features from the preprocessed voice clips, means for inputting the extracted acoustic features into a neural network-based voice synthesis model to train the model, and means for storing the trained model in a database. This enables easy generation of high-quality custom voices using specific voices.
[0934] "Specific voice" refers to the voice of an individual person, such as a specific voice actor or idol, and is voice data used for voice synthesis.
[0935] "Preprocessing" refers to the initial processing steps to improve the overall audio quality, such as denoising and normalising the audio data, splitting and labelling audio clips, etc.
[0936] "Acoustic features" are feature values extracted from speech signals and are data used primarily to represent the inherent characteristics of speech. Specifically, they include Mel-Frequency Cepstrum Coefficients (MFCCs).
[0937] A "speech synthesis model" is a machine learning model that is trained using acoustic features as input and is designed to reproduce specific speech characteristics.
[0938] "Text input" refers to an operation in which the user inputs the voice content that he or she wishes to generate in text form.
[0939] "Noise reduction" is a process that removes background noise and unnecessary sounds from audio data, and is achieved using filtering technology.
[0940] "Normalization" is a process for unifying the volume level of audio data to ensure consistency.
[0941] "Segmentation and labeling" is the process of dividing audio data into segments of appropriate length and assigning labels to each segment.
[0942] A "neural network" is a machine learning algorithm used to train a speech synthesis model, and has a network structure consisting of multiple layers of nodes.
[0943] A "database" is a system for systematically storing and managing trained speech synthesis models and speech data.
[0944] This invention is a system for generating high-quality custom voices using specific voices. The system has a flow in which a user collects specific voices, a server preprocesses and learns the collected voices, and finally generates voices based on the user's input text. The embodiments for implementing the invention will be described with specific examples.
[0945] Hardware and software used
[0946] The following hardware and software are used to implement this system.
[0947] 1. User device: A device such as a PC or smartphone that can collect audio files and upload them to a server.
[0948] 2. Server: A high-performance computer that preprocesses speech data, extracts acoustic features, trains models, and generates speech.
[0949] 3. Software: Audio processing libraries (e.g., FFmpeg, librosa), deep learning frameworks (e.g., TensorFlow, PyTorch).
[0950] Processing flow and specific examples
[0951] Audio collection and uploading
[0952] 1. Users collect the audio of a specific voice actor or idol using a computer or smartphone. For example, they extract the audio from a CD containing the voice actor's lines or download it from an online distribution site.
[0953] 2. The device provides an interface for the user to select the audio file and upload it to the server. This can be done using the file upload function of a web browser or the file selection dialog of a dedicated application.
[0954] Audio data preprocessing
[0955] 3. The server receives the uploaded audio file and first performs noise filtering. The open source audio processing library FFmpeg can be used.
[0956] 4. The server then normalizes the audio to make the volume level uniform. This can also be done using FFmpeg.
[0957] 5. The server splits the normalized audio into appropriate lengths. To ensure consistency across audio clips, the segmentation is performed using audio processing tools or scripts.
[0958] Acoustic feature extraction and model training
[0959] 6. The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clip. The features are generated using librosa, a Python audio processing library.
[0960] 7. The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using deep learning frameworks such as TensorFlow and PyTorch.
[0961] 8. The server saves the trained model in a database for future reuse.
[0962] Text input and speech generation
[0963] 9. The user inputs the generated voice content in text format through a text input interface on a web browser or a dedicated application.
[0964] 10. The terminal sends the entered text data to the server using an HTTP request.
[0965] Speech generation and delivery
[0966] 11. The server generates voice data based on the received text data using a pre-trained speech synthesis model. For example, if you input a prompt phrase such as "Good morning, it's a nice day today," the corresponding voice will be generated.
[0967] 12. The server converts the generated audio data into a file format such as MP3 or WAV and sends it to the user's device. This is done by returning the file as an HTTP response.
[0968] 13. The terminal saves the received audio file and provides a playback interface. The user can click the play button to play the generated audio file.
[0969] By following these steps, users can easily generate high-quality custom voices using specific voices. This system efficiently performs a series of processes from voice collection to pre-processing, training, and voice generation.
[0970] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0971] Step 1:
[0972] Users can collect audio of a specific voice actor or idol using a computer or smartphone, for example by extracting audio files from a CD containing the actor's lines or by downloading them from an online distribution site.
[0973] Input: Audio files collected from CDs and online distribution sites.
[0974] Output: Audio file saved on the user's device.
[0975] Step 2:
[0976] The terminal provides an interface for the user to select the audio file specified by the user and upload it to the server, such as the file upload function of a web browser or a file selection dialog of a dedicated application.
[0977] Input: Audio files saved by the user on their device.
[0978] Output: The audio file that will be uploaded to the server.
[0979] Step 3:
[0980] The server receives the uploaded audio file and first performs noise filtering using the open source audio processing library FFmpeg. It applies noise removal filtering to produce clearer audio.
[0981] Input: Uploaded audio file.
[0982] Output: Denoised audio file.
[0983] Step 4:
[0984] The server then performs an audio normalization process, again using FFmpeg, to equalize the volume level of the audio, adjusting the amplitude of the entire audio waveform to maintain a consistent volume level.
[0985] Input: The audio file with noise removed.
[0986] Output: Normalized audio file.
[0987] Step 5:
[0988] The server splits the normalized audio into clips of appropriate length, labels each clip, and runs a segmentation algorithm using audio processing tools or scripts to ensure each segment has consistent context and audio characteristics.
[0989] Input: Normalized audio file.
[0990] Output: Labeled audio clips.
[0991] Step 6:
[0992] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips using the Python audio processing library librosa. A feature vector is generated from each audio clip and used as input data for the audio model.
[0993] Input: Labeled audio clips.
[0994] Output: Acoustic feature vector.
[0995] Step 7:
[0996] The server uses the extracted acoustic features to train a neural network-based speech synthesis model using deep learning frameworks such as TensorFlow and PyTorch. The training process involves optimizing the model parameters through a large dataset of speech features.
[0997] Input: Acoustic feature vector.
[0998] Output: A trained speech synthesis model.
[0999] Step 8:
[1000] The server stores the trained model in a database that contains the speech synthesis model parameters and metadata for future reuse.
[1001] Input: A trained speech synthesis model.
[1002] Output: A speech synthesis model stored in a database.
[1003] Step 9:
[1004] The user inputs the contents of the voice to be generated in text format through a text input interface on a web browser or a dedicated application, for example, "Good morning, it's a nice day today."
[1005] Input: The text of the speech you want to generate.
[1006] Output: Text entered into a web browser or application.
[1007] Step 10:
[1008] The terminal sends the input text data to the server using an HTTP request. Communication with the server is established and the text data is securely transmitted.
[1009] Input: The text entered by the user.
[1010] Output: The text data sent to the server.
[1011] Step 11:
[1012] The server generates voice data based on the received text data using a trained speech synthesis model. For example, it converts the text "Good morning, it's a nice day today" into voice.
[1013] Input: Text data, trained speech synthesis model.
[1014] Output: The generated audio data.
[1015] Step 12:
[1016] The server converts the generated audio data into a file format such as MP3 or WAV, and sends it to the user's device. The audio file is sent as an HTTP response.
[1017] Input: The generated audio data.
[1018] Output: Audio files in MP3 and WAV formats.
[1019] Step 13:
[1020] The terminal stores the received audio file and provides a playback interface, and when the user clicks the play button, the generated audio file is played.
[1021] Input: MP3 or WAV format audio files.
[1022] Output: Playable audio file and playback interface.
[1023] (Application example 1)
[1024] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1025] In the field of audiobooks and other audio content, there is no system in place that allows users to generate high-quality audio in the voices of their preferred voice actors and artists, forcing users to rely on limited audio options and making it difficult to create customized audio content.
[1026] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1027] In this invention, the server includes means for collecting recommended voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a speech synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, and means for playing the generated voice data, thereby enabling users to easily generate and play high-quality custom voice content in the voice of a specific voice actor or artist.
[1028] "Recommended audio" refers to audio data of specific voice actors or artists selected for collection.
[1029] "Preprocessing" refers to the process of noise removal and normalization performed on collected audio data.
[1030] "Acoustic features" are characteristic data such as Mel-Frequency Cepstrum Coefficients (MFCCs) extracted from speech data.
[1031] A "speech synthesis model" is a neural network-based model for generating speech data based on acoustic features.
[1032] "Text input" refers to the act of inputting the content of the audio content that the user wants to generate as a character string.
[1033] "Speech data" refers to a speech file generated by a speech synthesis model based on text input.
[1034] The "providing means" refers to a system or method for transmitting the generated voice data to the user.
[1035] The "playback means" is a means for using an audio playback device or software to enable a user to listen to the generated audio data.
[1036] System Configuration
[1037] To implement this invention, the following hardware and software are required. The hardware includes a smartphone and a server. The software includes a Python environment, TensorFlow, Keras, the Librosa library, the Pydub library, and the Wave library.
[1038] Processing content
[1039] The server performs the process in the following steps.
[1040] 1. Collecting voice samples: Users can collect voice data from specific voice actors or artists by uploading audio files via their smartphones or computers.
[1041] 2. Pre-processing: The server performs noise reduction and normalization on the collected audio data, which is necessary to improve the audio quality.
[1042] 3. Extraction of acoustic features: Extract acoustic features such as Mel-Frequency Cepstrum Coefficients (MFCCs) from the preprocessed speech data.
[1043] 4. Training the speech synthesis model: The extracted acoustic features are used to train a neural network-based speech synthesis model.
[1044] 5. Text input: The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or web browser.
[1045] 6. Generate speech data: The server uses the trained speech synthesis model to generate speech data based on the user input text.
[1046] 7. Providing the generated voice data: The server provides the generated voice data to the user. The voice data can be downloaded in a file format (e.g., MP3, WAV).
[1047] 8. Playback: Users can play the generated audio data on their smartphones or computers.
[1048] Specific examples
[1049] As a concrete example, we will describe the operation of the system where a user generates the text "Hello, how are you?" in the voice of a particular voice actor.
[1050] 1. Users use the "Audio Dream" app to collect audio clips with their favorite voice actors.
[1051] 2. The app preprocesses these audios, extracts their features, and trains a model.
[1052] 3. The user types "Hello, how are you?" and the server converts the text into synthesized speech and sends it back.
[1053] 4. The app plays the synthesized voice and the user can hear the message in the voice of the specified voice actor.
[1054] Prompt Sentence Examples
[1055] Example prompts to input to a generative AI model:
[1056] Convert text to speech for "Hello, how are you?" in the voice of a specific voice actor. The process involves collecting audio data, preprocessing, extracting features, training a model, converting text to speech, and delivering the resulting audio file.
[1057] This allows users to easily create and play high-quality custom audio content in the voice of a specific voice actor or artist.
[1058] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1059] Step 1:
[1060] Collecting voice samples
[1061] A user collects audio data of their favorite voice actors or artists. Specifically, they extract audio from CDs or digital audio files and save them on their computer or smartphone. Next, they upload the audio files to the server using the device's upload interface. The input of this step is the audio files, and the output is the audio data stored on the server.
[1062] Step 2:
[1063] Audio data preprocessing
[1064] The server receives the uploaded audio files and performs preprocessing such as noise reduction and normalization. For example, it filters out background noise and makes the audio level uniform. This process improves the audio quality. The input of this step is the collected audio data, and the output is the preprocessed audio data.
[1065] Step 3:
[1066] Acoustic feature extraction
[1067] The server extracts acoustic features such as Mel-Frequency Cepstral Coefficients (MFCCs) from the preprocessed audio data. Specifically, it analyzes the audio data using the Librosa library and extracts the audio's unique features as numerical data. The input of this step is the preprocessed audio data, and the output is acoustic feature data.
[1068] Step 4:
[1069] Training the speech synthesis model
[1070] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. Specifically, it builds the model using TensorFlow and Keras and trains the speech synthesis algorithm based on the acoustic features. The input of this step is the acoustic feature data, and the output is a trained speech synthesis model.
[1071] Step 5:
[1072] Accepting text input
[1073] The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or a web browser. The input of this step is the user's text input, and the output is text data sent to the server.
[1074] Step 6:
[1075] Generating audio data
[1076] The server uses the trained speech synthesis model to generate speech data based on the user's input text. Specifically, the server uses the user's text data as a prompt and generates a speech waveform through a neural network. The inputs of this step are the text data and the speech synthesis model, and the output is the generated audio file.
[1077] Step 7:
[1078] Providing generated voice data
[1079] The server provides the generated audio data to the user in a file format (e.g., MP3, WAV). The user can receive the audio file through a download link. The input of this step is the generated audio file, and the output is the audio data sent to the user's device.
[1080] Step 8:
[1081] Playing back the generated audio
[1082] The user plays the generated audio data on a smartphone or PC. For example, audio playback software or a dedicated app can be used. The input for this step is the audio data stored on the user's device, and the output is the played audio.
[1083] The above processing steps allow users to easily generate and play high-quality custom audio content in the voice of a particular voice actor or artist.
[1084] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1085] This invention combines a system that generates high-quality custom voices using the voices of specific voice actors or idols with an emotion engine that recognizes the user's emotions. This system can adjust the voice tone and intonation according to the user's emotions while retaining the characteristics of the specific voice. Specific embodiments of this system are described below.
[1086] System Overview
[1087] The system has a flow in which a user collects specific voice, the server performs preprocessing and learning, and finally generates voice based on the user's input text and emotion. This system includes the following main processing steps.
[1088] Audio collection and preprocessing
[1089] 1. A user collects audio of a specific voice actor or idol from CDs or digital audio files and saves them on a PC. This includes the voice actor's lines, singing, interviews, etc.
[1090] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[1091] Audio data preprocessing
[1092] 1. The server receives the uploaded audio file and stores it in the database. Then it reads the file and checks the audio quality first.
[1093] 2. After checking the audio quality, the server applies a noise reduction filter to reduce background noise and then normalizes the noise-removed audio data.
[1094] 3. The server splits the normalized audio data into short clips, marks the beginning and end of each clip, and labels them as individual audio segments.
[1095] Extraction of acoustic features and training of speech synthesis models
[1096] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs).
[1097] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce the characteristics of a specific voice.
[1098] 3. The server stores the trained model in a database and manages it in a reusable format.
[1099] Text input and emotion recognition
[1100] 1. The user inputs the voice content to be generated in text format. The input interface is displayed in a web browser or a dedicated application.
[1101] 2. The device sends the text data and emotion input data entered by the user to the server. The emotion input data is analyzed in real time based on the emotion options selected by the user and voice input.
[1102] Speech production and emotion regulation
[1103] 1. The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine recognizes the user's emotion and reflects the analysis results in the speech synthesis model.
[1104] 2. The server appropriately adjusts the tone and intonation of the generated speech based on the emotion recognition results.
[1105] 3. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[1106] Audio provided
[1107] 1. The device saves the received audio file in a playable format and provides the user with a playback interface, allowing the user to play and enjoy the generated audio.
[1108] Specific examples
[1109] For example, suppose a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and further change the content of the message depending on the user's emotions.
[1110] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer.
[1111] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[1112] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[1113] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[1114] 5. The user types "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[1115] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[1116] 7. The server sends the generated audio data to the user's device, where the user plays it.
[1117] This system allows users to easily generate voices that not only match specific voices but also emotional responses.
[1118] The processing flow will be explained below.
[1119] Step 1:
[1120] Users extract their favorite idol's audio from a CD or digital audio file and save it on their PC, then upload the audio file to the server using the provided interface.
[1121] Step 2:
[1122] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[1123] Step 3:
[1124] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[1125] Step 4:
[1126] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[1127] Step 5:
[1128] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[1129] Step 6:
[1130] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[1131] Step 7:
[1132] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[1133] Step 8:
[1134] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[1135] Step 9:
[1136] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[1137] Step 10:
[1138] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[1139] Step 11:
[1140] The device also provides the user with an emotion setting interface, where the user selects the emotion (e.g., cheerful, sad, angry, etc.) of the generated voice in addition to the text. This information is also sent to the server.
[1141] Step 12:
[1142] The device sends the input text data and emotion data to the server, which triggers the speech generation process.
[1143] Step 13:
[1144] The server generates voice data using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion data and adjusts the voice tone and intonation based on the results.
[1145] Step 14:
[1146] The server then adjusts the tone and intonation of the generated voice appropriately based on the emotion recognition results. For example, if you select the "energetic" emotion, the voice tone will be set to a bright and lively tone.
[1147] Step 15:
[1148] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[1149] Step 16:
[1150] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[1151] Example 2
[1152] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1153] Conventional speech synthesis systems have difficulty generating custom voices using the voices of specific voice actors or idols. Furthermore, they lack the ability to adjust the tone and intonation of the voice according to the user's emotions. This makes it impossible to generate high-quality custom voices that meet the user's needs.
[1154] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1155] In this invention, the server includes means for collecting recommended voices, means for preprocessing voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for storing the trained voice synthesis model in a database, means for receiving text input from a user, means for receiving emotion data from the user, means for generating voice data based on the input text and the emotion data, means for adjusting the tone and intonation of the generated voice data, and means for providing the generated voice data, thereby enabling the generation of high-quality custom voices according to the user's emotions.
[1156] "Recommended voice" refers to the voice data of a specific voice actor or idol, and is the voice data that serves as the basis for generating custom voices in the system.
[1157] "Preprocessing" refers to the process of performing processes such as noise removal and normalization on collected voice data to prepare it in a format suitable for extracting acoustic features and training a voice synthesis model.
[1158] "Acoustic features" are characteristic information extracted from speech signals, including Mel-Frequency Cepstrum Coefficients (MFCCs), which numerically represent the characteristics of speech data.
[1159] A "speech synthesis model" is a trained neural network-based model that generates custom speech based on input acoustic features and text data.
[1160] A "database" is a storage system for storing speech data and trained speech synthesis models so that they can be accessed and reused as needed.
[1161] "Text input" refers to inputting the content of the voice that the user wants to generate as a string of characters, and is the data that forms the basis for voice generation in the system.
[1162] "Emotion data" is data that expresses the user's emotional state and is input along with the text data, which adjusts the tone and intonation of the generated voice.
[1163] The "means for generating voice data" refers to a process for generating voice using a voice synthesis model based on text data and emotion data, thereby creating a custom voice.
[1164] The "means for adjusting tone and intonation" is a process for changing the tone and intonation of the generated voice data in accordance with the emotional data, to make the voice more realistic and emotionally rich.
[1165] The "means for providing" refers to the process of converting the generated audio data into an appropriate file format and providing it to the user, with the aim of allowing the user to receive the audio in a reproducible form.
[1166] MODE FOR CARRYING OUT THE INVENTION
[1167] The present invention is a system that collects specific voices, performs pre-processing and training on a server, and finally generates custom voices based on the user's input text and emotions. Specific embodiments of this system will be described below.
[1168] System Overview
[1169] The system works by using dedicated software and hardware to create speech based on the user's input text and emotion data, after which the server performs preprocessing and training of a speech synthesis model.
[1170] Audio collection
[1171] Users use CDs or digital audio files to collect the audio of a particular voice actor or idol, save them on their computers, and then use specialized audio editing software (e.g., Audacity) to extract only the parts they want.
[1172] Uploading and Preprocessing
[1173] The terminal provides an interface for users to upload collected audio files to the server. Users select and upload audio files using a web browser or a dedicated application. The terminal then transfers the selected files to the server.
[1174] The server receives the uploaded audio file and stores it in a database. The server then checks the quality of the audio file and applies a noise reduction filter (e.g., Noisereduce) to reduce background noise. The server then normalizes the denoised audio data and splits it into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used for these processes.
[1175] Acoustic feature extraction and model training
[1176] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio.
[1177] The server then uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using frameworks such as TensorFlow and PyTorch, and a model designed to reproduce the characteristics of a specific voice is constructed. Once the model is trained, it is stored in a database and managed in a reusable format.
[1178] Text input and emotion recognition
[1179] The user inputs the content of the voice to be generated in text format. The user enters the text into an input field in a dedicated web browser or application, and selects an emotion option. The emotion data is sent to the server along with the text.
[1180] Speech production and emotion regulation
[1181] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine analyzes the user's emotions and reflects the results in the speech synthesis model.
[1182] The server adjusts the tone and intonation of the generated voice based on the emotion recognition result. For example, if the user selects the "energetic" emotion, the server sets the tone brighter and the intonation lively.
[1183] The generated audio data is converted into a file format such as MP3 or WAV and sent from the server to the terminal.
[1184] Audio provision and playback
[1185] The terminal stores the received audio file in a playable format and provides a playback interface to the user, through which the user can play and enjoy the generated audio.
[1186] Specific examples
[1187] For example, if a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and then change the content depending on the emotion, the following steps can be taken.
[1188] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer. Using dedicated software, they can edit only the necessary parts.
[1189] 2. Upload the audio file to the server using the device's upload interface.
[1190] 3. The server receives the audio file, stores it in a database, denoises it, normalizes it, and splits it into 2-second clips.
[1191] 4. The server extracts MFCC acoustic features from the preprocessed speech data and trains a neural network model.
[1192] 5. The user enters the text "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[1193] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[1194] 7. The server converts the generated audio data into MP3 format and sends it to the user's device.
[1195] 8. The device stores the received audio file and provides a playback interface, allowing the user to play it and enjoy the cheerful message, "Good morning, it's a nice day today."
[1196] Prompt Sentence Examples
[1197] You can generate a custom voice by inputting the prompt sentence below into the generative AI model.
[1198] example:
[1199] "Please generate a message saying 'Good morning, it's a nice day today' in a cheerful voice by a female voice actor. Please use an MP3 file."
[1200] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1201] Step 1: Collect and store audio
[1202] Users collect the audio of a particular voice actor or idol from CDs or digital audio files and save them on their PC. They then use specialized audio editing software (e.g., Audacity) to extract only the lines or parts they need. The input data is an audio file, and the output data is also an edited audio file.
[1203] Step 2: Upload your audio file
[1204] The terminal provides an interface for users to upload collected audio files to the server. Users use a web browser or application to select audio files and click the upload button. The input data is the audio file stored on the user's PC, and the output data is the audio file transferred to the server.
[1205] Step 3: Receiving and storing audio data
[1206] The server receives the uploaded audio file and stores it in the database. It checks the format of the audio file and converts it to the correct format using the appropriate codec (e.g. FFmpeg). The input data is the uploaded audio file, and the output data is the audio file stored on the server.
[1207] Step 4: Check audio quality and remove noise
[1208] The server checks the quality of the received audio file and applies a noise reduction filter to reduce background noise. A noise reduction algorithm (e.g., Noisereduce) is used to remove noise from the audio data. The input data is the converted audio file, and the output data is the denoised audio file.
[1209] Step 5: Normalization
[1210] The server normalizes the noise-removed audio data to equalize the volume, ensuring consistent volume levels. The input data is the noise-removed audio file, and the output data is the normalized audio file.
[1211] Step 6: Split the audio clip
[1212] The server splits the normalized audio data into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used to mark the beginning and end of the audio clips and label each clip. The input data is the normalized audio file, and the output data is the split audio clips.
[1213] Step 7: Extraction of acoustic features
[1214] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients: MFCCs) from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio data. The input data are the segmented audio clips, and the output data are the extracted acoustic features.
[1215] Step 8: Training the speech synthesis model
[1216] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using a neural network framework such as TensorFlow or PyTorch to build a model that reproduces the characteristics of a specific voice. The input data are the acoustic features, and the output data is the trained speech synthesis model.
[1217] Step 9: Save the speech synthesis model
[1218] The server stores the trained speech synthesis model in a database and manages it in a reusable format. The input data is the trained speech synthesis model, and the output data is the saved speech synthesis model.
[1219] Step 10: Enter text and select emotion
[1220] The user inputs the speech content to be generated in text format and selects emotion options. The input interface uses a dedicated web browser or application. The input data is text input and emotion data, and the output data is the transmission of the input data to the server.
[1221] Step 11: Speech production and emotion regulation
[1222] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion and reflects the results in the speech synthesis model. The input data is text data and emotion data, and the output data is the generated speech data.
[1223] Step 12: Adjust the tone and intonation of the audio data
[1224] The server adjusts the tone and intonation of the generated voice data to generate voice that matches the emotion. For example, if the user selects the emotion "energetic," the server sets the tone bright and the intonation lively. The input data is the generated voice data, and the output data is the voice data with the adjusted tone and intonation.
[1225] Step 13: Convert and provide audio data
[1226] The server converts the generated audio data into an appropriate file format, such as MP3 or WAV, and sends it to the user's device. The input data is the adjusted audio data, and the output data is the converted audio file.
[1227] Step 14: Save and play the audio file
[1228] The terminal saves the received audio file in a playable format and provides a playback interface for the user, through which the user can play and enjoy the generated audio. The input data is the converted audio file, and the output data is the played audio.
[1229] (Application example 2)
[1230] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1231] Today, food delivery service users are looking for a more advanced user experience than simply receiving order confirmations and progress notifications. However, conventional systems lack the ability to deliver voice notifications with a tone and intonation that reflects emotions, making it difficult to provide personalized service to individual users. Furthermore, if a user wanted to receive voice notifications in the voice of a specific voice actor or idol, it was extremely difficult to realize this desire.
[1232] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1233] In this invention, the server includes means for analyzing a user's emotions through emotion recognition, means for generating voice data based on the analyzed emotion data, and means for adjusting the tone and intonation of the voice based on the emotion data analyzed through emotion recognition. This enables a food delivery service user to receive notifications in the voice of a specific voice actor or idol with a tone and intonation that corresponds to the emotion.
[1234] "Preferred Voice" refers to the particular voice that the user wishes to use.
[1235] "Means for preprocessing audio data" refers to techniques for removing noise and normalizing raw audio data.
[1236] The "means for extracting acoustic features" is a method for extracting characteristic parameters such as Mel-frequency cepstrum coefficients from speech data.
[1237] "Means for training a speech synthesis model" refers to a method of using a machine learning model such as a neural network to acquire speech synthesis capabilities based on acoustic features.
[1238] "Means for receiving text input" refers to an interface through which the system receives and processes character data entered by a user.
[1239] "Means for analyzing user emotions through emotion recognition" refers to algorithms and technologies that infer a user's emotional state from input text or voice.
[1240] "Means for generating voice data based on analyzed emotion data" refers to the process of using emotion recognition results to generate voice corresponding to the user's emotion.
[1241] "Means for adjusting the tone and intonation of speech" refers to technology that changes the intonation or tone of the generated speech to match the user's emotional state.
[1242] "Means for providing generated speech data" refers to the method or interface used to communicate synthesized speech to the user.
[1243] A specific system for implementing this invention is configured using the following hardware and software. First, the system saves recommended voices collected by users to a PC and uploads them to a server. The server receives the uploaded voice data and applies a noise reduction filter and normalization process. Next, the server extracts acoustic features from the preprocessed voice data, primarily using Mel-Frequency Cepstrum Coefficients (MFCC). Based on this, a voice synthesis model using a neural network is trained.
[1244] The hardware used is primarily a smartphone (iOS or Android), which serves as the device through which the user receives the speech generation results. The software used includes Google Cloud Text-to-Speech API and IBM Watson Text-to-Speech for speech recognition and synthesis, and Microsoft Azure Emotion API for emotion recognition. Additionally, Firebase and MySQL are used for database management.
[1245] When a user inputs text, the device sends this text data to a server. The server uses an emotion recognition engine to analyze the user's emotions from the input text and generates voice data based on this. The tone and intonation of the generated voice data are appropriately adjusted based on the emotion recognition results. Finally, the generated voice data is implemented as a smartphone application and provided to the user.
[1246] For example, if a user enters the text "Did your order complete successfully?", the emotion recognition engine will detect the user's anxiety and generate a gentle voice response saying "Yes, your order has been completed successfully." This voice message will be sent to the user's smartphone and played back immediately.
[1247] An example of a specific prompt sentence to input into the generative AI model is as follows:
[1248] "Is my order completed successfully?"
[1249] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1250] Step 1:
[1251] The user collects recommended audio. The user saves the audio of a specific voice actor or idol in MP3 or WAV format on their PC and prepares the file. Here, the audio file is input.
[1252] Step 2:
[1253] The device uploads the audio data to the server. Using a dedicated application or a web browser interface, the user selects the audio files they have collected and sends them to the server, where they are uploaded.
[1254] Step 3:
[1255] The server preprocesses the audio data. It applies a noise reduction filter to the received audio file and performs normalization processing. The processed audio data is output. Here, noise reduction and standardization of the audio data are performed.
[1256] Step 4:
[1257] The server extracts acoustic features, primarily Mel-Frequency Cepstrum Coefficients (MFCCs), from the preprocessed audio data. The acoustic features are output and provided to the neural network, where the audio data is converted into numerical data.
[1258] Step 5:
[1259] The server trains a speech synthesis model. A neural network model is trained based on the extracted acoustic features. The speech synthesis model is output and stored in a database. Here, machine learning is used to improve the speech reproduction ability.
[1260] Step 6:
[1261] The user inputs text. The content of the voice that the user wants to generate is input in text format through the smartphone application interface. The input text is sent to the server, where the user's desired voice message is entered.
[1262] Step 7:
[1263] The terminal sends text and emotion input data to the server. Along with the text entered by the user, emotion options (e.g., joy, anxiety, etc.) are also sent to the server. Emotion data is input. Here, the user's emotional state is conveyed to the system.
[1264] Step 8:
[1265] The server performs emotion recognition and analyzes the user's emotions. Based on the received text data, the Microsoft Azure Emotion API is used to identify emotions. The emotion analysis results are output. Here, emotion recognition is applied to the text data.
[1266] Step 9:
[1267] The server generates voice data. Based on the analyzed emotion data, a trained voice synthesis model is used to generate voice with a tone and intonation that matches the user's emotion. The generated voice data is output in file format. Here, emotion-adjusted voice is created.
[1268] Step 10:
[1269] The server sends the generated audio data to the device, saves the generated audio in MP3 or WAV format, and sends it to the user's smartphone, where the generated audio file is provided to the user.
[1270] Step 11:
[1271] The device plays the received audio data. The user can listen to the audio data sent from the server using the playback interface on the smartphone. The audio file is output in a playable format. Here, the user can enjoy the custom audio.
[1272] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1273] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1274] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1275] [Fourth embodiment]
[1276] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1277] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1278] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1279] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1280] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1281] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1282] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1283] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1284] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1285] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1286] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1287] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1288] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1289] The present invention relates to a system for generating high-quality custom voices using the voices of specific voice actors or idols. Specific embodiments of this system will be described below.
[1290] System Overview
[1291] The system has a flow in which a user collects specific speech, the server preprocesses and learns it, and finally generates speech based on the user's input text. This system includes the following main processing steps.
[1292] Audio collection and preprocessing
[1293] 1. A user uses their device (e.g., PC, smartphone) to collect audio of a specific voice actor or idol from CDs or digital audio files, including the voice actor's lines, singing voice, interviews, etc.
[1294] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[1295] Audio data preprocessing
[1296] 1. The server receives the uploaded audio file and first performs noise reduction, a filtering process to remove background noise and unwanted sounds.
[1297] 2. The server then performs a normalization process to unify the audio levels, ensuring consistency of the audio.
[1298] 3. The server then divides the audio data into appropriate lengths and labels each audio clip. This division is important for improving speech recognition accuracy.
[1299] Extraction of acoustic features and training of speech synthesis models
[1300] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs), which capture the inherent characteristics of the audio.
[1301] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce specific vocal characteristics.
[1302] 3. The server stores the trained model in a database and manages it in a reusable format.
[1303] Text input and speech generation
[1304] 1. The user inputs the content of the voice to be generated in text format. The input interface is displayed on a web browser or a dedicated application.
[1305] 2. The terminal provides a means of communication to send the entered text to the server.
[1306] Speech generation and delivery
[1307] 1. The server generates voice data based on the received text using a trained speech synthesis model, which creates a voice that speaks the text content in the voice of a specific voice actor or idol.
[1308] 2. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[1309] 3. The device saves the received audio file in a playable format and provides an interface that allows the user to play it.
[1310] Specific examples
[1311] For example, if a user wants to create a custom message using specific lines from a popular voice actor:
[1312] 1. The user extracts the audio files from a CD containing the voice actor's lines and saves them on their computer.
[1313] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[1314] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[1315] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[1316] 5. Using the trained model, generate speech based on the text entered by the user: "Good morning, it's a nice day today."
[1317] 6. The server sends the generated audio data to the user's device, where the user can play it.
[1318] This series of processes allows the user to easily create a high-quality voice message in a specific voice.
[1319] The processing flow will be explained below.
[1320] Step 1:
[1321] Users extract their favorite idol's voice from a CD or digital audio file and save it to their PC, then upload the audio file using the provided interface.
[1322] Step 2:
[1323] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[1324] Step 3:
[1325] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[1326] Step 4:
[1327] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[1328] Step 5:
[1329] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[1330] Step 6:
[1331] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[1332] Step 7:
[1333] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[1334] Step 8:
[1335] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[1336] Step 9:
[1337] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[1338] Step 10:
[1339] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[1340] Step 11:
[1341] The device sends the input text data to the server, which triggers the speech generation process.
[1342] Step 12:
[1343] The server inputs the received text into a speech synthesis model to generate audio data, in the process speaking the text content in a specific voice.
[1344] Step 13:
[1345] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[1346] Step 14:
[1347] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[1348] Example 1
[1349] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1350] Currently, existing speech synthesis systems on the market face the challenge of easily generating high-quality custom speech using specific speech data. Collecting specific speech, preprocessing it to extract acoustic features, and finally synthesizing speech using a neural network poses numerous technical challenges. Furthermore, the lack of a series of preprocessing steps, such as noise reduction, normalization, and segmentation and labeling of speech data, can degrade the final speech quality. A new approach to address these challenges is needed.
[1351] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1352] In this invention, the server includes means for collecting specific voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, means for receiving uploaded voice files and performing noise reduction, means for normalizing to unify the voice level, means for dividing the voice data into appropriate lengths and labeling each voice clip, means for extracting acoustic features from the preprocessed voice clips, means for inputting the extracted acoustic features into a neural network-based voice synthesis model to train the model, and means for storing the trained model in a database. This enables easy generation of high-quality custom voices using specific voices.
[1353] "Specific voice" refers to the voice of an individual person, such as a specific voice actor or idol, and is voice data used for voice synthesis.
[1354] "Preprocessing" refers to the initial processing steps to improve the overall audio quality, such as denoising and normalising the audio data, splitting and labelling audio clips, etc.
[1355] "Acoustic features" are feature values extracted from speech signals and are data used primarily to represent the inherent characteristics of speech. Specifically, they include Mel-Frequency Cepstrum Coefficients (MFCCs).
[1356] A "speech synthesis model" is a machine learning model that is trained using acoustic features as input and is designed to reproduce specific speech characteristics.
[1357] "Text input" refers to an operation in which the user inputs the voice content that he or she wishes to generate in text form.
[1358] "Noise reduction" is a process that removes background noise and unnecessary sounds from audio data, and is achieved using filtering technology.
[1359] "Normalization" is a process for unifying the volume level of audio data to ensure consistency.
[1360] "Segmentation and labeling" is the process of dividing audio data into segments of appropriate length and assigning labels to each segment.
[1361] A "neural network" is a machine learning algorithm used to train a speech synthesis model, and has a network structure consisting of multiple layers of nodes.
[1362] A "database" is a system for systematically storing and managing trained speech synthesis models and speech data.
[1363] This invention is a system for generating high-quality custom voices using specific voices. The system has a flow in which a user collects specific voices, a server preprocesses and learns the collected voices, and finally generates voices based on the user's input text. The embodiments for implementing the invention will be described with specific examples.
[1364] Hardware and software used
[1365] The following hardware and software are used to implement this system.
[1366] 1. User device: A device such as a PC or smartphone that can collect audio files and upload them to a server.
[1367] 2. Server: A high-performance computer that preprocesses speech data, extracts acoustic features, trains models, and generates speech.
[1368] 3. Software: Audio processing libraries (e.g., FFmpeg, librosa), deep learning frameworks (e.g., TensorFlow, PyTorch).
[1369] Processing flow and specific examples
[1370] Audio collection and uploading
[1371] 1. Users collect the audio of a specific voice actor or idol using a computer or smartphone. For example, they extract the audio from a CD containing the voice actor's lines or download it from an online distribution site.
[1372] 2. The device provides an interface for the user to select the audio file and upload it to the server. This can be done using the file upload function of a web browser or the file selection dialog of a dedicated application.
[1373] Audio data preprocessing
[1374] 3. The server receives the uploaded audio file and first performs noise filtering. The open source audio processing library FFmpeg can be used.
[1375] 4. The server then normalizes the audio to make the volume level uniform. This can also be done using FFmpeg.
[1376] 5. The server splits the normalized audio into appropriate lengths. To ensure consistency across audio clips, the segmentation is performed using audio processing tools or scripts.
[1377] Acoustic feature extraction and model training
[1378] 6. The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clip. The features are generated using librosa, a Python audio processing library.
[1379] 7. The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using deep learning frameworks such as TensorFlow and PyTorch.
[1380] 8. The server saves the trained model in a database for future reuse.
[1381] Text input and speech generation
[1382] 9. The user inputs the generated voice content in text format through a text input interface on a web browser or a dedicated application.
[1383] 10. The terminal sends the entered text data to the server using an HTTP request.
[1384] Speech generation and delivery
[1385] 11. The server generates voice data based on the received text data using a pre-trained speech synthesis model. For example, if you input a prompt phrase such as "Good morning, it's a nice day today," the corresponding voice will be generated.
[1386] 12. The server converts the generated audio data into a file format such as MP3 or WAV and sends it to the user's device. This is done by returning the file as an HTTP response.
[1387] 13. The terminal saves the received audio file and provides a playback interface. The user can click the play button to play the generated audio file.
[1388] By following these steps, users can easily generate high-quality custom voices using specific voices. This system efficiently performs a series of processes from voice collection to pre-processing, training, and voice generation.
[1389] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1390] Step 1:
[1391] Users can collect audio of a specific voice actor or idol using a computer or smartphone, for example by extracting audio files from a CD containing the actor's lines or by downloading them from an online distribution site.
[1392] Input: Audio files collected from CDs and online distribution sites.
[1393] Output: Audio file saved on the user's device.
[1394] Step 2:
[1395] The terminal provides an interface for the user to select the audio file specified by the user and upload it to the server, such as the file upload function of a web browser or a file selection dialog of a dedicated application.
[1396] Input: Audio files saved by the user on their device.
[1397] Output: The audio file that will be uploaded to the server.
[1398] Step 3:
[1399] The server receives the uploaded audio file and first performs noise filtering using the open source audio processing library FFmpeg. It applies noise removal filtering to produce clearer audio.
[1400] Input: Uploaded audio file.
[1401] Output: Denoised audio file.
[1402] Step 4:
[1403] The server then performs an audio normalization process, again using FFmpeg, to equalize the volume level of the audio, adjusting the amplitude of the entire audio waveform to maintain a consistent volume level.
[1404] Input: The audio file with noise removed.
[1405] Output: Normalized audio file.
[1406] Step 5:
[1407] The server splits the normalized audio into clips of appropriate length, labels each clip, and runs a segmentation algorithm using audio processing tools or scripts to ensure each segment has consistent context and audio characteristics.
[1408] Input: Normalized audio file.
[1409] Output: Labeled audio clips.
[1410] Step 6:
[1411] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips using the Python audio processing library librosa. A feature vector is generated from each audio clip and used as input data for the audio model.
[1412] Input: Labeled audio clips.
[1413] Output: Acoustic feature vector.
[1414] Step 7:
[1415] The server uses the extracted acoustic features to train a neural network-based speech synthesis model using deep learning frameworks such as TensorFlow and PyTorch. The training process involves optimizing the model parameters through a large dataset of speech features.
[1416] Input: Acoustic feature vector.
[1417] Output: A trained speech synthesis model.
[1418] Step 8:
[1419] The server stores the trained model in a database that contains the speech synthesis model parameters and metadata for future reuse.
[1420] Input: A trained speech synthesis model.
[1421] Output: A speech synthesis model stored in a database.
[1422] Step 9:
[1423] The user inputs the contents of the voice to be generated in text format through a text input interface on a web browser or a dedicated application, for example, "Good morning, it's a nice day today."
[1424] Input: The text of the speech you want to generate.
[1425] Output: Text entered into a web browser or application.
[1426] Step 10:
[1427] The terminal sends the input text data to the server using an HTTP request. Communication with the server is established and the text data is securely transmitted.
[1428] Input: The text entered by the user.
[1429] Output: The text data sent to the server.
[1430] Step 11:
[1431] The server generates voice data based on the received text data using a trained speech synthesis model. For example, it converts the text "Good morning, it's a nice day today" into voice.
[1432] Input: Text data, trained speech synthesis model.
[1433] Output: The generated audio data.
[1434] Step 12:
[1435] The server converts the generated audio data into a file format such as MP3 or WAV, and sends it to the user's device. The audio file is sent as an HTTP response.
[1436] Input: The generated audio data.
[1437] Output: Audio files in MP3 and WAV formats.
[1438] Step 13:
[1439] The terminal stores the received audio file and provides a playback interface, and when the user clicks the play button, the generated audio file is played.
[1440] Input: MP3 or WAV format audio files.
[1441] Output: Playable audio file and playback interface.
[1442] (Application example 1)
[1443] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1444] In the field of audiobooks and other audio content, there is no system in place that allows users to generate high-quality audio in the voices of their preferred voice actors and artists, forcing users to rely on limited audio options and making it difficult to create customized audio content.
[1445] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1446] In this invention, the server includes means for collecting recommended voices, means for preprocessing the voice data, means for extracting acoustic features from the preprocessed voice data, means for training a speech synthesis model using the acoustic features, means for receiving text input from a user, means for generating voice data based on the input text, means for providing the generated voice data, and means for playing the generated voice data, thereby enabling users to easily generate and play high-quality custom voice content in the voice of a specific voice actor or artist.
[1447] "Recommended audio" refers to audio data of specific voice actors or artists selected for collection.
[1448] "Preprocessing" refers to the process of noise removal and normalization performed on collected audio data.
[1449] "Acoustic features" are characteristic data such as Mel-Frequency Cepstrum Coefficients (MFCCs) extracted from speech data.
[1450] A "speech synthesis model" is a neural network-based model for generating speech data based on acoustic features.
[1451] "Text input" refers to the act of inputting the content of the audio content that the user wants to generate as a character string.
[1452] "Speech data" refers to a speech file generated by a speech synthesis model based on text input.
[1453] The "providing means" refers to a system or method for transmitting the generated voice data to the user.
[1454] The "playback means" is a means for using an audio playback device or software to enable a user to listen to the generated audio data.
[1455] System Configuration
[1456] To implement this invention, the following hardware and software are required. The hardware includes a smartphone and a server. The software includes a Python environment, TensorFlow, Keras, the Librosa library, the Pydub library, and the Wave library.
[1457] Processing content
[1458] The server performs the process in the following steps.
[1459] 1. Collecting voice samples: Users can collect voice data from specific voice actors or artists by uploading audio files via their smartphones or computers.
[1460] 2. Pre-processing: The server performs noise reduction and normalization on the collected audio data, which is necessary to improve the audio quality.
[1461] 3. Extraction of acoustic features: Extract acoustic features such as Mel-Frequency Cepstrum Coefficients (MFCCs) from the preprocessed speech data.
[1462] 4. Training the speech synthesis model: The extracted acoustic features are used to train a neural network-based speech synthesis model.
[1463] 5. Text input: The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or web browser.
[1464] 6. Generate speech data: The server uses the trained speech synthesis model to generate speech data based on the user input text.
[1465] 7. Providing the generated voice data: The server provides the generated voice data to the user. The voice data can be downloaded in a file format (e.g., MP3, WAV).
[1466] 8. Playback: Users can play the generated audio data on their smartphones or computers.
[1467] Specific examples
[1468] As a concrete example, we will describe the operation of the system where a user generates the text "Hello, how are you?" in the voice of a particular voice actor.
[1469] 1. Users use the "Audio Dream" app to collect audio clips with their favorite voice actors.
[1470] 2. The app preprocesses these audios, extracts their features, and trains a model.
[1471] 3. The user types "Hello, how are you?" and the server converts the text into synthesized speech and sends it back.
[1472] 4. The app plays the synthesized voice and the user can hear the message in the voice of the specified voice actor.
[1473] Prompt Sentence Examples
[1474] Example prompts to input to a generative AI model:
[1475] Convert text to speech for "Hello, how are you?" in the voice of a specific voice actor. The process involves collecting audio data, preprocessing, extracting features, training a model, converting text to speech, and delivering the resulting audio file.
[1476] This allows users to easily create and play high-quality custom audio content in the voice of a specific voice actor or artist.
[1477] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1478] Step 1:
[1479] Collecting voice samples
[1480] A user collects audio data of their favorite voice actors or artists. Specifically, they extract audio from CDs or digital audio files and save them on their computer or smartphone. Next, they upload the audio files to the server using the device's upload interface. The input of this step is the audio files, and the output is the audio data stored on the server.
[1481] Step 2:
[1482] Audio data preprocessing
[1483] The server receives the uploaded audio files and performs preprocessing such as noise reduction and normalization. For example, it filters out background noise and makes the audio level uniform. This process improves the audio quality. The input of this step is the collected audio data, and the output is the preprocessed audio data.
[1484] Step 3:
[1485] Acoustic feature extraction
[1486] The server extracts acoustic features such as Mel-Frequency Cepstral Coefficients (MFCCs) from the preprocessed audio data. Specifically, it analyzes the audio data using the Librosa library and extracts the audio's unique features as numerical data. The input of this step is the preprocessed audio data, and the output is acoustic feature data.
[1487] Step 4:
[1488] Training the speech synthesis model
[1489] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. Specifically, it builds the model using TensorFlow and Keras and trains the speech synthesis algorithm based on the acoustic features. The input of this step is the acoustic feature data, and the output is a trained speech synthesis model.
[1490] Step 5:
[1491] Accepting text input
[1492] The user inputs the content of the audio content they want to generate in text format. The input interface is provided on a smartphone app or a web browser. The input of this step is the user's text input, and the output is text data sent to the server.
[1493] Step 6:
[1494] Generating audio data
[1495] The server uses the trained speech synthesis model to generate speech data based on the user's input text. Specifically, the server uses the user's text data as a prompt and generates a speech waveform through a neural network. The inputs of this step are the text data and the speech synthesis model, and the output is the generated audio file.
[1496] Step 7:
[1497] Providing generated voice data
[1498] The server provides the generated audio data to the user in a file format (e.g., MP3, WAV). The user can receive the audio file through a download link. The input of this step is the generated audio file, and the output is the audio data sent to the user's device.
[1499] Step 8:
[1500] Playing back the generated audio
[1501] The user plays the generated audio data on a smartphone or PC. For example, audio playback software or a dedicated app can be used. The input for this step is the audio data stored on the user's device, and the output is the played audio.
[1502] The above processing steps allow users to easily generate and play high-quality custom audio content in the voice of a particular voice actor or artist.
[1503] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1504] This invention combines a system that generates high-quality custom voices using the voices of specific voice actors or idols with an emotion engine that recognizes the user's emotions. This system can adjust the voice tone and intonation according to the user's emotions while retaining the characteristics of the specific voice. Specific embodiments of this system are described below.
[1505] System Overview
[1506] The system has a flow in which a user collects specific voice, the server performs preprocessing and learning, and finally generates voice based on the user's input text and emotion. This system includes the following main processing steps.
[1507] Audio collection and preprocessing
[1508] 1. A user collects audio of a specific voice actor or idol from CDs or digital audio files and saves them on a PC. This includes the voice actor's lines, singing, interviews, etc.
[1509] 2. The device uses the provided interface to upload the audio files collected by the user to the server, for example, using an upload screen via a web browser or a dedicated application.
[1510] Audio data preprocessing
[1511] 1. The server receives the uploaded audio file and stores it in the database. Then it reads the file and checks the audio quality first.
[1512] 2. After checking the audio quality, the server applies a noise reduction filter to reduce background noise and then normalizes the noise-removed audio data.
[1513] 3. The server splits the normalized audio data into short clips, marks the beginning and end of each clip, and labels them as individual audio segments.
[1514] Extraction of acoustic features and training of speech synthesis models
[1515] 1. The server extracts acoustic features from the preprocessed audio clip, typically Mel-Frequency Cepstral Coefficients (MFCCs).
[1516] 2. The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is designed to reproduce the characteristics of a specific voice.
[1517] 3. The server stores the trained model in a database and manages it in a reusable format.
[1518] Text input and emotion recognition
[1519] 1. The user inputs the voice content to be generated in text format. The input interface is displayed in a web browser or a dedicated application.
[1520] 2. The device sends the text data and emotion input data entered by the user to the server. The emotion input data is analyzed in real time based on the emotion options selected by the user and voice input.
[1521] Speech production and emotion regulation
[1522] 1. The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine recognizes the user's emotion and reflects the analysis results in the speech synthesis model.
[1523] 2. The server appropriately adjusts the tone and intonation of the generated speech based on the emotion recognition results.
[1524] 3. The server converts the generated audio data into a file format (e.g., MP3, WAV) and sends it to the user's device.
[1525] Audio provided
[1526] 1. The device saves the received audio file in a playable format and provides the user with a playback interface, allowing the user to play and enjoy the generated audio.
[1527] Specific examples
[1528] For example, suppose a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and further change the content of the message depending on the user's emotions.
[1529] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer.
[1530] 2. Use the upload interface on the device to upload the audio file to the server, and the server will receive it.
[1531] 3. The server removes noise from the audio file, normalizes it, and splits the audio into appropriate clips.
[1532] 4. Extract acoustic features from the preprocessed speech data and train a neural network model.
[1533] 5. The user types "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[1534] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[1535] 7. The server sends the generated audio data to the user's device, where the user plays it.
[1536] This system allows users to easily generate voices that not only match specific voices but also emotional responses.
[1537] The processing flow will be explained below.
[1538] Step 1:
[1539] Users extract their favorite idol's audio from a CD or digital audio file and save it on their PC, then upload the audio file to the server using the provided interface.
[1540] Step 2:
[1541] The terminal provides an upload interface to allow the user to select and upload the audio file to the server. After the upload is complete, the audio file is sent to the server.
[1542] Step 3:
[1543] The server stores the received audio file in a database, then reads the file and first checks the audio quality.
[1544] Step 4:
[1545] After checking the audio quality, the server applies a noise reduction filter to reduce background noise, which is intended to clean up the audio data.
[1546] Step 5:
[1547] The server then normalizes the denoised audio data to make the audio amplitude uniform, maintaining a consistent volume level.
[1548] Step 6:
[1549] The server splits the normalized audio data into short clips, marking the beginning and end of each clip and labeling it as an individual audio segment.
[1550] Step 7:
[1551] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients (MFCCs)) from each audio clip. These features are used to analyze the characteristics of the audio data in detail.
[1552] Step 8:
[1553] The server uses the extracted acoustic features to train a neural network-based speech synthesis model, which is trained to reproduce specific vocal characteristics.
[1554] Step 9:
[1555] The server saves the trained speech synthesis model to persistent storage, where it is stored and accessible for later use.
[1556] Step 10:
[1557] The terminal provides a text input interface to the user, allowing the user to input the voice content they wish to generate in text format.
[1558] Step 11:
[1559] The device also provides the user with an emotion setting interface, where the user selects the emotion (e.g., cheerful, sad, angry, etc.) of the generated voice in addition to the text. This information is also sent to the server.
[1560] Step 12:
[1561] The device sends the input text data and emotion data to the server, which triggers the speech generation process.
[1562] Step 13:
[1563] The server generates voice data using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion data and adjusts the voice tone and intonation based on the results.
[1564] Step 14:
[1565] The server then adjusts the tone and intonation of the generated voice appropriately based on the emotion recognition results. For example, if you select the "energetic" emotion, the voice tone will be set to a bright and lively tone.
[1566] Step 15:
[1567] The server converts the generated audio data into an appropriate file format (e.g., MP3 or WAV) and sends it to the user's device.
[1568] Step 16:
[1569] The terminal stores the received audio file in a playable format and provides a playback interface to the user, allowing the user to play and enjoy the generated audio.
[1570] Example 2
[1571] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1572] Conventional speech synthesis systems have difficulty generating custom voices using the voices of specific voice actors or idols. Furthermore, they lack the ability to adjust the tone and intonation of the voice according to the user's emotions. This makes it impossible to generate high-quality custom voices that meet the user's needs.
[1573] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1574] In this invention, the server includes means for collecting recommended voices, means for preprocessing voice data, means for extracting acoustic features from the preprocessed voice data, means for training a voice synthesis model using the acoustic features, means for storing the trained voice synthesis model in a database, means for receiving text input from a user, means for receiving emotion data from the user, means for generating voice data based on the input text and the emotion data, means for adjusting the tone and intonation of the generated voice data, and means for providing the generated voice data, thereby enabling the generation of high-quality custom voices according to the user's emotions.
[1575] "Recommended voice" refers to the voice data of a specific voice actor or idol, and is the voice data that serves as the basis for generating custom voices in the system.
[1576] "Preprocessing" refers to the process of performing processes such as noise removal and normalization on collected voice data to prepare it in a format suitable for extracting acoustic features and training a voice synthesis model.
[1577] "Acoustic features" are characteristic information extracted from speech signals, including Mel-Frequency Cepstrum Coefficients (MFCCs), which numerically represent the characteristics of speech data.
[1578] A "speech synthesis model" is a trained neural network-based model that generates custom speech based on input acoustic features and text data.
[1579] A "database" is a storage system for storing speech data and trained speech synthesis models so that they can be accessed and reused as needed.
[1580] "Text input" refers to inputting the content of the voice that the user wants to generate as a string of characters, and is the data that forms the basis for voice generation in the system.
[1581] "Emotion data" is data that expresses the user's emotional state and is input along with the text data, which adjusts the tone and intonation of the generated voice.
[1582] The "means for generating voice data" refers to a process for generating voice using a voice synthesis model based on text data and emotion data, thereby creating a custom voice.
[1583] The "means for adjusting tone and intonation" is a process for changing the tone and intonation of the generated voice data in accordance with the emotional data, to make the voice more realistic and emotionally rich.
[1584] The "means for providing" refers to the process of converting the generated audio data into an appropriate file format and providing it to the user, with the aim of allowing the user to receive the audio in a reproducible form.
[1585] MODE FOR CARRYING OUT THE INVENTION
[1586] The present invention is a system that collects specific voices, performs pre-processing and training on a server, and finally generates custom voices based on the user's input text and emotions. Specific embodiments of this system will be described below.
[1587] System Overview
[1588] The system works by using dedicated software and hardware to create speech based on the user's input text and emotion data, after which the server performs preprocessing and training of a speech synthesis model.
[1589] Audio collection
[1590] Users use CDs or digital audio files to collect the audio of a particular voice actor or idol, save them on their computers, and then use specialized audio editing software (e.g., Audacity) to extract only the parts they want.
[1591] Uploading and Preprocessing
[1592] The terminal provides an interface for users to upload collected audio files to the server. Users select and upload audio files using a web browser or a dedicated application. The terminal then transfers the selected files to the server.
[1593] The server receives the uploaded audio file and stores it in a database. The server then checks the quality of the audio file and applies a noise reduction filter (e.g., Noisereduce) to reduce background noise. The server then normalizes the denoised audio data and splits it into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used for these processes.
[1594] Acoustic feature extraction and model training
[1595] The server extracts acoustic features, such as Mel-Frequency Cepstral Coefficients (MFCCs), from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio.
[1596] The server then uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using frameworks such as TensorFlow and PyTorch, and a model designed to reproduce the characteristics of a specific voice is constructed. Once the model is trained, it is stored in a database and managed in a reusable format.
[1597] Text input and emotion recognition
[1598] The user inputs the content of the voice to be generated in text format. The user enters the text into an input field in a dedicated web browser or application, and selects an emotion option. The emotion data is sent to the server along with the text.
[1599] Speech production and emotion regulation
[1600] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. During this process, the emotion engine analyzes the user's emotions and reflects the results in the speech synthesis model.
[1601] The server adjusts the tone and intonation of the generated voice based on the emotion recognition result. For example, if the user selects the "energetic" emotion, the server sets the tone brighter and the intonation lively.
[1602] The generated audio data is converted into a file format such as MP3 or WAV and sent from the server to the terminal.
[1603] Audio provision and playback
[1604] The terminal stores the received audio file in a playable format and provides a playback interface to the user, through which the user can play and enjoy the generated audio.
[1605] Specific examples
[1606] For example, if a user wants to collect specific lines from a popular voice actor to generate a message such as "Good morning, it's a nice day today," and then change the content depending on the emotion, the following steps can be taken.
[1607] 1. The user extracts the audio files from the CD containing the voice actors' lines and saves them on their computer. Using dedicated software, they can edit only the necessary parts.
[1608] 2. Upload the audio file to the server using the device's upload interface.
[1609] 3. The server receives the audio file, stores it in a database, denoises it, normalizes it, and splits it into 2-second clips.
[1610] 4. The server extracts MFCC acoustic features from the preprocessed speech data and trains a neural network model.
[1611] 5. The user enters the text "Good morning, what a beautiful day today" and selects "cheerful" as the emotion option.
[1612] 6. The server generates speech based on the text and emotion data, adjusting the speech with a lively tone and intonation.
[1613] 7. The server converts the generated audio data into MP3 format and sends it to the user's device.
[1614] 8. The device stores the received audio file and provides a playback interface, allowing the user to play it and enjoy the cheerful message, "Good morning, it's a nice day today."
[1615] Prompt Sentence Examples
[1616] You can generate a custom voice by inputting the prompt sentence below into the generative AI model.
[1617] example:
[1618] "Please generate a message saying 'Good morning, it's a nice day today' in a cheerful voice by a female voice actor. Please use an MP3 file."
[1619] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1620] Step 1: Collect and store audio
[1621] Users collect the audio of a particular voice actor or idol from CDs or digital audio files and save them on their PC. They then use specialized audio editing software (e.g., Audacity) to extract only the lines or parts they need. The input data is an audio file, and the output data is also an edited audio file.
[1622] Step 2: Upload your audio file
[1623] The terminal provides an interface for users to upload collected audio files to the server. Users use a web browser or application to select audio files and click the upload button. The input data is the audio file stored on the user's PC, and the output data is the audio file transferred to the server.
[1624] Step 3: Receiving and storing audio data
[1625] The server receives the uploaded audio file and stores it in the database. It checks the format of the audio file and converts it to the correct format using the appropriate codec (e.g. FFmpeg). The input data is the uploaded audio file, and the output data is the audio file stored on the server.
[1626] Step 4: Check audio quality and remove noise
[1627] The server checks the quality of the received audio file and applies a noise reduction filter to reduce background noise. A noise reduction algorithm (e.g., Noisereduce) is used to remove noise from the audio data. The input data is the converted audio file, and the output data is the denoised audio file.
[1628] Step 5: Normalization
[1629] The server normalizes the noise-removed audio data to equalize the volume, ensuring consistent volume levels. The input data is the noise-removed audio file, and the output data is the normalized audio file.
[1630] Step 6: Split the audio clip
[1631] The server splits the normalized audio data into clips of a fixed length (usually 2 seconds). An audio processing library such as LibROSA is used to mark the beginning and end of the audio clips and label each clip. The input data is the normalized audio file, and the output data is the split audio clips.
[1632] Step 7: Extraction of acoustic features
[1633] The server extracts acoustic features (e.g., Mel-Frequency Cepstral Coefficients: MFCCs) from the preprocessed audio clips, which provide a numerical representation of the characteristics of the audio data. The input data are the segmented audio clips, and the output data are the extracted acoustic features.
[1634] Step 8: Training the speech synthesis model
[1635] The server uses the extracted acoustic features to train a neural network-based speech synthesis model. The model is trained using a neural network framework such as TensorFlow or PyTorch to build a model that reproduces the characteristics of a specific voice. The input data are the acoustic features, and the output data is the trained speech synthesis model.
[1636] Step 9: Save the speech synthesis model
[1637] The server stores the trained speech synthesis model in a database and manages it in a reusable format. The input data is the trained speech synthesis model, and the output data is the saved speech synthesis model.
[1638] Step 10: Enter text and select emotion
[1639] The user inputs the speech content to be generated in text format and selects emotion options. The input interface uses a dedicated web browser or application. The input data is text input and emotion data, and the output data is the transmission of the input data to the server.
[1640] Step 11: Speech production and emotion regulation
[1641] The server generates speech using a trained speech synthesis model based on the received text data and emotion data. The emotion engine analyzes the user's emotion and reflects the results in the speech synthesis model. The input data is text data and emotion data, and the output data is the generated speech data.
[1642] Step 12: Adjust the tone and intonation of the audio data
[1643] The server adjusts the tone and intonation of the generated voice data to generate voice that matches the emotion. For example, if the user selects the emotion "energetic," the server sets the tone bright and the intonation lively. The input data is the generated voice data, and the output data is the voice data with the adjusted tone and intonation.
[1644] Step 13: Convert and provide audio data
[1645] The server converts the generated audio data into an appropriate file format, such as MP3 or WAV, and sends it to the user's device. The input data is the adjusted audio data, and the output data is the converted audio file.
[1646] Step 14: Save and play the audio file
[1647] The terminal saves the received audio file in a playable format and provides a playback interface for the user, through which the user can play and enjoy the generated audio. The input data is the converted audio file, and the output data is the played audio.
[1648] (Application example 2)
[1649] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1650] Today, food delivery service users are looking for a more advanced user experience than simply receiving order confirmations and progress notifications. However, conventional systems lack the ability to deliver voice notifications with a tone and intonation that reflects emotions, making it difficult to provide personalized service to individual users. Furthermore, if a user wanted to receive voice notifications in the voice of a specific voice actor or idol, it was extremely difficult to realize this desire.
[1651] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1652] In this invention, the server includes means for analyzing a user's emotions through emotion recognition, means for generating voice data based on the analyzed emotion data, and means for adjusting the tone and intonation of the voice based on the emotion data analyzed through emotion recognition. This enables a food delivery service user to receive notifications in the voice of a specific voice actor or idol with a tone and intonation that corresponds to the emotion.
[1653] "Preferred Voice" refers to the particular voice that the user wishes to use.
[1654] "Means for preprocessing audio data" refers to techniques for removing noise and normalizing raw audio data.
[1655] The "means for extracting acoustic features" is a method for extracting characteristic parameters such as Mel-frequency cepstrum coefficients from speech data.
[1656] "Means for training a speech synthesis model" refers to a method of using a machine learning model such as a neural network to acquire speech synthesis capabilities based on acoustic features.
[1657] "Means for receiving text input" refers to an interface through which the system receives and processes character data entered by a user.
[1658] "Means for analyzing user emotions through emotion recognition" refers to algorithms and technologies that infer a user's emotional state from input text or voice.
[1659] "Means for generating voice data based on analyzed emotion data" refers to the process of using emotion recognition results to generate voice corresponding to the user's emotion.
[1660] "Means for adjusting the tone and intonation of speech" refers to technology that changes the intonation or tone of the generated speech to match the user's emotional state.
[1661] "Means for providing generated speech data" refers to the method or interface used to communicate synthesized speech to the user.
[1662] A specific system for implementing this invention is configured using the following hardware and software. First, the system saves recommended voices collected by users to a PC and uploads them to a server. The server receives the uploaded voice data and applies a noise reduction filter and normalization process. Next, the server extracts acoustic features from the preprocessed voice data, primarily using Mel-Frequency Cepstrum Coefficients (MFCC). Based on this, a voice synthesis model using a neural network is trained.
[1663] The hardware used is primarily a smartphone (iOS or Android), which serves as the device through which the user receives the speech generation results. The software used includes Google Cloud Text-to-Speech API and IBM Watson Text-to-Speech for speech recognition and synthesis, and Microsoft Azure Emotion API for emotion recognition. Additionally, Firebase and MySQL are used for database management.
[1664] When a user inputs text, the device sends this text data to a server. The server uses an emotion recognition engine to analyze the user's emotions from the input text and generates voice data based on this. The tone and intonation of the generated voice data are appropriately adjusted based on the emotion recognition results. Finally, the generated voice data is implemented as a smartphone application and provided to the user.
[1665] For example, if a user enters the text "Did your order complete successfully?", the emotion recognition engine will detect the user's anxiety and generate a gentle voice response saying "Yes, your order has been completed successfully." This voice message will be sent to the user's smartphone and played back immediately.
[1666] An example of a specific prompt sentence to input into the generative AI model is as follows:
[1667] "Is my order completed successfully?"
[1668] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1669] Step 1:
[1670] The user collects recommended audio. The user saves the audio of a specific voice actor or idol in MP3 or WAV format on their PC and prepares the file. Here, the audio file is input.
[1671] Step 2:
[1672] The device uploads the audio data to the server. Using a dedicated application or a web browser interface, the user selects the audio files they have collected and sends them to the server, where they are uploaded.
[1673] Step 3:
[1674] The server preprocesses the audio data. It applies a noise reduction filter to the received audio file and performs normalization processing. The processed audio data is output. Here, noise reduction and standardization of the audio data are performed.
[1675] Step 4:
[1676] The server extracts acoustic features, primarily Mel-Frequency Cepstrum Coefficients (MFCCs), from the preprocessed audio data. The acoustic features are output and provided to the neural network, where the audio data is converted into numerical data.
[1677] Step 5:
[1678] The server trains a speech synthesis model. A neural network model is trained based on the extracted acoustic features. The speech synthesis model is output and stored in a database. Here, machine learning is used to improve the speech reproduction ability.
[1679] Step 6:
[1680] The user inputs text. The content of the voice that the user wants to generate is input in text format through the smartphone application interface. The input text is sent to the server, where the user's desired voice message is entered.
[1681] Step 7:
[1682] The terminal sends text and emotion input data to the server. Along with the text entered by the user, emotion options (e.g., joy, anxiety, etc.) are also sent to the server. Emotion data is input. Here, the user's emotional state is conveyed to the system.
[1683] Step 8:
[1684] The server performs emotion recognition and analyzes the user's emotions. Based on the received text data, the Microsoft Azure Emotion API is used to identify emotions. The emotion analysis results are output. Here, emotion recognition is applied to the text data.
[1685] Step 9:
[1686] The server generates voice data. Based on the analyzed emotion data, a trained voice synthesis model is used to generate voice with a tone and intonation that matches the user's emotion. The generated voice data is output in file format. Here, emotion-adjusted voice is created.
[1687] Step 10:
[1688] The server sends the generated audio data to the device, saves the generated audio in MP3 or WAV format, and sends it to the user's smartphone, where the generated audio file is provided to the user.
[1689] Step 11:
[1690] The device plays the received audio data. The user can listen to the audio data sent from the server using the playback interface on the smartphone. The audio file is output in a playable format. Here, the user can enjoy the custom audio.
[1691] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1692] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1693] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1694] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1695] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1696] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1697] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1698] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1699] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1700] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1701] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1702] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1703] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1704] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1705] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1706] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1707] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1708] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1709] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1710] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1711] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1712] The following is further disclosed regarding the above embodiment.
[1713] (Claim 1)
[1714] A recommended means of collecting audio;
[1715] means for preprocessing the audio data;
[1716] means for extracting acoustic features from the preprocessed speech data;
[1717] means for training a speech synthesis model using the acoustic features;
[1718] means for receiving text input from a user;
[1719] means for generating speech data based on the input text;
[1720] means for providing the generated audio data;
[1721] A system including:
[1722] (Claim 2)
[1723] 2. The system of claim 1, wherein the acoustic features are extracted as Mel-frequency cepstral coefficients.
[1724] (Claim 3)
[1725] 2. The system of claim 1, wherein the preprocessing includes noise removal and normalization.
[1726] "Example 1"
[1727] (Claim 1)
[1728] a means for collecting specific audio;
[1729] means for preprocessing the audio data;
[1730] means for extracting acoustic features from the preprocessed speech data;
[1731] means for training a speech synthesis model using the acoustic features;
[1732] means for receiving text input from a user;
[1733] means for generating speech data based on the input text;
[1734] means for providing the generated audio data;
[1735] a means for receiving the uploaded audio file and performing noise reduction;
[1736] A means for performing normalization processing to unify audio levels;
[1737] A means for dividing the audio data into appropriate lengths and labeling each audio clip;
[1738] means for extracting acoustic features from the preprocessed audio clip;
[1739] a means for inputting the extracted acoustic features into a neural network-based speech synthesis model and training the model;
[1740] A means of saving the trained model to a database;
[1741] A system including:
[1742] (Claim 2)
[1743] 2. The system of claim 1, wherein the acoustic features are extracted as Mel-frequency cepstral coefficients.
[1744] (Claim 3)
[1745] 2. The system of claim 1, wherein the preprocessing includes noise removal and normalization.
[1746] "Application Example 1"
[1747] New Claims
[1748] (Claim 1)
[1749] A recommended means of collecting audio;
[1750] means for preprocessing the audio data;
[1751] means for extracting acoustic features from the preprocessed speech data;
[1752] means for training a speech synthesis model using the acoustic features;
[1753] means for receiving text input from a user;
[1754] means for generating speech data based on the input text;
[1755] means for providing the generated audio data;
[1756] means for reproducing the generated audio data;
[1757] A system including:
[1758] (Claim 2)
[1759] 2. The system of claim 1, wherein the acoustic features are extracted as Mel-frequency cepstral coefficients.
[1760] (Claim 3)
[1761] 2. The system of claim 1, wherein the preprocessing includes noise removal and normalization.
[1762] "Example 2: Combining Emotion Engines"
[1763] (Claim 1)
[1764] A recommended means of collecting audio;
[1765] means for preprocessing the audio data;
[1766] means for extracting acoustic features from the preprocessed speech data;
[1767] means for training a speech synthesis model using the acoustic features;
[1768] means for storing the trained speech synthesis model in a database;
[1769] means for receiving text input from a user;
[1770] means for receiving emotion data from a user;
[1771] means for generating voice data based on the input text and emotion data;
[1772] means for adjusting the tone and intonation of the generated voice data;
[1773] means for providing the generated audio data;
[1774] A system including:
[1775] (Claim 2)
[1776] 2. The system of claim 1, wherein the acoustic features are extracted as Mel-frequency cepstral coefficients.
[1777] (Claim 3)
[1778] 2. The system of claim 1, wherein the preprocessing includes noise removal and normalization.
[1779] "Application example 2 when combining emotion engines"
[1780] (Claim 1)
[1781] A recommended means of collecting audio;
[1782] means for preprocessing the audio data;
[1783] means for extracting acoustic features from the preprocessed speech data;
[1784] means for training a speech synthesis model using the acoustic features;
[1785] means for receiving text input from a user;
[1786] means for analyzing a user's emotions through emotion recognition;
[1787] means for generating voice data based on the analyzed emotion data;
[1788] means for providing the generated audio data;
[1789] A system including:
[1790] (Claim 2)
[1791] 2. The system of claim 1, wherein the acoustic features are extracted as Mel-frequency cepstral coefficients.
[1792] (Claim 3)
[1793] 2. The system of claim 1, wherein the preprocessing includes noise removal and normalization.
[1794] (Claim 4)
[1795] 10. The system of claim 1, wherein the tone and intonation of the voice are adjusted based on the emotional data analyzed by the emotion recognition.
[1796] (Claim 5)
[1797] 10. The system of claim 1, wherein the system is implemented as a smartphone application. [Explanation of symbols]
[1798] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. A recommended means of collecting audio; means for preprocessing the audio data; means for extracting acoustic features from the preprocessed speech data; means for training a speech synthesis model using the acoustic features; means for receiving text input from a user; means for generating speech data based on the input text; means for providing the generated audio data; A system including:
2. The system of claim 1 , wherein the acoustic features are extracted as Mel-frequency cepstral coefficients.
3. The system of claim 1 , wherein the preprocessing includes denoising and normalizing.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A