WO2025264031A1 - Electronic device and method for speech recognition - Google Patents
Electronic device and method for speech recognitionInfo
- Publication number
- WO2025264031A1 WO2025264031A1 PCT/KR2025/008582 KR2025008582W WO2025264031A1 WO 2025264031 A1 WO2025264031 A1 WO 2025264031A1 KR 2025008582 W KR2025008582 W KR 2025008582W WO 2025264031 A1 WO2025264031 A1 WO 2025264031A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- frames
- electronic device
- frame
- time
- speaker
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/12—Speech classification or search using dynamic programming techniques, e.g. dynamic time warping [DTW]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/24—Speech recognition using non-acoustical features
- G10L15/25—Speech recognition using non-acoustical features using position of the lips, movement of the lips or face analysis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
Definitions
- the present disclosure relates to an electronic device and method for voice recognition.
- Speech recognition can refer to the technology that converts a user's voice input into text on an electronic device.
- the electronic device can segment voice data collected through a microphone into frames, predict the word corresponding to each frame, and output it as text.
- Audio-visual multimodal speech recognition can refer to a technology that recognizes speech based on the user's voice and images in an electronic device. For example, audio-visual multimodal speech recognition can improve the accuracy and reliability of speech recognition by utilizing visual data, such as an image of the user's lips, along with the user's voice data.
- One embodiment of the present disclosure may provide an electronic device and method for voice recognition.
- One embodiment of the present disclosure may provide an electronic device and method for restoring missing image frames and/or missing audio frames based on a generative artificial intelligence model in audio-visual multimodal speech recognition.
- One embodiment of the present disclosure can provide an electronic device and method for synchronizing image frames and audio frames based on restored frames.
- One embodiment of the present disclosure can provide an electronic device and method that can provide more accurate voice recognition results even when a user's voice or lip image is missing due to the user's movement or environmental factors.
- An electronic device (101) (301) may include at least one camera (180) (310), at least one microphone (150) (320), a memory (130) (330), and at least one processor (120) (340) including a processing circuit.
- the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to perform at least one operation.
- the at least one operation may include an operation of acquiring visual data (904) associated with a lip image of a speaker through the at least one camera (180) (310) during a first time period.
- the at least one operation may include acquiring audio data (902) associated with the speaker's voice through the at least one microphone (150) (320) during the first time period.
- the at least one operation may include identifying at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902).
- the at least one operation may include generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712).
- the at least one operation may include performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame.
- An electronic device may include at least one camera (180) (310), at least one microphone (150) (320), a communication circuit (190), a memory (130) (330), and at least one processor (120) (340) including a processing circuit.
- the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to perform at least one operation.
- the at least one operation may include an operation of acquiring visual data (904) associated with a speaker's lips through the at least one camera (180) (310) during a first time period.
- the at least one operation may include an operation of acquiring audio data (902) associated with the speaker's voice through the at least one microphone (150) (320) during the first time period.
- the at least one operation may include an operation of controlling the communication circuit (190) to transmit first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server.
- the at least one operation may include an operation of receiving a speech recognition result from the server through the communication circuit (190).
- the speech recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712), and performing a speech recognition operation based on the first frames, the second frames, or the at least one generated frame.
- a voice recognition method of an electronic device may include an operation (1702) of acquiring visual data (704) (904) associated with a lip image of a speaker through at least one camera (180) (310) of the electronic device (101) (301) during a first time period.
- the voice recognition method may include an operation (1704) of acquiring audio data (702) (902) associated with a voice of the speaker through at least one microphone (150) (320) of the electronic device (101) (301) during the first time period.
- the voice recognition method may include an operation (1706) of identifying at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902).
- the speech recognition method may include an operation (1708) of generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712).
- the speech recognition method may include an operation (1710) of performing a speech recognition operation based on the first frames, the second frames, or the at least one generated frame.
- a voice recognition method of an electronic device may include an operation (2602) of acquiring visual data (904) associated with a speaker's lips through at least one camera (180) (310) of the electronic device (101) (301) during a first time period.
- the voice recognition method may include an operation (2604) of acquiring audio data (902) associated with the speaker's voice through at least one microphone (150) (320) of the electronic device (101) (301) during the first time period.
- the voice recognition method may include an operation (2606) of transmitting first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server.
- the voice recognition method may include an operation (2608) of receiving a voice recognition result from the server.
- the speech recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712), and performing a speech recognition operation based on the first frames, the second frames, or the at least one generated frame.
- FIG. 1 is a block diagram of an electronic device within a network environment according to various embodiments.
- Figure 2 is an example of a generative artificial intelligence system.
- Figure 3 is a schematic block diagram of an electronic device according to one embodiment.
- FIG. 4a is a diagram for explaining a voice recognition operation according to one embodiment.
- FIG. 4b is a diagram for explaining a multimodal speech recognition operation based on restoration of audio data according to one embodiment.
- FIG. 4c is a diagram for explaining a multimodal speech recognition operation based on restoration of visual data according to one embodiment.
- FIG. 5A is a diagram illustrating a first type of electronic device according to one embodiment.
- FIG. 5b is a diagram illustrating a second type of electronic device according to one embodiment.
- FIG. 5c is a diagram illustrating a third type of electronic device according to one embodiment.
- FIG. 6A is a diagram illustrating a situation in which lip recognition is possible in an electronic device according to one embodiment.
- FIG. 6b is a diagram illustrating a situation in which lip recognition is impossible in an electronic device according to one embodiment.
- Fig. 7 is a block diagram of a multimodal speech recognition device according to one embodiment.
- FIG. 8a is a diagram illustrating a learning operation of a multimodal synchronization module for image frame restoration according to one embodiment.
- FIG. 8b is a diagram illustrating a learning operation of a multimodal synchronization module for audio frame restoration according to one embodiment.
- FIG. 9a is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is not used.
- FIG. 9b is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is used.
- FIG. 10 is a diagram for explaining the learning operation of a multimodal ASR module according to one embodiment.
- FIG. 11 is a flowchart schematically illustrating the operation of an electronic device according to one embodiment.
- FIG. 12 is a diagram illustrating the results of multimodal speech recognition performed in an electronic device according to one embodiment.
- FIG. 13 is a diagram illustrating a UI indicating a voice or image input status provided by an electronic device according to one embodiment.
- FIG. 14 is a diagram illustrating an operation of an electronic device according to one embodiment of the present invention to output a notification message indicating a failure in voice or lip recognition.
- FIG. 15 is a diagram illustrating an example of a multimodal voice recognition operation being used in an electronic device according to one embodiment.
- FIG. 16 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result.
- FIG. 17 is a flowchart illustrating a voice recognition operation of an electronic device according to one embodiment.
- FIG. 18 is a flowchart illustrating an operation of an electronic device according to one embodiment to identify at least one missing frame.
- FIG. 19 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to identify at least one missing frame through timeline-based sorting.
- FIG. 20 is a flowchart illustrating an operation of an electronic device according to one embodiment to restore a missing frame.
- FIG. 21 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a message based on the number of at least one missing frame.
- FIG. 22 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a result of a voice recognition operation.
- FIG. 23 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through a server.
- FIG. 24 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through an on-device operation.
- FIG. 25 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a frame input status.
- FIG. 26 is a flowchart illustrating an operation of an electronic device receiving a voice recognition result from a server according to one embodiment.
- FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to various embodiments.
- an electronic device (101) may communicate with an electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of an electronic device (104) or a server (108) via a second network (199) (e.g., a long-range wireless communication network).
- the electronic device (101) may communicate with the electronic device (104) via the server (108).
- the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197).
- the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added.
- some of these components e.g., the sensor module (176), the camera module (180), or the antenna module (197) may be integrated into one component (e.g., the display module (160)).
- the processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or calculations.
- the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134).
- the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or a secondary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor)) that can operate independently or together therewith.
- a main processor (121) e.g., a central processing unit or an application processor
- a secondary processor (123) e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor
- the secondary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a specified function.
- the secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.
- the auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state.
- the auxiliary processor (123) e.g., an image signal processor or a communication processor
- the auxiliary processor (123) may include a hardware structure specialized for processing artificial intelligence models.
- the artificial intelligence models may be generated through machine learning. This learning can be performed, for example, in the electronic device (101) itself where artificial intelligence is performed, or can be performed through a separate server (e.g., server (108)).
- the learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above.
- the artificial intelligence model can include a plurality of artificial neural network layers.
- the artificial neural network can be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), deep Q-networks, or a combination of two or more of the above, but is not limited to the examples described above.
- the artificial intelligence model can additionally or alternatively include a software structure.
- the memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101).
- the data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto.
- the memory (130) can include volatile memory (132) or non-volatile memory (134).
- the program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).
- the input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101).
- the input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).
- the audio output module (155) can output audio signals to the outside of the electronic device (101).
- the audio output module (155) can include, for example, a speaker or a receiver.
- the speaker can be used for general purposes, such as multimedia playback or recording playback.
- the receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.
- the display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101).
- the display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device.
- the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.
- the audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).
- an external electronic device e.g., electronic device (102)
- speaker or headphone directly or wirelessly connected to the electronic device (101).
- the sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status.
- the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
- the interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)).
- the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
- HDMI high definition multimedia interface
- USB universal serial bus
- SD card interface Secure Digital Card
- connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)).
- the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
- a haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations.
- the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
- the camera module (180) can capture still images and videos.
- the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.
- the power management module (188) can manage power supplied to the electronic device (101).
- the power management module (188) can be implemented, for example, as at least a part of a power management integrated circuit (PMIC).
- PMIC power management integrated circuit
- a battery (189) may power at least one component of the electronic device (101).
- the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
- the communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel.
- the communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication.
- the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module).
- a wireless communication module (192) e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module
- GNSS global navigation satellite system
- wired communication module (194) e.g., a local area network (LAN) communication module, or a power line communication module.
- the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)).
- a first network (198) e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)
- a second network (199) e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)
- a computer network e.g., a
- the wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).
- subscriber information e.g., an international mobile subscriber identity (IMSI)
- the wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology).
- the NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)).
- eMBB enhanced mobile broadband
- mMTC massive machine type communications
- URLLC ultra-reliable and low-latency communications
- the wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate.
- a high-frequency band e.g., mmWave band
- the wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna.
- the wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)).
- the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.
- a peak data rate e.g., 20 Gbps or more
- a loss coverage e.g., 164 dB or less
- U-plane latency e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip
- the antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device).
- the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB).
- the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas by, for example, the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device via the selected at least one antenna.
- another component e.g., a radio frequency integrated circuit (RFIC)
- RFIC radio frequency integrated circuit
- the antenna module (197) may generate a mmWave antenna module.
- the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band.
- a first side e.g., a bottom side
- a plurality of antennas e.g., an array antenna
- At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).
- peripheral devices e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).
- commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199).
- Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101).
- all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service.
- One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101).
- the electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request.
- cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example.
- the electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example.
- the external electronic device (104) may include an Internet of Things (IoT) device.
- the server (108) may be an intelligent server utilizing machine learning and/or a neural network.
- the external electronic device (104) or the server (108) may be included in the second network (199).
- the electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
- Figure 2 is an example of a generative artificial intelligence system.
- the user query/response interface (210) can receive a user's input.
- the user's input may be in the form of natural language, images, and/or videos.
- context information (212) may also be transmitted when the user's input is transmitted.
- the context information (212) may include various additional information at the time of the user input. For example, there is additional information such as information on the application currently being used by the user or information on the user's location.
- the user's input may be in the form of a mixture of the aforementioned natural language, images, sounds, or context information (212).
- the user's input may also be in a non-natural language form, such as selecting a menu.
- the user query/response interface (210) can output the results of the generative artificial intelligence system to the user.
- the output may be in the form of natural language or specific content, and may also be provided in the form of an action requested by the user.
- the user query/response interface (210) can output the results of the generative artificial intelligence system to the user.
- the output can be in natural language form, in the form of specific content, or in the form of an action requested by the user.
- the AI (artificial intelligence) framework (220) can receive user input and coordinate and control each component necessary to perform the user's intention based on the user's query.
- the prompt design component (222) can be used to generate a prompt suitable for inputting the user input into a large language model (LLM) or a large multimodal model (LMM).
- the prompt design component (222) can be an AI component that uses a machine learning algorithm or a neural network to develop better prompts over time.
- the prompt design component (222) can access user preference data (214), a prompt library (216), and a knowledge component including prompt examples based on the user input to generate a prompt, and transmit the generated prompt to the LLM or LMM.
- the API/plug-in management component (224) can communicate with external information when there is a request for additional information when passing user input as input to the generative model.
- the API/plug-in management component (224) can establish a channel for communication with the outside of the AI interface through the API, and can enable access to various data sources (e.g., knowledge repositories (240)) through the established channel.
- various data sources e.g., knowledge repositories (240)
- the API/plug-in management component (224) needs to perform an action that performs the user input as a final result rather than an intermediate result in an application or service, it can request the application/service component (250) through the API to perform the action.
- Information obtained from the outside can be used to generate a prompt in the prompt design component (222) together with the user input, or can be passed as input to the generative model.
- the refiner component (226) can fine-tune the output from the generative model. For example, the refiner component (226) can verify that the content generated through the LLM and/or LMM is not irrelevant, does not contain biased content, or does not contain harmful content. Furthermore, the refiner component (226) can determine the degree to which the content matches the user's desired result and, if necessary, perform additional processing. The refiner component (226) can additionally configure and provide hints to the user to avoid undesirable output.
- a generative AI model (230) may generally refer to an artificial intelligence neural network that generates new types of data based on user input information.
- the generative AI model (230) may include an image-generating model and/or a language-generating model.
- Representative models for generating images include a generative adversarial network (GAN) and a variational autoencoder (VAE), and examples include a diffusion-based generative model that uses a VAE and a transformer structure.
- GAN generative adversarial network
- VAE variational autoencoder
- a language-generating model is a model trained to statistically output the most appropriate output based on input values, and representative examples include models such as CHAT-GPT 3 and CHAT-GPT 4.
- Figure 3 is a schematic block diagram of an electronic device according to one embodiment.
- the electronic device (301) may include at least one camera (310), at least one microphone (320), memory (330), and processor (340).
- the electronic device (301) may include additional components (e.g., a display, a speaker, or communication circuitry) in addition to the illustrated components, or may omit at least one of the illustrated components.
- additional components e.g., a display, a speaker, or communication circuitry
- the electronic device (301) may be implemented identically or similarly to the electronic device (101) of FIG. 1.
- At least one camera (310), at least one microphone (320), memory (330), and processor (340) may be implemented identically or similarly to the camera module (180), input module (150), memory (130), and processor (120) of FIG. 1, respectively.
- the electronic device (301) may be any one of a smart phone, a tablet, a computing device (e.g., a personal computer (PC) or a laptop), or a wearable device (e.g., a smart watch, a head mounted display (HMD), or a smart ring), but is not limited thereto and may be implemented as various types of electronic devices.
- a computing device e.g., a personal computer (PC) or a laptop
- a wearable device e.g., a smart watch, a head mounted display (HMD), or a smart ring
- HMD head mounted display
- At least one camera (310) can capture an image of the outside.
- the at least one camera (310) can be used to capture an image of the user's lips while the user's (or speaker's or talker's) voice is input to the electronic device (301).
- At least one microphone (320) can receive sound from an external source.
- at least one microphone (320) can be used to input a user's voice and can be activated for substantially the same period of time as at least one camera (310).
- the memory (330) can store at least one program.
- the memory (330) can store at least one program for processing and controlling the processor (340), and can store input and/or output data (e.g., audio data, visual data, or voice recognition results).
- the memory (330) can also store at least one AI model.
- the processor (340) can control the overall operation of the electronic device (301).
- the processor (340) can execute calculations or data processing related to control and/or communication of at least one other component of the electronic device (301).
- the processor (340) can be electrically connected to at least one camera (310), at least one microphone (320), and a memory (330), and can execute instructions of a program stored in the memory (330).
- the processor (340) may include a processing circuit that executes instructions of a program stored in the memory (330).
- the processor (340) may include at least one of a central processing unit (CPU), a neural processing unit (NPU), a graphics processing unit (GPU), a micro processing unit (MPU), a micro controller unit (MCU), an application processor (AP), a communication processor (CP), a system on chip (SoC), or an integrated circuit (IC), a sensor hub, a supplementary processor, a communication processor, an application processor, an application specific integrated circuit (ASIC), or a field programmable gate array (FPGA), and may have multiple cores.
- CPU central processing unit
- NPU neural processing unit
- GPU graphics processing unit
- MPU micro processing unit
- MCU micro controller unit
- AP application processor
- CP communication processor
- SoC system on chip
- IC integrated circuit
- sensor hub a supplementary processor
- a communication processor an application processor, an application specific integrated circuit (ASIC), or a field programm
- the processor (340) can control the operations of the electronic device (101) (301) by executing instructions stored in the memory (330).
- the processor (340) can correspond to a plurality of processors that collectively perform a plurality of operations by dividing them among the processors.
- An electronic device (101) (301) comprises: at least one camera (180) (310); at least one microphone (150) (320); a memory (130) (330); And at least one processor (120) (340) including a processing circuit, wherein the memory (130) (330) is configured to, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: acquire visual data (904) associated with a lip image of a speaker through the at least one camera (180) (310) during a first time period, acquire audio data (902) associated with a voice of the speaker through the at least one microphone (150) (320) during the first time period, identify at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902), and, based on a learned machine learning model (712), use the first frames and the second frames to identify at least one missing frame. At least one frame corresponding to the missing frame can be generated (906), and instructions for causing
- the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: determine whether a first time corresponding to the number of the first frames and a second time corresponding to the number of the second frames are the same, and, based on the first time and the second time not being the same, identify the at least one missing frame associated with frames corresponding to a shorter time among the first frames or the second frames.
- the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: determine whether a first time corresponding to the number of the first frames and a second time corresponding to the number of the second frames are the same; align the first frames and the second frames based on a time line corresponding to the first time period based on the fact that the first time and the second time are not the same; perform synchronization between the first frames and the second frames based on the alignment; identify at least one unsynchronized frame among the first frames or the second frames; and identify the at least one missing frame based on the at least one unsynchronized frame.
- the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: extract a first feature from source frames (710) corresponding to a longer time among the first frames or the second frames, based on the first time and the second time being not the same; extract a second feature from target frames (708) corresponding to a shorter time among the first frames or the second frames; fuse the first feature and the second feature using the machine learning model; and generate the at least one frame based on the fused feature.
- the electronic device (101) (301) further includes a display (160); and a speaker (155), wherein the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: output a message (1402) (1408) (1410) through the display (160) or the speaker (155) instructing to re-capture the speaker's lips or re-input the speaker's voice based on the number of the at least one missing frame being greater than or equal to a threshold value.
- the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: output a message (1402) (1408) (1410) through the display (160) or the speaker (155) instructing to re-capture the speaker's lips or re-input the speaker's voice based on the number of the at least one missing frame being greater than or equal to a threshold value.
- the electronic device (101)(301) comprises a display (160); And further comprising a speaker (155), wherein the memory (130) (330) may store instructions that, when individually or wholly executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: generate a first result (1502) (1508) of performing the voice recognition operation based on the first frames or the second frames, generate a second result (1506) (1512) of performing the voice recognition operation based on the first frames, the second frames, or the at least one generated frame as an updated result of the first result (1502) (1508), and output the first result (1502) (1508) and the second result (1506) (1512) through the display (160) or the speaker (155) at the same or different times.
- the memory (130) (330) may store instructions that, when individually or wholly executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: generate a first result (1502) (1508) of performing the voice recognition operation based on the first frames or the second frames
- the electronic device (101) (301) further includes a communication circuit (190); a display (160); and a speaker (155), and the memory (130) (330) may store instructions that, when individually or wholly executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: control the communication circuit (190) to transmit first information including the first frames, the second frames, or the at least one generated frame to a server; in response to transmitting the first information, receive second information including a voice recognition result from the server through the communication circuit (190); and output the voice recognition result through the display (160) or the speaker (155) based on the received second information.
- the electronic device (101) (301) further includes a display (160); and a speaker (155), and the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: perform the voice recognition operation based on the learned voice recognition model (726) using the first frames, the second frames, or the at least one generated frame; obtain a voice recognition result based on the voice recognition operation; and output the obtained voice recognition result through the display (160) or the speaker (155).
- the electronic device (101) (301) further includes a display (160), and the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: output information (1302) (1312) (1322) indicating a frame input state based on the number of the first frames, to the display (160), based on the acquisition of the visual data (904), and output information (1304) (1314) (1324) indicating a frame input state based on the number of the second frames, to the display (160), based on the acquisition of the audio data (902).
- An electronic device comprises: at least one camera (180) (310); at least one microphone (150) (320); a communication circuit (190); a memory (130) (330); and at least one processor (120) (340) including a processing circuit, wherein the memory (130) (330) controls the communication circuit (190) to control instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: acquire visual data (904) associated with the lips of a speaker through the at least one camera (180) (310) during a first time period, acquire audio data (902) associated with the voice of the speaker through the at least one microphone (150) (320) during the first time period, transmit first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server, and receive a voice recognition result from the server through the communication circuit (190).
- the voice recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712), and performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame.
- FIG. 4a is a diagram for explaining a voice recognition operation according to one embodiment.
- a user's voice (402) input into an electronic device can be output as text (408) based on an acoustic model (404) and a language model (406).
- a speech signal generated based on a voice input may be input to an acoustic model (404).
- the acoustic model (404) may analyze the speech signal to extract acoustic features and predict the speech signal on a syllable-by-syllable basis based on the extracted acoustic features.
- the language model (406) may convert the predicted syllable-by-syllable sequence into words or sentences and output the conversion result as text (408).
- the sequence predicted by the acoustic model (404) in units of syllables may contain errors.
- the sequence containing errors may be corrected by the language model (406). For example, the sequence containing errors may be corrected into frequently used words (or sentences) based on the learned data of the language model (406). If the corrected word is linguistically sound or contextually sound, the corrected word may be output from the language model (406). Since the output word is corrected based on statistical data, it may not match the user's voice (402). If the output word does not match the user's voice (402), a voice recognition error may occur. For example, a voice recognition error as shown in the following [Table 1] may occur.
- the reference text may represent correct answer information as text corresponding to the input user's voice (402).
- the output text may represent text (408) output based on an acoustic model (404) and a language model (406), and may represent information predicted from the input user's voice (402).
- the spoken phrase "I plan to enjoy a quiet afternoon tea at the park” may be misrecognized as " ⁇ " and output as text, such as "I plan to enjoy a quiet afternoon tea at the park.”
- “ ⁇ ” indicates a temporal meaning
- “ ⁇ ” indicates a food-related meaning. Therefore, incorrect pronunciation by the user may result in outputting text with a different meaning.
- Multimodal speech recognition may be utilized. Multimodal speech recognition may be performed based on audio data associated with a user's voice and visual data associated with the user's lips (e.g., data associated with a lip image (or lip image)).
- visual data associated with the user's lips
- missing portions or damaged or lost portions
- audio data may be restored based on visual data
- missing portions of visual data may be restored based on audio data, thereby providing more accurate speech recognition results.
- FIG. 4b is a diagram for explaining a multimodal speech recognition operation based on restoration of audio data according to one embodiment.
- audio data (or audio signal) (452) associated with a speaker's voice can be obtained through at least one microphone (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3).
- At least one of the frames included in the audio data (452) may be a missing frame (454).
- the at least one missing frame (454) in the audio data (452) may represent a frame that does not include a speaker's voice and/or a frame in which a speaker's voice cannot be identified due to noise exceeding a threshold, voices of multiple speakers, or a soft voice of the speaker.
- the remaining frames in the audio data (452) excluding the at least one missing frame (454) may represent frames in which a speaker's voice is included or in which a speaker's voice is identified.
- visual data (456) associated with a speaker's lips can be acquired through at least one camera (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3).
- the visual data (456) can be acquired over substantially the same time period as the audio data (452), and can include frames in which the movement (or shape) of the lips over time is captured.
- the frames included in the visual data (456) may be non-missing frames.
- the non-missing frames in the visual data (456) may represent frames that include the speaker's lips or in which the speaker's lips are identifiable.
- the non-missing frame(s) will be referred to as normal frame(s) hereinafter.
- audio data (452) including at least one missing frame (454) and visual data (456) including normal frames can be output to a multimodal synchronization module (458).
- the multimodal synchronization module (458) can include at least one AI model.
- the at least one AI model can be a trained machine learning model, which can include a generative AI model capable of restoring at least one missing frame.
- the generative AI model can be trained to restore at least one missing frame associated with the audio data (452) or the visual data (456).
- the operation of restoring at least one missing frame may include the operation of generating at least one frame corresponding to the at least one missing frame, or the operation of generating at least one frame to be included in the position of the at least one missing frame on the time axis.
- the multimodal synchronization module (458) can restore at least one missing frame (454) of audio data (452) using visual data (456) based on a generative AI model.
- the visual data (456) can be used to recognize speech based on lip reading technology, and thus can be used to generate at least one audio frame (462) corresponding to the at least one missing frame (454) (or at least one audio frame (462) to be included at a position on the time axis of the at least one missing frame (454)).
- the multimodal synchronization module (458) can generate at least one audio frame (462) and output audio data (460) including at least one audio frame (462).
- the audio data (460) can be output to a multimodal automatic speech recognition (ASR) module (464). Since the visual data (456) includes normal frames, it can be output to the multimodal ASR module (464) without a restoration operation.
- the frames included in the audio data (460) and the visual data (456) can be synchronized and output to the multimodal ASR module (464).
- the multimodal ASR module (464) can extract acoustic features, such as an audio spectrogram, from audio data (460) and visual features, such as the shape of a speaker's mouth, from visual data (456).
- acoustic features such as an audio spectrogram
- visual features such as the shape of a speaker's mouth
- the multimodal ASR module (464) can combine extracted acoustic features and visual features and generate text based on a multimodal ASR model trained using the combined features.
- text generated by the multimodal ASR module (464) may be passed to a language model (466).
- the language model (466) may be used to check the grammar or meaning of the text or to supplement the context.
- Text (468) that passes through the language model (466) may include text that is easy to understand and contextually meaningful.
- FIG. 4c is a diagram for explaining a multimodal speech recognition operation based on restoration of visual data according to one embodiment.
- audio data (or audio signal) (472) associated with a speaker's voice can be obtained through at least one microphone (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3).
- the audio data (472) may include normal frames.
- normal frames may represent frames that contain a speaker's voice or in which a speaker's voice is identifiable.
- an electronic device may acquire visual data (474) associated with a speaker's lips via at least one camera (e.g., a camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3).
- the visual data (474) may be acquired over substantially the same time period as the audio data (472), and may include frames in which lip movement (or lip shape) over time is captured.
- At least one of the frames included in the visual data (474) may be a missing frame (476).
- At least one missing frame (476) in the visual data (474) may represent a frame in which the speaker's lips are not included or in which the speaker's lips are not clearly identifiable.
- audio data (472) including normal frames and visual data (474) including at least one missing frame (476) may be output to a multimodal synchronization module (478).
- the multimodal synchronization module (478) may be identical to or similar to the multimodal synchronization module (458) of FIG. 4B.
- the multimodal synchronization module (478) can restore at least one missing frame (476) of the visual data (474) using the audio data (472) based on the generative AI model.
- the multimodal synchronization module (458) can generate at least one image frame (482) corresponding to the at least one missing frame (476) (or at least one image frame (482) to be included at a position on the time axis of the at least one missing frame (476)).
- the multimodal synchronization module (478) can generate the at least one image frame (482) and output visual data (480) including the at least one image frame (482).
- Visual data (480) can be output to a multimodal ASR module (484). Since audio data (472) contains normal frames, it can be output to the multimodal ASR module (484) without a restoration operation.
- the multimodal ASR module (484) can be the same as or similar to the multimodal ASR module (464) of FIG. 4b.
- the multimodal ASR module (484) can extract acoustic features, such as an audio spectrogram, from audio data (472) and visual features, such as a speaker's mouth shape, from visual data (480).
- the multimodal ASR module (484) can combine the extracted acoustic features and visual features and generate text based on a multimodal ASR model trained using the combined features.
- text generated by the multimodal ASR module (484) may be passed to a language model (486).
- the language model (486) may be identical to or similar to the language model (466) of FIG. 4B .
- the language model (486) may be used to check the grammar or meaning of the text or to supplement the context.
- Text (488) that passes through the language model (486) may include text that is easy to understand and contextually meaningful.
- missing portions of audio data or missing portions of visual data can be restored based on a generative AI model, so speech recognition errors such as those shown in [Table 1] can be prevented.
- the electronic device (301) may be various types of electronic devices. Examples of various types are described below with reference to FIGS. 5A to 5C.
- FIG. 5A is a diagram illustrating a first type of electronic device according to one embodiment.
- the electronic device (301) may be a first type of electronic device.
- the first type of electronic device may include a mobile terminal such as a smartphone or tablet.
- the electronic device (301) when the electronic device (301) is a first type of electronic device, it may include the following configuration.
- the front of the electronic device (301) may include a display (503) (e.g., the display module (160) of FIG. 1) and at least one camera (507) (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3).
- the bottom of the electronic device (301) may include at least one microphone (not shown) (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3).
- the electronic device (301) can activate at least one camera and at least one microphone.
- the electronic device (301) can display a user interface (UI) or a graphical user interface (GUI) so that a user can recognize that at least one camera (507) and at least one microphone are activated for multimodal voice recognition.
- UI user interface
- GUI graphical user interface
- the electronic device (301) can indicate that at least one camera (507) is activated by providing a shaded mark or a circled mark around at least one camera (507).
- the electronic device (301) can indicate that at least one microphone is activated by displaying at least one display object (e.g., a microphone icon or an icon indicating that voice recognition is in progress) (505) at a set position on the display (503) (e.g., a position adjacent to at least one microphone or a position at the bottom of the display (503).
- at least one display object e.g., a microphone icon or an icon indicating that voice recognition is in progress
- a set position on the display e.g., a position adjacent to at least one microphone or a position at the bottom of the display (503).
- At least one camera (507) and at least one microphone may be activated at substantially the same time for multimodal speech recognition.
- at least one camera (507) and at least one microphone may be activated at substantially the same time based on a button input or touch input to initiate multimodal data input. Based on a button input or touch input to initiate multimodal data input, information for capturing the user's face and receiving voice input may be output to the display (503) or as audio information.
- At least one camera (507) and at least one microphone may be deactivated at substantially the same time based on a button input or touch input to terminate multimodal data input.
- Information indicating that filming has ended and voice input has ended based on a button input or touch input to terminate multimodal data input may be output to the display (503) or as audio information.
- the electronic device (301) can acquire an image including a user's face and receive the user's voice while at least one camera (507) and at least one microphone are activated.
- an image (e.g., an image including a user's face or mouth) acquired by at least one activated camera (507) may or may not be displayed on the display (503).
- a message or graphic may be displayed indicating that the user's voice is being input.
- the electronic device (301) may detect a portion corresponding to the user's face from an image acquired through at least one camera (507). When the portion corresponding to the user's face is detected, the electronic device (301) may detect a portion of the detected portion that includes lips as a lip image. The electronic device (301) may perform a multimodal voice recognition operation based on visual data associated with the detected lip image and audio data associated with the user's voice.
- FIG. 5b is a diagram illustrating a second type of electronic device according to one embodiment.
- the electronic device (301) may be a second type of electronic device.
- the second type of electronic device may include a mobile terminal similar to the first type of electronic device (301) of FIG. 5A, or may include a foldable electronic device or a flexible electronic device whose display can be folded or unfolded.
- the electronic device (301) when the electronic device (301) is a second type of electronic device, it may include the following configuration.
- the electronic device (301) may include a flexible display on the inner surface and a display (513) (e.g., the display module (160) of FIG. 1) on the outer surface.
- the electronic device (301) may perform a multimodal voice recognition operation through the display (513) included on the outer surface without unfolding the display.
- the electronic device (301) may activate at least one camera (517) and at least one microphone (not shown).
- the electronic device (301) may display a UI or GUI so that a user can recognize that at least one camera (517) (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3) and at least one microphone (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3) are activated for multimodal voice recognition.
- the electronic device (301) may display at least one display object (e.g., a camera icon) (518) on the display (513) indicating that at least one camera (517) is activated.
- the electronic device (301) may indicate that at least one microphone is activated by displaying at least one display object (e.g., a microphone icon or an icon indicating that voice recognition is in progress) (515) at a set location on the display (513) (e.g., a location adjacent to at least one microphone or a location below the display (513)).
- at least one display object e.g., a microphone icon or an icon indicating that voice recognition is in progress
- a set location on the display (513) e.g., a location adjacent to at least one microphone or a location below the display (513).
- the electronic device (301) may activate at least one camera (517) and at least one microphone at substantially the same time for multimodal voice recognition.
- the electronic device (301) may acquire an image including a user's face and receive the user's voice while the at least one camera (517) and at least one microphone are activated.
- an image e.g., an image including the user's face or mouth
- an image acquired by the at least one activated camera (517) may or may not be displayed on the display (513).
- a message or graphic indicating that the user's voice is being input may be displayed.
- the electronic device (301) can detect a portion corresponding to the user's face from an image acquired through at least one camera (517). When the portion corresponding to the user's face is detected, the electronic device (301) can detect a portion of the detected portion that includes lips as a lip image. The electronic device (301) can perform a multimodal voice recognition operation based on visual data associated with the detected lip image and audio data associated with the user's voice.
- FIG. 5c is a diagram illustrating a third type of electronic device according to one embodiment.
- the electronic device (301) may be a third type of electronic device.
- the third type of electronic device may include a wearable electronic device.
- the electronic device (301) may be a smartwatch, but is not limited thereto, and may also be an electronic device such as smart glasses, a head-mounted display (HMD), or a smart ring.
- HMD head-mounted display
- the electronic device (301) When the electronic device (301) is a third type of electronic device, it may include the following configuration. When multimodal voice recognition is used, the electronic device (301) may activate at least one camera (527) (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3) and at least one microphone (not shown) (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3). The electronic device (301) may display a UI or GUI so that a user can recognize that at least one camera (527) and at least one microphone are activated for multimodal voice recognition.
- the electronic device (301) may activate at least one camera (527) (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3) and at least one microphone (not shown) (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3).
- the electronic device (301) may display a UI or GUI
- the electronic device (301) may indicate that at least one camera (527) is activated by providing a shaded mark or a circling mark around at least one camera (527).
- the electronic device (301) may indicate that at least one microphone is activated by displaying at least one display object (e.g., a microphone icon or an icon indicating that voice recognition is in progress) (525) at a set location (e.g., a location adjacent to at least one microphone or a location below the display (523)) on the display (523) (e.g., the display module (160) of FIG. 1).
- the electronic device (301) can activate at least one camera (527) and at least one microphone at substantially the same time for multimodal speech recognition.
- the electronic device (301) can acquire an image including the user's face (528) or mouth and receive the user's voice while at least one camera (527) and at least one microphone are activated.
- the image e.g., an image including the user's face (528) or mouth
- the at least one activated camera (527) may or may not be displayed on the display (523).
- a message or graphic indicating that the user's voice is being input may be displayed.
- the electronic device (301) can detect a portion corresponding to the user's face (528) from an image acquired through at least one camera (527). When the portion corresponding to the user's face (528) is detected, the electronic device (301) can detect a portion (529) containing lips from the detected portion as a lip image. The electronic device (301) can perform a multimodal voice recognition operation based on visual data associated with the detected lip image and audio data associated with the user's voice.
- At least one camera mentioned below may correspond to, for example, any one of the camera module (180) of FIG. 1, at least one camera (310) of FIG. 3, or at least one camera (507) of FIG. 5a, at least one camera (517) of FIG. 5b, or at least one camera (527) of FIG. 5c.
- At least one microphone mentioned below may correspond to, for example, the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3.
- FIG. 6A is a diagram illustrating a situation in which lip recognition is possible in an electronic device according to one embodiment.
- the electronic device (301) can acquire an image through at least one camera. According to one embodiment, capturing may be performed while the lips of the speaking user (602) are included in the field of view (FOV) (603) of at least one camera. As a result of capturing, the electronic device (301) can acquire an image including the lips of the speaking user (602) and perform lip recognition from the acquired image.
- FOV field of view
- FIG. 6b is a diagram illustrating a situation in which lip recognition is impossible in an electronic device according to one embodiment.
- the electronic device (301) can acquire an image through at least one camera.
- the capture can be performed in a state where the lips of the speaking user (602) are not included in the FOV (603) of at least one camera.
- the FOV (603) of at least one camera may include the chin of the user (602) instead of his/her lips, as shown in (a) of FIG. 6b.
- the FOV (603) of at least one camera may include the cheek instead of the user's (602) lips, as shown in (b) of FIG. 6B.
- the FOV (603) of at least one camera may include the user's (602) eyes instead of his/her lips, as shown in (c) of FIG. 6b.
- the electronic device (301) may obtain an image that does not include the lips of the speaking user (602).
- the electronic device (301) may be unable to perform lip recognition based on the fact that the lips of the speaking user (602) are not included in the obtained image.
- an image that is not lip-recognizable may be acquired.
- At least one frame corresponding to the acquired image may be identified as at least one missing frame (e.g., at least one missing frame (476) of FIG. 4C) in the visual data (e.g., visual data (474) of FIG. 4C).
- Fig. 7 is a block diagram of a multimodal speech recognition device according to one embodiment.
- the multimodal speech recognition device (701) may include a modality frame selection module (706), a multimodal synchronization module (712), or a multimodal ASR module (726).
- first modality data (702) and second modality data (704) may be input to a modality frame selection module (706).
- the first modality data (702) and the second modality data (704) may be different types of data and may be acquired during substantially the same time period.
- the first modality data (702) may include first frames acquired during time T (or time period T), and the second modality data (704) may include second frames acquired during time T.
- the first frames may include either audio frames or image frames, and the second frames may include the other of the audio frames or image frames.
- the audio frames may be associated with a speaker's voice, and the image frames may be associated with an image of the speaker's lips.
- the modality frame selection module (706) can determine source frames (710) and target frames (708) based on the number of first frames included in the first modality data (702) and second frames included in the second modality data (704).
- the modality frame selection module (706) may determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same. Based on the fact that the first time and the second time are not substantially the same, the modality frame selection module (706) may identify at least one missing frame. The at least one missing frame may be associated with frames corresponding to a shorter time among the first frames or the second frames.
- At least one missing frame can be identified by alignment and/or synchronization between the first frames and the second frames along a timeline based on time T.
- the modality frame selection module (706) can align the first frames and the second frames along the timeline and synchronize the aligned first frames and the second frames. If, as a result of the synchronization, at least one unsynchronized frame among the first frames or the second frames is identified, the modality frame selection module (706) can identify the at least one missing frame based on the at least one unsynchronized frame.
- the modality frame selection module (706) can determine whether a first frame reception rate associated with the number of first frames and a second frame reception rate associated with the number of second frames are substantially the same.
- the first frame reception rate and the second frame reception rate can be determined based on the number of image frames received per second (e.g., frames per second (fps)) or the number of audio frames received per second (e.g., sampling rate).
- the modality frame selection module (706) may determine frames corresponding to a larger ratio of the first frame reception ratio and the second frame reception ratio (e.g., the second frames) as source frames (710), and determine frames corresponding to a smaller ratio of the first frames and the second frames (e.g., the first frames) as target frames (708).
- the modality frame selection module (706) can output source frames (710) and target frames (708) to a multimodal synchronization module (712).
- the multimodal synchronization module (712) can include a first encoder (714), a second encoder (716), a fusion module (718), a first decoder (720), or a synchronization model (722).
- the first encoder (714) may compress the target frames (708) to generate first embedding information.
- the first encoder (714) may extract a first feature (e.g., an acoustic feature such as an audio spectrogram or a visual feature associated with lip movement or shape) from the target frames (708) and generate the first embedding information (or first embedding vector) based on the extracted first feature.
- a first feature e.g., an acoustic feature such as an audio spectrogram or a visual feature associated with lip movement or shape
- the second encoder (716) may compress the source frames (710) to generate second embedding information.
- the second encoder (716) may extract second features (e.g., visual features associated with lip movement or shape, or acoustic features such as an audio spectrogram) from the source frames (710) and generate second embedding information (or second embedding vector) based on the extracted second features.
- second features e.g., visual features associated with lip movement or shape, or acoustic features such as an audio spectrogram
- the fusion module (718) can fuse (or combine or integrate) the first embedding information output from the first encoder (714) and the second embedding information output from the second encoder (716) to generate fused embedding information (or fused embedding vector).
- the first embedding information can include the first feature extracted from the target frames (708), and the second embedding information can include the second feature extracted from the source frames (710).
- the fused embedding information can include the fused result of the first feature and the second feature.
- the first decoder (720) may infer and restore at least one missing frame using the fused embedding information based on a loss function or a restoration model. For example, the first decoder (720) may generate at least one frame corresponding to the at least one missing frame, or generate at least one frame to be included in the position of the at least one missing frame on the time axis. The first decoder (720) may output target frames (724) including the at least one generated frame as updated target frames.
- the synchronization model (722) can be used for frame synchronization between source frames (710) and updated target frames (724).
- the source frames (710) and the updated target frames (724) can be synchronized through the synchronization model (722) and then generated as a sequence of a set time length.
- the source frames (710) can be generated as a first sequence including frames corresponding to time T
- the updated target frames (724) can be generated as a second sequence including frames corresponding to time T.
- the first sequence and the second sequence can be input to the multimodal ASR module (726).
- the multimodal ASR module (726) may include a multimodal ASR model.
- the multimodal ASR module (726) may perform speech recognition based on the first sequence and the second sequence based on the multimodal ASR model.
- the multimodal ASR module (726) may include or be connected to a language model.
- the language model may linguistically modify or supplement the output result of the multimodal ASR module (726) to output natural text appropriate to the context.
- the multimodal speech recognition device (701) may be included in the electronic device (301). Based on the inclusion of the multimodal speech recognition device (701) in the electronic device (301), the above-described operations may be performed as on-device operations.
- At least one component included in the multimodal speech recognition device (701) may be included in the electronic device (301) or may be included in the server.
- the modality frame selection module (706) may be included in the electronic device (301), and the multimodal synchronization module (712) and/or the multimodal ASR module (726) may be included in the server.
- the modality frame selection module (706) and/or the multimodal synchronization module (712) may be included in the electronic device (301), and the multimodal ASR module (726) may be included in the server.
- the operation of each component may be performed substantially the same as described above, except that communication is performed between the electronic device (301) and the server.
- FIG. 8a is a diagram illustrating a learning operation of a multimodal synchronization module for image frame restoration according to one embodiment.
- image frames included in visual data may be determined as target frames (802), and audio frames included in audio data may be determined as source frames (804).
- learning to restore at least one missing image frame based on audio frames e.g., learning to generate at least one image frame corresponding to at least one missing image frame, or learning to generate at least one image frame to be included in the position of at least one missing image frame on the time axis may be performed.
- the target frames (802) may include image frames (e.g., ⁇ a 1 ,...,a m ⁇ ) for a time T
- the source frames (804) may include audio frames (e.g., ⁇ l 1 ,...,l n ⁇ ) for a time T.
- the number of image frames may be m
- the number of audio frames may be n.
- m and n may be natural numbers greater than or equal to 0, and may be the same or different.
- image frames and audio frames may be used as input data for learning to restore at least one missing image frame based on audio frames.
- At least one of the image frames may be set as a missing image frame, and the audio frames may be set not to include at least one missing audio frame.
- Information about the at least one missing image frame may be set to include specific information or a value (e.g., 0) and used for learning.
- image reference frames (or image correct frames) (810), which are output data, may be used.
- the image reference frames (810) may include m image frames (or m normal image frames) that do not include at least one missing image frame.
- the following learning may be performed in the multimodal synchronization module (712) based on input data (e.g., image frames and audio frames) and output data (e.g., image reference frames (810)).
- input data e.g., image frames and audio frames
- output data e.g., image reference frames (810)
- image frames which are target frames (802), may be input to a first encoder (714).
- the first encoder (714) may compress the image frames to extract a first feature (e.g., a visual feature associated with lip movement or lip shape).
- the first encoder (714) may generate first embedding information based on the extracted first feature.
- audio frames which are source frames (804), may be input to a second encoder (716).
- the second encoder (716) may compress the audio frames to extract second features (e.g., acoustic features such as an audio spectrogram).
- the second encoder (716) may generate second embedding information based on the extracted second features.
- the first embedding information generated by the first encoder (714) and the second embedding information generated by the second encoder (716) can be fused by the fusion module (718).
- the fusion module (718) may include a plurality of fusion conformers as attention modules for fusion of a first feature included in the first embedding information and a second feature included in the second embedding information.
- the fusion module (718) may include a first fusion conformer (717-1), a second fusion conformer (717-2), a third fusion conformer (717-3), a fourth fusion conformer (717-4), or a fifth fusion conformer (717-5).
- a plurality of fusion conformers may perform hierarchical or step-wise learning associated with the fusion of each image frame and each audio frame.
- a first fusion conformer (717-1) may learn the fusion of the first feature and the second feature based on the input first embedding information and the input second embedding information
- a second fusion conformer (717-2) may perform more detailed learning based on the learning result of the first fusion conformer (717-1).
- a third fusion conformer (717-3), a fourth fusion conformer (717-4), or a fifth fusion conformer (717-5) may perform more detailed learning based on the previous learning result in a hierarchical or step-wise manner.
- the fusion module (718) may include a plurality of FCs as fully connected layers.
- the fusion module (718) may include a first FC (719-1), a second FC (719-2), or a third FC (719-3).
- the first FC (719-1), the second FC (719-2), or the third FC (719-3) may increase the accuracy of the fusion result (or fused feature) by transforming the output of at least one of the plurality of fusion conformers (e.g., at least one of the third fusion conformer (717-3), the fourth fusion conformer (717-4), or the fifth fusion conformer (717-5)) based on different weight values.
- the weight values of each of the first FC (719-1), the second FC (719-2), or the third FC (719-3) may be determined or adjusted to reduce the difference between the image data predicted by the fusion result and the output data (e.g., image reference frames (810)).
- the fusion result output from the fusion module (718) may be input to the first decoder (720).
- the first decoder (720) may predict at least one lip image based on the fusion result, and may restore at least one missing image frame based on the prediction result.
- the first decoder (720) can predict at least one lip image based on the prediction and/or reconstruction model (808) and generate at least one image frame including the at least one predicted lip image.
- the at least one generated image frame can be a result of reconstruction of at least one missing image frame, and can correspond to the at least one missing image frame or be included at a position of the at least one missing image frame on the time axis.
- an image loss function (806) may be utilized in connection with the prediction and/or reconstruction model (808).
- the image loss function (806) may be utilized to compute a difference between a lip image included in at least one generated image frame and at least one lip image included in image reference frames (810).
- the prediction and/or reconstruction model (808) may be trained such that the output value of the image loss function (806) is minimized.
- the first decoder (720) can update the image frames to include at least one generated image frame.
- the updated image frames can be synchronized with the audio frames based on a synchronization model (722).
- the synchronization can be performed such that the output value of a loss function (L sync ) associated with the synchronization is minimized, or such that temporal characteristics between input data and output data correspond.
- L sync loss function
- FIG. 8b is a diagram illustrating a learning operation of a multimodal synchronization module for audio frame restoration according to one embodiment.
- audio frames included in audio data may be determined as target frames (832), and image frames included in visual data may be determined as source frames (834).
- learning to restore at least one missing audio frame based on the image frames e.g., learning to generate at least one audio frame corresponding to at least one missing audio frame, or learning to generate at least one audio frame to be included in the position of at least one missing audio frame on the time axis may be performed.
- the target frames (832) may include audio frames (e.g., ⁇ l 1 ,...,l n ⁇ ) for a time T
- the source frames (834) may include image frames (e.g., ⁇ a 1 ,...,a m ⁇ ) for a time T.
- audio frames and image frames may be used as input data for learning to restore at least one missing audio frame based on image frames.
- At least one of the audio frames may be set as a missing audio frame, and the image frames may be set not to include at least one missing image frame.
- Information about the at least one missing audio frame may be set to include specific information or a value (e.g., 0) and used for learning.
- audio reference frames (or audio correct frames) (840), which are output data may be used.
- the audio reference frames (840) may be n audio frames (or n normal audio frames) that do not include at least one missing audio frame.
- the following learning may be performed in the multimodal synchronization module (712) based on input data (e.g., image frames and audio frames) and output data (e.g., audio reference frames (840)).
- input data e.g., image frames and audio frames
- output data e.g., audio reference frames (840)
- audio frames which are target frames (832), may be input to a first encoder (714).
- the first encoder (714) may compress the audio frames to extract a first feature (e.g., an acoustic feature such as an audio spectrogram).
- the first encoder (714) may generate first embedding information based on the extracted first feature.
- image frames which are source frames (834), may be input to a second encoder (716).
- the second encoder (716) may compress the image frames to extract second features (e.g., visual features associated with lip movement or lip shape).
- the second encoder (716) may generate second embedding information based on the extracted second features.
- the first embedding information generated by the first encoder (714) and the second embedding information generated by the second encoder (716) can be fused by the fusion module (718).
- a plurality of fusion conformers included in the fusion module (718) can perform hierarchical or step-by-step learning associated with the fusion of each audio frame and each image frame.
- the first FC (719-1), the second FC (719-2), or the third FC (719-3) included in the fusion module (718) can increase the accuracy of the fusion result (or fused feature) by transforming the output of at least one of the plurality of fusion conformers (e.g., at least one of the third fusion conformer (717-3), the fourth fusion conformer (717-4), or the fifth fusion conformer (717-5)) based on different weight values.
- the weight values of each of the first FC (719-1), the second FC (719-2), or the third FC (719-3) can be determined or adjusted to reduce a difference between audio data predicted by the fusion result and output data (e.g., audio reference frames (840)).
- the fusion result output from the fusion module (718) may be input to the first decoder (720).
- the first decoder (720) may predict at least one audio signal (e.g., audio spectrogram) associated with speech based on the fusion result, and may restore at least one missing audio frame based on the prediction result.
- audio signal e.g., audio spectrogram
- the first decoder (720) can predict at least one audio signal based on the prediction and/or reconstruction model (838) and generate at least one audio frame including the at least one predicted audio signal.
- the at least one generated audio frame can be a result of reconstruction of at least one missing audio frame, and can correspond to the at least one missing audio frame or be included at a position of the at least one missing audio frame on the time axis.
- an audio loss function (836) may be utilized in connection with a prediction and/or reconstruction model (838).
- the audio loss function (836) may be utilized to compute a difference between an audio signal included in at least one generated audio frame and an audio signal included in audio reference frames (840) that are output data.
- the prediction and/or reconstruction model (838) may be trained such that an output value of the audio loss function (836) is minimized.
- the first decoder (720) can update the audio frames to include at least one generated audio frame.
- the updated audio frames can be synchronized with the image frames based on a synchronization model (722).
- the synchronization can be performed such that the output value of a loss function (L sync ) associated with the synchronization is minimized, or such that temporal characteristics between input data and output data correspond.
- L sync loss function
- FIGS. 9A and 9B are diagrams for comparing voice recognition operations when a multimodal synchronization module according to one embodiment is used and when it is not used.
- FIG. 9a is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is not used.
- audio data (902) may be input as a voice modality
- visual data (904) may be input as a lip image modality.
- the audio data (902) and the visual data (904) may be input during substantially the same time period, and each may include at least one missing frame.
- the at least one missing frame may be indicated as a frame in which either the voice or the lip image is missing.
- the visual data (904) may include more missing frames than the audio data (902).
- audio data (902) and visual data (904) can be input to the multimodal ASR module (726).
- the multimodal ASR module (726) can perform a speech recognition operation based on the audio data (902) and the visual data (904).
- the multimodal ASR module (726) may output unclear speech recognition results because each of the audio data (902) and the visual data (904) includes missing frames.
- the multimodal ASR module (726) may output text information with some content lost as a speech recognition result (e.g., I'm taking the subway now... Thank goodness I'm taking it now (908)).
- FIG. 9b is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is used.
- audio data (902) and visual data (904) can be input to a multimodal synchronization module (712).
- the multimodal synchronization module (712) can operate as a learned generative AI model, and thus can generate (906) missing frames of each of the audio data (902) and visual data (904).
- the missing image frames e.g., image frames 3, 4, 5, or 8 and the missing audio frames (e.g., audio frame 6 or 7) may not correspond in time. Based on this, the image frames to be included in the positions of the missing image frames in time can be generated based on the corresponding audio frames in time (e.g., audio frame 3, 4, 5, or 8), and the audio frames to be included in the positions of the missing audio frames in time can be generated based on the corresponding image frames in time (e.g., image frame 6 or 7).
- the corresponding audio frames in time e.g., audio frame 3, 4, 5, or 8
- the audio frames to be included in the positions of the missing audio frames in time can be generated based on the corresponding image frames in time (e.g., image frame 6 or 7).
- audio data (902) may be updated to include generated audio frames
- image data (904) may be updated to include generated image frames.
- the updated audio data and the updated image data may be input to the multimodal ASR module (726).
- the multimodal ASR module (726) can perform a speech recognition operation based on updated audio data and updated image data.
- the multimodal ASR module (726) can output a clear speech recognition result based on the updated audio data and updated image data.
- the multimodal ASR module (726) can output text information (e.g., "I 'm taking the subway now. Thank goodness I'm on it now (910)") without losing content as the speech recognition result.
- FIG. 10 is a diagram for explaining the learning operation of a multimodal ASR module according to one embodiment.
- the multimodal ASR module (726) may include a conformal encoder (1008) and a decoder (1010).
- audio data and visual data may be input to the multimodal ASR module (726) in the form of a sequence.
- the sequence may be generated by sequentially arranging frames corresponding to a set number or a set time.
- an audio sequence (1002) including audio frames and a visual sequence (1004) including image frames may be input to the multimodal ASR module (726).
- the audio sequence (1002) and the visual sequence (1004) may be embedded through a conformer encoder (1008).
- the encoder (1008) may convert each of the audio sequence (1002) and the visual sequence (1004) into low-dimensional data based on a neural network such as a convolutional neural network (CNN) and/or a residual network (ResNet), and may extract features from the converted data.
- a neural network such as a convolutional neural network (CNN) and/or a residual network (ResNet)
- the conformer encoder (1008) can perform an audio-visual fusion operation (1006) that fuses (or combines or integrates) features extracted from each of an audio sequence (1002) and a visual sequence (1004).
- the conformer encoder (1008) can output the features fused by the audio-visual fusion operation (1006) to the decoder (1010).
- the decoder (1010) can predict and output text (e.g., “Hello, I’m a library”) based on the fused features. According to one embodiment, the decoder (1010) can perform the prediction or output of the text based on at least one token. According to one embodiment, the decoder (1010) can start the text prediction or output operation based on a start token (e.g., ⁇ s>) indicating the beginning of a sentence. According to one embodiment, the decoder (1010) can end the text prediction or operation when the end of the sentence is predicted, and generate an end token (e.g., ⁇ /s>) indicating the end of the sentence.
- a start token e.g., ⁇ s>
- the decoder (1010) can end the text prediction or operation when the end of the sentence is predicted, and generate an end token (e.g., ⁇ /s>) indicating the end of the sentence.
- the decoder (1010) can output “Hello, I’m a library” along with ⁇ /s> indicating the end of the sentence.
- Tokens such as ⁇ s> and/or ⁇ /s> are used to clearly demarcate text or sentence boundaries and may not be used as text for the user.
- learning for speech recognition may be performed based on fused features output from the conformer encoder (1008), predicted text from the decoder (1010), or correct text.
- FIG. 11 is a flowchart schematically illustrating the operation of an electronic device according to one embodiment.
- operations 1102 to 1118 may be understood to be performed in a processor (e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3) of an electronic device (e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3).
- a processor e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3
- an electronic device e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3.
- FIG. 11 The operations illustrated in FIG. 11 are not limited to the order illustrated and may be performed in various orders. In one embodiment, at least some of the operations illustrated in FIG. 11 may be omitted, or more operations may be performed than those illustrated in FIG. 11.
- the electronic device may receive an image through at least one camera during a first time period.
- the electronic device may perform a face detection operation based on an input image.
- the electronic device may determine location information of a face in the image based on at least one camera.
- the at least one camera may include a face detection module for the face detection operation.
- the face detection module may perform face recognition based on a small-size deep learning model or a pattern recognition method.
- the electronic device may store location information of the face.
- the electronic device may output a notification via the display or speaker indicating that a face is not detected. If a face is not detected for a set period of time, the electronic device may turn off at least one camera.
- the electronic device may perform a lip detection operation based on the face detection.
- the electronic device may estimate lips based on coordinate information stored through the face detection. Once the lips are estimated, the electronic device may perform an image preprocessing operation (e.g., cropping and/or resizing) to obtain an image including the estimated lips.
- an image preprocessing operation e.g., cropping and/or resizing
- the electronic device may receive a speaker's voice input through at least one microphone during a first time period.
- operation 1108 may be performed in parallel with or substantially at the same time as operation 1102.
- the electronic device may obtain image frames associated with a lip image based on operations 1102 to 1106, and may obtain audio frames associated with a speaker's voice based on operation 1108.
- the electronic device can identify a first time corresponding to the image frames and a second time corresponding to the audio frames based on which the image frames and the audio frames were acquired.
- the electronic device may determine whether the first time and the second time are substantially the same. Based on the fact that the first time and the second time are not substantially the same, the electronic device may perform operation 1114, and based on the fact that the first time and the second time are substantially the same, the electronic device may perform operation 1116.
- the electronic device may perform a multimodal restoration and/or synchronization operation based on the first time and the second time being substantially not the same.
- the multimodal restoration and/or synchronization operation may include a restoration operation of at least one missing frame performed by the multimodal synchronization module (712) (e.g., generating at least one frame corresponding to the at least one missing frame, or generating at least one frame to be included at a time axis location of the at least one missing frame), and/or an operation of synchronizing image frames and audio frames with the at least one restored frame.
- the electronic device can perform a multimodal ASR operation based on input image frames and audio frames based on the first time and the second time being substantially the same.
- the electronic device can perform a multimodal ASR operation based on image frames and audio frames output by a multimodal restoration and/or synchronization operation based on the first time and the second time being substantially not the same.
- the electronic device may output text based on the multimodal ASR operation.
- the electronic device may perform operation 1118 and perform a natural language understanding (NLU) operation or a text-to-speech (TTS) operation.
- NLU natural language understanding
- TTS text-to-speech
- the NLU operation may include an operation of interpreting the meaning (or intent) of output text and generating text with a natural context based on the interpreted meaning
- the TTS operation may include an operation of converting text generated by the NLU operation into an audio signal.
- FIG. 12 is a diagram illustrating the results of multimodal speech recognition performed in an electronic device according to one embodiment.
- a user can input a facial image and voice (e.g., “Just like clothes get wet in a drizzle, love grows by accumulating small attention and consideration”) using an electronic device (301) such as a smartwatch (e.g., the second type of electronic device (301) of FIG. 5b).
- the electronic device (301) can obtain visual data (1202) and audio data (1204) based on the input facial image and voice.
- the visual data (1202) may include at least one missing image frame that makes lip recognition impossible due to the user's movement.
- the audio data (1204) may not include at least one missing audio frame, but may contain noise, which may cause errors in speech recognition.
- the electronic device (301) may output text (e.g., "Love is like a clothes expert in a drizzle --) (1208) that includes misrecognized content.
- At least one image frame can be generated through the generative AI model of the multimodal synchronization module (712).
- the at least one generated image frame can correspond to the at least one missing frame.
- the at least one generated image frame can be included in the visual data (120) to generate updated visual data (1206).
- a clearer speech recognition result can be output compared to when the updated visual data (1206) is not used.
- the electronic device (301) can output a text (e.g., “Love also gets wet in a drizzle...”) (1210) containing content corresponding to the input speech.
- FIG. 13 is a diagram illustrating a UI indicating a voice or image input status provided by an electronic device according to one embodiment.
- the electronic device (301) may output information indicating a voice input status on the display based on the number of audio frames acquired based on voice input.
- the electronic device (301) may output information indicating an image input status on the display based on the number of image frames acquired based on lip image input.
- information indicating a voice input state or an image input state may include graphic information such as an equalizer, a bar, or a circle, or graph information indicating the number of frames acquired over time.
- Figures 13 (a) to (c) show examples in which a voice input state or an image input state is indicated as graphic information in the form of an equalizer based on the number of frames.
- the image frame equalizer (1302) may include a first graphic indicator associated with the image frames.
- the first graphic indicator may have a length based on the number of image frames and may include a graphical representation in the form of a bar having a position based on the input time of each of the image frames.
- the audio frame equalizer (1304) may include a second graphic indicator associated with the audio frames.
- the second graphic indicator may have a length based on the number of audio frames and may include a graphical representation in the form of a bar having a position based on the input point of each of the audio frames.
- the image frames and audio frames are input in substantially the same number.
- the image frames and the audio frames can be identified as being input at substantially the same point in time.
- the electronic device (301) can perform a multimodal speech recognition operation based on the image frames and the audio frames.
- the first graphic indicator included in the image frame equalizer (1312) may not indicate consecutive input points.
- Non-consecutive input points may mean that lip images are not input consecutively, or that at least one image frame is missing.
- the second graphic indicator included in the audio frame equalizer (1314) may indicate consecutive input points. Consecutive input points may mean that there is no missing audio frame at least.
- the image frame equalizer (1312) and the audio frame equalizer (1314) based on the image frame equalizer (1312) and the audio frame equalizer (1314), it can be identified that the image frames and the audio frames have different time lengths and that at least one of the image frames is a missing frame.
- the electronic device (301) can perform a multimodal restoration and/or synchronization operation based on the identification result, and perform a multimodal speech recognition operation based on the updated image frames and audio frames after performing the operation.
- the first graphic indicator included in the image frame equalizer (1322) may have a shorter length than the second graphic indicator included in the audio frame equalizer (1324).
- the fact that the first graphic indicator has a shorter length than the second graphic indicator may mean that the number of missing frames in the image frames is greater than that in the audio frames.
- the image frame equalizer (1322) and the audio frame equalizer (1324) based on the image frame equalizer (1322) and the audio frame equalizer (1324), it can be identified that the image frames and the audio frames have different time lengths and that at least one of the image frames is a missing frame.
- the electronic device (301) can perform a multimodal restoration and/or synchronization operation based on the identification result, and perform a multimodal speech recognition operation based on the updated image frames and audio frames after performing the operation.
- FIG. 14 is a diagram illustrating an operation of an electronic device according to one embodiment of the present invention to output a notification message indicating a failure in voice or lip recognition.
- a notification message may be output via the display or speaker.
- the electronic device (301) may induce re-performing of voice input by outputting a notification message (1402) on the display, “Recognition failed. Please look at the screen and input again.”
- a notification message may be output through the display or speaker.
- the electronic device (301) may output a notification message through the speaker that prompts the user to take a photo of the lips, such as a notification message (1408) of “Look at the camera and input voice” or a notification message (1410) of “Turn your wrist.”
- FIG. 15 is a diagram illustrating an example of a multimodal voice recognition operation being used in an electronic device according to one embodiment.
- the electronic device (301) can utilize multimodal voice recognition operations in the text-to-call function.
- the text-to-call function may include a function for conversing with other users through multimodal voice input.
- the electronic device (301) can perform voice recognition operations based on voice and lip images input by the user, and output the voice recognition results as text on the display.
- a voice misrecognition may occur based on noise in the user input, a low voice, or missing lip images due to the user's movements.
- the electronic device (301) may display a first text generated as a result of the voice misrecognition (e.g., "Sorry, I'm on hold right now. There are too many people here") (1502) on the display.
- the electronic device (301) may perform sentence correction via the multimodal synchronization module (712) (1504). For example, the electronic device (301) may perform the speech recognition operation again after restoring at least one missing frame in the audio frames and/or image frames that caused the speech misrecognition via the multimodal synchronization module (712).
- the electronic device (301) may output the second text (e.g., “Sorry, I’m running now, there are too many people here”) (1506) generated as a result of the re-performed speech recognition to the display.
- the second text (1506) may be indicated as the corrected or updated text of the first text (1502).
- the electronic device (301) may display information (e.g., “corrected text”) indicating that the second text (1506) is the corrected or updated text of the first text (1502) along with the second text (1506).
- the first text (1502) and the second text (1506) may be displayed simultaneously, the first text (1502) may be displayed first, and then the second text (1506) may be displayed, or the display of the first text (1502) may be omitted and the second text (1506) may be displayed.
- sentence correction via the multimodal synchronization module (712) may be performed repeatedly. Based on the occurrence of a voice misrecognition result again, the electronic device (301) may output third text generated as a voice misrecognition result (e.g., "It's seesaw-like around here too") (1508) to the display.
- a voice misrecognition result e.g., "It's seesaw-like around here too”
- the electronic device (301) can perform sentence correction via the multimodal synchronization module (712) (1510).
- the electronic device (301) can perform the speech recognition operation again after restoring at least one missing frame within the audio frames and/or image frames that caused the speech misrecognition via the multimodal synchronization module (712).
- the electronic device (301) can output the fourth text (e.g., "It's noisy around here too") (1512) generated as the result of the re-performed speech recognition to the display.
- FIG. 16 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result.
- operations 1602 to 1612 may be understood to be performed in a processor (e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3) of an electronic device (e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3).
- a processor e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3
- an electronic device e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3.
- an electronic device may receive voice and image input.
- the electronic device may obtain audio frames associated with the input voice.
- the electronic device may recognize lips from the input image and obtain image frames associated with the recognized lips.
- the electronic device can perform a multimodal ASR operation based on the acquired audio frames and image frames.
- the electronic device may output a first result (e.g., first text (1502) or third text (1508) of FIG. 15) based on the multimodal ASR operation.
- a first result e.g., first text (1502) or third text (1508) of FIG. 15
- the electronic device may perform a multimodal restoration and/or synchronization operation.
- the multimodal restoration and/or synchronization operation may include a restoration operation of at least one missing frame performed by a multimodal synchronization module (712) (e.g., generating at least one frame corresponding to the at least one missing frame, or generating at least one frame to be included in the position of the at least one missing frame on the time axis), and/or an operation of synchronizing image frames and audio frames with the at least one restored frame.
- a multimodal synchronization module e.g., generating at least one frame corresponding to the at least one missing frame, or generating at least one frame to be included in the position of the at least one missing frame on the time axis
- an operation of synchronizing image frames and audio frames with the at least one restored frame e.g., generating at least one frame corresponding to the at least one missing frame, or generating at least one frame to be included in the position of the at least one missing frame on the time axis
- the electronic device may perform a multimodal ASR operation based on image frames and audio frames output as a result of the multimodal restoration and/or synchronization operation.
- the electronic device may output a second result (e.g., the second text (1506) or the fourth text (1512) of FIG. 15) based on the multimodal ASR operation.
- a second result e.g., the second text (1506) or the fourth text (1512) of FIG. 15
- the operations illustrated in FIG. 16 are not limited to the illustrated order and may be performed in various orders. According to one embodiment, at least some of the operations illustrated in FIG. 16 may be omitted, or more operations may be performed than those illustrated in FIG. 16. For example, after operations 1604 and 1606 are performed, operations 1608 to 1612 may be performed, or either operations 1604 and 1606 or operations 1608 to 1612 may not be performed.
- the operations illustrated in FIGS. 17 to 26 may be understood to be performed in a processor (e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3) of an electronic device (e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3).
- a processor e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3
- an electronic device e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3.
- FIGS. 17 to 26 are not limited to the illustrated order and may be performed in various orders. According to one embodiment, at least some of the operations illustrated in FIGS. 17 to 26 may be omitted, or more operations may be performed than those illustrated in FIGS. 17 to 26.
- FIG. 17 is a flowchart illustrating a voice recognition operation of an electronic device according to one embodiment.
- the electronic device (101) (301) may acquire visual data (904) associated with a speaker's lip image through at least one camera (180) (310) of the electronic device (101) (301) during a first time period.
- the electronic device (101) (301) may obtain audio data (902) associated with the speaker's voice through at least one microphone (150) (320) of the electronic device (101) (301) during a first time period.
- the electronic device (101) (301) can identify at least one missing frame based on the first frames corresponding to the visual data (904) and the second frames corresponding to the audio data (902).
- the electronic device (101) (301) may generate (906) at least one frame corresponding to at least one missing frame (or at least one frame to be included in the position of the at least one missing frame on the time axis) using the first frames and the second frames based on the learned machine learning model (712).
- the electronic device (101) (301) may perform a voice recognition operation based on the first frames, the second frames, or at least one generated frame.
- FIG. 18 is a flowchart illustrating an operation of an electronic device according to one embodiment to identify at least one missing frame.
- the operations illustrated in FIG. 18 may be operations associated with operation 1706 of FIG. 17.
- the electronic device (101) (301) can determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same.
- the electronic device (101) (301) may identify at least one missing frame associated with frames corresponding to a shorter time among the first frames or the second frames, based on the first time and the second time being substantially not the same.
- FIG. 19 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to identify at least one missing frame through timeline-based sorting.
- the operations illustrated in FIG. 19 may be operations associated with operation 1706 of FIG. 17.
- the electronic device (101) (301) can determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same.
- the electronic device (101) (301) may align the first frames and the second frames based on a timeline corresponding to the first time interval, based on the first time and the second time being not substantially the same.
- the electronic device (101) (301) may perform synchronization between the first frames and the second frames based on alignment.
- the electronic device (101) (301) may identify at least one frame that is out of synchronization among the first frames or the second frames.
- the electronic device (101) (301) can identify at least one missing frame based on at least one out-of-synchronization frame.
- FIG. 20 is a flowchart illustrating an operation of an electronic device according to one embodiment to restore a missing frame.
- the operations illustrated in FIG. 20 may be operations associated with operation 1708 of FIG. 17.
- the electronic device (101) (301) can determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same.
- the electronic device (101) (301) may extract a first feature from source frames (710) corresponding to a longer time among the first frames or the second frames, based on the first time and the second time being not substantially the same.
- the electronic device (101) (301) may extract a second feature from target frames (708) corresponding to a shorter time among the first frames or the second frames.
- the electronic device (101) (301) may fuse the first feature and the second feature using a machine learning model and generate at least one frame based on the fused feature.
- the at least one frame may correspond to at least one missing frame or may be included in the position of at least one missing frame on the time axis.
- FIG. 21 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a message based on the number of at least one missing frame.
- the electronic device (101) (301) can determine whether the number of at least one missing frame is greater than or equal to a threshold value.
- the electronic device (101) (301) may output a message (1402) (1408) (1410) instructing to re-capture the speaker's lips or re-input the speaker's voice through the display (160) or speaker (155) of the electronic device (101) (301) based on the number of at least one missing frame being greater than or equal to a threshold value.
- FIG. 22 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a result of a voice recognition operation.
- the operations illustrated in FIG. 22 may be operations associated with operation 1710 of FIG. 17.
- the electronic device (101) (301) may generate a first result (1502) (1508) of performing a voice recognition operation based on the first frames or the second frames.
- the electronic device (101) (301) may generate a second result (1506) (1512) of performing a voice recognition operation based on the first frames, the second frames, or at least one generated frame as an updated result of the first result (1502) (1508).
- the electronic device (101) (301) may output the first result (1502) (1508) and the second result (1506) (1512) at the same or different times through the display (160) or speaker (155) of the electronic device (101) (301).
- FIG. 23 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through a server.
- the operations illustrated in FIG. 23 may be operations associated with operation 1710 of FIG. 17.
- the electronic device (101) (301) may transmit first information including first frames, second frames, or at least one generated frame to the server.
- the electronic device (101) (301) may, in response to transmitting the first information, receive second information including a voice recognition result from the server.
- the electronic device (101) (301) may output a voice recognition result through the display (160) or speaker (155) of the electronic device (101) (301) based on the received second information.
- FIG. 24 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through an on-device operation.
- the operations illustrated in FIG. 24 may be operations associated with operation 1710 of FIG. 17.
- the electronic device (101) (301) may perform a voice recognition operation using the first frames, the second frames, or at least one generated frame based on the learned voice recognition model (726).
- the electronic device (101) (301) can obtain a voice recognition result based on a voice recognition operation.
- the electronic device (101) (301) can output the acquired voice recognition result through the display (160) or speaker (155) of the electronic device (101) (301).
- FIG. 25 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a frame input status.
- the electronic device (101) (301) may output information (1302) (1312) (1322) indicating a frame input status based on the number of first frames, based on the visual data (904) obtained, to the display (160) of the electronic device (101) (301).
- the electronic device (101) (301) may output information (1304) (1314) (1324) indicating a frame input status based on the number of second frames, to the display (160), based on the audio data (902) obtained.
- FIG. 26 is a flowchart illustrating an operation of an electronic device receiving a voice recognition result from a server according to one embodiment.
- the electronic device (101) (301) may acquire visual data (904) associated with the speaker's lips through at least one camera (180) (310) of the electronic device (101) (301) during a first time period.
- the electronic device (101) (301) may obtain audio data (902) associated with the speaker's voice through at least one microphone (150) (320) of the electronic device (101) (301) during a first time period.
- the electronic device (101) (301) may transmit first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to the server.
- the electronic device (101) (301) may receive a voice recognition result from the server.
- the voice recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame (or at least one frame to be included in the position of the at least one missing frame on the time axis) using the first frames and the second frames based on the learned machine learning model (712), and performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame.
- Electronic devices may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments of this document are not limited to the aforementioned devices.
- a voice recognition method of an electronic device (101) (301) comprises: an operation (1702) of obtaining visual data (904) associated with a lip image of a speaker through at least one camera (180) (310) of the electronic device (101) (301) during a first time period; an operation (1704) of obtaining audio data (902) associated with a voice of the speaker through at least one microphone (150) (320) of the electronic device (101) (301) during the first time period; an operation (1706) of identifying at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902); an operation (1708) of generating at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712) (906); And it may be a voice recognition method including an operation (1710) of performing voice recognition based on the first frames, the second frames, or the at least one generated frame.
- the operation (1706) of identifying at least one missing frame comprises:
- the method may include an operation (1802) of determining whether a first time corresponding to the first frames and a second time corresponding to the second frames are the same; and/or an operation (1804) of identifying at least one missing frame associated with frames corresponding to a shorter time among the first frames or the second frames, based on the first time and the second time not being the same.
- the operation of identifying at least one missing frame (1706) may be a speech recognition method including: an operation of determining whether a first time corresponding to the first frames and a second time corresponding to the second frames are the same (1902); and an operation of aligning the first frames and the second frames based on a time line corresponding to the first time period based on the first time and the second time not being the same (1904); an operation of performing synchronization between the first frames and the second frames based on the alignment (1906); an operation of identifying at least one unsynchronized frame among the first frames or the second frames (1908); and/or an operation of identifying the at least one missing frame based on the at least one unsynchronized frame (1910).
- the operation (1708) of generating (906) at least one frame may be a speech recognition method including: extracting (2004) a first feature from source frames (710) corresponding to a longer time among the first frames or the second frames, based on the first time and the second time being not the same; extracting (2006) a second feature from target frames (708) corresponding to a shorter time among the first frames or the second frames; and/or fusing the first feature and the second feature using the machine learning model and generating the at least one frame based on the fused feature (2008).
- the voice recognition method may further include an operation (2104) of outputting a message (1402) (1408) (1410) instructing to re-photograph the speaker's lips or re-input the speaker's voice through a display (160) or a speaker (155) of the electronic device (101) (301) based on the number of the at least one missing frame being greater than or equal to a threshold value.
- the operation (1710) of performing a voice recognition operation may be a voice recognition method including the operation (2202) of generating a first result (1502) (1508) of performing the voice recognition operation based on the first frames or the second frames; the operation (2204) of generating a second result (1506) (1512) of performing the voice recognition operation based on the first frames, the second frames, or the at least one generated frame as an updated result of the first result (1502) (1508); and/or the operation (2206) of outputting the first result (1502) (1508) and the second result (1506) (1512) through a display (160) or a speaker (155) of an electronic device (101) (301) at the same or different times.
- the operation of performing a voice recognition operation may be a voice recognition method including an operation (2302) of transmitting first information including first frames, second frames, or at least one generated frame to a server; an operation (2304) of receiving second information including a voice recognition result from the server in response to transmitting the first information; and an operation (2306) of outputting the voice recognition result through a display (160) or a speaker (155) of an electronic device (101) (301) based on the received second information.
- the operation of performing a voice recognition operation may be a voice recognition method including an operation (2402) of performing a voice recognition operation using first frames, second frames, or at least one generated frame based on a learned voice recognition model (726); an operation (2404) of obtaining a voice recognition result based on the voice recognition operation; and an operation (2406) of outputting the obtained voice recognition result through a display (160) or a speaker (155) of an electronic device (101) (301).
- a method of an electronic device may further include: an operation (2502) of outputting information (1302) (1312) (1322) indicating a frame input state based on the number of first frames to a display (160) of an electronic device (101) (301) based on the acquisition of visual data (904); and an operation (2504) of outputting information (1304) (1314) (1324) indicating a frame input state based on the number of second frames to the display (160) based on the acquisition of audio data (902).
- a method of an electronic device comprises: an operation (2602) of acquiring visual data (904) associated with lips of a speaker through at least one camera (180) (310) of an electronic device (101) (301) during a first time period; an operation (2604) of acquiring audio data (902) associated with voice of the speaker through at least one microphone (150) (320) of the electronic device (101) (301) during a first time period; an operation (2606) of transmitting first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server; And may include an operation (2608) of receiving a voice recognition result from the server, wherein the voice recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on the learned machine learning model (712) (906), and performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame
- first,” “second,” or “first” or “second” may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order).
- a component e.g., a first component
- another e.g., a second component
- functionally e.g., a third component
- module used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit.
- a module may be an integral component, or a minimum unit or part of such a component that performs one or more functions.
- a module may be implemented in the form of an application-specific integrated circuit (ASIC).
- ASIC application-specific integrated circuit
- Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)).
- a processor e.g., a processor (120)
- the machine e.g., an electronic device (101)
- the one or more instructions may include code generated by a compiler or code executable by an interpreter.
- the machine-readable storage medium may be provided in the form of a non-transitory storage medium.
- 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.
- the method according to various embodiments disclosed in the present document may be provided as included in a computer program product.
- the computer program product may be traded as a product between a seller and a buyer.
- the computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play StoreTM) or directly between two user devices (e.g., smart phones).
- an application store e.g., Play StoreTM
- at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.
- each component e.g., a module or a program of the above-described components may include one or more entities, and some of the entities may be separated and arranged in other components.
- one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added.
- a plurality of components e.g., a module or a program
- the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration.
- the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
본 개시는 음성 인식을 위한 전자 장치 및 방법에 관한 것이다.The present disclosure relates to an electronic device and method for voice recognition.
음성 인식은 전자 장치에서 사용자의 음성을 입력 받아 텍스트로 변환하는 기술을 나타낼 수 있다. 전자 장치는 마이크를 통해 수집된 음성 데이터를 프레임 단위로 분할하고, 각 프레임에 해당하는 단어(word)를 예측하여 텍스트로 출력할 수 있다. Speech recognition can refer to the technology that converts a user's voice input into text on an electronic device. The electronic device can segment voice data collected through a microphone into frames, predict the word corresponding to each frame, and output it as text.
오디오-비주얼 멀티모달(audio-visual multimodal) 음성 인식은 전자 장치에서 사용자의 음성과 이미지를 기반으로 음성을 인식하는 기술을 나타낼 수 있다. 예를 들어, 오디오-비주얼 멀티모달 음성 인식은 사용자의 음성 데이터와 함께 사용자의 입술 이미지와 같은 비주얼 데이터를 이용함으로써, 음성 인식의 정확도와 신뢰도를 향상시킬 수 있다.Audio-visual multimodal speech recognition can refer to a technology that recognizes speech based on the user's voice and images in an electronic device. For example, audio-visual multimodal speech recognition can improve the accuracy and reliability of speech recognition by utilizing visual data, such as an image of the user's lips, along with the user's voice data.
상술한 정보는 본 문서에 대한 이해를 돕기 위한 목적으로 하는 배경 기술(related art)로서 제공될 수 있다. 상술한 내용 중 어느 것도 본 문서와 관련된 종래 기술(prior art)로서 주장되거나, 종래 기술을 결정하는데 사용될 수 없다.The above information may be provided as background information to aid in understanding this document. None of the above is claimed to be prior art related to this document or can be used to determine prior art.
본 개시의 일 실시예는, 음성 인식을 위한 전자 장치 및 방법을 제공할 수 있다.One embodiment of the present disclosure may provide an electronic device and method for voice recognition.
본 개시의 일 실시예는, 오디오-비주얼 멀티모달 음성 인식에서 생성형 인공 지능 모델에 기반하여 누락된 이미지 프레임 및/또는 누락된 오디오 프레임을 복원하는 전자 장치 및 방법을 제공할 수 있다.One embodiment of the present disclosure may provide an electronic device and method for restoring missing image frames and/or missing audio frames based on a generative artificial intelligence model in audio-visual multimodal speech recognition.
본 개시의 일 실시예는, 복원된 프레임을 기반으로 이미지 프레임들 및 오디오 프레임들 동기화하는 전자 장치 및 방법을 제공할 수 있다.One embodiment of the present disclosure can provide an electronic device and method for synchronizing image frames and audio frames based on restored frames.
본 개시의 일 실시예는, 사용자의 움직임이나 환경적 요인에 의해 사용자의 음성 또는 입술 이미지가 누락된 상황이 발생하더라도, 보다 정확한 음성 인식 결과를 제공할 수 있는 전자 장치 및 방법을 제공할 수 있다.One embodiment of the present disclosure can provide an electronic device and method that can provide more accurate voice recognition results even when a user's voice or lip image is missing due to the user's movement or environmental factors.
본 개시의 일 실시예에 따른 전자 장치(101)(301)는, 적어도 하나의 카메라(180)(310), 적어도 하나의 마이크(150)(320), 메모리(130)(330), 및 프로세싱 회로를 포함하는 적어도 하나의 프로세서(120)(340)를 포함할 수 있다. 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로(individually) 또는 전체적으로(collectively) 실행될 시, 상기 전자 장치(101)(301)로 하여금 적어도 하나의 동작을 수행하도록 야기되는 명령어들(instructions)을 저장할 수 있다. 상기 적어도 하나의 동작은, 제1 시구간 동안 상기 적어도 하나의 카메라(180)(310)를 통해 화자의 입술 이미지와 연관된 비주얼(visual) 데이터(904)를 획득하는 동작을 포함할 수 있다. 상기 적어도 하나의 동작은, 상기 제1 시구간 동안 상기 적어도 하나의 마이크(150)(320)를 통해 상기 화자의 음성과 연관된 오디오(audio) 데이터(902)를 획득하는 동작을 포함할 수 있다. 상기 적어도 하나의 동작은, 상기 비주얼 데이터(904)에 대응하는 제1 프레임들과 상기 오디오 데이터(902)에 대응하는 제2 프레임들에 기반하여, 적어도 하나의 누락된 프레임을 식별하는 동작을 포함할 수 있다. 상기 적어도 하나의 동작은, 학습된 머신 러닝 모델(712)을 기반으로, 상기 제1 프레임들 및 상기 제2 프레임들을 이용하여 상기 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하는 동작을 포함할 수 있다. 상기 적어도 하나의 동작은, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행하는 동작을 포함할 수 있다.An electronic device (101) (301) according to one embodiment of the present disclosure may include at least one camera (180) (310), at least one microphone (150) (320), a memory (130) (330), and at least one processor (120) (340) including a processing circuit. The memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to perform at least one operation. The at least one operation may include an operation of acquiring visual data (904) associated with a lip image of a speaker through the at least one camera (180) (310) during a first time period. The at least one operation may include acquiring audio data (902) associated with the speaker's voice through the at least one microphone (150) (320) during the first time period. The at least one operation may include identifying at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902). The at least one operation may include generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712). The at least one operation may include performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame.
본 개시의 일 실시예에 따른 전자 장치는, 적어도 하나의 카메라(180)(310), 적어도 하나의 마이크(150)(320), 통신 회로(190), 메모리(130)(330), 및 프로세싱 회로를 포함하는 적어도 하나의 프로세서(120)(340)를 포함할 수 있다. 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로(individually) 또는 전체적으로(collectively) 실행될 시, 상기 전자 장치(101)(301)로 하여금 적어도 하나의 동작을 수행하도록 야기하는 명령어들(instructions)을 저장할 수 있다. 상기 적어도 하나의 동작은, 제1 시구간 동안 상기 적어도 하나의 카메라(180)(310)를 통해 화자의 입술과 연관된 비주얼 데이터(904)를 획득하는 동작을 포함할 수 있다. 상기 적어도 하나의 동작은, 상기 제1 시구간 동안 상기 적어도 하나의 마이크(150)(320)를 통해 상기 화자의 음성과 연관된 오디오 데이터(902)를 획득하는 동작을 포함할 수 있다. 상기 적어도 하나의 동작은, 상기 획득된 비주얼 데이터(904)에 대응하는 제1 프레임들 및 상기 획득된 오디오 데이터(902)에 대응하는 제2 프레임들을 서버로 전송하도록 상기 통신 회로(190)를 제어하는 동작을 포함할 수 있다. 상기 적어도 하나의 동작은, 상기 통신 회로(190)를 통해, 상기 서버로부터 음성 인식 결과를 수신하는 동작을 포함할 수 있다. 상기 음성 인식 결과는, 상기 제1 프레임들 및 상기 제2 프레임들을 기반으로 적어도 하나의 누락된 프레임을 식별하고, 학습된 머신 러닝 모델(712)을 기반으로, 상기 제1 프레임들 및 상기 제2 프레임들을 이용하여 상기 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하고, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행한 결과를 포함할 수 있다. An electronic device according to one embodiment of the present disclosure may include at least one camera (180) (310), at least one microphone (150) (320), a communication circuit (190), a memory (130) (330), and at least one processor (120) (340) including a processing circuit. The memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to perform at least one operation. The at least one operation may include an operation of acquiring visual data (904) associated with a speaker's lips through the at least one camera (180) (310) during a first time period. The at least one operation may include an operation of acquiring audio data (902) associated with the speaker's voice through the at least one microphone (150) (320) during the first time period. The at least one operation may include an operation of controlling the communication circuit (190) to transmit first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server. The at least one operation may include an operation of receiving a speech recognition result from the server through the communication circuit (190). The speech recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712), and performing a speech recognition operation based on the first frames, the second frames, or the at least one generated frame.
본 개시의 일 실시예에 따른 전자 장치의 음성 인식 방법은, 제1 시구간 동안 상기 전자 장치(101)(301)의 적어도 하나의 카메라(180)(310)를 통해 화자의 입술 이미지와 연관된 비주얼(visual) 데이터(704)(904)를 획득하는 동작(1702)을 포함할 수 있다. 상기 음성 인식 방법은, 상기 제1 시구간 동안 상기 전자 장치(101)(301)의 적어도 하나의 마이크(150)(320)를 통해 상기 화자의 음성과 연관된 오디오(audio) 데이터(702)(902)를 획득하는 동작(1704)을 포함할 수 있다. 상기 음성 인식 방법은, 상기 비주얼 데이터(904)에 대응하는 제1 프레임들과 상기 오디오 데이터(902)에 대응하는 제2 프레임들에 기반하여, 적어도 하나의 누락된 프레임을 식별하는 동작(1706)을 포함할 수 있다. 상기 음성 인식 방법은, 학습된 머신 러닝 모델(712)을 기반으로, 상기 제1 프레임들 및 상기 제2 프레임들을 이용하여 상기 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하는 동작(1708)을 포함할 수 있다. 상기 음성 인식 방법은, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행하는 동작(1710)을 포함할 수 있다. A voice recognition method of an electronic device according to one embodiment of the present disclosure may include an operation (1702) of acquiring visual data (704) (904) associated with a lip image of a speaker through at least one camera (180) (310) of the electronic device (101) (301) during a first time period. The voice recognition method may include an operation (1704) of acquiring audio data (702) (902) associated with a voice of the speaker through at least one microphone (150) (320) of the electronic device (101) (301) during the first time period. The voice recognition method may include an operation (1706) of identifying at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902). The speech recognition method may include an operation (1708) of generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712). The speech recognition method may include an operation (1710) of performing a speech recognition operation based on the first frames, the second frames, or the at least one generated frame.
본 개시의 일 실시예에 따른 전자 장치의 음성 인식 방법은, 제1 시구간 동안 상기 전자 장치(101)(301)의 적어도 하나의 카메라(180)(310)를 통해 화자의 입술과 연관된 비주얼 데이터(904)를 획득하는 동작(2602)을 포함할 수 있다. 상기 음성 인식 방법은, 상기 제1 시구간 동안 상기 전자 장치(101)(301)의 적어도 하나의 마이크(150)(320)를 통해 상기 화자의 음성과 연관된 오디오 데이터(902)를 획득하는 동작(2604)을 포함할 수 있다. 상기 음성 인식 방법은, 상기 획득된 비주얼 데이터(904)에 대응하는 제1 프레임들 및 상기 획득된 오디오 데이터(902)에 대응하는 제2 프레임들을 서버로 전송하는 동작(2606)을 포함할 수 있다. 상기 음성 인식 방법은, 상기 서버로부터 음성 인식 결과를 수신하는 동작(2608)을 포함할 수 있다. 상기 음성 인식 결과는, 상기 제1 프레임들 및 상기 제2 프레임들을 기반으로 적어도 하나의 누락된 프레임을 식별하고, 학습된 머신 러닝 모델(712)을 기반으로, 상기 제1 프레임들 및 상기 제2 프레임들을 이용하여 상기 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하고, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행한 결과를 포함할 수 있다. A voice recognition method of an electronic device according to one embodiment of the present disclosure may include an operation (2602) of acquiring visual data (904) associated with a speaker's lips through at least one camera (180) (310) of the electronic device (101) (301) during a first time period. The voice recognition method may include an operation (2604) of acquiring audio data (902) associated with the speaker's voice through at least one microphone (150) (320) of the electronic device (101) (301) during the first time period. The voice recognition method may include an operation (2606) of transmitting first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server. The voice recognition method may include an operation (2608) of receiving a voice recognition result from the server. The speech recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712), and performing a speech recognition operation based on the first frames, the second frames, or the at least one generated frame.
도면의 설명과 관련하여, 동일 또는 유사한 구성 요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components.
도 1은, 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블록도이다.FIG. 1 is a block diagram of an electronic device within a network environment according to various embodiments.
도 2는 생성형 인공 지능 시스템의 한 예이다.Figure 2 is an example of a generative artificial intelligence system.
도 3은 일 실시예에 따른 전자 장치의 개략적인 블록도이다.Figure 3 is a schematic block diagram of an electronic device according to one embodiment.
도 4a는 일 실시예에 따른 음성 인식 동작을 설명하기 위한 도면이다.FIG. 4a is a diagram for explaining a voice recognition operation according to one embodiment.
도 4b는 일 실시예에 따른 오디오 데이터의 복원에 기반한 멀티모달 음성 인식 동작을 설명하기 위한 도면이다.FIG. 4b is a diagram for explaining a multimodal speech recognition operation based on restoration of audio data according to one embodiment.
도 4c는 일 실시예에 따른 비주얼 데이터의 복원에 기반한 멀티모달 음성 인식 동작을 설명하기 위한 도면이다.FIG. 4c is a diagram for explaining a multimodal speech recognition operation based on restoration of visual data according to one embodiment.
도 5a는 일 실시예에 따른 제1 타입의 전자 장치를 예시한 도면이다.FIG. 5A is a diagram illustrating a first type of electronic device according to one embodiment.
도 5b는 일 실시예에 따른 제2 타입의 전자 장치를 예시한 도면이다. FIG. 5b is a diagram illustrating a second type of electronic device according to one embodiment.
도 5c는 일 실시예에 따른 제3 타입의 전자 장치를 예시한 도면이다. FIG. 5c is a diagram illustrating a third type of electronic device according to one embodiment.
도 6a는 일 실시예에 따른 전자 장치에서 입술 인식이 가능한 상황을 도시한 도면이다.FIG. 6A is a diagram illustrating a situation in which lip recognition is possible in an electronic device according to one embodiment.
도 6b는 일 실시예에 따른 전자 장치에서 입술 인식이 불가능한 상황을 도시한 도면이다.FIG. 6b is a diagram illustrating a situation in which lip recognition is impossible in an electronic device according to one embodiment.
도 7은 일 실시예에 따른 멀티모달 음성 인식 장치의 블록도이다.Fig. 7 is a block diagram of a multimodal speech recognition device according to one embodiment.
도 8a는 일 실시예에 따른 이미지 프레임 복원을 위한 멀티모달 동기화 모듈의 학습 동작을 설명하기 위한 도면이다.FIG. 8a is a diagram illustrating a learning operation of a multimodal synchronization module for image frame restoration according to one embodiment.
도 8b는 일 실시예에 따른 오디오 프레임 복원을 위한 멀티모달 동기화 모듈의 학습 동작을 설명하기 위한 도면이다.FIG. 8b is a diagram illustrating a learning operation of a multimodal synchronization module for audio frame restoration according to one embodiment.
도 9a는 일 실시예에 따른 멀티모달 동기화 모듈이 사용되지 않는 경우의 음성 인식 동작을 도시한 도면이다.FIG. 9a is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is not used.
도 9b는 일 실시예에 따른 멀티모달 동기화 모듈이 사용되는 경우의 음성 인식 동작을 도시한 도면이다.FIG. 9b is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is used.
도 10은 일 실시예에 따른 멀티모달 ASR 모듈의 학습 동작을 설명하기 위한 도면이다.FIG. 10 is a diagram for explaining the learning operation of a multimodal ASR module according to one embodiment.
도 11은 일 실시예에 따른 전자 장치의 동작을 개략적으로 도시한 흐름도이다.FIG. 11 is a flowchart schematically illustrating the operation of an electronic device according to one embodiment.
도 12는 일 실시예에 따른 전자 장치에서 멀티모달 음성 인식이 수행된 결과를 예시한 도면이다.FIG. 12 is a diagram illustrating the results of multimodal speech recognition performed in an electronic device according to one embodiment.
도 13은 일 실시예에 따른 전자 장치에서 제공되는 음성 또는 이미지 입력 상태를 지시하는 UI를 도시한 도면이다.FIG. 13 is a diagram illustrating a UI indicating a voice or image input status provided by an electronic device according to one embodiment.
도 14는 일 실시예에 따른 전자 장치가 음성 또는 입술 인식 실패를 지시하는 알림 메시지를 출력하는 동작을 도시한 도면이다.FIG. 14 is a diagram illustrating an operation of an electronic device according to one embodiment of the present invention to output a notification message indicating a failure in voice or lip recognition.
도 15는 일 실시예에 따른 전자 장치에서 멀티모달 음성 인식 동작이 이용되는 예를 도시한 도면이다.FIG. 15 is a diagram illustrating an example of a multimodal voice recognition operation being used in an electronic device according to one embodiment.
도 16은 일 실시예에 따른 전자 장치가 음성 인식 결과를 출력하는 동작을 도시한 흐름도이다.FIG. 16 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result.
도 17은 일 실시예에 따른 전자 장치의 음성 인식 동작을 도시한 흐름도이다. FIG. 17 is a flowchart illustrating a voice recognition operation of an electronic device according to one embodiment.
도 18은 일 실시예에 따른 전자 장치가 적어도 하나의 누락된 프레임을 식별하는 동작을 도시한 흐름도이다. FIG. 18 is a flowchart illustrating an operation of an electronic device according to one embodiment to identify at least one missing frame.
도 19는 일 실시예에 따른 전자 장치가 타임라인에 기반한 정렬을 통해 적어도 하나의 누락된 프레임을 식별하는 동작을 도시한 흐름도이다. FIG. 19 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to identify at least one missing frame through timeline-based sorting.
도 20은 일 실시예에 따른 전자 장치가 누락된 프레임을 복원하는 동작을 도시한 흐름도이다.FIG. 20 is a flowchart illustrating an operation of an electronic device according to one embodiment to restore a missing frame.
도 21은 일 실시예에 따른 전자 장치가 적어도 하나의 누락된 프레임의 개수에 기반하여 메시지를 출력하는 동작을 도시한 흐름도이다. FIG. 21 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a message based on the number of at least one missing frame.
도 22는 일 실시예에 따른 전자 장치가 음성 인식 동작의 결과를 출력하는 동작을 도시한 흐름도이다. FIG. 22 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a result of a voice recognition operation.
도 23은 일 실시예에 따른 전자 장치가 서버를 통해 음성 인식 결과를 출력하는 동작을 도시한 흐름도이다. FIG. 23 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through a server.
도 24는 일 실시예에 따른 전자 장치가 온 디바이스 동작을 통해 음성 인식 결과를 출력하는 동작을 도시한 흐름도이다. FIG. 24 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through an on-device operation.
도 25는 일 실시예에 따른 전자 장치가 프레임 입력 상태를 출력하는 동작을 도시한 흐름도이다. FIG. 25 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a frame input status.
도 26은 일 실시예에 따른 전자 장치가 서버로부터 음성 인식 결과를 수신하는 동작을 도시한 흐름도이다.FIG. 26 is a flowchart illustrating an operation of an electronic device receiving a voice recognition result from a server according to one embodiment.
이하에서는 도면을 참조하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 도면의 설명과 관련하여, 동일하거나 유사한 구성요소에 대해서는 동일하거나 유사한 참조 부호가 사용될 수 있다. 또한, 도면 및 관련된 설명에서는, 잘 알려진 기능 및 구성에 대한 설명이 명확성과 간결성을 위해 생략될 수 있다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings so that those skilled in the art can easily implement the present disclosure. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein. In connection with the description of the drawings, the same or similar reference numerals may be used for identical or similar components. Furthermore, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and conciseness.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다. FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to various embodiments.
도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.Referring to FIG. 1, in a network environment (100), an electronic device (101) may communicate with an electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of an electronic device (104) or a server (108) via a second network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or a secondary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor)) that can operate independently or together therewith. For example, if the electronic device (101) includes a main processor (121) and a secondary processor (123), the secondary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a specified function. The secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일 실시예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, in the electronic device (101) itself where artificial intelligence is performed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include a plurality of artificial neural network layers. The artificial neural network can be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), deep Q-networks, or a combination of two or more of the above, but is not limited to the examples described above. In addition to the hardware structure, the artificial intelligence model can additionally or alternatively include a software structure.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다. The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다. The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).
입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다. The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).
음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.
디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다. The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. In one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다. The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.A haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. In one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented, for example, as at least a part of a power management integrated circuit (PMIC).
배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다. The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).
무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔생성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 생성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 생성될 수 있다. The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas by, for example, the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device via the selected at least one antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).
다양한 실시예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 생성할 수 있다. 일 실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.According to various embodiments, the antenna module (197) may generate a mmWave antenna module. According to one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).
일 실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and/or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199). The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
도 2는 생성형 인공 지능 시스템의 한 예이다.Figure 2 is an example of a generative artificial intelligence system.
도 2를 참조하면, user query/response interface(210)는 사용자의 입력을 수신할 수 있다. 사용자의 입력은 자연어, 이미지 및/또는 동영상과 같은 형태일 수 있다. 또한 사용자의 입력의 전송 시에, context 정보(212)도 같이 전송될 수 있다. context 정보(212)는 사용자 입력 시점에서의 다양한 부가 정보들을 포함할 수 있다. 예를 들어 사용자가 현재 사용 중인 어플리케이션 정보 또는 사용자의 위치 정보와 같은 부가 정보들이 있다. 또한 사용자 입력은 상술한 자연어, 이미지, 소리, 또는 context 정보(212)가 혼합된 형태도 가능할 수 있다. 또한, 사용자 입력은 메뉴를 선택하는 것과 같은 비자연어적인 형태도 가능할 수 있다. user query/response interface(210)는 사용자에게 생성형 인공 지능 시스템의 결과물을 출력할 수 있다. 출력물은 자연어 형태나 특정 컨텐츠 형태가 가능하며 사용자가 요청하는 액션의 형태로 제공되는 것도 가능할 수 있다. user query/response interface(210)는 사용자에게 생성형 인공 지능 시스템의 결과물을 출력할 수 있다. 출력물은 자연어 형태나 특정 컨텐츠 형태가 가능하며 사용자가 요청하는 액션의 형태로 제공되는 것도 가능할 수 있다.Referring to FIG. 2, the user query/response interface (210) can receive a user's input. The user's input may be in the form of natural language, images, and/or videos. Additionally, context information (212) may also be transmitted when the user's input is transmitted. The context information (212) may include various additional information at the time of the user input. For example, there is additional information such as information on the application currently being used by the user or information on the user's location. Furthermore, the user's input may be in the form of a mixture of the aforementioned natural language, images, sounds, or context information (212). Furthermore, the user's input may also be in a non-natural language form, such as selecting a menu. The user query/response interface (210) can output the results of the generative artificial intelligence system to the user. The output may be in the form of natural language or specific content, and may also be provided in the form of an action requested by the user. The user query/response interface (210) can output the results of the generative artificial intelligence system to the user. The output can be in natural language form, in the form of specific content, or in the form of an action requested by the user.
AI(artificial intelligence) framework(220)는 사용자의 입력을 수신하고, 사용자의 질의에 기초하여 사용자의 의도를 수행하기 위해 필요한 각각의 컴포넌트들을 조율하고 제어할 수 있다. The AI (artificial intelligence) framework (220) can receive user input and coordinate and control each component necessary to perform the user's intention based on the user's query.
user query/response interface(210)에서 수신된 사용자 입력은 prompt design component(222)로 전송될 수 있다. prompt design component(222)는 사용자 입력을 LLM(large language model) 또는 LMM(large multimodal model)에 입력하기에 적합한 프롬프트를 생성하는데 사용될 수 있다. prompt design component(222)는 시간이 지남에 따라 더 나은 프롬프트를 개발하기 위해 머신 러닝 알고리즘 또는 신경망을 사용하는 AI 컴포넌트일 수 있다. prompt design component(222)는 사용자 입력에 기초하여 사용자 선호도 데이터(user preference data)(214), 프롬프트 라이브러리(prompt library)(216), 및 프롬프트 예제를 포함하는 knowledge component에 액세스하여 프롬프트를 생성하고, 생성한 프롬프트를 LLM 또는 LMM에 전달할 수 있다.User input received from the user query/response interface (210) can be transmitted to the prompt design component (222). The prompt design component (222) can be used to generate a prompt suitable for inputting the user input into a large language model (LLM) or a large multimodal model (LMM). The prompt design component (222) can be an AI component that uses a machine learning algorithm or a neural network to develop better prompts over time. The prompt design component (222) can access user preference data (214), a prompt library (216), and a knowledge component including prompt examples based on the user input to generate a prompt, and transmit the generated prompt to the LLM or LMM.
API/plug-in management component(224)는 사용자 입력을 생성형 모델의 입력으로 전달할 때 추가 정보에 대한 요청이 있는 경우 외부 정보와 통신하는 역할을 수행할 수 있다. API/plug-in management component(224)는 API를 통해 AI interface 외부와 통신할 수 있는 채널을 구축하며, 구축한 채널을 통해 다양한 data source(예: knowledge repositories (240))에 접근할 수 있도록 할 수 있다. 또한 API/plug-in management component(224)는 중간 결과가 아니라 최종적으로 사용자의 입력을 수행하는 액션을 application 또는 서비스에서 수행해야 하는 경우 해당 액션을 API를 통해 application/service component(250)를 요청할 수 있다. 외부로부터 확보한 정보는 사용자 입력과 함께 prompt design component(222)에서 프롬프트를 생성하는데 사용될 수도 있고 생성형 모델의 입력으로 전달될 수도 있다.The API/plug-in management component (224) can communicate with external information when there is a request for additional information when passing user input as input to the generative model. The API/plug-in management component (224) can establish a channel for communication with the outside of the AI interface through the API, and can enable access to various data sources (e.g., knowledge repositories (240)) through the established channel. In addition, if the API/plug-in management component (224) needs to perform an action that performs the user input as a final result rather than an intermediate result in an application or service, it can request the application/service component (250) through the API to perform the action. Information obtained from the outside can be used to generate a prompt in the prompt design component (222) together with the user input, or can be passed as input to the generative model.
refiner component(226)는 생성형 모델에서 출력하는 결과를 세부적으로 튜닝할 수 있다. 예를 refiner component(226)는 LLM 및/또는 LMM을 통해 생성되는 컨텐츠가 관련성이 없는 것은 아닌지, 편향적인 내용을 포함하지 않는지, 또는 유해한 내용을 포함하고 있지 않은지를 검증할 수 있다. 또한 refiner component(226)는 사용자가 원하는 결과물에 어느정도 일치하는지를 판단하여 만약 추가적인 과정이 필요한 경우 해당 과정을 진행하는 것도 가능하다. refiner component(226)는 추가적으로 원치 않은 출력을 피하기 위한 힌트를 구성하여 사용자에게 제공할 수 있다. The refiner component (226) can fine-tune the output from the generative model. For example, the refiner component (226) can verify that the content generated through the LLM and/or LMM is not irrelevant, does not contain biased content, or does not contain harmful content. Furthermore, the refiner component (226) can determine the degree to which the content matches the user's desired result and, if necessary, perform additional processing. The refiner component (226) can additionally configure and provide hints to the user to avoid undesirable output.
generative AI model(230)은 일반적으로 사용자 입력 정보에 의존해 새로운 형태의 데이터를 만들어내는 인공지능 신경망을 의미할 수 있다. generative AI model(230)은 이미지를 생성하는 모델 및/또는 언어를 생성하는 모델을 포함할 수 있다. 이미지를 생성하는 모델은 대표적으로 GAN(generative adversarial network), VAE(variational auto encoder)가 있으며, VAE와 transformer 구조를 사용하는 diffusion 기반 생성형 모델을 예로 들 수 있다. 언어를 생성하는 모델은 입력값을 기반으로 통계학적으로 가장 적절한 출력값을 출력하도록 학습된 모델로 대표적으로 CHAT-GPT 3, CHAT-GPT 4와 같은 모델을 예로 들 수 있다. 또한 문자, 이미지, 또는 음성과 같은 다양한 형태의 데이터 입력을 인식하고 이에 상응하는 새로운 데이터를 생성할 수 있는 LMM도 있다.A generative AI model (230) may generally refer to an artificial intelligence neural network that generates new types of data based on user input information. The generative AI model (230) may include an image-generating model and/or a language-generating model. Representative models for generating images include a generative adversarial network (GAN) and a variational autoencoder (VAE), and examples include a diffusion-based generative model that uses a VAE and a transformer structure. A language-generating model is a model trained to statistically output the most appropriate output based on input values, and representative examples include models such as CHAT-GPT 3 and CHAT-GPT 4. In addition, there is also an LMM that can recognize various types of data input, such as text, images, or voice, and generate new data corresponding to them.
도 3은 일 실시예에 따른 전자 장치의 개략적인 블록도이다.Figure 3 is a schematic block diagram of an electronic device according to one embodiment.
도 3을 참조하면, 전자 장치(301)는 적어도 하나의 카메라(310), 적어도 하나의 마이크(320), 메모리(330), 및 프로세서(340)를 포함할 수 있다. Referring to FIG. 3, the electronic device (301) may include at least one camera (310), at least one microphone (320), memory (330), and processor (340).
일 실시예에 따르면, 전자 장치(301)는 도시된 구성 요소 이외에 추가적인 구성 요소(예: 디스플레이, 스피커, 또는 통신 회로)를 포함하거나, 도시된 구성 요소 중 적어도 하나를 생략할 수 있다.According to one embodiment, the electronic device (301) may include additional components (e.g., a display, a speaker, or communication circuitry) in addition to the illustrated components, or may omit at least one of the illustrated components.
일 실시예에 따르면, 전자 장치(301)는 도 1의 전자 장치(101)와 동일하거나 유사하게 구현될 수 있다. According to one embodiment, the electronic device (301) may be implemented identically or similarly to the electronic device (101) of FIG. 1.
일 실시예에 따르면, 적어도 하나의 카메라(310), 적어도 하나의 마이크(320), 메모리(330), 및 프로세서(340)는 각각 도 1의 카메라 모듈(180), 입력 모듈(150), 메모리(130), 및 프로세서(120)와 동일하거나 유사하게 구현될 수 있다.According to one embodiment, at least one camera (310), at least one microphone (320), memory (330), and processor (340) may be implemented identically or similarly to the camera module (180), input module (150), memory (130), and processor (120) of FIG. 1, respectively.
일 실시예에 따르면, 전자 장치(301)는 스마트 폰, 태블릿, 컴퓨팅 장치(예: PC(personal computer) 또는 노트북), 또는 웨어러블 장치(예: 스마트 워치, HMD(head mounted display), 또는 스마트 링) 중 어느 하나일 수 있으나, 이에 제한되지 않고 다양한 타입의 전자 장치로 구현될 수 있다. According to one embodiment, the electronic device (301) may be any one of a smart phone, a tablet, a computing device (e.g., a personal computer (PC) or a laptop), or a wearable device (e.g., a smart watch, a head mounted display (HMD), or a smart ring), but is not limited thereto and may be implemented as various types of electronic devices.
적어도 하나의 카메라(310)는 외부의 이미지를 촬영할 수 있다. 일 실시예에 따르면, 적어도 하나의 카메라(310)의 사용자(또는 화자나 발화자)의 음성이 전자 장치(301)로 입력되는 동안 사용자의 입술 이미지를 획득하기 위해 사용될 수 있다. At least one camera (310) can capture an image of the outside. In one embodiment, the at least one camera (310) can be used to capture an image of the user's lips while the user's (or speaker's or talker's) voice is input to the electronic device (301).
적어도 하나의 마이크(320)는 외부로부터의 사운드를 수신할 수 있다. 일 실시예에 따르면, 적어도 하나의 마이크(320)는 사용자의 음성을 입력받기 위해 사용될 수 있고, 적어도 하나의 카메라(310)와 실질적으로 동일한 시구간 동안 활성화될 수 있다. At least one microphone (320) can receive sound from an external source. In one embodiment, at least one microphone (320) can be used to input a user's voice and can be activated for substantially the same period of time as at least one camera (310).
메모리(330)는 적어도 하나의 프로그램을 저장할 수 있다. 예를 들어, 메모리(330)는 프로세서(340)의 처리 및 제어를 위한 적어도 하나의 프로그램을 저장할 수 있고, 입력 및/또는 출력되는 데이터(예: 오디오(audio) 데이터, 비주얼(visual) 데이터, 또는 음성 인식 결과)를 저장할 수 있다. 메모리(330)는 적어도 하나의 AI 모델을 저장할 수도 있다. The memory (330) can store at least one program. For example, the memory (330) can store at least one program for processing and controlling the processor (340), and can store input and/or output data (e.g., audio data, visual data, or voice recognition results). The memory (330) can also store at least one AI model.
프로세서(340)는 전자 장치(301)의 전반적인 동작을 제어할 수 있다. 프로세서(340)는 전자 장치(301)의 적어도 하나의 다른 구성 요소의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. 예를 들어, 프로세서(340)는 적어도 하나의 카메라(310), 적어도 하나의 마이크(320), 및 메모리(330)와 전기적으로 연결될 수 있고, 메모리(330)에 저장된 프로그램의 명령어들을 실행할 수 있다. The processor (340) can control the overall operation of the electronic device (301). The processor (340) can execute calculations or data processing related to control and/or communication of at least one other component of the electronic device (301). For example, the processor (340) can be electrically connected to at least one camera (310), at least one microphone (320), and a memory (330), and can execute instructions of a program stored in the memory (330).
프로세서(340)는 메모리(330)에 저장된 프로그램의 명령어들을 실행하는 프로세싱 회로를 포함할 수 있다. 프로세서(340)는 CPU(central processing unit), NPU(neural processing unit), GPU(graphics processing unit), MPU(micro processing unit), MCU(micro controller unit), AP(application processor), CP(communication processor), SoC(system on chip), 또는 IC(integrated circuit) 센서 허브, 보조 프로세서(supplementary processor), 통신 프로세서(communication processor), 어플리케이션 프로세서(application processor), ASIC(application specific integrated circuit), 또는 FPGA(field programmable gate arrays) 중 적어도 하나를 포함할 수 있으며, 복수의 코어들을 가질 수 있다. The processor (340) may include a processing circuit that executes instructions of a program stored in the memory (330). The processor (340) may include at least one of a central processing unit (CPU), a neural processing unit (NPU), a graphics processing unit (GPU), a micro processing unit (MPU), a micro controller unit (MCU), an application processor (AP), a communication processor (CP), a system on chip (SoC), or an integrated circuit (IC), a sensor hub, a supplementary processor, a communication processor, an application processor, an application specific integrated circuit (ASIC), or a field programmable gate array (FPGA), and may have multiple cores.
프로세서(340)는 메모리(330)에 저장된 명령어들을 실행함으로써 전자 장치(101)(301)의 동작들을 제어할 수 있다. 예를 들면, 프로세서(340)는 복수의 동작들을 프로세서들 사이에서 분할하여 집합적으로 수행하는 복수의 프로세서들에 대응될 수 있다.The processor (340) can control the operations of the electronic device (101) (301) by executing instructions stored in the memory (330). For example, the processor (340) can correspond to a plurality of processors that collectively perform a plurality of operations by dividing them among the processors.
본 개시의 일 실시예에 따른 전자 장치(101)(301)는, 적어도 하나의 카메라(180)(310); 적어도 하나의 마이크(150)(320); 메모리(130)(330); 및 프로세싱 회로를 포함하는 적어도 하나의 프로세서(120)(340)를 포함하며, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로(individually) 또는 전체적으로(collectively) 실행될 시, 상기 전자 장치(101)(301)로 하여금: 제1 시구간 동안 상기 적어도 하나의 카메라(180)(310)를 통해 화자의 입술 이미지와 연관된 비주얼(visual) 데이터(904)를 획득하고, 상기 제1 시구간 동안 상기 적어도 하나의 마이크(150)(320)를 통해 상기 화자의 음성과 연관된 오디오(audio) 데이터(902)를 획득하고, 상기 비주얼 데이터(904)에 대응하는 제1 프레임들과 상기 오디오 데이터(902)에 대응하는 제2 프레임들에 기반하여, 적어도 하나의 누락된 프레임을 식별하고, 학습된 머신 러닝 모델(712)을 기반으로, 상기 제1 프레임들 및 상기 제2 프레임들을 이용하여 상기 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하고, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행하도록 야기하는 명령어들(instructions)을 저장할 수 있다. An electronic device (101) (301) according to one embodiment of the present disclosure comprises: at least one camera (180) (310); at least one microphone (150) (320); a memory (130) (330); And at least one processor (120) (340) including a processing circuit, wherein the memory (130) (330) is configured to, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: acquire visual data (904) associated with a lip image of a speaker through the at least one camera (180) (310) during a first time period, acquire audio data (902) associated with a voice of the speaker through the at least one microphone (150) (320) during the first time period, identify at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902), and, based on a learned machine learning model (712), use the first frames and the second frames to identify at least one missing frame. At least one frame corresponding to the missing frame can be generated (906), and instructions for causing a speech recognition operation to be performed based on the first frames, the second frames, or the at least one generated frame can be stored.
일 실시예에 따르면, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 상기 제1 프레임들의 개수에 대응하는 제1 시간과 상기 제2 프레임들의 개수에 대응하는 제2 시간이 동일한지 여부를 판단하고, 상기 제1 시간과 상기 제2 시간이 동일하지 않은 것에 기반하여, 상기 제1 프레임들 또는 상기 제2 프레임들 중 더 짧은 시간에 대응하는 프레임들과 연관되는, 상기 적어도 하나의 누락된 프레임을 식별하도록 야기하는 명령어들을 저장할 수 있다. According to one embodiment, the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: determine whether a first time corresponding to the number of the first frames and a second time corresponding to the number of the second frames are the same, and, based on the first time and the second time not being the same, identify the at least one missing frame associated with frames corresponding to a shorter time among the first frames or the second frames.
일 실시예에 따르면, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 상기 제1 프레임들의 개수에 대응하는 제1 시간과 상기 제2 프레임들의 개수에 대응하는 제2 시간이 동일한지 여부를 판단하고, 상기 제1 시간과 상기 제2 시간이 동일하지 않은 것에 기반하여, 상기 제1 시구간에 대응하는 타임 라인을 기반으로 상기 제1 프레임들과 상기 제2 프레임들을 정렬(alignment)하고, 상기 정렬에 기반하여 상기 제1 프레임들과 상기 제2 프레임들 간의 동기화를 수행하고, 상기 제1 프레임들 또는 상기 제2 프레임들 중 동기화되지 못한 적어도 하나의 프레임을 식별하고, 상기 동기화되지 못한 적어도 하나의 프레임을 기반으로 상기 적어도 하나의 누락된 프레임을 식별하도록 야기하는 명령어들을 저장할 수 있다.According to one embodiment, the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: determine whether a first time corresponding to the number of the first frames and a second time corresponding to the number of the second frames are the same; align the first frames and the second frames based on a time line corresponding to the first time period based on the fact that the first time and the second time are not the same; perform synchronization between the first frames and the second frames based on the alignment; identify at least one unsynchronized frame among the first frames or the second frames; and identify the at least one missing frame based on the at least one unsynchronized frame.
일 실시예에 따르면, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 상기 제1 시간과 상기 제2 시간이 동일하지 않은 것에 기반하여, 상기 제1 프레임들 또는 상기 제2 프레임들 중 더 긴 시간에 대응하는 소스 프레임들(710)로부터 제1 특징을 추출하고, 상기 제1 프레임들 또는 상기 제2 프레임들 중 더 짧은 시간에 대응하는 타겟 프레임들(708)로부터 제2 특징을 추출하고, 상기 제1 특징과 상기 제2 특징을 상기 머신 러닝 모델을 이용하여 융합하고, 상기 융합된 특징을 기반으로 상기 적어도 하나의 프레임을 생성하도록 야기하는 명령어들을 저장할 수 있다. According to one embodiment, the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: extract a first feature from source frames (710) corresponding to a longer time among the first frames or the second frames, based on the first time and the second time being not the same; extract a second feature from target frames (708) corresponding to a shorter time among the first frames or the second frames; fuse the first feature and the second feature using the machine learning model; and generate the at least one frame based on the fused feature.
일 실시예에 따르면, 상기 전자 장치(101)(301)는 디스플레이(160); 및 스피커(155)를 더 포함하며, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 상기 적어도 하나의 누락된 프레임의 개수가 임계값 이상인 것에 기반하여, 상기 화자의 입술을 다시 촬영하거나 상기 화자의 음성을 다시 입력해줄 것을 지시하는 메시지(1402)(1408)(1410)를 상기 디스플레이(160) 또는 상기 스피커(155)를 통해 출력하도록 야기하는 명령어들을 저장할 수 있다.According to one embodiment, the electronic device (101) (301) further includes a display (160); and a speaker (155), wherein the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: output a message (1402) (1408) (1410) through the display (160) or the speaker (155) instructing to re-capture the speaker's lips or re-input the speaker's voice based on the number of the at least one missing frame being greater than or equal to a threshold value.
일 실시예에 따르면, 상기 전자 장치(101)(301)는 디스플레이(160); 및 스피커(155)를 더 포함하며, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 상기 제1 프레임들 또는 상기 제2 프레임들을 기반으로 상기 음성 인식 동작을 수행한 제1 결과(1502)(1508)를 생성하고, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 상기 음성 인식 동작을 수행한 제2 결과(1506)(1512)를 상기 제1 결과(1502)(1508)의 업데이트된 결과로서 생성하고, 상기 제1 결과(1502)(1508)와 상기 제2 결과(1506)(1512)를 동일하거나 상이한 시점에 상기 디스플레이(160) 또는 상기 스피커(155)를 통해 출력하도록 야기하는 명령어들을 저장할 수 있다. According to one embodiment, the electronic device (101)(301) comprises a display (160); And further comprising a speaker (155), wherein the memory (130) (330) may store instructions that, when individually or wholly executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: generate a first result (1502) (1508) of performing the voice recognition operation based on the first frames or the second frames, generate a second result (1506) (1512) of performing the voice recognition operation based on the first frames, the second frames, or the at least one generated frame as an updated result of the first result (1502) (1508), and output the first result (1502) (1508) and the second result (1506) (1512) through the display (160) or the speaker (155) at the same or different times.
일 실시예에 따르면, 상기 전자 장치(101)(301)는 통신 회로(190); 디스플레이(160); 및 스피커(155)를 더 포함하며, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임이 포함된 제1 정보를 서버로 전송하도록 상기 통신 회로(190)를 제어하고, 상기 제1 정보를 전송한 것에 응답하여, 상기 통신 회로(190)를 통해, 상기 서버로부터 음성 인식 결과를 포함하는 제2 정보를 수신하고, 상기 수신된 제2 정보에 기반하여 상기 음성 인식 결과를 상기 디스플레이(160) 또는 상기 스피커(155)를 통해 출력하도록 야기하는 명령어들을 저장할 수 있다. According to one embodiment, the electronic device (101) (301) further includes a communication circuit (190); a display (160); and a speaker (155), and the memory (130) (330) may store instructions that, when individually or wholly executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: control the communication circuit (190) to transmit first information including the first frames, the second frames, or the at least one generated frame to a server; in response to transmitting the first information, receive second information including a voice recognition result from the server through the communication circuit (190); and output the voice recognition result through the display (160) or the speaker (155) based on the received second information.
일 실시예에 따르면, 상기 전자 장치(101)(301)는 디스플레이(160); 및 스피커(155)를 더 포함하며, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 학습된 음성 인식 모델(726)을 기반으로, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 이용하여 상기 음성 인식 동작을 수행하고, 상기 음성 인식 동작을 기반으로 음성 인식 결과를 획득하고, 상기 획득된 음성 인식 결과를 상기 디스플레이(160) 또는 상기 스피커(155)를 통해 출력하도록 야기하는 명령어들을 저장할 수 있다. According to one embodiment, the electronic device (101) (301) further includes a display (160); and a speaker (155), and the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: perform the voice recognition operation based on the learned voice recognition model (726) using the first frames, the second frames, or the at least one generated frame; obtain a voice recognition result based on the voice recognition operation; and output the obtained voice recognition result through the display (160) or the speaker (155).
일 실시예에 따르면, 상기 전자 장치(101)(301)는 디스플레이(160)를 더 포함하며, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로 또는 전체적으로 실행될 시, 상기 전자 장치(101)(301)로 하여금: 상기 비주얼 데이터(904)가 획득된 것에 기반하여, 상기 제1 프레임들의 개수에 기반한 프레임 입력 상태를 지시하는 정보(1302)(1312)(1322)를 상기 디스플레이(160)에 출력하고, 상기 오디오 데이터(902)가 획득된 것에 기반하여, 상기 제2 프레임들의 개수에 기반한 프레임 입력 상태를 지시하는 정보(1304)(1314)(1324)를 상기 디스플레이(160)에 출력하도록 야기하는 명령어들을 저장할 수 있다. According to one embodiment, the electronic device (101) (301) further includes a display (160), and the memory (130) (330) may store instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: output information (1302) (1312) (1322) indicating a frame input state based on the number of the first frames, to the display (160), based on the acquisition of the visual data (904), and output information (1304) (1314) (1324) indicating a frame input state based on the number of the second frames, to the display (160), based on the acquisition of the audio data (902).
본 개시의 일 실시예에 따른 전자 장치는; 적어도 하나의 카메라(180)(310); 적어도 하나의 마이크(150)(320); 통신 회로(190); 메모리(130)(330); 및 프로세싱 회로를 포함하는 적어도 하나의 프로세서(120)(340)를 포함하며, 상기 메모리(130)(330)는, 상기 적어도 하나의 프로세서(120)(340)에 의해 개별적으로(individually) 또는 전체적으로(collectively) 실행될 시, 상기 전자 장치(101)(301)로 하여금: 제1 시구간 동안 상기 적어도 하나의 카메라(180)(310)를 통해 화자의 입술과 연관된 비주얼 데이터(904)를 획득하고, 상기 제1 시구간 동안 상기 적어도 하나의 마이크(150)(320)를 통해 상기 화자의 음성과 연관된 오디오 데이터(902)를 획득하고, 상기 획득된 비주얼 데이터(904)에 대응하는 제1 프레임들 및 상기 획득된 오디오 데이터(902)에 대응하는 제2 프레임들을 서버로 전송하도록 상기 통신 회로(190)를 제어하고, 상기 통신 회로(190)를 통해, 상기 서버로부터 음성 인식 결과를 수신하도록 야기하는 명령어들(instructions)을 저장하며, 상기 음성 인식 결과는, 상기 제1 프레임들 및 상기 제2 프레임들을 기반으로 적어도 하나의 누락된 프레임을 식별하고, 학습된 머신 러닝 모델(712)을 기반으로, 상기 제1 프레임들 및 상기 제2 프레임들을 이용하여 상기 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하고, 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행한 결과를 포함할 수 있다. An electronic device according to one embodiment of the present disclosure comprises: at least one camera (180) (310); at least one microphone (150) (320); a communication circuit (190); a memory (130) (330); and at least one processor (120) (340) including a processing circuit, wherein the memory (130) (330) controls the communication circuit (190) to control instructions that, when individually or collectively executed by the at least one processor (120) (340), cause the electronic device (101) (301) to: acquire visual data (904) associated with the lips of a speaker through the at least one camera (180) (310) during a first time period, acquire audio data (902) associated with the voice of the speaker through the at least one microphone (150) (320) during the first time period, transmit first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server, and receive a voice recognition result from the server through the communication circuit (190). The voice recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712), and performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame.
도 4a는 일 실시예에 따른 음성 인식 동작을 설명하기 위한 도면이다.FIG. 4a is a diagram for explaining a voice recognition operation according to one embodiment.
도 4a를 참조하면, 전자 장치(예: 도 1의 전자 장치(101) 또는 도 3의 전자 장치(301))에 입력된 사용자의 음성(402)은 음향 모델(acoustic model)(404)과 언어 모델(language model)(406)을 기반으로 텍스트(408)로 출력될 수 있다. Referring to FIG. 4a, a user's voice (402) input into an electronic device (e.g., the electronic device (101) of FIG. 1 or the electronic device (301) of FIG. 3) can be output as text (408) based on an acoustic model (404) and a language model (406).
일 실시예에 따르면, 음성 입력에 기반하여 생성된 음성 신호는 음향 모델(404)로 입력될 수 있다. 음향 모델(404)은 음성 신호를 분석하여 음향적 특징을 추출하고, 추출된 음향적 특징을 기반으로 음성 신호를 음절 단위로 예측할 수 있다. 언어 모델(406)은 예측된 음절 단위의 시퀀스를 단어나 문장으로 변환하고, 변환 결과를 텍스트(408)로 출력할 수 있다. According to one embodiment, a speech signal generated based on a voice input may be input to an acoustic model (404). The acoustic model (404) may analyze the speech signal to extract acoustic features and predict the speech signal on a syllable-by-syllable basis based on the extracted acoustic features. The language model (406) may convert the predicted syllable-by-syllable sequence into words or sentences and output the conversion result as text (408).
일 실시예에 따르면, 노이즈가 심한 환경에서 음성 입력이 수행되거나, 사용자의 발음이 부정확하거나 사용자의 목소리가 작은 경우, 음향 모델(404)에서 음절 단위로 예측된 시퀀스에는 오류가 포함될 수 있다. 오류가 포함된 시퀀스는 언어 모델(406)에 의해 정정될 수 있다. 예를 들어, 오류가 포함된 시퀀스는 언어 모델(406)의 학습된 데이터를 기반으로 빈번하게 사용되는 단어(또는 문장)으로 정정될 수 있다. 정정된 단어가 언어적으로 문제가 없거나 문맥상 이상이 없을 경우, 정정된 단어는 언어 모델(406)로부터 출력될 수 있다. 출력된 단어는 통계적인 데이터에 기반하여 정정된 것이므로 사용자의 음성(402)에 일치하지 않을 수 있다. 출력된 단어가 사용자의 음성(402)에 일치하지 않을 경우 음성 인식 오류가 발생할 수 있다. 예를 들어, 다음 [표 1]에 나타난 바와 같은 음성 인식 오류가 발생할 수 있다. According to one embodiment, when voice input is performed in a noisy environment, or when the user's pronunciation is inaccurate or the user's voice is soft, the sequence predicted by the acoustic model (404) in units of syllables may contain errors. The sequence containing errors may be corrected by the language model (406). For example, the sequence containing errors may be corrected into frequently used words (or sentences) based on the learned data of the language model (406). If the corrected word is linguistically sound or contextually sound, the corrected word may be output from the language model (406). Since the output word is corrected based on statistical data, it may not match the user's voice (402). If the output word does not match the user's voice (402), a voice recognition error may occur. For example, a voice recognition error as shown in the following [Table 1] may occur.
(인식 오류)Wet -> Expert
(recognition error)
(인식 오류)Bancha -> Banchan is
(recognition error)
(인식 오류)Cost -> Rain
(recognition error)
(인식 오류)Dosi -> Dosi
(recognition error)
[표 1]을 참조하면, 참조 텍스트는 입력된 사용자의 음성(402)에 대응하는 텍스트로서 정답 정보를 나타낼 수 있다. 출력 텍스트는 음향 모델(404)과 언어 모델(406)을 기반으로 출력된 텍스트(408)로서, 입력된 사용자의 음성(402)을 예측한 정보를 나타낼 수 있다. Referring to [Table 1], the reference text may represent correct answer information as text corresponding to the input user's voice (402). The output text may represent text (408) output based on an acoustic model (404) and a language model (406), and may represent information predicted from the input user's voice (402).
제1 케이스를 참조하면, “가랑비에 옷 젖는다처럼 사랑도”의 음성은 “가랑비에 옷 전문가처럼 사랑도”와 같이, “젖는다”가 “전문가”로 잘못 인식된 결과가 텍스트로 출력될 수 있다. “젖는다”와 “전문가”는 각각 언어적으로 또는 문맥적으로 의미를 갖는 용어이기 때문에 언어 모델(406)이 이용되더라도 오인식이 발생될 수 있다.Referring to Case 1, the spoken word "Love is like getting wet in a drizzle" may be misrecognized as "Expert" in the text output, as in "Love is like getting wet in a drizzle, like being an expert on clothes." Since "Wet" and "Expert" are terms with linguistic and contextual meanings, misrecognition can occur even when a language model (406) is used.
제2 케이스를 참조하면, “오늘 오후 반차는 공원에서 조용히 즐길 예정이야”의 음성은 “오늘 오후 반찬은 공원에서 조용히 즐길 예정이야”와 같이, “반차는”이 “반찬은”으로 잘못 인식된 결과가 텍스트로 출력될 수 있다. 제2 케이스의 참조 텍스트에서 “반차”는 시간적인 의미를 나타내는 것이고, 제2 케이스의 출력 텍스트에서 “반찬”은 음식과 관련된 의미를 나타내는 것으로서, 사용자의 부정확한 발음로 인해 다른 의미를 갖는 텍스트가 출력될 수 있다. Referring to Case 2, the spoken phrase "I plan to enjoy a quiet afternoon tea at the park" may be misrecognized as "반차는" and output as text, such as "I plan to enjoy a quiet afternoon tea at the park." In the reference text of Case 2, "반차" indicates a temporal meaning, while in the output text of Case 2, "반찬" indicates a food-related meaning. Therefore, incorrect pronunciation by the user may result in outputting text with a different meaning.
제3 케이스를 참조하면, “골프를 즐기기 위한 비용은 만만치 않으나 많은 사람들이 즐기는 취미 생활이다”의 음성은 “골프를 즐기기 위한 비은 만만치 않으나 많은 사람들이 즐기는 취미 생활이다”와 같이, “비용은”이 “비은”으로 잘못 인식된 결과가 텍스트로 출력될 수 있다. 음성 입력시 노이즈나 사용자의 작은 목소리로 인해 일부 단어(또는 음소)가 누락된 텍스트가 출력될 수 있다. Referring to Case 3, the spoken phrase "Golf is not cheap , but it's a hobby enjoyed by many people" may be misrecognized as " 비은 " (meaning "cost") and output as text, such as "Golf is not cheap, but it's a hobby enjoyed by many people." During voice input, noise or a low voice level may cause some words (or phonemes) to be omitted from the output.
제4 케이스를 참조하면, “이번 여름 최대 기온은 영상 3도씨이다”의 음성은 “이번 여름 최대 기온은 영상 3도시이다”와 같이, “도씨”가 “도시”로 잘못 인식된 결과가 텍스트로 출력될 수 있다. 앞서 설명한 다른 케이스와 유사하게, 사용자의 발음이나 목소리 크기, 또는 주변 환경에 기반하여 일부 단어가 잘못 인식된 텍스트가 출력될 수 있다.Referring to Case 4, the spoken phrase "This summer's maximum temperature is 3 degrees Celsius " may be misrecognized as "City" and output as "This summer's maximum temperature is 3 degrees Celsius." Similar to the other cases described above, some words may be misrecognized in the output text based on the user's pronunciation, voice volume, or surrounding environment.
전술한 바와 같은 음성 인식 오류를 줄이고 음성 인식 성능을 향상시키기 위하여, 오디오-비주얼 멀티모달(audio-visual multimodal) 음성 인식(이하 '멀티모달 음성 인식'이라 칭함)이 이용될 수 있다. 멀티모달 음성 인식은 사용자의 음성과 연관된 오디오 데이터와 사용자의 입술과 연관된 비주얼 데이터(예: 입술 이미지(또는 립(lip) 이미지)와 연관된 데이터)를 기반으로 수행될 수 있다. 멀티모달 음성 인식이 사용될 경우, 오디오 데이터의 누락된 부분(또는 손상되거나 손실된 부분)이 비주얼 데이터를 기반으로 복원되거나, 비주얼 데이터의 누락된 부분이 오디오 데이터를 기반으로 복원될 수 있으므로, 보다 정확한 음성 인식 결과가 제공될 수 있다. To reduce speech recognition errors as described above and improve speech recognition performance, audio-visual multimodal speech recognition (hereinafter referred to as "multimodal speech recognition") may be utilized. Multimodal speech recognition may be performed based on audio data associated with a user's voice and visual data associated with the user's lips (e.g., data associated with a lip image (or lip image)). When multimodal speech recognition is utilized, missing portions (or damaged or lost portions) of audio data may be restored based on visual data, or missing portions of visual data may be restored based on audio data, thereby providing more accurate speech recognition results.
도 4b는 일 실시예에 따른 오디오 데이터의 복원에 기반한 멀티모달 음성 인식 동작을 설명하기 위한 도면이다.FIG. 4b is a diagram for explaining a multimodal speech recognition operation based on restoration of audio data according to one embodiment.
도 4b를 참조하면, 전자 장치(예: 도 1의 전자 장치(101) 또는 도 3의 전자 장치(301))에서는 적어도 하나의 마이크(예: 도 1의 입력 모듈(150) 또는 도 3의 적어도 하나의 마이크(320))를 통해, 화자의 음성과 연관된 오디오 데이터(또는 오디오 신호)(452)가 획득될 수 있다. Referring to FIG. 4b, in an electronic device (e.g., the electronic device (101) of FIG. 1 or the electronic device (301) of FIG. 3), audio data (or audio signal) (452) associated with a speaker's voice can be obtained through at least one microphone (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3).
일 실시예에 따르면, 오디오 데이터(452)에 포함된 프레임들 중 적어도 하나는 누락된 프레임(454)일 수 있다. 오디오 데이터(452)에서 적어도 하나의 누락된 프레임(454)은 화자의 음성이 포함되지 않은 프레임 및/또는 임계값 이상의 노이즈, 복수 명의 화자의 음성, 또는 화자의 작은 목소리로 인해 화자의 음성이 식별되지 않는 프레임을 나타낼 수 있다. 오디오 데이터(452)에서 적어도 하나의 누락된 프레임(454)을 제외한 나머지 프레임은 화자의 음성이 포함되거나 화자의 음성이 식별되는 프레임을 나타낼 수 있다. According to one embodiment, at least one of the frames included in the audio data (452) may be a missing frame (454). The at least one missing frame (454) in the audio data (452) may represent a frame that does not include a speaker's voice and/or a frame in which a speaker's voice cannot be identified due to noise exceeding a threshold, voices of multiple speakers, or a soft voice of the speaker. The remaining frames in the audio data (452) excluding the at least one missing frame (454) may represent frames in which a speaker's voice is included or in which a speaker's voice is identified.
전자 장치에서는 적어도 하나의 카메라(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(310))를 통해, 화자의 입술과 연관된 비주얼 데이터(456)가 획득될 수 있다. 비주얼 데이터(456)는 오디오 데이터(452)와 실질적으로 동일한 시구간 동안 획득될 수 있고, 시간에 따른 입술의 움직임(또는 모양)이 캡쳐된 프레임들을 포함할 수 있다. In an electronic device, visual data (456) associated with a speaker's lips can be acquired through at least one camera (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3). The visual data (456) can be acquired over substantially the same time period as the audio data (452), and can include frames in which the movement (or shape) of the lips over time is captured.
일 실시예에 따르면, 비주얼 데이터(456)에 포함된 프레임들은 누락되지 않은 프레임들일 수 있다. 비주얼 데이터(456)에서 누락되지 않은 프레임들은 화자의 입술이 포함되거나 화자의 입술이 식별되는 프레임들을 나타낼 수 있다. 이하에서는 설명의 편의를 위해 누락되지 않은 프레임(들)을 정상 프레임(들)로 칭하기로 한다.In one embodiment, the frames included in the visual data (456) may be non-missing frames. The non-missing frames in the visual data (456) may represent frames that include the speaker's lips or in which the speaker's lips are identifiable. For convenience of explanation, the non-missing frame(s) will be referred to as normal frame(s) hereinafter.
일 실시예에 따르면, 적어도 하나의 누락된 프레임(454)을 포함하는 오디오 데이터(452)와, 정상 프레임들을 포함하는 비주얼 데이터(456)는 멀티모달 동기화 모듈(458)로 출력될 수 있다. 멀티모달 동기화 모듈(458)은 적어도 하나의 AI 모델을 포함할 수 있다. 적어도 하나의 AI 모델은 학습된 머신 러닝 모델로서, 적어도 하나의 누락된 프레임을 복원할 수 있는 생성형(generative) AI 모델을 포함할 수 있다. 생성형 AI 모델은 오디오 데이터(452) 또는 비주얼 데이터(456)와 연관된 적어도 하나의 누락된 프레임을 복원하기 위해 학습된 것일 수 있다. According to one embodiment, audio data (452) including at least one missing frame (454) and visual data (456) including normal frames can be output to a multimodal synchronization module (458). The multimodal synchronization module (458) can include at least one AI model. The at least one AI model can be a trained machine learning model, which can include a generative AI model capable of restoring at least one missing frame. The generative AI model can be trained to restore at least one missing frame associated with the audio data (452) or the visual data (456).
일 실시예에 따르면, 적어도 하나의 누락된 프레임의 복원하는 동작은, 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성하는 동작, 또는 시간 축에서 적어도 하나의 누락된 프레임의 위치에 포함될 적어도 하나의 프레임을 생성하는 동작을 포함할 수 있다.According to one embodiment, the operation of restoring at least one missing frame may include the operation of generating at least one frame corresponding to the at least one missing frame, or the operation of generating at least one frame to be included in the position of the at least one missing frame on the time axis.
일 실시예에 따르면, 멀티모달 동기화 모듈(458)은 생성형 AI 모델을 기반으로, 비주얼 데이터(456)를 이용하여 오디오 데이터(452)의 적어도 하나의 누락된 프레임(454)을 복원할 수 있다. 예를 들어, 비주얼 데이터(456)는 립 리딩(lip reading) 기술을 기반으로 음성을 인식하기 위해 이용될 수 있으므로, 적어도 하나의 누락된 프레임(454)에 대응하는 적어도 하나의 오디오 프레임(462)(또는 적어도 하나의 누락된 프레임(454)의 시간 축 상의 위치에 포함될 적어도 하나의 오디오 프레임(462))을 생성하기 위해 이용될 수 있다. According to one embodiment, the multimodal synchronization module (458) can restore at least one missing frame (454) of audio data (452) using visual data (456) based on a generative AI model. For example, the visual data (456) can be used to recognize speech based on lip reading technology, and thus can be used to generate at least one audio frame (462) corresponding to the at least one missing frame (454) (or at least one audio frame (462) to be included at a position on the time axis of the at least one missing frame (454)).
일 실시예에 따르면, 멀티모달 동기화 모듈(458)은 적어도 하나의 오디오 프레임(462)을 생성하고, 적어도 하나의 오디오 프레임(462)을 포함하는 오디오 데이터(460)를 출력할 수 있다. 오디오 데이터(460)는 멀티모달 ASR(automatic speech recognition) 모듈(464)로 출력될 수 있다. 비주얼 데이터(456)는 정상 프레임들을 포함하고 있으므로, 복원 동작없이 멀티모달 ASR 모듈(464)로 출력될 수 있다. 오디오 데이터(460)와 비주얼 데이터(456)에 포함된 프레임들은 동기화되어 멀티모달 ASR 모듈(464)로 출력될 수 있다. According to one embodiment, the multimodal synchronization module (458) can generate at least one audio frame (462) and output audio data (460) including at least one audio frame (462). The audio data (460) can be output to a multimodal automatic speech recognition (ASR) module (464). Since the visual data (456) includes normal frames, it can be output to the multimodal ASR module (464) without a restoration operation. The frames included in the audio data (460) and the visual data (456) can be synchronized and output to the multimodal ASR module (464).
일 실시예에 따르면, 멀티모달 ASR 모듈(464)은 오디오 데이터(460)로부터 오디오 스펙트로그램(spectrogram)과 같은 음향적 특징을 추출하고, 비주얼 데이터(456)로부터 화자의 입모양과 같은 시각적 특징을 추출할 수 있다. According to one embodiment, the multimodal ASR module (464) can extract acoustic features, such as an audio spectrogram, from audio data (460) and visual features, such as the shape of a speaker's mouth, from visual data (456).
일 실시예에 따르면, 멀티모달 ASR 모듈(464)은 추출된 음향적 특징과 시각적 특징을 결합하고, 결합된 특징을 이용하여 학습된 멀티모달 ASR 모델을 기반으로 텍스트를 생성할 수 있다. According to one embodiment, the multimodal ASR module (464) can combine extracted acoustic features and visual features and generate text based on a multimodal ASR model trained using the combined features.
일 실시예에 따르면, 멀티모달 ASR 모듈(464)에서 생성된 텍스트는 언어 모델(466)로 전달될 수 있다. 언어 모델(466)은 텍스트의 문법이나 의미를 체크하거나 문맥을 보완하기 위해 이용될 수 있다. 언어 모델(466)을 통과한 텍스트(468)는 이해하기 쉽고 문맥적으로 의미있는 텍스트를 포함할 수 있다. In one embodiment, text generated by the multimodal ASR module (464) may be passed to a language model (466). The language model (466) may be used to check the grammar or meaning of the text or to supplement the context. Text (468) that passes through the language model (466) may include text that is easy to understand and contextually meaningful.
도 4c는 일 실시예에 따른 비주얼 데이터의 복원에 기반한 멀티모달 음성 인식 동작을 설명하기 위한 도면이다.FIG. 4c is a diagram for explaining a multimodal speech recognition operation based on restoration of visual data according to one embodiment.
도 4c를 참조하면, 전자 장치(예: 도 1의 전자 장치(101) 또는 도 3의 전자 장치(301))에서는 적어도 하나의 마이크(예: 도 1의 입력 모듈(150) 또는 도 3의 적어도 하나의 마이크(320))를 통해, 화자의 음성과 연관된 오디오 데이터(또는 오디오 신호)(472)가 획득될 수 있다. Referring to FIG. 4c, in an electronic device (e.g., the electronic device (101) of FIG. 1 or the electronic device (301) of FIG. 3), audio data (or audio signal) (472) associated with a speaker's voice can be obtained through at least one microphone (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3).
일 실시예에 따르면, 오디오 데이터(472)는 정상 프레임들을 포함할 수 있다. 오디오 데이터(472)에서 정상 프레임들은 화자의 음성이 포함되거나 화자의 음성이 식별되는 프레임을 나타낼 수 있다. According to one embodiment, the audio data (472) may include normal frames. In the audio data (472), normal frames may represent frames that contain a speaker's voice or in which a speaker's voice is identifiable.
일 실시예에 따르면, 전자 장치에서는 적어도 하나의 카메라(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(310))를 통해, 화자의 입술과 연관된 비주얼 데이터(474)가 획득될 수 있다. 비주얼 데이터(474)는 오디오 데이터(472)와 실질적으로 동일한 시구간 동안 획득될 수 있고, 시간에 따른 입술의 움직임(또는 입술 모양)이 캡쳐된 프레임들을 포함할 수 있다. According to one embodiment, an electronic device may acquire visual data (474) associated with a speaker's lips via at least one camera (e.g., a camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3). The visual data (474) may be acquired over substantially the same time period as the audio data (472), and may include frames in which lip movement (or lip shape) over time is captured.
일 실시예에 따르면, 비주얼 데이터(474)에 포함된 프레임들 중 적어도 하나는 누락된 프레임(476)일 수 있다. 비주얼 데이터(474)에서 적어도 하나의 누락된 프레임(476)은 화자의 입술이 포함되지 않거나 화자의 입술이 명확히 식별되지 않는 프레임을 나타낼 수 있다.According to one embodiment, at least one of the frames included in the visual data (474) may be a missing frame (476). At least one missing frame (476) in the visual data (474) may represent a frame in which the speaker's lips are not included or in which the speaker's lips are not clearly identifiable.
일 실시예에 따르면, 정상 프레임들을 포함하는 오디오 데이터(472)와, 적어도 하나의 누락된 프레임(476)을 포함하는 비주얼 데이터(474)는 멀티모달 동기화 모듈(478)로 출력될 수 있다. 멀티모달 동기화 모듈(478)은 도 4b의 멀티모달 동기화 모듈(458)과 동일하거나 유사할 수 있다.According to one embodiment, audio data (472) including normal frames and visual data (474) including at least one missing frame (476) may be output to a multimodal synchronization module (478). The multimodal synchronization module (478) may be identical to or similar to the multimodal synchronization module (458) of FIG. 4B.
일 실시예에 따르면, 멀티모달 동기화 모듈(478)은 생성형 AI 모델을 기반으로, 오디오 데이터(472)를 이용하여 비주얼 데이터(474)의 적어도 하나의 누락된 프레임(476)을 복원할 수 있다. 예를 들어, 멀티모달 동기화 모듈(458)은 적어도 하나의 누락된 프레임(476)에 대응하는 적어도 하나의 이미지 프레임(482)(또는 적어도 하나의 누락된 프레임(476)의 시간 축 상의 위치에 포함될 적어도 하나의 이미지 프레임(482))을 생성할 수 있다. 멀티모달 동기화 모듈(478)은 적어도 하나의 이미지 프레임(482)을 생성하고, 적어도 하나의 이미지 프레임(482)을 포함하는 비주얼 데이터(480)를 출력할 수 있다. According to one embodiment, the multimodal synchronization module (478) can restore at least one missing frame (476) of the visual data (474) using the audio data (472) based on the generative AI model. For example, the multimodal synchronization module (458) can generate at least one image frame (482) corresponding to the at least one missing frame (476) (or at least one image frame (482) to be included at a position on the time axis of the at least one missing frame (476)). The multimodal synchronization module (478) can generate the at least one image frame (482) and output visual data (480) including the at least one image frame (482).
비주얼 데이터(480)는 멀티모달 ASR 모듈(484)로 출력될 수 있다. 오디오 데이터(472)는 정상 프레임들을 포함하고 있으므로, 복원 동작없이 멀티모달 ASR 모듈(484)로 출력될 수 있다. 멀티모달 ASR 모듈(484)은 도 4b의 멀티모달 ASR 모듈(464)과 동일하거나 유사할 수 있다.Visual data (480) can be output to a multimodal ASR module (484). Since audio data (472) contains normal frames, it can be output to the multimodal ASR module (484) without a restoration operation. The multimodal ASR module (484) can be the same as or similar to the multimodal ASR module (464) of FIG. 4b.
일 실시예에 따르면, 멀티모달 ASR 모듈(484)은 오디오 데이터(472)로부터 오디오 스펙트로그램과 같은 음향적 특징을 추출하고, 비주얼 데이터(480)로부터 화자의 입모양과 같은 시각적 특징을 추출할 수 있다. 멀티모달 ASR 모듈(484)은 추출된 음향적 특징과 시각적 특징을 결합하고, 결합된 특징을 이용하여 학습된 멀티모달 ASR 모델을 기반으로 텍스트를 생성할 수 있다.According to one embodiment, the multimodal ASR module (484) can extract acoustic features, such as an audio spectrogram, from audio data (472) and visual features, such as a speaker's mouth shape, from visual data (480). The multimodal ASR module (484) can combine the extracted acoustic features and visual features and generate text based on a multimodal ASR model trained using the combined features.
일 실시예에 따르면, 멀티모달 ASR 모듈(484)에서 생성된 텍스트는 언어 모델(486)로 전달될 수 있다. 언어 모델(486)은 도 4b의 언어 모델(466)과 동일하거나 유사할 수 있다. 언어 모델(486)은 텍스트의 문법이나 의미를 체크하거나 문맥을 보완하기 위해 이용될 수 있다. 언어 모델(486)을 통과한 텍스트(488)는 이해하기 쉽고 문맥적으로 의미있는 텍스트를 포함할 수 있다.In one embodiment, text generated by the multimodal ASR module (484) may be passed to a language model (486). The language model (486) may be identical to or similar to the language model (466) of FIG. 4B . The language model (486) may be used to check the grammar or meaning of the text or to supplement the context. Text (488) that passes through the language model (486) may include text that is easy to understand and contextually meaningful.
도 4b 또는 도 4c를 참조하여 설명된 바와 같이, 멀티모달 음성 인식 동작에서, 오디오 데이터의 누락된 부분이나 비주얼 데이터의 누락된 부분이 생성형 AI 모델을 기반으로 복원될 수 있으므로, [표 1]에 나타난 바와 같은 음성 인식 오류는 방지될 수 있다.As described with reference to FIG. 4b or FIG. 4c, in a multimodal speech recognition operation, missing portions of audio data or missing portions of visual data can be restored based on a generative AI model, so speech recognition errors such as those shown in [Table 1] can be prevented.
일 실시예에 따르면, 전자 장치(301)는 다양한 타입의 전자 장치일 수 있다. 이하 도 5a 내지 도 5c를 참조하여, 다양한 타입의 예를 설명한다.According to one embodiment, the electronic device (301) may be various types of electronic devices. Examples of various types are described below with reference to FIGS. 5A to 5C.
도 5a는 일 실시예에 따른 제1 타입의 전자 장치를 예시한 도면이다.FIG. 5A is a diagram illustrating a first type of electronic device according to one embodiment.
도 5a를 참조하면, 전자 장치(301)는 제1 타입의 전자 장치일 수 있다. 제1 타입의 전자 장치는 스마트폰 또는 태블릿과 같은 이동 단말을 포함할 수 있다. Referring to FIG. 5A, the electronic device (301) may be a first type of electronic device. The first type of electronic device may include a mobile terminal such as a smartphone or tablet.
일 실시예에 따르면, 전자 장치(301)가 제1 타입의 전자 장치일 경우 다음과 같은 구성을 포함할 수 있다. 전자 장치(301)의 전면에는 디스플레이(503)(예: 도 1의 디스플레이 모듈(160))와 적어도 하나의 카메라(507)(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(310))가 포함될 수 있다. 전자 장치(301)의 하단에는 적어도 하나의 마이크(미도시)(예: 도 1의 입력 모듈(150) 또는 도 3의 적어도 하나의 마이크(320))가 포함될 수 있다. According to one embodiment, when the electronic device (301) is a first type of electronic device, it may include the following configuration. The front of the electronic device (301) may include a display (503) (e.g., the display module (160) of FIG. 1) and at least one camera (507) (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3). The bottom of the electronic device (301) may include at least one microphone (not shown) (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3).
전자 장치(301)는 멀티모달 음성 인식이 이용되는 경우, 적어도 하나의 카메라와 적어도 하나의 마이크를 활성화할 수 있다. 전자 장치(301)는 멀티모달 음성 인식을 위해 적어도 하나의 카메라(507)와 적어도 하나의 마이크가 활성화된 상태임을 사용자가 인지할 수 있도록 UI(user interface) 또는 GUI(graphical user interface)를 표시할 수 있다. 예를 들어, 전자 장치(301)는 적어도 하나의 카메라(507) 주변에 음영 표시나 서클링 표시를 제공함으로써, 적어도 하나의 카메라(507)가 활성화된 상태임을 지시할 수 있다. 예를 들어, 전자 장치(301)는 디스플레이(503) 상의 설정된 위치(예: 적어도 하나의 마이크에 인접한 위치 또는 디스플레이(503)의 하단 위치)에 적어도 하나의 디스플레이 객체(예: 마이크 아이콘이나 음성 인식 중임을 지시하는 아이콘)(505)를 표시함으로써 적어도 하나의 마이크가 활성화된 상태임을 지시할 수 있다. When multimodal voice recognition is used, the electronic device (301) can activate at least one camera and at least one microphone. The electronic device (301) can display a user interface (UI) or a graphical user interface (GUI) so that a user can recognize that at least one camera (507) and at least one microphone are activated for multimodal voice recognition. For example, the electronic device (301) can indicate that at least one camera (507) is activated by providing a shaded mark or a circled mark around at least one camera (507). For example, the electronic device (301) can indicate that at least one microphone is activated by displaying at least one display object (e.g., a microphone icon or an icon indicating that voice recognition is in progress) (505) at a set position on the display (503) (e.g., a position adjacent to at least one microphone or a position at the bottom of the display (503).
적어도 하나의 카메라(507)와 적어도 하나의 마이크는 멀티모달 음성 인식을 위해 실질적으로 동일한 시간에 활성화될 수 있다. 일 실시예에 따르면, 멀티모달 데이터 입력을 시작하기 위한 버튼 입력이나 터치 입력을 기반으로 적어도 하나의 카메라(507)와 적어도 하나의 마이크는 실질적으로 동일한 시간에 활성화될 수 있다. 멀티모달 데이터 입력을 시작하기 위한 버튼 입력이나 터치 입력을 기반으로 사용자의 얼굴을 촬영하고 음성을 입력받기 위한 정보가 디스플레이(503)에 출력되거나 음향 정보로 출력될 수도 있다.At least one camera (507) and at least one microphone may be activated at substantially the same time for multimodal speech recognition. In one embodiment, at least one camera (507) and at least one microphone may be activated at substantially the same time based on a button input or touch input to initiate multimodal data input. Based on a button input or touch input to initiate multimodal data input, information for capturing the user's face and receiving voice input may be output to the display (503) or as audio information.
일 실시예에 따르면, 멀티모달 데이터 입력을 종료하기 위한 버튼 입력이나 터치 입력을 기반으로 적어도 하나의 카메라(507)와 적어도 하나의 마이크는 실질적으로 동일한 시간에 비활성화될 수 있다. 멀티모달 데이터 입력을 종료하기 위한 버튼 입력이나 터치 입력을 기반으로 촬영이 종료되고 음성 입력이 종료됨을 지시하는 정보가 디스플레이(503)에 출력되거나 음향 정보로 출력될 수도 있다.In one embodiment, at least one camera (507) and at least one microphone may be deactivated at substantially the same time based on a button input or touch input to terminate multimodal data input. Information indicating that filming has ended and voice input has ended based on a button input or touch input to terminate multimodal data input may be output to the display (503) or as audio information.
전자 장치(301)는 적어도 하나의 카메라(507)와 적어도 하나의 마이크가 활성화된 상태에서 사용자의 얼굴이 포함된 이미지를 획득하고 사용자의 음성을 수신할 수 있다. The electronic device (301) can acquire an image including a user's face and receive the user's voice while at least one camera (507) and at least one microphone are activated.
일 실시예에 따르면, 활성화된 적어도 하나의 카메라(507)에 의해 획득된 이미지(예: 사용자의 얼굴 또는 입이 포함된 이미지)는 디스플레이(503)에 표시되거나 표시되지 않을 수 있다.According to one embodiment, an image (e.g., an image including a user's face or mouth) acquired by at least one activated camera (507) may or may not be displayed on the display (503).
일 실시예에 따르면, 활성화된 적어도 하나의 마이크를 통해 사용자의 음성이 입력되는 경우, 사용자의 음성이 입력되고 있음을 지시하는 메시지나 그래픽이 표시될 수 있다.In one embodiment, when a user's voice is input through at least one activated microphone, a message or graphic may be displayed indicating that the user's voice is being input.
일 실시예에 따르면, 전자 장치(301)는 적어도 하나의 카메라(507)를 통해 이미지가 획득된 것에 기반하여, 획득된 이미지로부터 사용자의 얼굴에 해당하는 부분을 검출할 수 있다. 전자 장치(301)는 사용자의 얼굴에 해당하는 부분이 검출되면, 검출된 부분에서 입술이 포함된 부분을 입술 이미지로서 검출할 수 있다. 전자 장치(301)는 검출된 입술 이미지와 연관된 비주얼 데이터와 사용자의 음성과 연관된 오디오 데이터를 기반으로 멀티모달 음성 인식 동작을 수행할 수 있다. According to one embodiment, the electronic device (301) may detect a portion corresponding to the user's face from an image acquired through at least one camera (507). When the portion corresponding to the user's face is detected, the electronic device (301) may detect a portion of the detected portion that includes lips as a lip image. The electronic device (301) may perform a multimodal voice recognition operation based on visual data associated with the detected lip image and audio data associated with the user's voice.
도 5b는 일 실시예에 따른 제2 타입의 전자 장치를 예시한 도면이다. FIG. 5b is a diagram illustrating a second type of electronic device according to one embodiment.
도 5b를 참조하면, 전자 장치(301)는 제2 타입의 전자 장치일 수 있다. 제2 타입의 전자 장치는 도 5a의 제1 타입의 전자 장치(301)와 유사한 이동 단말을 포함하거나, 디스플레이가 접히거나 펼쳐질 수 있는 폴더블(foldable) 전자 장치 또는 플렉서블(flexible) 전자 장치를 포함할 수 있다. Referring to FIG. 5B, the electronic device (301) may be a second type of electronic device. The second type of electronic device may include a mobile terminal similar to the first type of electronic device (301) of FIG. 5A, or may include a foldable electronic device or a flexible electronic device whose display can be folded or unfolded.
일 실시예에 따르면, 전자 장치(301)가 제2 타입의 전자 장치일 경우 다음과 같은 구성을 포함할 수 있다. 전자 장치(301)는 내면에 플렉서블 디스플레이를 포함할 수 있고, 외면에 디스플레이(513)(예: 도 1의 디스플레이 모듈(160))를 포함할 수 있다. 일 실시예에 따르면, 전자 장치(301)는 디스플레이를 펼치지 않아도 외면에 포함된 디스플레이(513)를 통해 멀티모달 음성 인식 동작을 수행할 수 있다.According to one embodiment, when the electronic device (301) is a second type of electronic device, it may include the following configuration. The electronic device (301) may include a flexible display on the inner surface and a display (513) (e.g., the display module (160) of FIG. 1) on the outer surface. According to one embodiment, the electronic device (301) may perform a multimodal voice recognition operation through the display (513) included on the outer surface without unfolding the display.
전자 장치(301)는 멀티모달 음성 인식이 이용되는 경우, 적어도 하나의 카메라(517)와 적어도 하나의 마이크(미도시)를 활성화할 수 있다. 전자 장치(301)는 멀티모달 음성 인식을 위해 적어도 하나의 카메라(517)(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(310))와 적어도 하나의 마이크(예: 도 1의 입력 모듈(150) 또는 도 3의 적어도 하나의 마이크(320))가 활성화된 상태임을 사용자가 인지할 수 있도록 UI 또는 GUI를 표시할 수 있다. 예를 들어, 전자 장치(301)는 적어도 하나의 카메라(517)가 활성화 상태임을 지시하는 적어도 하나의 디스플레이 객체(예: 카메라 아이콘)(518)를 디스플레이(513)에 표시할 수 있다. 예를 들어, 전자 장치(301)는 디스플레이(513) 상의 설정된 위치(예: 적어도 하나의 마이크에 인접한 위치 또는 디스플레이(513)의 하단 위치)에 적어도 하나의 디스플레이 객체(예: 마이크 아이콘이나 음성 인식 중임을 지시하는 아이콘)(515)를 표시함으로써 적어도 하나의 마이크가 활성화된 상태임을 지시할 수 있다. When multimodal voice recognition is used, the electronic device (301) may activate at least one camera (517) and at least one microphone (not shown). The electronic device (301) may display a UI or GUI so that a user can recognize that at least one camera (517) (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3) and at least one microphone (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3) are activated for multimodal voice recognition. For example, the electronic device (301) may display at least one display object (e.g., a camera icon) (518) on the display (513) indicating that at least one camera (517) is activated. For example, the electronic device (301) may indicate that at least one microphone is activated by displaying at least one display object (e.g., a microphone icon or an icon indicating that voice recognition is in progress) (515) at a set location on the display (513) (e.g., a location adjacent to at least one microphone or a location below the display (513)).
전자 장치(301)는 멀티모달 음성 인식을 위해 적어도 하나의 카메라(517)와 적어도 하나의 마이크를 실질적으로 동일한 시간에 활성화될 수 있다. 전자 장치(301)는 적어도 하나의 카메라(517)와 적어도 하나의 마이크가 활성화된 상태에서 사용자의 얼굴이 포함된 이미지를 획득하고 사용자의 음성을 수신할 수 있다. 일 실시예에 따르면, 활성화된 적어도 하나의 카메라(517)에 의해 획득된 이미지(예: 사용자의 얼굴 또는 입이 포함된 이미지)는 디스플레이(513)에 표시되거나 표시되지 않을 수 있다. 일 실시예에 따르면, 활성화된 적어도 하나의 마이크를 통해 사용자의 음성이 입력되는 경우, 사용자의 음성이 입력되고 있음을 지시하는 메시지나 그래픽이 표시될 수 있다.The electronic device (301) may activate at least one camera (517) and at least one microphone at substantially the same time for multimodal voice recognition. The electronic device (301) may acquire an image including a user's face and receive the user's voice while the at least one camera (517) and at least one microphone are activated. According to one embodiment, an image (e.g., an image including the user's face or mouth) acquired by the at least one activated camera (517) may or may not be displayed on the display (513). According to one embodiment, when the user's voice is input through the at least one activated microphone, a message or graphic indicating that the user's voice is being input may be displayed.
일 실시예에 따르면, 전자 장치(301)는 적어도 하나의 카메라(517)를 통해 획득된 이미지로부터 사용자의 얼굴에 해당하는 부분을 검출할 수 있다. 전자 장치(301)는 사용자의 얼굴에 해당하는 부분이 검출되면, 검출된 부분에서 입술이 포함된 부분을 입술 이미지로서 검출할 수 있다. 전자 장치(301)는 검출된 입술 이미지와 연관된 비주얼 데이터와 사용자의 음성과 연관된 오디오 데이터를 기반으로 멀티모달 음성 인식 동작을 수행할 수 있다.According to one embodiment, the electronic device (301) can detect a portion corresponding to the user's face from an image acquired through at least one camera (517). When the portion corresponding to the user's face is detected, the electronic device (301) can detect a portion of the detected portion that includes lips as a lip image. The electronic device (301) can perform a multimodal voice recognition operation based on visual data associated with the detected lip image and audio data associated with the user's voice.
도 5c는 일 실시예에 따른 제3 타입의 전자 장치를 예시한 도면이다. FIG. 5c is a diagram illustrating a third type of electronic device according to one embodiment.
도 5c를 참조하면, 전자 장치(301)는 제3 타입의 전자 장치일 수 있다. 제3 타입의 전자 장치는 웨어러블 전자 장치를 포함할 수 있다. 일 실시예에 따르면, 전자 장치(301)는 스마트 워치일 수 있으나 이에 한정되지 않고, 스마트 안경, HMD, 또는 스마트 링과 같은 전자 장치일 수도 있다. Referring to FIG. 5c, the electronic device (301) may be a third type of electronic device. The third type of electronic device may include a wearable electronic device. According to one embodiment, the electronic device (301) may be a smartwatch, but is not limited thereto, and may also be an electronic device such as smart glasses, a head-mounted display (HMD), or a smart ring.
전자 장치(301)가 제3 타입의 전자 장치일 경우 다음과 같은 구성을 포함할 수 있다. 전자 장치(301)는 멀티모달 음성 인식이 이용되는 경우, 적어도 하나의 카메라(527)(예: 도 1의 카메라 모듈(180) 또는 도 3의 적어도 하나의 카메라(310))와 적어도 하나의 마이크(미도시)(예: 도 1의 입력 모듈(150) 또는 도 3의 적어도 하나의 마이크(320))를 활성화할 수 있다. 전자 장치(301)는 멀티모달 음성 인식을 위해 적어도 하나의 카메라(527)와 적어도 하나의 마이크가 활성화된 상태임을 사용자가 인지할 수 있도록 UI 또는 GUI를 표시할 수 있다. 예를 들어, 전자 장치(301)는 적어도 하나의 카메라(527) 주변에 음영 표시나 서클링 표시를 제공함으로써, 적어도 하나의 카메라(527)가 활성화된 상태임을 지시할 수 있다. 예를 들어, 전자 장치(301)는 디스플레이(523)(예: 도 1의 디스플레이 모듈(160)) 상의 설정된 위치(예: 적어도 하나의 마이크에 인접한 위치 또는 디스플레이(523)의 하단 위치)에 적어도 하나의 디스플레이 객체(예: 마이크 아이콘이나 음성 인식 중임을 지시하는 아이콘)(525)를 표시함으로써 적어도 하나의 마이크가 활성화된 상태임을 지시할 수 있다. When the electronic device (301) is a third type of electronic device, it may include the following configuration. When multimodal voice recognition is used, the electronic device (301) may activate at least one camera (527) (e.g., the camera module (180) of FIG. 1 or at least one camera (310) of FIG. 3) and at least one microphone (not shown) (e.g., the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3). The electronic device (301) may display a UI or GUI so that a user can recognize that at least one camera (527) and at least one microphone are activated for multimodal voice recognition. For example, the electronic device (301) may indicate that at least one camera (527) is activated by providing a shaded mark or a circling mark around at least one camera (527). For example, the electronic device (301) may indicate that at least one microphone is activated by displaying at least one display object (e.g., a microphone icon or an icon indicating that voice recognition is in progress) (525) at a set location (e.g., a location adjacent to at least one microphone or a location below the display (523)) on the display (523) (e.g., the display module (160) of FIG. 1).
전자 장치(301)는 멀티모달 음성 인식을 위해 적어도 하나의 카메라(527)와 적어도 하나의 마이크를 실질적으로 동일한 시간에 활성화될 수 있다. The electronic device (301) can activate at least one camera (527) and at least one microphone at substantially the same time for multimodal speech recognition.
전자 장치(301)는 적어도 하나의 카메라(527)와 적어도 하나의 마이크가 활성화된 상태에서 사용자의 얼굴(528) 또는 입이 포함된 이미지를 획득하고 사용자의 음성을 수신할 수 있다. 일 실시예에 따르면, 활성화된 적어도 하나의 카메라(527)에 의해 획득된 이미지(예: 사용자의 얼굴(528) 또는 입이 포함된 이미지)는 디스플레이(523)에 표시되거나 표시되지 않을 수 있다. 일 실시예에 따르면, 활성화된 적어도 하나의 마이크를 통해 사용자의 음성이 입력되는 경우, 사용자의 음성이 입력되고 있음을 지시하는 메시지나 그래픽이 표시될 수 있다.The electronic device (301) can acquire an image including the user's face (528) or mouth and receive the user's voice while at least one camera (527) and at least one microphone are activated. According to one embodiment, the image (e.g., an image including the user's face (528) or mouth) acquired by the at least one activated camera (527) may or may not be displayed on the display (523). According to one embodiment, when the user's voice is input through the at least one activated microphone, a message or graphic indicating that the user's voice is being input may be displayed.
일 실시예에 따르면, 전자 장치(301)는 적어도 하나의 카메라(527)를 통해 획득된 이미지로부터 사용자의 얼굴(528)에 해당하는 부분을 검출할 수 있다. 전자 장치(301)는 사용자의 얼굴(528)에 해당하는 부분이 검출되면, 검출된 부분에서 입술이 포함된 부분(529)을 입술 이미지로서 검출할 수 있다. 전자 장치(301)는 검출된 입술 이미지와 연관된 비주얼 데이터와 사용자의 음성과 연관된 오디오 데이터를 기반으로 멀티모달 음성 인식 동작을 수행할 수 있다.According to one embodiment, the electronic device (301) can detect a portion corresponding to the user's face (528) from an image acquired through at least one camera (527). When the portion corresponding to the user's face (528) is detected, the electronic device (301) can detect a portion (529) containing lips from the detected portion as a lip image. The electronic device (301) can perform a multimodal voice recognition operation based on visual data associated with the detected lip image and audio data associated with the user's voice.
이하에서 언급되는 적어도 하나의 카메라는, 예를 들어, 도 1의 카메라 모듈(180), 도 3의 적어도 하나의 카메라(310), 또는 도 5a의 적어도 하나의 카메라(507), 도 5b의 적어도 하나의 카메라(517), 또는 도 5c의 적어도 하나의 카메라(527) 중 어느 하나에 대응할 수 있다. At least one camera mentioned below may correspond to, for example, any one of the camera module (180) of FIG. 1, at least one camera (310) of FIG. 3, or at least one camera (507) of FIG. 5a, at least one camera (517) of FIG. 5b, or at least one camera (527) of FIG. 5c.
이하에서 언급되는 적어도 하나의 마이크는, 예를 들어, 도 1의 입력 모듈(150) 또는 도 3의 적어도 하나의 마이크(320)에 대응할 수 있다. At least one microphone mentioned below may correspond to, for example, the input module (150) of FIG. 1 or at least one microphone (320) of FIG. 3.
도 6a는 일 실시예에 따른 전자 장치에서 입술 인식이 가능한 상황을 도시한 도면이다.FIG. 6A is a diagram illustrating a situation in which lip recognition is possible in an electronic device according to one embodiment.
도 6a를 참조하면, 전자 장치(301)는 적어도 하나의 카메라를 통해 이미지를 획득할 수 있다. 일 실시예에 따르면, 발화 중인 사용자(602)의 입술이 적어도 하나의 카메라의 화각(field of view: FOV)(603)에 포함된 상태에서 촬영이 수행될 수 있다. 촬영 수행 결과, 전자 장치(301)는 발화 중인 사용자(602)의 입술이 포함된 이미지를 획득할 수 있고, 획득된 이미지로부터 입술 인식을 수행할 수 있다. Referring to FIG. 6A, the electronic device (301) can acquire an image through at least one camera. According to one embodiment, capturing may be performed while the lips of the speaking user (602) are included in the field of view (FOV) (603) of at least one camera. As a result of capturing, the electronic device (301) can acquire an image including the lips of the speaking user (602) and perform lip recognition from the acquired image.
도 6b는 일 실시예에 따른 전자 장치에서 입술 인식이 불가능한 상황을 도시한 도면이다.FIG. 6b is a diagram illustrating a situation in which lip recognition is impossible in an electronic device according to one embodiment.
도 6b를 참조하면, 전자 장치(301)는 적어도 하나의 카메라를 통해 이미지를 획득할 수 있다. 일 실시예에 따르면, 발화 중인 사용자(602)의 입술이 적어도 하나의 카메라의 FOV(603)에 포함되지 않은 상태에서 촬영이 수행될 수 있다. Referring to FIG. 6B, the electronic device (301) can acquire an image through at least one camera. In one embodiment, the capture can be performed in a state where the lips of the speaking user (602) are not included in the FOV (603) of at least one camera.
일 실시예에 따르면, 사용자(602)가 발화 중에 얼굴을 잠시 위로 들어올릴 경우, 도 6b의 (a)에 나타난 바와 같이, 적어도 하나의 카메라의 FOV(603)에 사용자(602)의 입술 대신 턱이 포함될 수 있다. In one embodiment, when the user (602) briefly lifts his/her face while speaking, the FOV (603) of at least one camera may include the chin of the user (602) instead of his/her lips, as shown in (a) of FIG. 6b.
일 실시예에 따르면, 사용자(602)가 발화 중에 얼굴을 옆으로 돌릴 경우, 도 6b의 (b)에 나타난 바와 같이, 적어도 하나의 카메라의 FOV(603)에 사용자(602)의 입술 대신 볼이 포함될 수 있다. In one embodiment, when the user (602) turns his/her face to the side while speaking, the FOV (603) of at least one camera may include the cheek instead of the user's (602) lips, as shown in (b) of FIG. 6B.
일 실시예에 따르면, 사용자(602)의 발화 중에 전자 장치(301)의 위치가 위쪽으로 변경될 경우, 도 6b의 (c)에 나타난 바와 같이, 적어도 하나의 카메라의 FOV(603)에 사용자(602)의 입술 대신 눈이 포함될 수 있다. According to one embodiment, when the position of the electronic device (301) changes upward during the user's (602) speech, the FOV (603) of at least one camera may include the user's (602) eyes instead of his/her lips, as shown in (c) of FIG. 6b.
도 6b의 (a), (b), 또는 (c)에 나타난 바와 같은 상황에서 촬영이 수행된 결과, 전자 장치(301)는 발화 중인 사용자(602)의 입술이 포함되지 않은 이미지를 획득할 수 있다. 전자 장치(301)는 획득된 이미지에 발화 중인 사용자(602)의 입술이 포함되지 않은 것에 기반하여, 입술 인식을 수행하는 것이 불가능할 수 있다. As a result of performing a photographing operation in a situation as shown in (a), (b), or (c) of FIG. 6B, the electronic device (301) may obtain an image that does not include the lips of the speaking user (602). The electronic device (301) may be unable to perform lip recognition based on the fact that the lips of the speaking user (602) are not included in the obtained image.
일 실시예에 따르면, 멀티모달 데이터 입력이 수행되는 시구간 동안, 입술 인식이 불가능한 이미지가 획득될 수 있다. 획득된 이미지에 대응하는 적어도 하나의 프레임은 비주얼 데이터(예: 도 4c의 비주얼 데이터(474))에서 적어도 하나의 누락된 프레임(예: 도 4c의 적어도 하나의 누락된 프레임(476))으로 식별될 수 있다. In one embodiment, during a time period during which multimodal data input is performed, an image that is not lip-recognizable may be acquired. At least one frame corresponding to the acquired image may be identified as at least one missing frame (e.g., at least one missing frame (476) of FIG. 4C) in the visual data (e.g., visual data (474) of FIG. 4C).
도 7은 일 실시예에 따른 멀티모달 음성 인식 장치의 블록도이다.Fig. 7 is a block diagram of a multimodal speech recognition device according to one embodiment.
도 7을 참조하면, 멀티모달 음성 인식 장치(701)는 모달리티 프레임 선택 모듈(706), 멀티모달 동기화 모듈(712), 또는 멀티모달 ASR 모듈(726)을 포함할 수 있다. Referring to FIG. 7, the multimodal speech recognition device (701) may include a modality frame selection module (706), a multimodal synchronization module (712), or a multimodal ASR module (726).
일 실시예에 따르면, 제1 모달리티 데이터(702)와 제2 모달리티 데이터(704)는 모달리티 프레임 선택 모듈(706)로 입력될 수 있다. 제1 모달리티 데이터(702)와 제2 모달리티 데이터(704)는 다른 타입의 데이터로서, 실질적으로 동일한 시구간 동안 획득된 것일 수 있다. 제1 모달리티 데이터(702)는 시간 T(또는 T 시구간) 동안 획득된 제1 프레임들을 포함할 수 있고, 제2 모달리티 데이터(704)는 시간 T 동안 획득된 제2 프레임들을 포함할 수 있다. 제1 프레임들은 오디오 프레임들 또는 이미지 프레임들 중 어느 하나를 포함할 수 있고, 제2 프레임들은 오디오 프레임들 또는 이미지 프레임들 중 다른 하나를 포함할 수 있다. 오디오 프레임들은 화자의 음성과 연관된 것일 수 있고, 이미지 프레임들은 화자의 입술 이미지와 연관된 것일 수 있다.According to one embodiment, first modality data (702) and second modality data (704) may be input to a modality frame selection module (706). The first modality data (702) and the second modality data (704) may be different types of data and may be acquired during substantially the same time period. The first modality data (702) may include first frames acquired during time T (or time period T), and the second modality data (704) may include second frames acquired during time T. The first frames may include either audio frames or image frames, and the second frames may include the other of the audio frames or image frames. The audio frames may be associated with a speaker's voice, and the image frames may be associated with an image of the speaker's lips.
일 실시예에 따르면, 모달리티 프레임 선택 모듈(706)은 제1 모달리티 데이터(702)에 포함된 제1 프레임들과 제2 모달리티 데이터(704)에 포함된 제2 프레임들의 개수를 기반으로, 소스(source) 프레임들(710)과 타겟(target) 프레임들(708)을 결정할 수 있다.According to one embodiment, the modality frame selection module (706) can determine source frames (710) and target frames (708) based on the number of first frames included in the first modality data (702) and second frames included in the second modality data (704).
일 실시예에 따르면, 모달리티 프레임 선택 모듈(706)은 제1 프레임들의 개수에 대응하는 제1 시간과 상기 제2 프레임들의 개수에 대응하는 제2 시간이 실질적으로 동일한지 여부를 판단할 수 있다. 모달리티 프레임 선택 모듈(706)은 제1 시간과 제2 시간이 실질적으로 동일하지 않은 것에 기반하여, 적어도 하나의 누락된 프레임을 식별할 수 있다. 적어도 하나의 누락된 프레임은 제1 프레임들 또는 제2 프레임들 중 더 짧은 시간에 대응하는 프레임들과 연관된 것일 수 있다. In one embodiment, the modality frame selection module (706) may determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same. Based on the fact that the first time and the second time are not substantially the same, the modality frame selection module (706) may identify at least one missing frame. The at least one missing frame may be associated with frames corresponding to a shorter time among the first frames or the second frames.
일 실시예에 따르면, 적어도 하나의 누락된 프레임은 시간 T에 기반한 타임 라인에 따른 제1 프레임들과 제2 프레임들 간의 정렬(alignment) 및/또는 동기화에 의해 식별될 수 있다. 예를 들어, 모달리티 프레임 선택 모듈(706)은 타임 라인에 따라 제1 프레임들과 제2 프레임들을 정렬하고, 정렬된 제1 프레임들과 제2 프레임들을 동기화할 수 있다. 모달리티 프레임 선택 모듈(706)은 동기화 결과, 제1 프레임들 또는 제2 프레임들 중 동기화되지 못한 적어도 하나의 프레임이 식별되면, 동기화되지 못한 적어도 하나의 프레임을 기반으로 적어도 하나의 누락된 프레임을 식별할 수 있다. According to one embodiment, at least one missing frame can be identified by alignment and/or synchronization between the first frames and the second frames along a timeline based on time T. For example, the modality frame selection module (706) can align the first frames and the second frames along the timeline and synchronize the aligned first frames and the second frames. If, as a result of the synchronization, at least one unsynchronized frame among the first frames or the second frames is identified, the modality frame selection module (706) can identify the at least one missing frame based on the at least one unsynchronized frame.
일 실시예에 따르면, 모달리티 프레임 선택 모듈(706)은 제1 프레임들의 개수와 연관된 제1 프레임 수신 비율과 제2 프레임들의 개수와 연관된 제2 프레임 수신 비율이 실질적으로 동일한지 여부를 판단할 수 있다. 제1 프레임 수신 비율과 제2 프레임 수신 비율은 초당 수신되는 이미지 프레임 수(예: fps(frames per second)) 또는 초당 수신되는 오디오 프레임 수(예: 샘플링 레이트)를 기반으로 결정될 수 있다. According to one embodiment, the modality frame selection module (706) can determine whether a first frame reception rate associated with the number of first frames and a second frame reception rate associated with the number of second frames are substantially the same. The first frame reception rate and the second frame reception rate can be determined based on the number of image frames received per second (e.g., frames per second (fps)) or the number of audio frames received per second (e.g., sampling rate).
일 실시예에 따르면, 모달리티 프레임 선택 모듈(706)은 제1 프레임들이 이미지 프레임들이고, 초당 수신되는 이미지 프레임 수가 30개인 것에 기반하여(예: 30 fps), 10초(T=10) 동안 획득 되어야 할 총 프레임 수(예: 300)와 실제 획득된 이미지 프레임 수(또는 입술 이미지가 포함된 이미지 프레임 수)(예: 240)의 비율(예: 80%)을 제1 프레임 수신 비율로서 계산할 수 있다. According to one embodiment, the modality frame selection module (706) may calculate the first frame reception ratio as a ratio (e.g., 80%) of the total number of frames to be acquired for 10 seconds (T=10) (e.g., 300) and the number of image frames actually acquired (or the number of image frames including lip images) (e.g., 240), based on the fact that the first frames are image frames and the number of image frames received per second is 30 (e.g., 30 fps).
일 실시예에 따르면, 모달리티 프레임 선택 모듈(706)은 제2 프레임들이 오디오 프레임들이고, 초당 수신되는 오디오 프레임 수가 100개인 것에 기반하여(예: 샘플링 레이트 100Hz), 10초(T=10) 동안 획득 되어야 할 총 프레임 수(예: 1000)와 실제 획득된 이미지 프레임 수(또는 화자의 음성이 포함된 이미지 프레임 수)(예: 990)의 비율(예: 99%)을 제2 프레임 수신 비율로서 계산할 수 있다. According to one embodiment, the modality frame selection module (706) may calculate the second frame reception ratio as a ratio (e.g., 99%) of the total number of frames to be acquired for 10 seconds (T=10) (e.g., 1000) and the number of image frames (or the number of image frames containing the speaker's voice) actually acquired (e.g., 990) based on the fact that the second frames are audio frames and the number of audio frames received per second is 100 (e.g., sampling rate 100 Hz).
일 실시예에 따르면, 모달리티 프레임 선택 모듈(706)은 제1 프레임 수신 비율과 제2 프레임 수신 비율 중 더 큰 비율에 대응하는 프레임들(예: 제2 프레임들)을 소스 프레임들(710)로 결정하고, 제1 프레임들 및 제2 프레임들 중 더 작은 비율의 프레임들(예: 제1 프레임들)을 타겟 프레임들(708)로 결정할 수 있다. According to one embodiment, the modality frame selection module (706) may determine frames corresponding to a larger ratio of the first frame reception ratio and the second frame reception ratio (e.g., the second frames) as source frames (710), and determine frames corresponding to a smaller ratio of the first frames and the second frames (e.g., the first frames) as target frames (708).
일 실시예에 따르면, 모달리티 프레임 선택 모듈(706)은 소스 프레임들(710) 및 타겟 프레임들(708)을 멀티모달 동기화 모듈(712)로 출력할 수 있다. 멀티모달 동기화 모듈(712)은 제1 인코더(714), 제2 인코더(716), 융합 모듈(718), 제1 디코더(720), 또는 동기화 모델(722)을 포함할 수 있다. According to one embodiment, the modality frame selection module (706) can output source frames (710) and target frames (708) to a multimodal synchronization module (712). The multimodal synchronization module (712) can include a first encoder (714), a second encoder (716), a fusion module (718), a first decoder (720), or a synchronization model (722).
일 실시예에 따르면, 제1 인코더(714)는 타겟 프레임들(708)을 압축하여 제1 임베딩 정보를 생성할 수 있다. 예를 들어, 제1 인코더(714)는 타겟 프레임들(708)로부터 제1 특징(예: 오디오 스펙트로그램과 같은 음향적 특징 또는 입술 움직임이나 모양과 연관된 시각적 특징)을 추출하고, 추출된 제1 특징을 기반으로 제1 임베딩 정보(또는 제1 임베딩 벡터)를 생성할 수 있다.In one embodiment, the first encoder (714) may compress the target frames (708) to generate first embedding information. For example, the first encoder (714) may extract a first feature (e.g., an acoustic feature such as an audio spectrogram or a visual feature associated with lip movement or shape) from the target frames (708) and generate the first embedding information (or first embedding vector) based on the extracted first feature.
일 실시예에 따르면, 제2 인코더(716)는 소스 프레임들(710)을 압축하여 제2 임베딩 정보를 생성할 수 있다. 예를 들어, 제2 인코더(716)는 소스 프레임들(710)로부터 제2 특징(예: 입술 움직임이나 모양과 연관된 시각적 특징 또는 오디오 스펙트로그램과 같은 음향적 특징)을 추출하고, 추출된 제2 특징을 기반으로 제2 임베딩 정보(또는 제2 임베딩 벡터)를 생성할 수 있다.In one embodiment, the second encoder (716) may compress the source frames (710) to generate second embedding information. For example, the second encoder (716) may extract second features (e.g., visual features associated with lip movement or shape, or acoustic features such as an audio spectrogram) from the source frames (710) and generate second embedding information (or second embedding vector) based on the extracted second features.
일 실시예에 따르면, 융합 모듈(718)은 제1 인코더(714)로부터 출력된 제1 임베딩 정보와 제2 인코더(716)로부터 출력된 제2 임베딩 정보를 융합(또는 결합이나 통합)하여 융합된 임베딩 정보(또는 융합된 임베딩 벡터)를 생성할 수 있다. 제1 임베딩 정보는 타겟 프레임들(708)로부터 추출된 제1 특징을 포함할 수 있고, 제2 임베딩 정보는 소스 프레임들(710)로부터 추출된 제2 특징을 포함할 수 있다. 융합된 임베딩 정보는 제1 특징과 제2 특징의 융합된 결과를 포함할 수 있다.According to one embodiment, the fusion module (718) can fuse (or combine or integrate) the first embedding information output from the first encoder (714) and the second embedding information output from the second encoder (716) to generate fused embedding information (or fused embedding vector). The first embedding information can include the first feature extracted from the target frames (708), and the second embedding information can include the second feature extracted from the source frames (710). The fused embedding information can include the fused result of the first feature and the second feature.
일 실시예에 따르면, 제1 디코더(720)는 손실 함수 또는 복원 모델을 기반으로, 융합된 임베딩 정보를 이용하여 적어도 하나의 누락된 프레임을 유추하여복원할 수 있다. 예를 들어, 제1 디코더(720)는 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성하거나, 시간 축에서 적어도 하나의 누락된 프레임의 위치에 포함될 적어도 하나의 프레임을 생성할 수 있다. 제1 디코더(720)는 적어도 하나의 생성된 프레임을 포함하는 타겟 프레임들(724)을 업데이트된 타겟 프레임들로서 출력할 수 있다. According to one embodiment, the first decoder (720) may infer and restore at least one missing frame using the fused embedding information based on a loss function or a restoration model. For example, the first decoder (720) may generate at least one frame corresponding to the at least one missing frame, or generate at least one frame to be included in the position of the at least one missing frame on the time axis. The first decoder (720) may output target frames (724) including the at least one generated frame as updated target frames.
일 실시예에 따르면, 동기화 모델(722)은 소스 프레임들(710)과 업데이트된 타겟 프레임들(724) 간의 프레임 동기화를 위해 이용될 수 있다. 소스 프레임들(710)과 업데이트된 타겟 프레임들(724)은 동기화 모델(722)을 통해 동기화된 후, 설정된 시간 길이의 시퀀스로 생성될 수 있다. 예를 들어, 소스 프레임들(710)은 시간 T에 대응하는 프레임들을 포함하는 제1 시퀀스로 생성될 수 있고, 업데이트된 타겟 프레임들(724)은 시간 T에 대응하는 프레임들을 포함하는 제2 시퀀스로 생성될 수 있다. 제1 시퀀스와 제2 시퀀스는 멀티모달 ASR 모듈(726)로 입력될 수 있다. According to one embodiment, the synchronization model (722) can be used for frame synchronization between source frames (710) and updated target frames (724). The source frames (710) and the updated target frames (724) can be synchronized through the synchronization model (722) and then generated as a sequence of a set time length. For example, the source frames (710) can be generated as a first sequence including frames corresponding to time T, and the updated target frames (724) can be generated as a second sequence including frames corresponding to time T. The first sequence and the second sequence can be input to the multimodal ASR module (726).
일 실시예에 따르면, 멀티모달 ASR 모듈(726)은 멀티모달 ASR 모델을 포함할 수 있다. 멀티모달 ASR 모듈(726)은 멀티모달 ASR 모델을 기반으로, 제1 시퀀스와 제2 시퀀스를 기반으로 음성 인식을 수행할 수 있다. 일 실시예에 따르면, 멀티모달 ASR 모듈(726)은 언어 모델을 포함하거나 언어 모델과 연결될 수 있다. 언어 모델은 멀티모달 ASR 모듈(726)의 출력 결과를 언어적으로 수정하거나 보완하여 문맥에 맞는 자연스러운 텍스트를 출력할 수 있다. In one embodiment, the multimodal ASR module (726) may include a multimodal ASR model. The multimodal ASR module (726) may perform speech recognition based on the first sequence and the second sequence based on the multimodal ASR model. In one embodiment, the multimodal ASR module (726) may include or be connected to a language model. The language model may linguistically modify or supplement the output result of the multimodal ASR module (726) to output natural text appropriate to the context.
일 실시예에 따르면, 멀티모달 음성 인식 장치(701)는 전자 장치(301)에 포함될 수 있다. 멀티모달 음성 인식 장치(701)가 전자 장치(301)에 포함되는 것에 기반하여, 전술한 동작들은 온 디바이스(on device) 동작으로 수행될 수 있다. According to one embodiment, the multimodal speech recognition device (701) may be included in the electronic device (301). Based on the inclusion of the multimodal speech recognition device (701) in the electronic device (301), the above-described operations may be performed as on-device operations.
일 실시예에 따르면, 멀티모달 음성 인식 장치(701)에 포함된 적어도 하나의 구성 요소는 전자 장치(301)에 포함되거나 서버에 포함될 수 있다. 예를 들어, 모달리티 프레임 선택 모듈(706)은 전자 장치(301)에 포함되고, 멀티모달 동기화 모듈(712) 및/또는 멀티모달 ASR 모듈(726)은 서버에 포함될 수 있다. 예를 들어, 모달리티 프레임 선택 모듈(706) 및/또는 멀티모달 동기화 모듈(712)은 전자 장치(301)에 포함되고, 멀티모달 ASR 모듈(726)은 서버에 포함될 수 있다. 각 구성 요소의 동작은 전자 장치(301)와 서버 간에 통신이 이루어진다는 것을 제외하고, 앞서 설명한 바와 실질적으로 동일하게 수행될 수 있다.According to one embodiment, at least one component included in the multimodal speech recognition device (701) may be included in the electronic device (301) or may be included in the server. For example, the modality frame selection module (706) may be included in the electronic device (301), and the multimodal synchronization module (712) and/or the multimodal ASR module (726) may be included in the server. For example, the modality frame selection module (706) and/or the multimodal synchronization module (712) may be included in the electronic device (301), and the multimodal ASR module (726) may be included in the server. The operation of each component may be performed substantially the same as described above, except that communication is performed between the electronic device (301) and the server.
도 8a는 일 실시예에 따른 이미지 프레임 복원을 위한 멀티모달 동기화 모듈의 학습 동작을 설명하기 위한 도면이다.FIG. 8a is a diagram illustrating a learning operation of a multimodal synchronization module for image frame restoration according to one embodiment.
도 8a를 참조하면, 비주얼 데이터에 포함된 이미지 프레임들이 타겟 프레임들(802)로 결정되고, 오디오 데이터에 포함된 오디오 프레임들이 소스 프레임들(804)로 결정될 수 있다. 멀티모달 동기화 모듈(712)에서는 오디오 프레임들을 기반으로 적어도 하나의 누락된 이미지 프레임을 복원하기 위한 학습(예: 적어도 하나의 누락된 이미지 프레임에 대응하는 적어도 하나의 이미지 프레임을 생성하기 위한 학습, 또는 시간 축에서 적어도 하나의 누락된 이미지 프레임의 위치에 포함될 적어도 하나의 이미지 프레임을 생성하기 위한 학습)이 수행될 수 있다. Referring to FIG. 8A, image frames included in visual data may be determined as target frames (802), and audio frames included in audio data may be determined as source frames (804). In the multimodal synchronization module (712), learning to restore at least one missing image frame based on audio frames (e.g., learning to generate at least one image frame corresponding to at least one missing image frame, or learning to generate at least one image frame to be included in the position of at least one missing image frame on the time axis) may be performed.
일 실시예에 따르면, 타겟 프레임들(802)은 시간 T 동안의 이미지 프레임들(예: {a1,…,am})을 포함할 수 있고, 소스 프레임들(804)은 시간 T 동안의 오디오 프레임들(예: {l1,…,ln})을 포함할 수 있다. 이미지 프레임들의 개수는 m개이고, 오디오 프레임들의 개수는 n개일 수 있다. m과 n은 0이상의 자연수일 수 있고, 동일하거나 상이할 수 있다.According to one embodiment, the target frames (802) may include image frames (e.g., {a 1 ,…,a m }) for a time T, and the source frames (804) may include audio frames (e.g., {l 1 ,…,l n }) for a time T. The number of image frames may be m, and the number of audio frames may be n. m and n may be natural numbers greater than or equal to 0, and may be the same or different.
일 실시예에 따르면, m과 n은 초당 프레임 수신 수(예: fps 또는 샘플링 레이트)를 기반으로 시간 T 동안 획득될 수 있는 프레임 수에 대응할 수 있다. 예를 들어, fps가 30이고 샘플링 레이트가 100인 경우, 10초 동안(예: T=10)의 m과 n은 각각 300과 1000일 수 있다. In one embodiment, m and n may correspond to the number of frames that can be acquired during a time period T based on the number of frames received per second (e.g., fps or sampling rate). For example, if fps is 30 and the sampling rate is 100, m and n for 10 seconds (e.g., T=10) may be 300 and 1000, respectively.
일 실시예에 따르면, 오디오 프레임들을 기반으로 적어도 하나의 누락된 이미지 프레임을 복원하기 위한 학습을 위해, 입력 데이터로서 이미지 프레임들과 오디오 프레임들이 이용될 수 있다. 이미지 프레임들 중 적어도 하나는 누락된 이미지 프레임으로 설정될 수 있고, 오디오 프레임들은 적어도 하나의 누락된 오디오 프레임을 포함하지 않는 것으로 설정될 수 있다. 적어도 하나의 누락된 이미지 프레임에 대한 정보는 특정 정보나 값(예: 0)을 포함하도록 설정되어 학습을 위해 이용될 수 있다. According to one embodiment, image frames and audio frames may be used as input data for learning to restore at least one missing image frame based on audio frames. At least one of the image frames may be set as a missing image frame, and the audio frames may be set not to include at least one missing audio frame. Information about the at least one missing image frame may be set to include specific information or a value (e.g., 0) and used for learning.
일 실시예에 따르면, 적어도 하나의 누락된 이미지 프레임을 복원하기 위한 학습을 위해, 출력 데이터인 이미지 참조 프레임들(또는 이미지 정답 프레임들)(810)이 이용될 수 있다. 이미지 참조 프레임들(810)은 적어도 하나의 누락된 이미지 프레임을 포함하지 않은 m개의 이미지 프레임들(또는 m개의 정상 이미지 프레임들)을 포함할 수 있다.According to one embodiment, for learning to restore at least one missing image frame, image reference frames (or image correct frames) (810), which are output data, may be used. The image reference frames (810) may include m image frames (or m normal image frames) that do not include at least one missing image frame.
일 실시예에 따르면, 입력 데이터(예: 이미지 프레임들과 오디오 프레임들)와 출력 데이터(예: 이미지 참조 프레임들(810))를 기반으로 멀티모달 동기화 모듈(712)에서 다음과 같은 학습이 수행될 수 있다.According to one embodiment, the following learning may be performed in the multimodal synchronization module (712) based on input data (e.g., image frames and audio frames) and output data (e.g., image reference frames (810)).
일 실시예에 따르면, 타겟 프레임들(802)인 이미지 프레임들은 제1 인코더(714)로 입력될 수 있다. 제1 인코더(714)는 이미지 프레임들을 압축하여 제1 특징(예: 입술의 움직임이나 입술 모양과 연관된 시각적 특징)을 추출할 수 있다. 제1 인코더(714)는 추출된 제1 특징을 기반으로 제1 임베딩 정보를 생성할 수 있다.According to one embodiment, image frames, which are target frames (802), may be input to a first encoder (714). The first encoder (714) may compress the image frames to extract a first feature (e.g., a visual feature associated with lip movement or lip shape). The first encoder (714) may generate first embedding information based on the extracted first feature.
일 실시예에 따르면, 소스 프레임들(804)인 오디오 프레임들은 제2 인코더(716)로 입력될 수 있다. 제2 인코더(716)는 오디오 프레임들을 압축하여 제2 특징(예: 오디오 스펙트로그램과 같은 음향적 특징)을 추출할 수 있다. 제2 인코더(716)는 추출된 제2 특징을 기반으로 제2 임베딩 정보를 생성할 수 있다.According to one embodiment, audio frames, which are source frames (804), may be input to a second encoder (716). The second encoder (716) may compress the audio frames to extract second features (e.g., acoustic features such as an audio spectrogram). The second encoder (716) may generate second embedding information based on the extracted second features.
일 실시예에 따르면, 제1 인코더(714)에 의해 생성된 제1 임베딩 정보와 제2 인코더(716)에 의해 생성된 제2 임베딩 정보는 융합 모듈(718)에 의해 융합될 수 있다. According to one embodiment, the first embedding information generated by the first encoder (714) and the second embedding information generated by the second encoder (716) can be fused by the fusion module (718).
일 실시예에 따르면, 융합 모듈(718)은 제1 임베딩 정보에 포함된 제1 특징과 및 제2 임베딩 정보에 포함된 제2 특징을 융합하기 위한 집중(attention) 모듈들로서 복수 개의 융합 컨포머(fusion conformer)들을 포함할 수 있다. 예를 들어, 융합 모듈(718)은 제1 융합 컨포머(717-1), 제2 융합 컨포머(717-2), 제3 융합 컨포머(717-3), 제4 융합 컨포머(717-4), 또는 제5 융합 컨포머(717-5)를 포함할 수 있다. According to one embodiment, the fusion module (718) may include a plurality of fusion conformers as attention modules for fusion of a first feature included in the first embedding information and a second feature included in the second embedding information. For example, the fusion module (718) may include a first fusion conformer (717-1), a second fusion conformer (717-2), a third fusion conformer (717-3), a fourth fusion conformer (717-4), or a fifth fusion conformer (717-5).
일 실시예에 따르면, 복수 개의 융합 컨포머들은 각각의 이미지 프레임과 각각의 오디오 프레임의 융합과 연관된 계층적이거나 단계적인 학습을 수행할 수 있다. 예를 들어, 제1 융합 컨포머(717-1)는 입력된 제1 임베딩 정보 및 입력된 제2 임베딩 정보를 기반으로 제1 특징과 제2 특징의 융합을 학습하고, 제2 융합 컨포머(717-2)는 제1 융합 컨포머(717-1)의 학습 결과를 기반으로 더 세밀한 학습을 수행할 수 있다. 이와 유사하게, 제3 융합 컨포머(717-3), 제4 융합 컨포머(717-4), 또는 제5 융합 컨포머(717-5)는 계층적 또는 단계적으로 이전의 학습 결과에 기반하여 좀 더 세밀한 학습을 수행할 수 있다.In one embodiment, a plurality of fusion conformers may perform hierarchical or step-wise learning associated with the fusion of each image frame and each audio frame. For example, a first fusion conformer (717-1) may learn the fusion of the first feature and the second feature based on the input first embedding information and the input second embedding information, and a second fusion conformer (717-2) may perform more detailed learning based on the learning result of the first fusion conformer (717-1). Similarly, a third fusion conformer (717-3), a fourth fusion conformer (717-4), or a fifth fusion conformer (717-5) may perform more detailed learning based on the previous learning result in a hierarchical or step-wise manner.
일 실시예에 따르면, 융합 모듈(718)은 완전 연결 계층(fully connected layer)들로서 복수 개의 FC들을 포함할 수 있다. 예를 들어, 융합 모듈(718)은 제1 FC(719-1), 제2 FC(719-2), 또는 제3 FC(719-3)를 포함할 수 있다. 제1 FC(719-1), 제2 FC(719-2), 또는 제3 FC(719-3)는 서로 다른 가중치(weight) 값을 기반으로 복수 개의 융합 컨포머들 중 적어도 하나(예: 제3 융합 컨포머(717-3), 제4 융합 컨포머(717-4), 또는 제5 융합 컨포머(717-5) 중 적어도 하나)의 출력을 변환함으로써 융합 결과(또는 융합된 특징)의 정확도를 높일 수 있다. 제1 FC(719-1), 제2 FC(719-2), 또는 제3 FC(719-3) 각각의 가중치값은 융합 결과에 의해 예측된 이미지 데이터와 출력 데이터(예: 이미지 참조 프레임들(810)) 간의 차이를 줄이기 위해 결정되거나 조정될 수 있다.According to one embodiment, the fusion module (718) may include a plurality of FCs as fully connected layers. For example, the fusion module (718) may include a first FC (719-1), a second FC (719-2), or a third FC (719-3). The first FC (719-1), the second FC (719-2), or the third FC (719-3) may increase the accuracy of the fusion result (or fused feature) by transforming the output of at least one of the plurality of fusion conformers (e.g., at least one of the third fusion conformer (717-3), the fourth fusion conformer (717-4), or the fifth fusion conformer (717-5)) based on different weight values. The weight values of each of the first FC (719-1), the second FC (719-2), or the third FC (719-3) may be determined or adjusted to reduce the difference between the image data predicted by the fusion result and the output data (e.g., image reference frames (810)).
일 실시예에 따르면, 융합 모듈(718)로부터 출력된 융합 결과는 제1 디코더(720)로 입력될 수 있다. 제1 디코더(720)는 융합 결과를 기반으로 적어도 하나의 입술 이미지를 예측하고, 예측 결과를 기반으로 적어도 하나의 누락된 이미지 프레임을 복원할 수 있다. According to one embodiment, the fusion result output from the fusion module (718) may be input to the first decoder (720). The first decoder (720) may predict at least one lip image based on the fusion result, and may restore at least one missing image frame based on the prediction result.
일 실시예에 따르면, 제1 디코더(720)는 예측 및/또는 복원 모델(808)을 기반으로 적어도 하나의 입술 이미지를 예측하고, 적어도 하나의 예측된 입술 이미지를 포함하는 적어도 하나의 이미지 프레임을 생성할 수 있다. 일 실시예에 따르면, 적어도 하나의 생성된 이미지 프레임은 적어도 하나의 누락된 이미지 프레임의 복원 결과로서, 적어도 하나의 누락된 이미지 프레임에 대응하거나, 시간 축에서 적어도 하나의 누락된 이미지 프레임의 위치에 포함될 수 있다.According to one embodiment, the first decoder (720) can predict at least one lip image based on the prediction and/or reconstruction model (808) and generate at least one image frame including the at least one predicted lip image. According to one embodiment, the at least one generated image frame can be a result of reconstruction of at least one missing image frame, and can correspond to the at least one missing image frame or be included at a position of the at least one missing image frame on the time axis.
일 실시예에 따르면, 예측 및/또는 복원 모델(808)과 관련하여 이미지 손실 함수(806)가 이용될 수 있다. 이미지 손실 함수(806)는 적어도 하나의 생성된 이미지 프레임에 포함된 입술 이미지와 이미지 참조 프레임들(810)에 포함된 적어도 하나의 입술 이미지 간의 차이를 계산하기 위해 이용될 수 있다. 예측 및/또는 복원 모델(808)은 이미지 손실 함수(806)의 출력값이 최소화되도록 학습된 것일 수 있다. In one embodiment, an image loss function (806) may be utilized in connection with the prediction and/or reconstruction model (808). The image loss function (806) may be utilized to compute a difference between a lip image included in at least one generated image frame and at least one lip image included in image reference frames (810). The prediction and/or reconstruction model (808) may be trained such that the output value of the image loss function (806) is minimized.
일 실시예에 따르면, 제1 디코더(720)는 적어도 하나의 생성된 이미지 프레임이 포함되도록 이미지 프레임들을 업데이트할 수 있다. 업데이트된 이미지 프레임들은 동기화 모델(722)을 기반으로 오디오 프레임들과 동기화될 수 있다. 일 실시예에 따르면, 동기화는 동기화와 연관된 손실 함수(Lsync)의 출력값이 최소화되도록, 또는 입력 데이터와 출력 데이터 간 시간적 특징이 대응되도록 수행될 수 있다. According to one embodiment, the first decoder (720) can update the image frames to include at least one generated image frame. The updated image frames can be synchronized with the audio frames based on a synchronization model (722). According to one embodiment, the synchronization can be performed such that the output value of a loss function (L sync ) associated with the synchronization is minimized, or such that temporal characteristics between input data and output data correspond.
도 8b는 일 실시예에 따른 오디오 프레임 복원을 위한 멀티모달 동기화 모듈의 학습 동작을 설명하기 위한 도면이다.FIG. 8b is a diagram illustrating a learning operation of a multimodal synchronization module for audio frame restoration according to one embodiment.
도 8b를 참조하면, 오디오 데이터에 포함된 오디오 프레임들이 타겟 프레임들(832)로 결정되고, 비주얼 데이터에 포함된 이미지 프레임들이 소스 프레임들(834)로 결정될 수 있다. 멀티모달 동기화 모듈(712)에서는 이미지 프레임들을 기반으로 적어도 하나의 누락된 오디오 프레임을 복원하기 위한 학습(예: 적어도 하나의 누락된 오디오 프레임에 대응하는 적어도 하나의 오디오 프레임을 생성하기 위한 학습, 또는 시간 축에서 적어도 하나의 누락된 오디오 프레임의 위치에 포함될 적어도 하나의 오디오 프레임을 생성하기 위한 학습)이 수행될 수 있다. Referring to FIG. 8B, audio frames included in audio data may be determined as target frames (832), and image frames included in visual data may be determined as source frames (834). In the multimodal synchronization module (712), learning to restore at least one missing audio frame based on the image frames (e.g., learning to generate at least one audio frame corresponding to at least one missing audio frame, or learning to generate at least one audio frame to be included in the position of at least one missing audio frame on the time axis) may be performed.
일 실시예에 따르면, 타겟 프레임들(832)은 시간 T 동안의 오디오 프레임들(예: {l1,…,ln})을 포함할 수 있고, 소스 프레임들(834)은 시간 T 동안의 이미지 프레임들(예: {a1,…,am})을 포함할 수 있다. According to one embodiment, the target frames (832) may include audio frames (e.g., {l 1 ,…,l n }) for a time T, and the source frames (834) may include image frames (e.g., {a 1 ,…,a m }) for a time T.
일 실시예에 따르면, 이미지 프레임들을 기반으로 적어도 하나의 누락된 오디오 프레임을 복원하기 위한 학습을 위해, 입력 데이터로서 오디오 프레임들과 이미지 프레임들이 이용될 수 있다. 오디오 프레임들 중 적어도 하나는 누락된 오디오 프레임으로 설정될 수 있고, 이미지 프레임들은 적어도 하나의 누락된 이미지 프레임을 포함하지 않는 것으로 설정될 수 있다. 적어도 하나의 누락된 오디오 프레임에 대한 정보는 특정 정보나 값(예: 0)을 포함하도록 설정되어 학습을 위해 이용될 수 있다. According to one embodiment, audio frames and image frames may be used as input data for learning to restore at least one missing audio frame based on image frames. At least one of the audio frames may be set as a missing audio frame, and the image frames may be set not to include at least one missing image frame. Information about the at least one missing audio frame may be set to include specific information or a value (e.g., 0) and used for learning.
일 실시예에 따르면, 적어도 하나의 누락된 오디오 프레임을 복원하기 위한 학습을 위해, 출력 데이터인 오디오 참조 프레임들(또는 오디오 정답 프레임들)(840)이 이용될 수 있다. 오디오 참조 프레임들(840)은 적어도 하나의 누락된 오디오 프레임을 포함하지 않은 n개의 오디오 프레임들(또는 n개의 정상 오디오 프레임들)일 수 있다.According to one embodiment, for learning to restore at least one missing audio frame, audio reference frames (or audio correct frames) (840), which are output data, may be used. The audio reference frames (840) may be n audio frames (or n normal audio frames) that do not include at least one missing audio frame.
일 실시예에 따르면, 입력 데이터(예: 이미지 프레임들과 오디오 프레임들)와 출력 데이터(예: 오디오 참조 프레임들(840))를 기반으로 멀티모달 동기화 모듈(712)에서 다음과 같은 학습이 수행될 수 있다.According to one embodiment, the following learning may be performed in the multimodal synchronization module (712) based on input data (e.g., image frames and audio frames) and output data (e.g., audio reference frames (840)).
일 실시예에 따르면, 타겟 프레임들(832)인 오디오 프레임들은 제1 인코더(714)로 입력될 수 있다. 제1 인코더(714)는 오디오 프레임들을 압축하여 제1 특징(예: 오디오 스펙트로그램과 같은 음향적 특징)을 추출할 수 있다. 제1 인코더(714)는 추출된 제1 특징을 기반으로 제1 임베딩 정보를 생성할 수 있다.According to one embodiment, audio frames, which are target frames (832), may be input to a first encoder (714). The first encoder (714) may compress the audio frames to extract a first feature (e.g., an acoustic feature such as an audio spectrogram). The first encoder (714) may generate first embedding information based on the extracted first feature.
일 실시예에 따르면, 소스 프레임들(834)인 이미지 프레임들은 제2 인코더(716)로 입력될 수 있다. 제2 인코더(716)는 이미지 프레임들을 압축하여 제2 특징(예: 입술의 움직임이나 입술 모양과 연관된 시각적 특징)을 추출할 수 있다. 제2 인코더(716)는 추출된 제2 특징을 기반으로 제2 임베딩 정보를 생성할 수 있다.According to one embodiment, image frames, which are source frames (834), may be input to a second encoder (716). The second encoder (716) may compress the image frames to extract second features (e.g., visual features associated with lip movement or lip shape). The second encoder (716) may generate second embedding information based on the extracted second features.
일 실시예에 따르면, 제1 인코더(714)에 의해 생성된 제1 임베딩 정보와 제2 인코더(716)에 의해 생성된 제2 임베딩 정보는 융합 모듈(718)에 의해 융합될 수 있다. According to one embodiment, the first embedding information generated by the first encoder (714) and the second embedding information generated by the second encoder (716) can be fused by the fusion module (718).
일 실시예에 따르면, 융합 모듈(718)에 포함된 복수 개의 융합 컨포머들은 각각의 오디오 프레임과 각각의 이미지 프레임의 융합과 연관된 계층적이거나 단계적인 학습을 수행할 수 있다. 융합 모듈(718)에 포함된 제1 FC(719-1), 제2 FC(719-2), 또는 제3 FC(719-3)는 서로 다른 가중치 값을 기반으로 복수 개의 융합 컨포머들 중 적어도 하나(예: 제3 융합 컨포머(717-3), 제4 융합 컨포머(717-4), 또는 제5 융합 컨포머(717-5) 중 적어도 하나)의 출력을 변환함으로써 융합 결과(또는 융합된 특징)의 정확도를 높일 수 있다. 제1 FC(719-1), 제2 FC(719-2), 또는 제3 FC(719-3) 각각의 가중치값은 융합 결과에 의해 예측된 오디오 데이터와 출력 데이터(예: 오디오 참조 프레임들(840)) 간의 차이를 줄이기 위해 결정되거나 조정될 수 있다.According to one embodiment, a plurality of fusion conformers included in the fusion module (718) can perform hierarchical or step-by-step learning associated with the fusion of each audio frame and each image frame. The first FC (719-1), the second FC (719-2), or the third FC (719-3) included in the fusion module (718) can increase the accuracy of the fusion result (or fused feature) by transforming the output of at least one of the plurality of fusion conformers (e.g., at least one of the third fusion conformer (717-3), the fourth fusion conformer (717-4), or the fifth fusion conformer (717-5)) based on different weight values. The weight values of each of the first FC (719-1), the second FC (719-2), or the third FC (719-3) can be determined or adjusted to reduce a difference between audio data predicted by the fusion result and output data (e.g., audio reference frames (840)).
일 실시예에 따르면, 융합 모듈(718)로부터 출력된 융합 결과는 제1 디코더(720)로 입력될 수 있다. 제1 디코더(720)는 융합 결과를 기반으로 음성과 연관된 적어도 하나의 오디오 신호(예: 오디오 스펙트로그램)를 예측하고, 예측 결과를 기반으로 적어도 하나의 누락된 오디오 프레임을 복원할 수 있다. According to one embodiment, the fusion result output from the fusion module (718) may be input to the first decoder (720). The first decoder (720) may predict at least one audio signal (e.g., audio spectrogram) associated with speech based on the fusion result, and may restore at least one missing audio frame based on the prediction result.
일 실시예에 따르면, 제1 디코더(720)는 예측 및/또는 복원 모델(838)을 기반으로 적어도 하나의 오디오 신호를 예측하고, 적어도 하나의 예측된 오디오 신호를 포함하는 적어도 하나의 오디오 프레임을 생성할 수 있다. 일 실시예에 따르면, 적어도 하나의 생성된 오디오 프레임은 적어도 하나의 누락된 오디오 프레임의 복원 결과로서, 적어도 하나의 누락된 오디오 프레임에 대응하거나, 시간 축에서 적어도 하나의 누락된 오디오 프레임의 위치에 포함될 수 있다.According to one embodiment, the first decoder (720) can predict at least one audio signal based on the prediction and/or reconstruction model (838) and generate at least one audio frame including the at least one predicted audio signal. According to one embodiment, the at least one generated audio frame can be a result of reconstruction of at least one missing audio frame, and can correspond to the at least one missing audio frame or be included at a position of the at least one missing audio frame on the time axis.
일 실시예에 따르면, 예측 및/또는 복원 모델(838)과 관련하여 오디오 손실 함수(836)가 이용될 수 있다. 오디오 손실 함수(836)는 적어도 하나의 생성된 오디오 프레임에 포함된 오디오 신호와 출력 데이터인 오디오 참조 프레임들(840)에 포함된 오디오 신호 간의 차이를 계산하기 위해 이용될 수 있다. 예측 및/또는 복원 모델(838)은 오디오 손실 함수(836)의 출력값이 최소화되도록 학습된 것일 수 있다. In one embodiment, an audio loss function (836) may be utilized in connection with a prediction and/or reconstruction model (838). The audio loss function (836) may be utilized to compute a difference between an audio signal included in at least one generated audio frame and an audio signal included in audio reference frames (840) that are output data. The prediction and/or reconstruction model (838) may be trained such that an output value of the audio loss function (836) is minimized.
일 실시예에 따르면, 제1 디코더(720)는 적어도 하나의 생성된 오디오 프레임이 포함되도록 오디오 프레임들을 업데이트할 수 있다. 업데이트된 오디오 프레임들은 동기화 모델(722)을 기반으로 이미지 프레임들과 동기화될 수 있다. 일 실시예에 따르면, 동기화는 동기화와 연관된 손실 함수(loss function)(Lsync)의 출력값이 최소화되도록, 또는 입력 데이터와 출력 데이터 간 시간적 특징이 대응되도록 수행될 수 있다. According to one embodiment, the first decoder (720) can update the audio frames to include at least one generated audio frame. The updated audio frames can be synchronized with the image frames based on a synchronization model (722). According to one embodiment, the synchronization can be performed such that the output value of a loss function (L sync ) associated with the synchronization is minimized, or such that temporal characteristics between input data and output data correspond.
도 9a와 도 9b는 일 실시예에 따른 멀티모달 동기화 모듈이 사용되는 경우와 사용되지 않는 경우의 음성 인식 동작을 비교하기 위한 도면이다.FIGS. 9A and 9B are diagrams for comparing voice recognition operations when a multimodal synchronization module according to one embodiment is used and when it is not used.
도 9a는 일 실시예에 따른 멀티모달 동기화 모듈이 사용되지 않는 경우의 음성 인식 동작을 도시한 도면이다.FIG. 9a is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is not used.
도 9a를 참조하면, 음성 모달리티로서 오디오 데이터(902)가 입력되고, 립 이미지 모달리티로서 비주얼 데이터(904)가 입력될 수 있다. 오디오 데이터(902)와 비주얼 데이터(904)는 실질적으로 동일한 시구간 동안 입력된 것일 수 있고, 각각 적어도 하나의 누락된 프레임을 포함할 수 있다. 적어도 하나의 누락된 프레임은 음성 또는 입술 이미지가 손실된 프레임으로 지시될 수 있다. 일 실시예에 따르면, 비주얼 데이터(904)가 오디오 데이터(902) 대비 더 많은 누락된 프레임을 포함할 수 있다. Referring to FIG. 9A, audio data (902) may be input as a voice modality, and visual data (904) may be input as a lip image modality. The audio data (902) and the visual data (904) may be input during substantially the same time period, and each may include at least one missing frame. The at least one missing frame may be indicated as a frame in which either the voice or the lip image is missing. In one embodiment, the visual data (904) may include more missing frames than the audio data (902).
멀티모달 동기화 모듈(712)이 이용되지 않을 경우, 오디오 데이터(902)와 비주얼 데이터(904)는 멀티모달 ASR 모듈(726)로 입력될 수 있다. 멀티모달 ASR 모듈(726)은 오디오 데이터(902)와 비주얼 데이터(904)를 기반으로 음성 인식 동작을 수행할 수 있다. 그러나, 멀티모달 ASR 모듈(726)은 오디오 데이터(902)와 비주얼 데이터(904)에 각각 누락된 프레임들이 포함됨에 따라 명확하지 않은 음성 인식 결과를 출력할 수 있다. 예를 들어, 멀티모달 ASR 모듈(726)은 음성 인식 결과로서, 일부 내용이 손실된 텍스트 정보(예: 내가 지금 지하철 타…… 다행이다 지금 탔어(908))를 출력할 수 있다. When the multimodal synchronization module (712) is not used, audio data (902) and visual data (904) can be input to the multimodal ASR module (726). The multimodal ASR module (726) can perform a speech recognition operation based on the audio data (902) and the visual data (904). However, the multimodal ASR module (726) may output unclear speech recognition results because each of the audio data (902) and the visual data (904) includes missing frames. For example, the multimodal ASR module (726) may output text information with some content lost as a speech recognition result (e.g., I'm taking the subway now... Thank goodness I'm taking it now (908)).
도 9b는 일 실시예에 따른 멀티모달 동기화 모듈이 사용되는 경우의 음성 인식 동작을 도시한 도면이다.FIG. 9b is a diagram illustrating a voice recognition operation when a multimodal synchronization module according to one embodiment is used.
도 9b를 참조하면, 오디오 데이터(902)와 비주얼 데이터(904)은 멀티모달 동기화 모듈(712)로 입력될 수 있다. 멀티모달 동기화 모듈(712)은 학습된 생성형 AI 모델로서 동작될 수 있으므로, 오디오 데이터(902)와 비주얼 데이터(904) 각각의 누락된 프레임들을 생성(906)할 수 있다.Referring to FIG. 9B, audio data (902) and visual data (904) can be input to a multimodal synchronization module (712). The multimodal synchronization module (712) can operate as a learned generative AI model, and thus can generate (906) missing frames of each of the audio data (902) and visual data (904).
일 실시예에 따르면, 누락된 이미지 프레임들(예: 이미지 프레임 3, 4, 5, 또는 8)과 누락된 오디오 프레임들(예: 오디오 프레임 6 또는 7)은 시간 축에서 대응하지 않을 수 있다. 이에 기반하여, 시간 축에서 누락된 이미지 프레임들의 위치에 포함될 이미지 프레임들은 시간 축에서 대응하는 오디오 프레임들(예: 오디오 프레임 3, 4, 5, 또는 8)을 기반으로 생성될 수 있고, 시간 축에서 누락된 오디오 프레임들의 위치에 포함될 오디오 프레임들은 시간 축에서 대응하는 이미지 프레임들(예: 이미지 프레임 6 또는 7)을 기반으로 생성될 수 있다. In one embodiment, the missing image frames (e.g., image frames 3, 4, 5, or 8) and the missing audio frames (e.g., audio frame 6 or 7) may not correspond in time. Based on this, the image frames to be included in the positions of the missing image frames in time can be generated based on the corresponding audio frames in time (e.g., audio frame 3, 4, 5, or 8), and the audio frames to be included in the positions of the missing audio frames in time can be generated based on the corresponding image frames in time (e.g., image frame 6 or 7).
일 실시예에 따르면, 오디오 데이터(902)는 생성된 오디오 프레임들을 포함하도록 업데이트될 수 있고, 이미지 데이터(904)는 생성된 이미지 프레임들을 포함하도록 업데이트될 수 있다. 업데이트된 오디오 데이터와 업데이트된 이미지 데이터는 멀티모달 ASR 모듈(726)로 입력될 수 있다. In one embodiment, audio data (902) may be updated to include generated audio frames, and image data (904) may be updated to include generated image frames. The updated audio data and the updated image data may be input to the multimodal ASR module (726).
일 실시예에 따르면, 멀티모달 ASR 모듈(726)은 업데이트된 오디오 데이터와 업데이트된 이미지 데이터를 기반으로 음성 인식 동작을 수행할 수 있다. 멀티모달 ASR 모듈(726)은 업데이트된 오디오 데이터와 업데이트된 이미지 데이터를 기반으로 명확한 음성 인식 결과를 출력할 수 있다. 예를 들어, 멀티모달 ASR 모듈(726)은 음성 인식 결과로서, 내용이 손실되지 않은 텍스트 정보(예: 내가 지금 지하철 타고 가고 있어 휴 다행이다 지금 탔어(910))를 출력할 수 있다. According to one embodiment, the multimodal ASR module (726) can perform a speech recognition operation based on updated audio data and updated image data. The multimodal ASR module (726) can output a clear speech recognition result based on the updated audio data and updated image data. For example, the multimodal ASR module (726) can output text information (e.g., "I 'm taking the subway now. Thank goodness I'm on it now (910)") without losing content as the speech recognition result.
도 10은 일 실시예에 따른 멀티모달 ASR 모듈의 학습 동작을 설명하기 위한 도면이다.FIG. 10 is a diagram for explaining the learning operation of a multimodal ASR module according to one embodiment.
도 10을 참조하면, 멀티모달 ASR 모듈(726)은 컨포머 인코더(1008) 및 디코더(1010)를 포함할 수 있다. Referring to FIG. 10, the multimodal ASR module (726) may include a conformal encoder (1008) and a decoder (1010).
일 실시예에 따르면, 멀티모달 ASR 모듈(726)에는 오디오 데이터와 비주얼 데이터가 시퀀스 형태로 입력될 수 있다. 시퀀스는 설정된 개수 또는 설정된 시간에 대응하는 프레임들이 순차적으로 배열되어 생성된 것일 수 있다. 일 실시예에 따르면, 오디오 프레임들을 포함하는 오디오 시퀀스(1002)와 이미지 프레임들을 포함하는 비주얼 시퀀스(1004)가 멀티모달 ASR 모듈(726)에 입력될 수 있다.According to one embodiment, audio data and visual data may be input to the multimodal ASR module (726) in the form of a sequence. The sequence may be generated by sequentially arranging frames corresponding to a set number or a set time. According to one embodiment, an audio sequence (1002) including audio frames and a visual sequence (1004) including image frames may be input to the multimodal ASR module (726).
일 실시예에 따르면, 오디오 시퀀스(1002)와 비주얼 시퀀스(1004)는 컨포머 인코더(1008)를 통해 임베딩될 수 있다. 예를 들어, 인코더(1008)는 컨볼루션 신경망(convolutional neural networks: CNN) 및/또는 ResNet(residual network)과 같은 신경망을 기반으로 오디오 시퀀스(1002)와 비주얼 시퀀스(1004) 각각을 저차원의 데이터로 변환하고, 변환된 데이터로부터 특징을 추출할 수 있다.According to one embodiment, the audio sequence (1002) and the visual sequence (1004) may be embedded through a conformer encoder (1008). For example, the encoder (1008) may convert each of the audio sequence (1002) and the visual sequence (1004) into low-dimensional data based on a neural network such as a convolutional neural network (CNN) and/or a residual network (ResNet), and may extract features from the converted data.
일 실시예에 따르면, 컨포머 인코더(1008)는 오디오 시퀀스(1002)와 비주얼 시퀀스(1004) 각각에서 추출된 특징을 융합(또는 결합이나 통합)하는 오디오-비주얼 융합 동작(1006)을 수행할 수 있다. 컨포머 인코더(1008)는 오디오-비주얼 융합 동작(1006)에 의해 융합된 특징을 디코더(1010)로 출력할 수 있다.According to one embodiment, the conformer encoder (1008) can perform an audio-visual fusion operation (1006) that fuses (or combines or integrates) features extracted from each of an audio sequence (1002) and a visual sequence (1004). The conformer encoder (1008) can output the features fused by the audio-visual fusion operation (1006) to the decoder (1010).
일 실시예에 따르면, 디코더(1010)는 융합된 특징을 기반으로 텍스트(예: 안녕 나 도서관이야)를 예측하여 출력할 수 있다. 일 실시예에 따르면, 디코더(1010)는 텍스트의 예측 또는 출력을 적어도 하나의 토큰을 기반으로 수행할 수 있다. 일 실시예에 따르면, 디코더(1010)는 문장의 시작을 지시하는 시작 토큰(예: <s>)을 기반으로 텍스트의 예측 또는 출력 동작을 시작할 수 있다. 일 실시예에 따르면, 디코더(101)는 문장의 끝이 예측되면 텍스트의 예측 또는 동작을 종료하고, 문장의 끝을 지시하는 종료 토큰(예: </s>)을 생성할 수 있다. 예를 들어, 디코더(1010)는 “<s>안녕 나 도서관이야”가 입력되면, “안녕 나 도서관이야”와 함께 문장이 끝났음을 지시하는 </s>를 출력할 수 있다. <s> 및/또는 </s>와 같은 토큰은 텍스트나 문장의 경계를 명확히 구분하기 위해 이용되는 것으로서, 사용자를 위한 텍스트로는 이용되지 않을 수 있다.According to one embodiment, the decoder (1010) can predict and output text (e.g., “Hello, I’m a library”) based on the fused features. According to one embodiment, the decoder (1010) can perform the prediction or output of the text based on at least one token. According to one embodiment, the decoder (1010) can start the text prediction or output operation based on a start token (e.g., <s>) indicating the beginning of a sentence. According to one embodiment, the decoder (1010) can end the text prediction or operation when the end of the sentence is predicted, and generate an end token (e.g., </s>) indicating the end of the sentence. For example, when “<s>Hello, I’m a library” is input, the decoder (1010) can output “Hello, I’m a library” along with </s> indicating the end of the sentence. Tokens such as <s> and/or </s> are used to clearly demarcate text or sentence boundaries and may not be used as text for the user.
일 실시예에 따르면, 멀티모달 ASR 모듈(726)에서는 컨포머 인코더(1008)에서 출력된 융합된 특징, 디코더(1010)에서 예측된 텍스트, 또는 정답 텍스트를 기반으로 음성 인식을 위한 학습이 수행될 수 있다.According to one embodiment, in the multimodal ASR module (726), learning for speech recognition may be performed based on fused features output from the conformer encoder (1008), predicted text from the decoder (1010), or correct text.
도 11은 일 실시예에 따른 전자 장치의 동작을 개략적으로 도시한 흐름도이다.FIG. 11 is a flowchart schematically illustrating the operation of an electronic device according to one embodiment.
일 실시예에 따르면, 동작 1102 내지 1118은 전자 장치(예: 도 1의 전자 장치(101) 또는 도 3의 전자 장치(301))의 프로세서(예: 도 1의 프로세서(120) 또는 도 3의 프로세서(340))에서 수행되는 것으로 이해될 수 있다.According to one embodiment, operations 1102 to 1118 may be understood to be performed in a processor (e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3) of an electronic device (e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3).
도 11에 도시된 동작들은 도시된 순서에 국한되지 않고 다양한 순서로 수행될 수 있다. 일 실시예에 따르면, 도 11에 도시된 동작들 중 적어도 일부가 생략되거나, 도 11에 도시된 동작들 보다 더 많은 동작들이 수행될 수도 있다.The operations illustrated in FIG. 11 are not limited to the order illustrated and may be performed in various orders. In one embodiment, at least some of the operations illustrated in FIG. 11 may be omitted, or more operations may be performed than those illustrated in FIG. 11.
도 11을 참조하면, 동작 1102에서, 전자 장치는 제1 시구간 동안 적어도 하나의 카메라를 통해 이미지를 입력받을 수 있다.Referring to FIG. 11, in operation 1102, the electronic device may receive an image through at least one camera during a first time period.
일 실시예에 따르면, 동작 1104에서, 전자 장치는 이미지가 입력된 것에 기반하여, 얼굴 검출 동작을 수행할 수 있다. 일 실시예에 따르면, 전자 장치는 적어도 하나의 카메라를 기반으로 이미지에서 얼굴의 위치 정보를 판단할 수 있다. 적어도 하나의 카메라는 얼굴 검출 동작을 위한 얼굴 검출 모듈을 포함할 수 있다. 일 실시예에 따르면, 얼굴 검출 모듈은 작은 사이즈(small size)의 딥 러닝(deep learning) 모델 또는 패턴 인식(pattern recognition) 방법에 기반하여 얼굴 인식을 수행할 수 있다. 전자 장치는 얼굴 검출 모듈을 통해 얼굴이 검출되면, 얼굴의 위치 정보를 저장할 수 있다. 일 실시예에 따르면, 얼굴의 위치 정보는 이미지 내의 얼굴을 포함하는 영역(예: 바운딩 박스(bounding box))의 좌표 정보(예: Pi=(Pi_x, Pi_y, Pi_w, Pi_h))를 포함할 수 있다. According to one embodiment, in operation 1104, the electronic device may perform a face detection operation based on an input image. According to one embodiment, the electronic device may determine location information of a face in the image based on at least one camera. The at least one camera may include a face detection module for the face detection operation. According to one embodiment, the face detection module may perform face recognition based on a small-size deep learning model or a pattern recognition method. When a face is detected through the face detection module, the electronic device may store location information of the face. According to one embodiment, the location information of the face may include coordinate information (e.g., Pi=(Pi_x, Pi_y, Pi_w, Pi_h)) of an area (e.g., a bounding box) including a face in the image.
일 실시예에 따르면, 전자 장치는 이미지로부터 얼굴이 검출되지 않는 경우, 얼굴이 검출되지 않음을 지시하는 알림을 디스플레이 또는 스피커를 통해 출력할 수 있다. 전자 장치는 설정된 시간 동안 얼굴이 검출되지 않으면, 적어도 하나의 카메라의 전원을 오프할 수 있다.In one embodiment, if a face is not detected in an image, the electronic device may output a notification via the display or speaker indicating that a face is not detected. If a face is not detected for a set period of time, the electronic device may turn off at least one camera.
일 실시예에 따르면, 동작 1106에서, 전자 장치는 얼굴이 검출된 것에 기반하여, 입술 검출 동작을 수행할 수 있다. 일 실시예에 따르면, 전자 장치는 얼굴 검출을 통해 저장된 좌표 정보를 기반으로 입술을 추정할 수 있다. 전자 장치는 입술이 추정되면, 추정된 입술이 포함된 이미지가 획득되도록 이미지 전처리 동작(예: 크롭(crop) 및/또는 리사이즈(resize))을 수행할 수 있다. According to one embodiment, in operation 1106, the electronic device may perform a lip detection operation based on the face detection. According to one embodiment, the electronic device may estimate lips based on coordinate information stored through the face detection. Once the lips are estimated, the electronic device may perform an image preprocessing operation (e.g., cropping and/or resizing) to obtain an image including the estimated lips.
일 실시예에 따르면, 동작 1108에서, 전자 장치는 제1 시구간 동안 적어도 하나의 마이크를 통해 화자의 음성을 입력받을 수 있다. 일 실시예에 따르면, 동작 1108은 동작 1102와 병렬로 또는 실질적으로 동일한 시간에 수행될 수 있다. In one embodiment, at operation 1108, the electronic device may receive a speaker's voice input through at least one microphone during a first time period. In one embodiment, operation 1108 may be performed in parallel with or substantially at the same time as operation 1102.
일 실시예에 따르면, 전자 장치는 동작 1102 내지 1106을 기반으로 입술 이미지와 연관된 이미지 프레임들을 획득하고, 동작 1108을 기반으로 화자의 음성과 연관된 오디오 프레임들을 획득할 수 있다. According to one embodiment, the electronic device may obtain image frames associated with a lip image based on operations 1102 to 1106, and may obtain audio frames associated with a speaker's voice based on operation 1108.
일 실시예에 따르면, 동작 1110에서, 전자 장치는 이미지 프레임들과 오디오 프레임들이 획득된 것에 기반하여, 이미지 프레임들에 대응하는 제1 시간과 오디오 프레임들에 대응하는 제2 시간을 식별할 수 있다. According to one embodiment, in operation 1110, the electronic device can identify a first time corresponding to the image frames and a second time corresponding to the audio frames based on which the image frames and the audio frames were acquired.
일 실시예에 따르면, 동작 1112에서, 전자 장치는 제1 시간과 제2 시간이 실질적으로 동일한지 여부를 판단할 수 있다. 전자 장치는 제1 시간과 제2 시간이 실질적으로 동일하지 않은 것에 기반하여, 동작 1114를 수행하고, 제1 시간과 제2 시간이 실질적으로 동일한 것에 기반하여 동작 1116을 수행할 수 있다.According to one embodiment, in operation 1112, the electronic device may determine whether the first time and the second time are substantially the same. Based on the fact that the first time and the second time are not substantially the same, the electronic device may perform operation 1114, and based on the fact that the first time and the second time are substantially the same, the electronic device may perform operation 1116.
일 실시예에 따르면, 동작 1114에서, 전자 장치는 제1 시간과 제2 시간이 실질적으로 동일하지 않은 것에 기반하여, 멀티모달 복원 및/또는 동기화 동작을 수행할 수 있다. 일 실시예에 따르면, 멀티모달 복원 및/또는 동기화 동작은 멀티모달 동기화 모듈(712)에 의해 수행되는 적어도 하나의 누락된 프레임의 복원 동작(예: 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성하는 동작, 또는 적어도 하나의 누락된 프레임의 시간 축 상의 위치에 포함될 적어도 하나의 프레임을 생성하는 동작), 및/또는 적어도 하나의 복원된 프레임과 함께 이미지 프레임들 및 오디오 프레임들을 동기화하는 동작을 포함할 수 있다. According to one embodiment, at operation 1114, the electronic device may perform a multimodal restoration and/or synchronization operation based on the first time and the second time being substantially not the same. According to one embodiment, the multimodal restoration and/or synchronization operation may include a restoration operation of at least one missing frame performed by the multimodal synchronization module (712) (e.g., generating at least one frame corresponding to the at least one missing frame, or generating at least one frame to be included at a time axis location of the at least one missing frame), and/or an operation of synchronizing image frames and audio frames with the at least one restored frame.
일 실시예에 따르면, 동작 1116에서, 전자 장치는 제1 시간과 제2 시간이 실질적으로 동일한 것에 기반하여, 입력된 이미지 프레임들 및 오디오 프레임들을 기반으로 하는 멀티모달 ASR 동작을 수행할 수 있다. According to one embodiment, at operation 1116, the electronic device can perform a multimodal ASR operation based on input image frames and audio frames based on the first time and the second time being substantially the same.
일 실시예에 따르면, 전자 장치는 제1 시간과 제2 시간이 실질적으로 동일하지 않은 것에 기반하여, 멀티모달 복원 및/또는 동기화 동작에 의해 출력된 이미지 프레임들 및 오디오 프레임들을 기반으로 하는 멀티모달 ASR 동작을 수행할 수 있다. According to one embodiment, the electronic device can perform a multimodal ASR operation based on image frames and audio frames output by a multimodal restoration and/or synchronization operation based on the first time and the second time being substantially not the same.
일 실시예에 따르면, 동작 1118에서, 전자 장치는 멀티모달 ASR 동작을 기반으로 텍스트를 출력할 수 있다. According to one embodiment, at operation 1118, the electronic device may output text based on the multimodal ASR operation.
일 실시예에 따르면, 전자 장치는 동작 1118을 수행하고, 자연어 이해(natural language understanding: NLU) 동작, 또는 음성 합성(text-to-speech: TTS) 동작을 수행할 수 있다. 일 실시예에 따르면, NLU 동작은 출력된 텍스트의 의미(또는 의도)를 해석하고, 해석된 의미를 기반으로 자연스러운 문맥의 텍스트를 생성하는 동작을 포함할 수 있고, TTS 동작은 NLU 동작에 의해 생성된 텍스트를 오디오 신호로 변환하는 동작을 포함할 수 있다. According to one embodiment, the electronic device may perform operation 1118 and perform a natural language understanding (NLU) operation or a text-to-speech (TTS) operation. According to one embodiment, the NLU operation may include an operation of interpreting the meaning (or intent) of output text and generating text with a natural context based on the interpreted meaning, and the TTS operation may include an operation of converting text generated by the NLU operation into an audio signal.
도 12는 일 실시예에 따른 전자 장치에서 멀티모달 음성 인식이 수행된 결과를 예시한 도면이다.FIG. 12 is a diagram illustrating the results of multimodal speech recognition performed in an electronic device according to one embodiment.
도 12를 참조하면, 사용자는 스마트 워치와 같은 전자 장치(301)(예: 도 5b의 제2 타입의 전자 장치(301))를 이용하여 얼굴 이미지와 음성(예: 가랑비에 옷 젖는다처럼 사랑도 작은 관심과 배려가 쌓여서 커져가는 거야)을 입력할 수 있다. 전자 장치(301)는 입력된 얼굴 이미지와 음성에 기반하여 비주얼 데이터(1202) 및 오디오 데이터(1204)를 획득할 수 있다. Referring to FIG. 12, a user can input a facial image and voice (e.g., “Just like clothes get wet in a drizzle, love grows by accumulating small attention and consideration”) using an electronic device (301) such as a smartwatch (e.g., the second type of electronic device (301) of FIG. 5b). The electronic device (301) can obtain visual data (1202) and audio data (1204) based on the input facial image and voice.
일 실시예에 따르면, 사용자의 움직임으로 인해 비주얼 데이터(1202)에는 입술 인식이 불가한 적어도 하나의 누락된 이미지 프레임이 포함될 수 있다. 오디오 데이터(1204)에는 적어도 하나의 누락된 오디오 프레임이 포함되지 않을 수 있으나, 노이즈가 포함됨에 의해 음성 인식에 오류가 발생할 수 있다. 예를 들어, 비주얼 데이터(1202)와 오디오 데이터(1204)에 기반한 멀티모달 음성 인식 동작이 수행될 경우, 전자 장치(301)에는 오인식된 내용을 포함하는 텍스트(예: 가랑비에 옷 전문가처럼 사랑도…)(1208)가 출력될 수 있다. In one embodiment, the visual data (1202) may include at least one missing image frame that makes lip recognition impossible due to the user's movement. The audio data (1204) may not include at least one missing audio frame, but may contain noise, which may cause errors in speech recognition. For example, when a multimodal speech recognition operation based on the visual data (1202) and the audio data (1204) is performed, the electronic device (301) may output text (e.g., "Love is like a clothes expert in a drizzle...") (1208) that includes misrecognized content.
일 실시예에 따르면, 오디오 데이터(1204)에서 적어도 하나의 누락된 이미지 프레임에 대응하는 적어도 하나의 오디오 프레임은 누락되지 않은 상태이므로, 멀티모달 동기화 모듈(712)의 생성형 AI 모델을 통해 적어도 하나의 이미지 프레임이 생성될 수 있다. 적어도 하나의 생성된 이미지 프레임은 적어도 하나의 누락된 프레임에 대응할 수 있다. 적어도 하나의 생성된 이미지 프레임은 비주얼 데이터(120)에 포함되어 업데이트된 비주얼 데이터(1206)가 생성될 수 있다. According to one embodiment, since at least one audio frame corresponding to at least one missing image frame in the audio data (1204) is not missing, at least one image frame can be generated through the generative AI model of the multimodal synchronization module (712). The at least one generated image frame can correspond to the at least one missing frame. The at least one generated image frame can be included in the visual data (120) to generate updated visual data (1206).
업데이트된 비주얼 데이터(1206)가 멀티모달 음성 인식 동작에 이용될 경우, 업데이트된 비주얼 데이터(1206)가 이용되지 않는 경우에 비해 명확한 음성 인식 결과가 출력될 수 있다. 예를 들어, 업데이트된 비주얼 데이터(1206)와 오디오 데이터(1204)를 기반으로 멀티모달 음성 인식 동작이 수행될 경우, 전자 장치(301)에는 입력된 음성에 대응하는 내용을 포함하는 텍스트(예: 가랑비에 옷 젖는다처럼 사랑도…)(1210)가 출력될 수 있다. When the updated visual data (1206) is used for a multimodal speech recognition operation, a clearer speech recognition result can be output compared to when the updated visual data (1206) is not used. For example, when a multimodal speech recognition operation is performed based on the updated visual data (1206) and audio data (1204), the electronic device (301) can output a text (e.g., “Love also gets wet in a drizzle…”) (1210) containing content corresponding to the input speech.
도 13은 일 실시예에 따른 전자 장치에서 제공되는 음성 또는 이미지 입력 상태를 지시하는 UI를 도시한 도면이다.FIG. 13 is a diagram illustrating a UI indicating a voice or image input status provided by an electronic device according to one embodiment.
도 13을 참조하면, 전자 장치(301)는 음성 입력에 기반하여 획득한 오디오 프레임들의 개수를 기반으로 음성 입력 상태를 지시하는 정보를 디스플레이에 출력할 수 있다. 전자 장치(301)는 입술 이미지 입력에 기반하여 획득한 이미지 프레임들의 개수를 기반으로 이미지 입력 상태를 지시하는 정보를 디스플레이에 출력할 수 있다. Referring to FIG. 13, the electronic device (301) may output information indicating a voice input status on the display based on the number of audio frames acquired based on voice input. The electronic device (301) may output information indicating an image input status on the display based on the number of image frames acquired based on lip image input.
일 실시예에 따르면, 음성 입력 상태 또는 이미지 입력 상태를 지시하는 정보는 이퀼라이저, 막대 바(bar), 또는 원형의 그래픽 정보, 또는 시간 별로 획득된 프레임 개수를 나타내는 그래프 정보를 포함할 수 있다.According to one embodiment, information indicating a voice input state or an image input state may include graphic information such as an equalizer, a bar, or a circle, or graph information indicating the number of frames acquired over time.
도 13의 (a) 내지 (c)에는 음성 입력 상태 또는 이미지 입력 상태가 프레임 개수를 기반으로 하는 이퀼라이저 형태의 그래픽 정보로 지시되는 예를 보이고 있다. Figures 13 (a) to (c) show examples in which a voice input state or an image input state is indicated as graphic information in the form of an equalizer based on the number of frames.
도 13의 (a)를 참조하면, 이미지 프레임 이퀼라이저(1302)는 이미지 프레임들과 연관된 제1 그래픽 지시자를 포함할 수 있다. 제1 그래픽 지시자는 이미지 프레임들의 개수에 기반한 길이를 가질 수 있고, 이미지 프레임들 각각의 입력 시점에 기반한 위치를 갖는 막대 형태의 그래픽 표현을 포함할 수 있다.Referring to (a) of FIG. 13, the image frame equalizer (1302) may include a first graphic indicator associated with the image frames. The first graphic indicator may have a length based on the number of image frames and may include a graphical representation in the form of a bar having a position based on the input time of each of the image frames.
오디오 프레임 이퀼라이저(1304)는 오디오 프레임들과 연관된 제2 그래픽 지시자를 포함할 수 있다. 제2 그래픽 지시자는 오디오 프레임들의 개수에 기반한 길이를 가질 수 있고, 오디오 프레임들 각각의 입력 시점에 기반한 위치를 갖는 막대 형태의 그래픽 표현을 포함할 수 있다.The audio frame equalizer (1304) may include a second graphic indicator associated with the audio frames. The second graphic indicator may have a length based on the number of audio frames and may include a graphical representation in the form of a bar having a position based on the input point of each of the audio frames.
일 실시예에 따르면, 제1 그래픽 지시자와 제2 그래픽 지시자가 동일한 길이를 갖는 것에 기반하여, 이미지 프레임들과 오디오 프레임들은 실질적으로 동일한 개수로 입력된 것이 식별될 수 있다.According to one embodiment, based on the first graphic indicator and the second graphic indicator having the same length, it can be identified that the image frames and audio frames are input in substantially the same number.
일 실시예에 따르면, 제1 그래픽 지시자와 제2 그래픽 지시자가 동일한 위치의 입력 시점들을 지시하는 것에 기반하여, 이미지 프레임들과 오디오 프레임들은 실질적으로 동일한 시점에 입력된 것을 식별할 수 있다.According to one embodiment, based on the first graphic indicator and the second graphic indicator indicating input points at the same location, the image frames and the audio frames can be identified as being input at substantially the same point in time.
일 실시예에 따르면, 이미지 프레임 이퀼라이저(1302)와 오디오 프레임 이퀼라이저(1304)에 기반하여, 이미지 프레임들과 오디오 프레임들이 실질적으로 동일한 시간 길이를 가지며, 이미지 프레임들과 오디오 프레임들 각각에서 적어도 하나의 누락된 프레임이 존재하지 않음이 식별될 수 있다. 전자 장치(301)는 식별 결과를 기반으로, 이미지 프레임들과 오디오 프레임들에 기반한 멀티모달 음성 인식 동작을 수행할 수 있다. According to one embodiment, based on the image frame equalizer (1302) and the audio frame equalizer (1304), it can be identified that the image frames and the audio frames have substantially the same time length and that there is no missing frame in each of the image frames and the audio frames. Based on the identification result, the electronic device (301) can perform a multimodal speech recognition operation based on the image frames and the audio frames.
도 13의 (b)를 참조하면, 이미지 프레임 이퀼라이저(1312)에 포함된 제1 그래픽 지시자는 연속적인 입력 시점들을 지시하지 않을 수 있다. 입력 시점들이 연속되지 않다는 것은 입술 이미지가 연속적으로 입력되지 않음을 의미하거나, 적어도 하나의 누락된 이미지 프레임이 존재함을 의미할 수 있다.Referring to (b) of FIG. 13, the first graphic indicator included in the image frame equalizer (1312) may not indicate consecutive input points. Non-consecutive input points may mean that lip images are not input consecutively, or that at least one image frame is missing.
오디오 프레임 이퀼라이저(1314)에 포함된 제2 그래픽 지시자는 연속적인 입력 시점들을 지시할 수 있다. 입력 시점들이 연속적이라는 것은 적어도 하나의 누락된 오디오 프레임이 존재하지 않음을 의미할 수 있다. The second graphic indicator included in the audio frame equalizer (1314) may indicate consecutive input points. Consecutive input points may mean that there is no missing audio frame at least.
일 실시예에 따르면, 이미지 프레임 이퀼라이저(1312)와 오디오 프레임 이퀼라이저(1314)에 기반하여, 이미지 프레임들과 오디오 프레임들이 상이한 시간 길이를 가지며, 이미지 프레임들 중 적어도 하나가 누락된 프레임인 것이 식별될 수 있다. 전자 장치(301)는 식별 결과를 기반으로 멀티모달 복원 및/또는 동기화 동작을 수행하고, 동작 수행 후 업데이트된 이미지 프레임들과 오디오 프레임들에 기반한 멀티모달 음성 인식 동작을 수행할 수 있다. According to one embodiment, based on the image frame equalizer (1312) and the audio frame equalizer (1314), it can be identified that the image frames and the audio frames have different time lengths and that at least one of the image frames is a missing frame. The electronic device (301) can perform a multimodal restoration and/or synchronization operation based on the identification result, and perform a multimodal speech recognition operation based on the updated image frames and audio frames after performing the operation.
도 13의 (c)를 참조하면, 이미지 프레임 이퀼라이저(1322)에 포함된 제1 그래픽 지시자는 오디오 프레임 이퀼라이저(1324)에 포함된 제2 그래픽 지시자보다 짧은 길이를 가질 수 있다. 제1 그래픽 지시자가 제2 그래픽 지시자보다 짧은 길이를 갖는다는 것은 이미지 프레임들이 오디오 프레임들에 비해 누락된 프레임들의 개수가 많다는 것을 의미할 수 있다.Referring to (c) of FIG. 13, the first graphic indicator included in the image frame equalizer (1322) may have a shorter length than the second graphic indicator included in the audio frame equalizer (1324). The fact that the first graphic indicator has a shorter length than the second graphic indicator may mean that the number of missing frames in the image frames is greater than that in the audio frames.
일 실시예에 따르면, 이미지 프레임 이퀼라이저(1322)와 오디오 프레임 이퀼라이저(1324)에 기반하여, 이미지 프레임들과 오디오 프레임들이 상이한 시간 길이를 가지며, 이미지 프레임들 중 적어도 하나가 누락된 프레임인 것이 식별될 수 있다. 전자 장치(301)는 식별 결과를 기반으로 멀티모달 복원 및/또는 동기화 동작을 수행하고, 동작 수행 후 업데이트된 이미지 프레임들과 오디오 프레임들에 기반한 멀티모달 음성 인식 동작을 수행할 수 있다.According to one embodiment, based on the image frame equalizer (1322) and the audio frame equalizer (1324), it can be identified that the image frames and the audio frames have different time lengths and that at least one of the image frames is a missing frame. The electronic device (301) can perform a multimodal restoration and/or synchronization operation based on the identification result, and perform a multimodal speech recognition operation based on the updated image frames and audio frames after performing the operation.
도 14는 일 실시예에 따른 전자 장치가 음성 또는 입술 인식 실패를 지시하는 알림 메시지를 출력하는 동작을 도시한 도면이다.FIG. 14 is a diagram illustrating an operation of an electronic device according to one embodiment of the present invention to output a notification message indicating a failure in voice or lip recognition.
도 14의 (a)를 참조하면, 전자 장치(301)에서 적어도 하나의 마이크를 통한 음성 인식이 실패된 것에 기반하여, 알림 메시지가 디스플레이 또는 스피커를 통해 출력될 수 있다. 예를 들어, 전자 장치(301)는 디스플레이에 “인식에 실패하였습니다. 화면을 보고 다시 입력해주세요”의 알림 메시지(1402)를 출력함으로써, 음성 입력의 재수행을 유도할 수 있다.Referring to (a) of FIG. 14, based on a failure in voice recognition through at least one microphone in the electronic device (301), a notification message may be output via the display or speaker. For example, the electronic device (301) may induce re-performing of voice input by outputting a notification message (1402) on the display, “Recognition failed. Please look at the screen and input again.”
도 14의 (b)를 참조하면, 전자 장치(301)에서 적어도 하나의 카메라를 통한 입술 인식이 실패된 것에 기반하여, 알림 메시지가 디스플레이 또는 스피커를 통해 출력될 수 있다. 예를 들어, 전자 장치(301)는 스피커를 통해 “카메라를 보시고 음성을 입력해주세요”의 알림 메시지(1408) 또는 “손목을 돌려주세요”의 알림 메시지(1410)와 같이, 사용자에게 입술 촬영을 유도하는 알림 메시지를 출력할 수 있다. Referring to (b) of FIG. 14, based on the failure of lip recognition through at least one camera in the electronic device (301), a notification message may be output through the display or speaker. For example, the electronic device (301) may output a notification message through the speaker that prompts the user to take a photo of the lips, such as a notification message (1408) of “Look at the camera and input voice” or a notification message (1410) of “Turn your wrist.”
도 15는 일 실시예에 따른 전자 장치에서 멀티모달 음성 인식 동작이 이용되는 예를 도시한 도면이다.FIG. 15 is a diagram illustrating an example of a multimodal voice recognition operation being used in an electronic device according to one embodiment.
도 15를 참조하면, 전자 장치(301)는 멀티모달 음성 인식 동작을 텍스트로 전화받기 기능에서 이용할 수 있다. 일 실시예에 따르면, 텍스트로 전화받기 기능은 멀티모달 음성 입력을 통해 다른 사용자와 대화를 할 수 있는 기능을 포함할 수 있다. 전자 장치(301)는 사용자에 의해 입력된 음성 및 입술 이미지에 기반으로 음성 인식 동작을 수행하고, 음성 인식 결과를 디스플레이에 텍스트로 출력될 수 있다. Referring to FIG. 15, the electronic device (301) can utilize multimodal voice recognition operations in the text-to-call function. According to one embodiment, the text-to-call function may include a function for conversing with other users through multimodal voice input. The electronic device (301) can perform voice recognition operations based on voice and lip images input by the user, and output the voice recognition results as text on the display.
일 실시예에 따르면, 사용자가 입력한 음성에 노이즈가 포함되거나 사용자의 목소리가 작거나, 사용자의 움직임으로 인해 입술 이미지가 누락된 것에 기반하여 음성 오인식이 발생할 수 있다. 전자 장치(301)는 음성 오인식 결과로 생성된 제1 텍스트(예: 미안 지금 띄고 있어 여기 사람이 너 많아서 말이야)(1502)를 디스플레이에 출력할 수 있다.In one embodiment, a voice misrecognition may occur based on noise in the user input, a low voice, or missing lip images due to the user's movements. The electronic device (301) may display a first text generated as a result of the voice misrecognition (e.g., "Sorry, I'm on hold right now. There are too many people here") (1502) on the display.
일 실시예에 따르면, 전자 장치(301)는 멀티모달 동기화 모듈(712)을 통한 문장 교정을 수행할 수 있다(1504). 예를 들어, 전자 장치(301)는 멀티모달 동기화 모듈(712)을 통해, 음성 오인식을 발생시킨 오디오 프레임들 및/또는 이미지 프레임들 내의 적어도 하나의 누락된 프레임을 복원한 후 음성 인식 동작을 다시 수행할 수 있다. 전자 장치(301)는 다시 수행된 음성 인식 결과로 생성된 제2 텍스트(예: 미안 지금 뛰어가고 있어 여기 사람이 너무 많아서 말이야)(1506)를 디스플레이에 출력할 수 있다. 제2 텍스트(1506)는 제1 텍스트(1502)의 수정된 텍스트 또는 업데이트된 텍스트로 지시될 수 있다. 예를 들어, 전자 장치(301)는 제2 텍스트(1506)와 함께, 제2 텍스트(1506)가 제1 텍스트(1502)의 수정된 텍스트 또는 업데이트된 텍스트임을 지시하는 정보(예: “수정 텍스트”)를 디스플레이에 표시할 수 있다.According to one embodiment, the electronic device (301) may perform sentence correction via the multimodal synchronization module (712) (1504). For example, the electronic device (301) may perform the speech recognition operation again after restoring at least one missing frame in the audio frames and/or image frames that caused the speech misrecognition via the multimodal synchronization module (712). The electronic device (301) may output the second text (e.g., “Sorry, I’m running now, there are too many people here”) (1506) generated as a result of the re-performed speech recognition to the display. The second text (1506) may be indicated as the corrected or updated text of the first text (1502). For example, the electronic device (301) may display information (e.g., “corrected text”) indicating that the second text (1506) is the corrected or updated text of the first text (1502) along with the second text (1506).
일 실시예에 따르면, 제1 텍스트(1502)와 제2 텍스트(1506)은 동시에 표시되거나, 제1 텍스트(1502)가 먼저 표시된 후 제2 텍스트(1506)가 표시되거나, 제1 텍스트(1502)의 표시는 생략되고 제2 텍스트(1506)가 표시될 수 있다.In one embodiment, the first text (1502) and the second text (1506) may be displayed simultaneously, the first text (1502) may be displayed first, and then the second text (1506) may be displayed, or the display of the first text (1502) may be omitted and the second text (1506) may be displayed.
일 실시예에 따르면, 멀티모달 동기화 모듈(712)을 통한 문장 교정은 반복적으로 수행될 수 있다. 전자 장치(301)는 음성 오인식 결과가 다시 발생한 것에 기반하여, 음성 오인식 결과로 생성된 제3 텍스트(예: 여기 주위도 시소 스럽고)(1508)를 디스플레이에 출력할 수 있다.According to one embodiment, sentence correction via the multimodal synchronization module (712) may be performed repeatedly. Based on the occurrence of a voice misrecognition result again, the electronic device (301) may output third text generated as a voice misrecognition result (e.g., "It's seesaw-like around here too") (1508) to the display.
일 실시예에 따르면, 전자 장치(301)는 멀티모달 동기화 모듈(712)을 통한 문장 교정을 수행할 수 있다(1510). 예를 들어, 전자 장치(301)는 멀티모달 동기화 모듈(712)을 통해, 음성 오인식을 발생시킨 오디오 프레임들 및/또는 이미지 프레임들 내의 적어도 하나의 누락된 프레임을 복원한 후 음성 인식 동작을 다시 수행할 수 있다. 전자 장치(301)는 다시 수행된 음성 인식 결과로 생성된 제4 텍스트(예: 여기 주위도 시끄럽고)(1512)를 디스플레이에 출력할 수 있다. According to one embodiment, the electronic device (301) can perform sentence correction via the multimodal synchronization module (712) (1510). For example, the electronic device (301) can perform the speech recognition operation again after restoring at least one missing frame within the audio frames and/or image frames that caused the speech misrecognition via the multimodal synchronization module (712). The electronic device (301) can output the fourth text (e.g., "It's noisy around here too") (1512) generated as the result of the re-performed speech recognition to the display.
도 16은 일 실시예에 따른 전자 장치가 음성 인식 결과를 출력하는 동작을 도시한 흐름도이다.FIG. 16 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result.
일 실시예에 따르면, 동작 1602 내지 1612는 전자 장치(예: 도 1의 전자 장치(101) 또는 도 3의 전자 장치(301))의 프로세서(예: 도 1의 프로세서(120) 또는 도 3의 프로세서(340))에서 수행되는 것으로 이해될 수 있다.According to one embodiment, operations 1602 to 1612 may be understood to be performed in a processor (e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3) of an electronic device (e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3).
도 16을 참조하면, 동작 1602에서, 전자 장치는 음성 및 이미지를 입력받을 수 있다. 전자 장치는 입력된 음성과 연관된 오디오 프레임들을 획득할 수 있다. 전자 장치는 입력된 이미지로부터 입술을 인식하고, 인식된 입술과 연관된 이미지 프레임들을 획득할 수 있다. Referring to FIG. 16, in operation 1602, an electronic device may receive voice and image input. The electronic device may obtain audio frames associated with the input voice. The electronic device may recognize lips from the input image and obtain image frames associated with the recognized lips.
일 실시예에 따르면, 동작 1604에서, 전자 장치는 획득된 오디오 프레임들 및 이미지 프레임들을 기반으로 멀티모달 ASR 동작을 수행할 수 있다. According to one embodiment, at operation 1604, the electronic device can perform a multimodal ASR operation based on the acquired audio frames and image frames.
일 실시예에 따르면, 동작 1606에서, 전자 장치는 멀티모달 ASR 동작에 기반한 제1 결과(예: 도 15의 제1 텍스트(1502) 또는 제3 텍스트(1508))를 출력할 수 있다.According to one embodiment, at operation 1606, the electronic device may output a first result (e.g., first text (1502) or third text (1508) of FIG. 15) based on the multimodal ASR operation.
일 실시예에 따르면, 동작 1608에서, 전자 장치는 멀티모달 복원 및/또는 동기화 동작을 수행할 수 있다. 일 실시예에 따르면, 멀티모달 복원 및/또는 동기화 동작은 멀티모달 동기화 모듈(712)에 의해 수행되는 적어도 하나의 누락된 프레임의 복원 동작(예: 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성하는 동작, 또는 시간 축에서 적어도 하나의 누락된 프레임의 위치에 포함될 적어도 하나의 프레임을 생성하는 동작), 및/또는 적어도 하나의 복원된 프레임과 함께 이미지 프레임들 및 오디오 프레임들을 동기화하는 동작을 포함할 수 있다. 멀티모달 복원 및/또는 동기화 동작을 기반으로 이미지 프레임들 또는 오디오 프레임들 중 적어도 하나는 적어도 하나의 복원된 프레임을 포함하도록 업데이트될 수 있다.According to one embodiment, at operation 1608, the electronic device may perform a multimodal restoration and/or synchronization operation. According to one embodiment, the multimodal restoration and/or synchronization operation may include a restoration operation of at least one missing frame performed by a multimodal synchronization module (712) (e.g., generating at least one frame corresponding to the at least one missing frame, or generating at least one frame to be included in the position of the at least one missing frame on the time axis), and/or an operation of synchronizing image frames and audio frames with the at least one restored frame. Based on the multimodal restoration and/or synchronization operation, at least one of the image frames or the audio frames may be updated to include the at least one restored frame.
일 실시예에 따르면, 동작 1610에서, 전자 장치는 멀티모달 복원 및/또는 동기화 동작 결과로 출력된 이미지 프레임들 및 오디오 프레임들을 기반으로 멀티모달 ASR 동작을 수행할 수 있다.According to one embodiment, at operation 1610, the electronic device may perform a multimodal ASR operation based on image frames and audio frames output as a result of the multimodal restoration and/or synchronization operation.
일 실시예에 따르면, 동작 1612에서, 전자 장치는 멀티모달 ASR 동작에 기반한 제2 결과(예: 도 15의 제2 텍스트(1506) 또는 제4 텍스트(1512))를 출력할 수 있다.According to one embodiment, at operation 1612, the electronic device may output a second result (e.g., the second text (1506) or the fourth text (1512) of FIG. 15) based on the multimodal ASR operation.
일 실시예에 따르면, 도 16에 도시된 동작들은 도시된 순서에 국한되지 않고 다양한 순서로 수행될 수 있다. 일 실시예에 따르면, 도 16에 도시된 동작들 중 적어도 일부가 생략되거나, 도 16에 도시된 동작들 보다 더 많은 동작들이 수행될 수도 있다. 예를 들어, 동작 1604 및 1606이 수행된 후, 동작 1608 내지 1612이 수행되거나, 동작 1604 및 1606, 또는 동작 1608 내지 1612 중 어느 하나는 수행되지 않을 수 있다.According to one embodiment, the operations illustrated in FIG. 16 are not limited to the illustrated order and may be performed in various orders. According to one embodiment, at least some of the operations illustrated in FIG. 16 may be omitted, or more operations may be performed than those illustrated in FIG. 16. For example, after operations 1604 and 1606 are performed, operations 1608 to 1612 may be performed, or either operations 1604 and 1606 or operations 1608 to 1612 may not be performed.
이하 도 17 내지 도 26을 참조하여 전자 장치의 동작을 설명한다.The operation of the electronic device is described below with reference to FIGS. 17 to 26.
일 실시예에 따르면, 도 17 내지 도 26에 도시된 동작들은 전자 장치(예: 도 1의 전자 장치(101) 또는 도 3의 전자 장치(301))의 프로세서(예: 도 1의 프로세서(120) 또는 도 3의 프로세서(340))에서 수행되는 것으로 이해될 수 있다.According to one embodiment, the operations illustrated in FIGS. 17 to 26 may be understood to be performed in a processor (e.g., processor (120) of FIG. 1 or processor (340) of FIG. 3) of an electronic device (e.g., electronic device (101) of FIG. 1 or electronic device (301) of FIG. 3).
도 17 내지 도 26에 도시된 동작들은 도시된 순서에 국한되지 않고 다양한 순서로 수행될 수 있다. 일 실시예에 따르면, 도 17 내지 도 26 각각에 도시된 동작들 중 적어도 일부가 생략되거나, 도 17 내지 도 26 각각에 도시된 동작들 보다 더 많은 동작들이 수행될 수도 있다.The operations illustrated in FIGS. 17 to 26 are not limited to the illustrated order and may be performed in various orders. According to one embodiment, at least some of the operations illustrated in FIGS. 17 to 26 may be omitted, or more operations may be performed than those illustrated in FIGS. 17 to 26.
도 17은 일 실시예에 따른 전자 장치의 음성 인식 동작을 도시한 흐름도이다. FIG. 17 is a flowchart illustrating a voice recognition operation of an electronic device according to one embodiment.
도 17을 참조하면, 동작 1702에서, 전자 장치(101)(301)는 제1 시구간 동안 전자 장치(101)(301)의 적어도 하나의 카메라(180)(310)를 통해 화자의 입술 이미지와 연관된 비주얼(visual) 데이터(904)를 획득할 수 있다. Referring to FIG. 17, in operation 1702, the electronic device (101) (301) may acquire visual data (904) associated with a speaker's lip image through at least one camera (180) (310) of the electronic device (101) (301) during a first time period.
일 실시예에 따르면, 동작 1704에서, 전자 장치(101)(301)는 제1 시구간 동안 전자 장치(101)(301)의 적어도 하나의 마이크(150)(320)를 통해 화자의 음성과 연관된 오디오(audio) 데이터(902)를 획득할 수 있다.According to one embodiment, in operation 1704, the electronic device (101) (301) may obtain audio data (902) associated with the speaker's voice through at least one microphone (150) (320) of the electronic device (101) (301) during a first time period.
일 실시예에 따르면, 동작 1706에서, 전자 장치(101)(301)는 비주얼 데이터(904)에 대응하는 제1 프레임들과 오디오 데이터(902)에 대응하는 제2 프레임들에 기반하여, 적어도 하나의 누락된 프레임을 식별할 수 있다. According to one embodiment, in operation 1706, the electronic device (101) (301) can identify at least one missing frame based on the first frames corresponding to the visual data (904) and the second frames corresponding to the audio data (902).
일 실시예에 따르면, 동작 1708에서, 전자 장치(101)(301)는 학습된 머신 러닝 모델(712)을 기반으로, 제1 프레임들 및 제2 프레임들을 이용하여, 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임(또는 시간 축에서 적어도 하나의 누락된 프레임의 위치에 포함될 적어도 하나의 프레임)을 생성(906)할 수 있다.According to one embodiment, in operation 1708, the electronic device (101) (301) may generate (906) at least one frame corresponding to at least one missing frame (or at least one frame to be included in the position of the at least one missing frame on the time axis) using the first frames and the second frames based on the learned machine learning model (712).
일 실시예에 따르면, 동작 1710에서, 전자 장치(101)(301)는 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행할 수 있다. According to one embodiment, in operation 1710, the electronic device (101) (301) may perform a voice recognition operation based on the first frames, the second frames, or at least one generated frame.
도 18은 일 실시예에 따른 전자 장치가 적어도 하나의 누락된 프레임을 식별하는 동작을 도시한 흐름도이다. FIG. 18 is a flowchart illustrating an operation of an electronic device according to one embodiment to identify at least one missing frame.
일 실시예에 따르면, 도 18에 도시된 동작들은 도 17의 동작 1706과 연관된 동작들일 수 있다.According to one embodiment, the operations illustrated in FIG. 18 may be operations associated with operation 1706 of FIG. 17.
도 18을 참조하면, 동작 1802에서, 전자 장치(101)(301)는 제1 프레임들의 개수에 대응하는 제1 시간과 제2 프레임들의 개수에 대응하는 제2 시간이 실질적으로 동일한지 여부를 판단할 수 있다. Referring to FIG. 18, in operation 1802, the electronic device (101) (301) can determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same.
일 실시예에 따르면, 동작 1804에서, 전자 장치(101)(301)는 제1 시간과 상기 제2 시간이 실질적으로 동일하지 않은 것에 기반하여, 제1 프레임들 또는 제2 프레임들 중 더 짧은 시간에 대응하는 프레임들과 연관되는, 적어도 하나의 누락된 프레임을 식별할 수 있다.According to one embodiment, in operation 1804, the electronic device (101) (301) may identify at least one missing frame associated with frames corresponding to a shorter time among the first frames or the second frames, based on the first time and the second time being substantially not the same.
도 19는 일 실시예에 따른 전자 장치가 타임라인에 기반한 정렬을 통해 적어도 하나의 누락된 프레임을 식별하는 동작을 도시한 흐름도이다. FIG. 19 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to identify at least one missing frame through timeline-based sorting.
일 실시예에 따르면, 도 19에 도시된 동작들은 도 17의 동작 1706과 연관된 동작들일 수 있다.According to one embodiment, the operations illustrated in FIG. 19 may be operations associated with operation 1706 of FIG. 17.
도 19를 참조하면, 동작 1902에서, 전자 장치(101)(301)는 제1 프레임들의 개수에 대응하는 제1 시간과 제2 프레임들의 개수에 대응하는 제2 시간이 실질적으로 동일한지 여부를 판단할 수 있다. Referring to FIG. 19, in operation 1902, the electronic device (101) (301) can determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same.
일 실시예에 따르면, 동작 1904에서, 전자 장치(101)(301)는 제1 시간과 제2 시간이 실질적으로 동일하지 않은 것에 기반하여, 제1 시구간에 대응하는 타임 라인을 기반으로 제1 프레임들과 제2 프레임들을 정렬할 수 있다. According to one embodiment, in operation 1904, the electronic device (101) (301) may align the first frames and the second frames based on a timeline corresponding to the first time interval, based on the first time and the second time being not substantially the same.
일 실시예에 따르면, 동작 1906에서, 전자 장치(101)(301)는 정렬에 기반하여, 제1 프레임들과 제2 프레임들 간의 동기화를 수행할 수 있다. According to one embodiment, in operation 1906, the electronic device (101) (301) may perform synchronization between the first frames and the second frames based on alignment.
일 실시예에 따르면, 동작 1908에서, 전자 장치(101)(301)는 제1 프레임들 또는 제2 프레임들 중 동기화되지 못한 적어도 하나의 프레임을 식별할 수 있다. According to one embodiment, at operation 1908, the electronic device (101) (301) may identify at least one frame that is out of synchronization among the first frames or the second frames.
일 실시예에 따르면, 동작 1910에서, 전자 장치(101)(301)는 동기화되지 못한 적어도 하나의 프레임을 기반으로 적어도 하나의 누락된 프레임을 식별할 수 있다. According to one embodiment, at operation 1910, the electronic device (101) (301) can identify at least one missing frame based on at least one out-of-synchronization frame.
도 20은 일 실시예에 따른 전자 장치가 누락된 프레임을 복원하는 동작을 도시한 흐름도이다.FIG. 20 is a flowchart illustrating an operation of an electronic device according to one embodiment to restore a missing frame.
일 실시예에 따르면, 도 20에 도시된 동작들은 도 17의 동작 1708과 연관된 동작들일 수 있다. According to one embodiment, the operations illustrated in FIG. 20 may be operations associated with operation 1708 of FIG. 17.
도 20을 참조하면, 동작 2002에서, 전자 장치(101)(301)는 제1 프레임들의 개수에 대응하는 제1 시간과 제2 프레임들의 개수에 대응하는 제2 시간이 실질적으로 동일한지 여부를 판단할 수 있다. Referring to FIG. 20, in operation 2002, the electronic device (101) (301) can determine whether a first time corresponding to the number of first frames and a second time corresponding to the number of second frames are substantially the same.
일 실시예에 따르면, 동작 2004에서, 전자 장치(101)(301)는 제1 시간과 제2 시간이 실질적으로 동일하지 않은 것에 기반하여, 제1 프레임들 또는 제2 프레임들 중 더 긴 시간에 대응하는 소스 프레임들(710)로부터 제1 특징을 추출할 수 있다. According to one embodiment, in operation 2004, the electronic device (101) (301) may extract a first feature from source frames (710) corresponding to a longer time among the first frames or the second frames, based on the first time and the second time being not substantially the same.
일 실시예에 따르면, 동작 2006에서, 전자 장치(101)(301)는 제1 프레임들 또는 제2 프레임들 중 더 짧은 시간에 대응하는 타겟 프레임들(708)로부터 제2 특징을 추출할 수 있다.According to one embodiment, in operation 2006, the electronic device (101) (301) may extract a second feature from target frames (708) corresponding to a shorter time among the first frames or the second frames.
일 실시예에 따르면, 동작 2008에서, 전자 장치(101)(301)는 제1 특징과 제2 특징을 머신 러닝 모델을 이용하여 융합하고, 융합된 특징을 기반으로 적어도 하나의 프레임을 생성할 수 있다. 일 실시예에 따르면, 적어도 하나의 프레임은 적어도 하나의 누락된 프레임에 대응하거나, 시간 축에서 적어도 하나의 누락된 프레임의 위치에 포함될 수 있다.According to one embodiment, in operation 2008, the electronic device (101) (301) may fuse the first feature and the second feature using a machine learning model and generate at least one frame based on the fused feature. According to one embodiment, the at least one frame may correspond to at least one missing frame or may be included in the position of at least one missing frame on the time axis.
도 21은 일 실시예에 따른 전자 장치가 적어도 하나의 누락된 프레임의 개수에 기반하여 메시지를 출력하는 동작을 도시한 흐름도이다. FIG. 21 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a message based on the number of at least one missing frame.
도 21을 참조하면, 동작 2102에서, 전자 장치(101)(301)는 적어도 하나의 누락된 프레임의 개수가 임계값 이상인지 여부를 판단할 수 있다. Referring to FIG. 21, in operation 2102, the electronic device (101) (301) can determine whether the number of at least one missing frame is greater than or equal to a threshold value.
일 실시예에 따르면, 동작 2104에서, 전자 장치(101)(301)는 적어도 하나의 누락된 프레임의 개수가 임계값 이상인 것에 기반하여, 화자의 입술을 다시 촬영하거나 화자의 음성을 다시 입력해줄 것을 지시하는 메시지(1402)(1408)(1410)를 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력할 수 있다. According to one embodiment, in operation 2104, the electronic device (101) (301) may output a message (1402) (1408) (1410) instructing to re-capture the speaker's lips or re-input the speaker's voice through the display (160) or speaker (155) of the electronic device (101) (301) based on the number of at least one missing frame being greater than or equal to a threshold value.
도 22는 일 실시예에 따른 전자 장치가 음성 인식 동작의 결과를 출력하는 동작을 도시한 흐름도이다. FIG. 22 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a result of a voice recognition operation.
일 실시예에 따르면, 도 22에 도시된 동작들은 도 17의 동작 1710과 연관된 동작들일 수 있다.According to one embodiment, the operations illustrated in FIG. 22 may be operations associated with operation 1710 of FIG. 17.
도 22를 참조하면, 동작 2202에서, 전자 장치(101)(301)는 제1 프레임들 또는 제2 프레임들을 기반으로 음성 인식 동작을 수행한 제1 결과(1502)(1508)를 생성할 수 있다. Referring to FIG. 22, in operation 2202, the electronic device (101) (301) may generate a first result (1502) (1508) of performing a voice recognition operation based on the first frames or the second frames.
일 실시예에 따르면, 동작 2204에서, 전자 장치(101)(301)는 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행한 제2 결과(1506)(1512)를 제1 결과(1502)(1508)의 업데이트된 결과로서 생성할 수 있다.According to one embodiment, in operation 2204, the electronic device (101) (301) may generate a second result (1506) (1512) of performing a voice recognition operation based on the first frames, the second frames, or at least one generated frame as an updated result of the first result (1502) (1508).
일 실시예에 따르면, 동작 2206에서, 전자 장치(101)(301)는 제1 결과(1502)(1508)와 제2 결과(1506)(1512)를 동일하거나 상이한 시점에 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력할 수 있다. According to one embodiment, in operation 2206, the electronic device (101) (301) may output the first result (1502) (1508) and the second result (1506) (1512) at the same or different times through the display (160) or speaker (155) of the electronic device (101) (301).
도 23은 일 실시예에 따른 전자 장치가 서버를 통해 음성 인식 결과를 출력하는 동작을 도시한 흐름도이다. FIG. 23 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through a server.
일 실시예에 따르면, 도 23에 도시된 동작들은 도 17의 동작 1710과 연관된 동작들일 수 있다.According to one embodiment, the operations illustrated in FIG. 23 may be operations associated with operation 1710 of FIG. 17.
도 23을 참조하면, 동작 2302에서, 전자 장치(101)(301)는 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임이 포함된 제1 정보를 서버로 전송할 수 있다. Referring to FIG. 23, in operation 2302, the electronic device (101) (301) may transmit first information including first frames, second frames, or at least one generated frame to the server.
일 실시예에 따르면, 동작 2304에서, 전자 장치(101)(301)는 제1 정보를 전송한 것에 응답하여, 서버로부터 음성 인식 결과를 포함하는 제2 정보를 수신할 수 있다. According to one embodiment, in operation 2304, the electronic device (101) (301) may, in response to transmitting the first information, receive second information including a voice recognition result from the server.
일 실시예에 따르면, 동작 2306에서, 전자 장치(101)(301)는 수신된 제2 정보에 기반하여 음성 인식 결과를 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력할 수 있다. According to one embodiment, in operation 2306, the electronic device (101) (301) may output a voice recognition result through the display (160) or speaker (155) of the electronic device (101) (301) based on the received second information.
도 24는 일 실시예에 따른 전자 장치가 온 디바이스 동작을 통해 음성 인식 결과를 출력하는 동작을 도시한 흐름도이다. FIG. 24 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a voice recognition result through an on-device operation.
일 실시예에 따르면, 도 24에 도시된 동작들은 도 17의 동작 1710과 연관된 동작들일 수 있다.According to one embodiment, the operations illustrated in FIG. 24 may be operations associated with operation 1710 of FIG. 17.
도 24를 참조하면, 동작 2402에서, 전자 장치(101)(301)는 학습된 음성 인식 모델(726)을 기반으로, 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임을 이용하여 음성 인식 동작을 수행할 수 있다. Referring to FIG. 24, in operation 2402, the electronic device (101) (301) may perform a voice recognition operation using the first frames, the second frames, or at least one generated frame based on the learned voice recognition model (726).
일 실시예에 따르면, 동작 2404에서, 전자 장치(101)(301)는 음성 인식 동작을 기반으로 음성 인식 결과를 획득할 수 있다. According to one embodiment, in operation 2404, the electronic device (101) (301) can obtain a voice recognition result based on a voice recognition operation.
일 실시예에 따르면, 동작 2406에서, 전자 장치(101)(301)는 획득된 음성 인식 결과를 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력할 수 있다. According to one embodiment, in operation 2406, the electronic device (101) (301) can output the acquired voice recognition result through the display (160) or speaker (155) of the electronic device (101) (301).
도 25는 일 실시예에 따른 전자 장치가 프레임 입력 상태를 출력하는 동작을 도시한 흐름도이다. FIG. 25 is a flowchart illustrating an operation of an electronic device according to one embodiment of the present invention to output a frame input status.
도 25를 참조하면, 동작 2502에서, 전자 장치(101)(301)는 비주얼 데이터(904)가 획득된 것에 기반하여, 제1 프레임들의 개수에 기반한 프레임 입력 상태를 지시하는 정보(1302)(1312)(1322)를 전자 장치(101)(301)의 디스플레이(160)에 출력할 수 있다. Referring to FIG. 25, in operation 2502, the electronic device (101) (301) may output information (1302) (1312) (1322) indicating a frame input status based on the number of first frames, based on the visual data (904) obtained, to the display (160) of the electronic device (101) (301).
일 실시예에 따르면, 동작 2504에서, 전자 장치(101)(301)는 오디오 데이터(902)가 획득된 것에 기반하여, 제2 프레임들의 개수에 기반한 프레임 입력 상태를 지시하는 정보(1304)(1314)(1324)를 디스플레이(160)에 출력할 수 있다. According to one embodiment, in operation 2504, the electronic device (101) (301) may output information (1304) (1314) (1324) indicating a frame input status based on the number of second frames, to the display (160), based on the audio data (902) obtained.
도 26은 일 실시예에 따른 전자 장치가 서버로부터 음성 인식 결과를 수신하는 동작을 도시한 흐름도이다. FIG. 26 is a flowchart illustrating an operation of an electronic device receiving a voice recognition result from a server according to one embodiment.
도 26을 참조하면, 동작 2602에서, 전자 장치(101)(301)는 제1 시구간 동안 전자 장치(101)(301)의 적어도 하나의 카메라(180)(310)를 통해 화자의 입술과 연관된 비주얼 데이터(904)를 획득할 수 있다. Referring to FIG. 26, in operation 2602, the electronic device (101) (301) may acquire visual data (904) associated with the speaker's lips through at least one camera (180) (310) of the electronic device (101) (301) during a first time period.
일 실시예에 따르면, 동작 2604에서, 전자 장치(101)(301)는 제1 시구간 동안 전자 장치(101)(301)의 적어도 하나의 마이크(150)(320)를 통해 화자의 음성과 연관된 오디오 데이터(902)를 획득할 수 있다. According to one embodiment, in operation 2604, the electronic device (101) (301) may obtain audio data (902) associated with the speaker's voice through at least one microphone (150) (320) of the electronic device (101) (301) during a first time period.
일 실시예에 따르면, 동작 2606에서, 전자 장치(101)(301)는 획득된 비주얼 데이터(904)에 대응하는 제1 프레임들 및 획득된 오디오 데이터(902)에 대응하는 제2 프레임들을 서버로 전송할 수 있다.According to one embodiment, in operation 2606, the electronic device (101) (301) may transmit first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to the server.
일 실시예에 따르면, 동작 2608에서, 전자 장치(101)(301)는 서버로부터 음성 인식 결과를 수신할 수 있다. 일 실시예에 따르면, 음성 인식 결과는, 제1 프레임들 및 제2 프레임들을 기반으로 적어도 하나의 누락된 프레임을 식별하고, 학습된 머신 러닝 모델(712)을 기반으로, 제1 프레임들 및 상기 제2 프레임들을 이용하여 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임(또는 시간 축에서 적어도 하나의 누락된 프레임의 위치에 포함될 적어도 하나의 프레임)을 생성(906)하고, 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행한 결과를 포함할 수 있다. According to one embodiment, in operation 2608, the electronic device (101) (301) may receive a voice recognition result from the server. According to one embodiment, the voice recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating (906) at least one frame corresponding to the at least one missing frame (or at least one frame to be included in the position of the at least one missing frame on the time axis) using the first frames and the second frames based on the learned machine learning model (712), and performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.Electronic devices according to the various embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments of this document are not limited to the aforementioned devices.
일 실시예에 따르면, 전자 장치(101)(301)의 음성 인식 방법은 제1 시구간 동안 상기 전자 장치(101)(301)의 적어도 하나의 카메라(180)(310)를 통해 화자의 입술 이미지와 연관된 비주얼(visual) 데이터(904)를 획득하는 동작(1702); 상기 제1 시구간 동안 상기 전자 장치(101)(301)의 적어도 하나의 마이크(150)(320)를 통해 상기 화자의 음성과 연관된 오디오(audio) 데이터(902)를 획득하는 동작(1704); 상기 비주얼 데이터(904)에 대응하는 제1 프레임들과 상기 오디오 데이터(902)에 대응하는 제2 프레임들에 기반하여, 적어도 하나의 누락된 프레임을 식별하는 동작(1706); 학습된 머신 러닝 모델(712)을 기반으로, 상기 제1 프레임들 및 상기 제2 프레임들을 이용하여 상기 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하는 동작(1708); 및 상기 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식을 수행하는 동작(1710)을 포함하는 음성 인식 방법일 수 있다.According to one embodiment, a voice recognition method of an electronic device (101) (301) comprises: an operation (1702) of obtaining visual data (904) associated with a lip image of a speaker through at least one camera (180) (310) of the electronic device (101) (301) during a first time period; an operation (1704) of obtaining audio data (902) associated with a voice of the speaker through at least one microphone (150) (320) of the electronic device (101) (301) during the first time period; an operation (1706) of identifying at least one missing frame based on first frames corresponding to the visual data (904) and second frames corresponding to the audio data (902); an operation (1708) of generating at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on a learned machine learning model (712) (906); And it may be a voice recognition method including an operation (1710) of performing voice recognition based on the first frames, the second frames, or the at least one generated frame.
일 실시예에 따르면, 적어도 하나의 누락된 프레임을 식별하는 동작(1706)은,According to one embodiment, the operation (1706) of identifying at least one missing frame comprises:
상기 제1 프레임들에 대응하는 제1 시간과 상기 제2 프레임들에 대응하는 제2 시간이 동일한지 여부를 판단하는 동작(1802); 및/또는 상기 제1 시간과 상기 제2 시간이 동일하지 않은 것에 기반하여, 상기 제1 프레임들 또는 상기 제2 프레임들 중 더 짧은 시간에 대응하는 프레임들과 연관되는, 상기 적어도 하나의 누락된 프레임을 식별하는 동작(1804)을 포함하는 음성 인식 방법일 수 있다.The method may include an operation (1802) of determining whether a first time corresponding to the first frames and a second time corresponding to the second frames are the same; and/or an operation (1804) of identifying at least one missing frame associated with frames corresponding to a shorter time among the first frames or the second frames, based on the first time and the second time not being the same.
일 실시예에 따르면, 적어도 하나의 누락된 프레임을 식별하는 동작(1706)은, 상기 제1 프레임들에 대응하는 제1 시간과 상기 제2 프레임들에 대응하는 제2 시간이 동일한지 여부를 판단하는 동작(1902); 및 상기 제1 시간과 상기 제2 시간이 동일하지 않은 것에 기반하여, 상기 제1 시구간에 대응하는 타임 라인을 기반으로 상기 제1 프레임들과 상기 제2 프레임들을 정렬(alignment)하는 동작(1904); 상기 정렬에 기반하여 상기 제1 프레임들과 상기 제2 프레임들 간의 동기화를 수행하는 동작(1906); 상기 제1 프레임들 또는 상기 제2 프레임들 중 동기화되지 못한 적어도 하나의 프레임을 식별하는 동작(1908); 및/또는 상기 동기화되지 못한 적어도 하나의 프레임을 기반으로 상기 적어도 하나의 누락된 프레임을 식별하는 동작(1910)을 포함하는 음성 인식 방법일 수 있다.According to one embodiment, the operation of identifying at least one missing frame (1706) may be a speech recognition method including: an operation of determining whether a first time corresponding to the first frames and a second time corresponding to the second frames are the same (1902); and an operation of aligning the first frames and the second frames based on a time line corresponding to the first time period based on the first time and the second time not being the same (1904); an operation of performing synchronization between the first frames and the second frames based on the alignment (1906); an operation of identifying at least one unsynchronized frame among the first frames or the second frames (1908); and/or an operation of identifying the at least one missing frame based on the at least one unsynchronized frame (1910).
일 실시예에 따르면, 적어도 하나의 프레임을 생성(906)하는 동작(1708)은, 상기 제1 시간과 상기 제2 시간이 동일하지 않은 것에 기반하여, 상기 제1 프레임들 또는 상기 제2 프레임들 중 더 긴 시간에 대응하는 소스 프레임들(710)로부터 제1 특징을 추출하는 동작(2004); 상기 제1 프레임들 또는 상기 제2 프레임들 중 더 짧은 시간에 대응하는 타겟 프레임들(708)로부터 제2 특징을 추출하는 동작(2006); 및/또는 상기 제1 특징과 상기 제2 특징을 상기 머신 러닝 모델을 이용하여 융합(fuse)하고, 상기 융합된 특징을 기반으로 상기 적어도 하나의 프레임을 생성하는 동작(2008)을 포함하는 음성 인식 방법일 수 있다. According to one embodiment, the operation (1708) of generating (906) at least one frame may be a speech recognition method including: extracting (2004) a first feature from source frames (710) corresponding to a longer time among the first frames or the second frames, based on the first time and the second time being not the same; extracting (2006) a second feature from target frames (708) corresponding to a shorter time among the first frames or the second frames; and/or fusing the first feature and the second feature using the machine learning model and generating the at least one frame based on the fused feature (2008).
일 실시예에 따르면, 상기 적어도 하나의 누락된 프레임의 개수가 임계값 이상인 것에 기반하여, 상기 화자의 입술을 다시 촬영하거나 상기 화자의 음성을 다시 입력해줄 것을 지시하는 메시지(1402)(1408)(1410)를 상기 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력하는 동작(2104)을 더 포함하는, 음성 인식 방법일 수 있다.According to one embodiment, the voice recognition method may further include an operation (2104) of outputting a message (1402) (1408) (1410) instructing to re-photograph the speaker's lips or re-input the speaker's voice through a display (160) or a speaker (155) of the electronic device (101) (301) based on the number of the at least one missing frame being greater than or equal to a threshold value.
일 실시예에 따르면, 음성 인식 동작을 수행하는 동작(1710)은, 제1 프레임들 또는 제2 프레임들을 기반으로 음성 인식 동작을 수행한 제1 결과(1502)(1508)를 생성하는 동작(2202); 제1 프레임들, 상기 제2 프레임들, 또는 상기 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행한 제2 결과(1506)(1512)를 제1 결과(1502)(1508)의 업데이트된 결과로서 생성하는 동작(2204); 및/또는 제1 결과(1502)(1508)와 제2 결과(1506)(1512)를 동일하거나 상이한 시점에 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력하는 동작(2206)을 포함하는 음성 인식 방법일 수 있다.According to one embodiment, the operation (1710) of performing a voice recognition operation may be a voice recognition method including the operation (2202) of generating a first result (1502) (1508) of performing the voice recognition operation based on the first frames or the second frames; the operation (2204) of generating a second result (1506) (1512) of performing the voice recognition operation based on the first frames, the second frames, or the at least one generated frame as an updated result of the first result (1502) (1508); and/or the operation (2206) of outputting the first result (1502) (1508) and the second result (1506) (1512) through a display (160) or a speaker (155) of an electronic device (101) (301) at the same or different times.
일 실시예에 따르면, 음성 인식 동작을 수행하는 동작은, 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임이 포함된 제1 정보를 서버로 전송하는 동작(2302); 제1 정보를 전송한 것에 응답하여, 서버로부터 음성 인식 결과를 포함하는 제2 정보를 수신하는 동작(2304); 및 수신된 제2 정보에 기반하여 음성 인식 결과를 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력하는 동작(2306)을 포함하는, 음성 인식 방법일 수 있다.According to one embodiment, the operation of performing a voice recognition operation may be a voice recognition method including an operation (2302) of transmitting first information including first frames, second frames, or at least one generated frame to a server; an operation (2304) of receiving second information including a voice recognition result from the server in response to transmitting the first information; and an operation (2306) of outputting the voice recognition result through a display (160) or a speaker (155) of an electronic device (101) (301) based on the received second information.
일 실시예에 따르면, 음성 인식 동작을 수행하는 동작은, 학습된 음성 인식 모델(726)을 기반으로, 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임을 이용하여 음성 인식 동작을 수행하는 동작(2402); 음성 인식 동작을 기반으로 음성 인식 결과를 획득하는 동작(2404); 및 획득된 음성 인식 결과를 전자 장치(101)(301)의 디스플레이(160) 또는 스피커(155)를 통해 출력하는 동작(2406)을 포함하는, 음성 인식 방법일 수 있다.According to one embodiment, the operation of performing a voice recognition operation may be a voice recognition method including an operation (2402) of performing a voice recognition operation using first frames, second frames, or at least one generated frame based on a learned voice recognition model (726); an operation (2404) of obtaining a voice recognition result based on the voice recognition operation; and an operation (2406) of outputting the obtained voice recognition result through a display (160) or a speaker (155) of an electronic device (101) (301).
본 개시의 일 실시예에 따른 전자 장치의 방법은: 비주얼 데이터(904)가 획득된 것에 기반하여, 제1 프레임들의 개수에 기반한 프레임 입력 상태를 지시하는 정보(1302)(1312)(1322)를 전자 장치(101)(301)의 디스플레이(160)에 출력하는 동작(2502); 및 오디오 데이터(902)가 획득된 것에 기반하여, 제2 프레임들의 개수에 기반한 프레임 입력 상태를 지시하는 정보(1304)(1314)(1324)를 디스플레이(160)에 출력하는 동작(2504);을 더 포함할 수 있다.A method of an electronic device according to one embodiment of the present disclosure may further include: an operation (2502) of outputting information (1302) (1312) (1322) indicating a frame input state based on the number of first frames to a display (160) of an electronic device (101) (301) based on the acquisition of visual data (904); and an operation (2504) of outputting information (1304) (1314) (1324) indicating a frame input state based on the number of second frames to the display (160) based on the acquisition of audio data (902).
본 개시의 일 실시예에 따른 전자 장치의 방법은: 제1 시구간 동안 전자 장치(101)(301)의 적어도 하나의 카메라(180)(310)를 통해 화자의 입술과 연관된 비주얼 데이터(904)를 획득하는 동작(2602); 제1 시구간 동안 전자 장치(101)(301)의 적어도 하나의 마이크(150)(320)를 통해 화자의 음성과 연관된 오디오 데이터(902)를 획득하는 동작(2604); 획득된 비주얼 데이터(904)에 대응하는 제1 프레임들 및 획득된 오디오 데이터(902)에 대응하는 제2 프레임들을 서버로 전송하는 동작(2606); 및 서버로부터 음성 인식 결과를 수신하는 동작(2608)을 포함할 수 있으며, 음성 인식 결과는, 제1 프레임들 및 제2 프레임들을 기반으로 적어도 하나의 누락된 프레임을 식별하고, 학습된 머신 러닝 모델(712)을 기반으로, 제1 프레임들 및 제2 프레임들을 이용하여 적어도 하나의 누락된 프레임에 대응하는 적어도 하나의 프레임을 생성(906)하고, 제1 프레임들, 제2 프레임들, 또는 적어도 하나의 생성된 프레임을 기반으로 음성 인식 동작을 수행한 결과를 포함할 수 있다.A method of an electronic device according to one embodiment of the present disclosure comprises: an operation (2602) of acquiring visual data (904) associated with lips of a speaker through at least one camera (180) (310) of an electronic device (101) (301) during a first time period; an operation (2604) of acquiring audio data (902) associated with voice of the speaker through at least one microphone (150) (320) of the electronic device (101) (301) during a first time period; an operation (2606) of transmitting first frames corresponding to the acquired visual data (904) and second frames corresponding to the acquired audio data (902) to a server; And may include an operation (2608) of receiving a voice recognition result from the server, wherein the voice recognition result may include a result of identifying at least one missing frame based on the first frames and the second frames, generating at least one frame corresponding to the at least one missing frame using the first frames and the second frames based on the learned machine learning model (712) (906), and performing a voice recognition operation based on the first frames, the second frames, or the at least one generated frame.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.
본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to various embodiments disclosed in the present document may be provided as included in a computer program product. The computer program product may be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체들을 포함할 수 있으며, 복수의 개체들 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and arranged in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
Claims (15)
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR10-2024-0081458 | 2024-06-21 | ||
| KR20240081458 | 2024-06-21 | ||
| KR10-2024-0093297 | 2024-07-15 | ||
| KR1020240093297A KR20250179536A (en) | 2024-06-21 | 2024-07-15 | Electronic device and method for voice recognition |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025264031A1 true WO2025264031A1 (en) | 2025-12-26 |
Family
ID=98213800
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2025/008582 Pending WO2025264031A1 (en) | 2024-06-21 | 2025-06-20 | Electronic device and method for speech recognition |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025264031A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20150041279A (en) * | 2013-10-08 | 2015-04-16 | 엘지전자 주식회사 | Mobile terminal and method for controlling the terminal |
| US20200236420A1 (en) * | 2009-07-31 | 2020-07-23 | Sky Cp Limited | Media insertion system |
| KR20230015235A (en) * | 2021-07-22 | 2023-01-31 | 주식회사 마인즈랩 | Apparatus, method and computer program for providing lip-sync images and apparatus, method and computer program for displaying lip-sync images |
| KR20240044673A (en) * | 2022-09-29 | 2024-04-05 | 주식회사 뮤링크 | SoC for edge to support lip-reading networks |
| KR20240051392A (en) * | 2022-10-12 | 2024-04-22 | 주식회사 램스 | Voice recognition system and method to use lip-reading skill |
-
2025
- 2025-06-20 WO PCT/KR2025/008582 patent/WO2025264031A1/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200236420A1 (en) * | 2009-07-31 | 2020-07-23 | Sky Cp Limited | Media insertion system |
| KR20150041279A (en) * | 2013-10-08 | 2015-04-16 | 엘지전자 주식회사 | Mobile terminal and method for controlling the terminal |
| KR20230015235A (en) * | 2021-07-22 | 2023-01-31 | 주식회사 마인즈랩 | Apparatus, method and computer program for providing lip-sync images and apparatus, method and computer program for displaying lip-sync images |
| KR20240044673A (en) * | 2022-09-29 | 2024-04-05 | 주식회사 뮤링크 | SoC for edge to support lip-reading networks |
| KR20240051392A (en) * | 2022-10-12 | 2024-04-22 | 주식회사 램스 | Voice recognition system and method to use lip-reading skill |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2021071115A1 (en) | Electronic device for processing user utterance and method of operating same | |
| WO2021137629A1 (en) | Display device, mobile device, video calling method performed by the display device, and video calling method performed by the mobile device | |
| WO2016114428A1 (en) | Method and device for performing voice recognition using grammar model | |
| WO2020263016A1 (en) | Electronic device for processing user utterance and operation method therefor | |
| WO2019017665A1 (en) | Electronic apparatus for processing user utterance for controlling an external electronic apparatus and controlling method thereof | |
| WO2022050785A1 (en) | Display device and operating method therefor | |
| WO2023282576A1 (en) | Ambient sound control method and electronic device for same | |
| WO2022131533A1 (en) | Ambient sound control method and electronic device therefor | |
| WO2022010187A1 (en) | Electronic device and authentication operation method of electronic device | |
| WO2022035193A1 (en) | Electronic device for providing text associated with content, and operating method therefor | |
| WO2025264031A1 (en) | Electronic device and method for speech recognition | |
| WO2025042119A1 (en) | Electronic device for identifying symptoms related to parkinson's disease, operation method thereof, and wearable electronic device | |
| WO2020190001A1 (en) | Electronic device controlling attribute of object on basis of user's motion, and control method therefor | |
| WO2020230924A1 (en) | Speech synthesis apparatus using artificial intelligence, operation method of speech synthesis apparatus, and computer-readable recording medium | |
| WO2023191314A1 (en) | Method for providing information, and electronic device for supporting same | |
| WO2023106802A1 (en) | Method for providing chatbot for rehabilitation education for hearing loss patient, and system therefor | |
| WO2026010489A1 (en) | Electronic device and method for generating story content data by using artificial intelligence model in electronic device | |
| WO2025258823A1 (en) | Electronic device, method, and non-transitory computer-readable storage medium for using indicator in split screens | |
| WO2025263832A1 (en) | Electronic device and method for operating electronic device | |
| WO2025244438A1 (en) | Electronic device and method for providing emoji related to message of message application | |
| WO2025254316A1 (en) | Electronic device, method, and non-transitory computer-readable storage medium for providing data derived from data stored on clipboard | |
| WO2025143513A1 (en) | Electronic device, method, and non-transitory computer-readable recording medium for adjusting volume of audio signal | |
| WO2025018706A1 (en) | Electronic device, method, and non-transitory computer-readable storage medium for sharing generated image | |
| WO2025249793A1 (en) | Electronic device for generating image and control method thereof | |
| WO2025258824A1 (en) | Electronic device, method, and non-transitory computer-readable storage medium for generating additional region of video frame |