WO2022124640A1 - 전자장치 및 그 제어방법 - Google Patents

전자장치 및 그 제어방법 Download PDF

Info

Publication number
WO2022124640A1
WO2022124640A1 PCT/KR2021/017223 KR2021017223W WO2022124640A1 WO 2022124640 A1 WO2022124640 A1 WO 2022124640A1 KR 2021017223 W KR2021017223 W KR 2021017223W WO 2022124640 A1 WO2022124640 A1 WO 2022124640A1
Authority
WO
WIPO (PCT)
Prior art keywords
external device
information
identified
electronic device
processor
Prior art date
Application number
PCT/KR2021/017223
Other languages
English (en)
French (fr)
Inventor
부영종
Original Assignee
삼성전자(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자(주) filed Critical 삼성전자(주)
Priority to EP21903686.0A priority Critical patent/EP4231286A4/en
Priority to US17/570,152 priority patent/US20220189478A1/en
Publication of WO2022124640A1 publication Critical patent/WO2022124640A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/22Interactive procedures; Man-machine interfaces
    • G10L17/24Interactive procedures; Man-machine interfaces the user being prompted to utter a password or a predefined phrase
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/02Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Definitions

  • the present disclosure relates to an electronic device for performing a voice recognition function and a method for controlling the same.
  • voice recognition function the electronic device must go through a process such as connecting to a network or registering an account.
  • the electronic device is not connected to a network or does not have information necessary for account registration, the user is burdened with finding necessary information one by one.
  • the voice recognition function of a plurality of connected electronic devices when used, the user may confuse the use through different names and utterances.
  • An object of the present disclosure is to provide an electronic device that provides a better service using a voice recognition function and a control method thereof.
  • An electronic device comprising: an interface unit communicating with an external device; Identifies a command related to the external device based on a second audio signal received after a first audio signal identified as corresponding to a start command of the external device received through the interface unit, and transmits the identified command to the external device Identifies the state of the external device based on whether the device can perform, and based on the identified state of the external device, information necessary for the external device to perform a function corresponding to the identified command is transmitted to the interface and a processor for transmitting to the external device through the unit.
  • the processor may identify the state of the external device based on at least one of whether the external device is connected to a network or has authentication information.
  • the processor may receive information on the state of the external device based on the received first audio signal corresponding to a start command of the external device.
  • the processor may control the interface unit to transmit temporary information related to information corresponding to a function to be performed by the external device.
  • the temporary information includes information available for a preset time or number of times.
  • the processor may identify another external device that obtains information corresponding to a function to be performed by the external device, and receive the information from the identified other external device.
  • the processor may identify a command regarding the external device corresponding to the second audio signal based on the natural language processing engine .
  • the electronic device may further include a display, and the processor may control the display to display a graphical user interface (GUI) indicating a state of the identified external device.
  • GUI graphical user interface
  • a command related to the external device is identified based on a second audio signal received after the first audio signal identified as corresponding to the start command of the external device to do; and transmitting information necessary for the external device to perform a function corresponding to the identified command to the external device based on the identified state of the external device.
  • the identifying of the state of the external device may include identifying the state of the external device based on at least one of whether the external device is connected to a network or has authentication information.
  • the identifying of the state of the external device may include receiving information on the state of the external device based on the received first audio signal corresponding to a start command of the external device.
  • the transmitting of the information corresponding to the function to be performed by the external device to the external device may include transmitting temporary information related to information corresponding to the function to be performed by the external device.
  • the identifying of the command related to the external device may include identifying the command related to the external device corresponding to the second audio signal based on a natural language processing engine.
  • the method of controlling an electronic device may further include displaying a graphical user interface (GUI) indicating a state of the identified external device.
  • GUI graphical user interface
  • a computer readable code in a recording medium storing a computer program including a code for performing a control method of an electronic device, wherein the second audio signal is received after the first audio signal identified as corresponding to the start command of the external device. identifying a command related to the external device based on an audio signal; identifying a state of the external device based on whether the external device can execute the identified command; and transmitting information necessary for the external device to perform a function corresponding to the identified command to the external device based on the identified state of the external device.
  • a service can be provided through connection with another device using a voice recognition function. Accordingly, the user can use the function without going through a separate device registration process, thereby improving user convenience.
  • FIG. 1 is a diagram illustrating an entire system according to an embodiment of the present disclosure.
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram illustrating an operation flowchart of an electronic device according to an embodiment of the present disclosure.
  • FIG. 4 is a diagram illustrating an operation flowchart of an electronic device according to an embodiment of the present disclosure.
  • FIG. 5 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • FIG. 6 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • FIG. 7 is a diagram illustrating an operation flowchart of an electronic device according to an embodiment of the present disclosure.
  • FIG. 8 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • FIG. 9 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • FIG. 10 is a diagram illustrating an operation flowchart of an electronic device according to an embodiment of the present disclosure.
  • a 'module' or 'unit' performs at least one function or operation, may be implemented as hardware or software, or may be implemented as a combination of hardware and software, and may be integrated into at least one module and can be implemented.
  • at least one of the plurality of elements refers to all of the plurality of elements, as well as each one or a combination thereof excluding the rest of the plurality of elements.
  • FIG. 1 is a diagram illustrating an entire system according to an embodiment of the present disclosure.
  • FIG. 1 illustrates an electronic device 100 , an external device 200 , an access point (AP) 300 and a user 10 .
  • AP access point
  • the electronic device 100 is illustrated as a TV and the external device 200 is illustrated as a speaker, but the present invention is not limited thereto and the electronic device 100 and the external device 200 are implemented as a display device capable of displaying an image. Alternatively, it may be implemented as a device without a display.
  • the electronic device 100 and the external device 200 include a TV, an AI assistant device (AI speaker, etc.), a computer, a smart phone, a tablet PC, a notebook PC, a head mounted display (HMD), and a near eye display (NED). ), large format display (LFD), Digital Signage (digital signage), DID (Digital Information Display), video wall, projector display, QD (quantum dot) display panel, QLED (quantum dot light-emitting diodes) It may include various types of displays, such as micro light-emitting diodes ( ⁇ LEDs) and mini LEDs, and cameras, camcorders, wearable devices, video walls, electronic picture frames, and the like.
  • ⁇ LEDs micro light-emitting diodes
  • mini LEDs mini LEDs
  • the electronic device 100 and the external device 200 include various types of devices, such as image processing devices such as set-top boxes without a display, household appliances such as refrigerators, Bluetooth speakers, washing machines, and information processing devices such as computer bodies. can be implemented as
  • the electronic device 100 and the external device 200 are devices capable of performing a voice recognition function.
  • the AP 300 shown in FIG. 1 is illustrated as a wireless LAN or Wi-Fi router, the AP 300 of the present invention connects the electronic device 100 and the external device 200 irrespective of the type and name. Any device that acts as an intermediary that connects to the network is possible. Communication methods for network connection can be broadly divided into wired technology and wireless technology. As wired technology, there is a method using a telephone line, a power line, Ethernet, IEEE 1394, USB (Universal Serial Bus), and the like. Wireless technologies include IEEE 802.11x series wireless LAN (LAN), HomeRF, Bluetooth, broadband communication (UWB, UltraWideBand), Zigbee, HiperLAN, and the like.
  • the electronic device 100 and the external device 200 may be connected in an ad-hoc mode or an infrastructure mode interconnected through the AP 300 .
  • the present invention will be described on the assumption that the wireless LAN (LAN) communication method of the IEEE 802.11x series is selected as the communication method of the network and the wireless LAN AP 300 is used.
  • LAN wireless LAN
  • the electronic device 100 is connected to the AP 300 , while the external device 200 is not connected to the AP 300 .
  • the user 10 intends to use the voice recognition function of the external device 200 .
  • the current external device 200 cannot perform the corresponding function because it is not connected to the network.
  • the external device 200 needs a network connection to transmit mail, and is not connected to the network, so it cannot perform the corresponding function. can't
  • the present disclosure proposes a method for enabling an external device to perform a network connection or a user account connection in order to perform a voice recognition function through an electronic device.
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure.
  • the electronic device 100 may include an interface unit 110 .
  • the interface unit 110 may include a wired interface unit 111 .
  • the wired interface unit 111 includes a connector or port to which an antenna capable of receiving a broadcast signal according to a broadcasting standard such as terrestrial/satellite broadcasting can be connected, or a cable capable of receiving a broadcast signal according to a cable broadcasting standard can be connected. do.
  • the electronic device 100 may have a built-in antenna capable of receiving a broadcast signal.
  • Wired interface unit 111 is an HDMI port, DisplayPort, DVI port, Thunderbolt, composite video, component (component) video, super video (super video), SCART, such as, such as, video and / or audio transmission standards according to It may include a connector or a port, and the like.
  • the wired interface unit 111 may include a connector or port according to a universal data transmission standard, such as a USB port.
  • the wired interface unit 111 may include a connector or a port to which an optical cable can be connected according to an optical transmission standard.
  • the wired interface unit 111 is connected to an external microphone or an external audio device having a microphone, and may include a connector or port capable of receiving or inputting an audio signal from the audio device.
  • the wired interface unit 111 is connected to an audio device such as a headset, earphone, or external speaker, and may include a connector or port capable of transmitting or outputting an audio signal to the audio device.
  • the wired interface unit 111 may include a connector or port according to a network transmission standard such as Ethernet.
  • the wired interface unit 111 may be implemented as a LAN card connected to a router or a gateway by wire.
  • the wired interface unit 111 is wired through the connector or port in a 1:1 or 1:N (N is a natural number) method with an external device such as a set-top box, an optical media player, or an external display device, speaker, server, etc. By being connected, a video/audio signal is received from the corresponding external device or a video/audio signal is transmitted to the corresponding external device.
  • the wired interface unit 111 may include a connector or port for separately transmitting video/audio signals.
  • the wired interface unit 111 is embedded in the electronic device 100 , but may be implemented in the form of a dongle or a module to be detachably attached to the connector of the electronic device 100 .
  • the interface unit 110 may include a wireless interface unit 112 .
  • the wireless interface unit 112 may be implemented in various ways corresponding to the implementation form of the electronic device 100 .
  • the wireless interface unit 112 is a communication method RF (radio frequency), Zigbee (Zigbee), Bluetooth (bluetooth), Wi-Fi (Wi-Fi), UWB (Ultra WideBand) and NFC (Near Field Communication), etc.
  • Wireless communication can be used.
  • the wireless interface unit 112 may be implemented as a wireless communication module that performs wireless communication with an AP according to a Wi-Fi method, or a wireless communication module that performs one-to-one direct wireless communication such as Bluetooth.
  • the wireless interface unit 112 may transmit and receive data packets to and from the server by wirelessly communicating with the server on the network.
  • the wireless interface unit 112 may include an IR transmitter and/or an IR receiver capable of transmitting and/or receiving an IR (Infrared) signal according to an infrared communication standard.
  • the wireless interface unit 112 may receive or input a remote control signal from a remote control or other external device through an IR transmitter and/or an IR receiver, or transmit or output a remote control signal to another external device.
  • the electronic device 100 may transmit/receive a remote control signal to and from the remote control or other external device through the wireless interface unit 112 of another method such as Wi-Fi or Bluetooth.
  • the electronic device 100 may further include a tuner for tuning the received broadcast signal for each channel.
  • the display unit 120 may be included.
  • the display unit 120 includes a display 121 capable of displaying an image on the screen.
  • the display 121 is provided in a light-receiving structure such as a liquid crystal type or a self-luminous structure such as an OLED type.
  • the display unit 120 may further include additional components according to the structure of the display 121 .
  • the display unit 120 may include a liquid crystal display panel and light. It includes a backlight unit for supplying, and a panel driving substrate for driving the liquid crystal of the liquid crystal display panel.
  • the electronic device 100 may include a user input unit 130 .
  • the user input unit 130 includes various types of input interface related circuits provided to perform user input.
  • the user input unit 130 may be configured in various forms depending on the type of the electronic device 100 , for example, a mechanical or electronic button unit of the electronic device 100 , a remote controller separated from the electronic device 100 , and an electronic device.
  • the electronic device 100 may include a storage unit 140 .
  • the storage unit 140 stores digitized data.
  • the storage unit 140 is a nonvolatile storage capable of preserving data regardless of whether power is supplied or not, and data to be processed by the processor 180 is loaded, and data is stored when power is not provided. This includes memory with volatile properties that cannot be used. Storage includes flash-memory, hard-disc drive (HDD), solid-state drive (SSD), read-only memory (ROM), etc., and memory includes buffer and random access memory (RAM). etc.
  • the storage unit 140 may store information about an artificial intelligence model including a plurality of layers.
  • storing information about the artificial intelligence model means various information related to the operation of the artificial intelligence model, for example, information on a plurality of layers included in the artificial intelligence model, parameters used in each of the plurality of layers (for example, , filter coefficients, bias, etc.) may be stored.
  • the storage 140 may store information on the artificial intelligence model learned to acquire upscaling information (or voice recognition related information, object information in the image, etc.) of the input image according to an embodiment.
  • information about the artificial intelligence model may be stored in the processor's internal memory.
  • the electronic device 100 may include a microphone 150 .
  • the microphone 150 collects sounds of the external environment including the user's voice.
  • the microphone 150 transmits the collected sound signal to the processor 180 .
  • the electronic device 100 may include a microphone 150 for collecting user voices or may receive a voice signal from an external device such as a remote controller having a microphone or a smart phone through the interface unit 110 .
  • a remote controller application may be installed in an external device to control the electronic device 100 or perform functions such as voice recognition. In the case of an external device installed with such an application, a user voice can be received, and the external device can transmit/receive and control data using the electronic device 100 and Wi-Fi/BT or infrared rays, etc.
  • a plurality of interface units 110 that can be implemented may exist in the electronic device 100 .
  • the electronic device 100 may include a speaker 160 .
  • the speaker 160 outputs audio data processed by the processor 180 as sound.
  • the speaker 160 may include a unit speaker provided to correspond to audio data of one audio channel, and may include a plurality of unit speakers to respectively correspond to audio data of a plurality of audio channels.
  • the speaker 160 may be provided separately from the electronic device 100 . In this case, the electronic device 100 may transmit audio data to the speaker 160 through the interface unit 110 .
  • the electronic device 100 may include a sensor 170 .
  • the sensor 170 may detect a state of the electronic device 100 or a state around the electronic device 100 , and transmit the sensed information to the processor 180 .
  • the sensor 170 includes a geomagnetic sensor, an acceleration sensor, a temperature/humidity sensor, an infrared sensor, a gyroscope sensor, a position sensor (eg, GPS), a barometric pressure sensor, a proximity sensor, and an RGB sensor ( illuminance sensor), but is not limited thereto. Since a function of each sensor can be intuitively inferred from the name of a person skilled in the art, a detailed description thereof will be omitted.
  • the processor 180 may store a sensing value defined as a tap between the electronic device 100 and the external device 200 in the storage unit 140 . Later, when a user event is detected, the processor 180 may identify whether the user event has occurred based on whether the sensed sensed value corresponds to a stored sensed value.
  • the electronic device 100 may include a processor 180 .
  • the processor 180 includes one or more hardware processors implemented with a CPU, a chipset, a buffer, a circuit, etc. mounted on a printed circuit board, and may be implemented as a system on chip (SOC) depending on a design method.
  • SOC system on chip
  • the processor 180 includes modules corresponding to various processes such as a demultiplexer, a decoder, a scaler, an audio digital signal processor (DSP), and an amplifier.
  • DSP audio digital signal processor
  • some or all of these modules may be implemented as SOC.
  • a module related to image processing such as a demultiplexer, decoder, and scaler may be implemented as an image processing SOC
  • an audio DSP may be implemented as a chipset separate from the SOC.
  • the processor 180 may control to process input data according to a predefined operation rule or an artificial intelligence model stored in the storage 140 .
  • the processor 180 when it is a dedicated processor (or an artificial intelligence-only processor), it may be designed as a hardware structure specialized for processing a specific artificial intelligence model.
  • hardware specialized for processing a specific artificial intelligence model may be designed as a hardware chip such as an ASIC or FPGA.
  • the output data may have various forms depending on the type of artificial intelligence model.
  • the output data may be an image with improved resolution, object related information included in the image, text corresponding to a voice, and the like, but is not limited thereto.
  • the processor 180 may convert the voice signal into voice data.
  • the voice data may be text data obtained through a speech-to-text (STT) process for converting a voice signal into text data.
  • STT speech-to-text
  • the processor 180 identifies a command indicated by the voice data and performs an operation according to the identified command.
  • the voice data processing process and the command identification and execution process may all be executed in the electronic device 100 .
  • at least a part of the process is performed by at least one server communicatively connected to the electronic device 100 through a network. can be performed.
  • the processor 180 may call at least one command among commands of software stored in a storage medium readable by a machine such as the electronic device 100 and execute it. This enables a device such as the electronic device 100 to be operated to perform at least one function according to the called at least one command.
  • the one or more instructions may include code generated by a compiler or code executable by an interpreter.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-transitory' only means that the storage medium is a tangible device and does not include a signal (eg, electromagnetic wave), and this term refers to cases in which data is semi-permanently stored in a storage medium and temporary storage. It does not distinguish between cases where
  • the processor 180 identifies a command related to the external device 200 based on the second audio signal received after the first audio signal identified as corresponding to the start command of the external device 200, the external device Identifies the state of 200 and controls to transmit information corresponding to a function to be performed by the external device 200 to the external device 200 through the interface unit 110 based on the identified command and the identified state
  • At least a part of data analysis, processing, and result information generation for performing the operation is performed using at least one of machine learning, a neural network, or a deep learning algorithm as a rule-based or artificial intelligence algorithm can do.
  • An artificial intelligence system is a computer system that implements human-level intelligence. It is a system in which a machine learns and judges by itself, and the recognition rate improves the more it is used.
  • Artificial intelligence technology consists of machine learning (deep learning) technology that uses an algorithm that classifies/learns the characteristics of input data by itself, and element technology that uses machine learning algorithms to simulate functions such as cognition and judgment of the human brain.
  • Element technologies are, for example, linguistic understanding technology for recognizing human language/text, visual understanding technology for recognizing objects as from human vision, reasoning/prediction technology for logically reasoning and predicting by judging information, and human experience information It may include at least one of a knowledge expression technology that processes the data as knowledge data, an autonomous driving of a vehicle, and a motion control technology that controls the movement of a robot.
  • Linguistic understanding is a technology for recognizing and applying/processing human language/text, and includes natural language processing, machine translation, dialogue system, question and answer, and speech recognition/synthesis.
  • Visual understanding is a technology for recognizing and processing objects like human vision, and includes object recognition, object tracking, image search, human recognition, scene understanding, spatial understanding, image improvement, and the like.
  • Inferential prediction is a technology for logically reasoning and predicting by judging information, and includes knowledge/probability-based reasoning, optimization prediction, preference-based planning, and recommendation.
  • Knowledge expression is a technology that automatically processes human experience information into knowledge data, and includes knowledge construction (data generation/classification) and knowledge management (data utilization).
  • the processor 180 may perform the functions of the learning unit and the recognition unit together.
  • the learning unit may perform a function of generating a learned neural network
  • the recognition unit may perform a function of recognizing (or inferring, predicting, estimating, determining) data using the learned neural network.
  • the learning unit may create or update the neural network.
  • the learning unit may acquire learning data to generate a neural network.
  • the learning unit may acquire the learning data from the storage 140 or the outside.
  • the learning data may be data used for learning of the neural network, and the neural network may be trained by using the data obtained by performing the above-described operation as learning data.
  • the learning unit may perform a preprocessing operation on the acquired training data before training the neural network using the training data, or may select data to be used for learning from among a plurality of training data. For example, the learning unit may process the learning data in a preset format, filter it, or add/remove noise to process the learning data into a form suitable for learning. The learner may generate a neural network set to perform the above-described operation by using the preprocessed learning data.
  • the learned neural network network may be composed of a plurality of neural network networks (or layers).
  • the nodes of the plurality of neural networks have weight values, and the neural network operation is performed through the operation between the operation result of the previous layer and the plurality of weights.
  • the plurality of neural networks may be connected to each other so that an output value of one neural network is used as an input value of another neural network.
  • Examples of neural networks include Convolutional Neural Network (CNN), Deep Neural Network (DNN), Recurrent Neural Network (RNN), Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), Bidirectional Recurrent Deep Neural Network (BRDNN) and It can include models such as Deep Q-Networks.
  • the recognizer may acquire target data to perform the above-described operation.
  • the target data may be obtained from the storage 140 or from the outside.
  • the target data may be data to be recognized by the neural network.
  • the recognizer may perform preprocessing on the acquired target data before applying the target data to the learned neural network, or select data to be used for recognition from among a plurality of target data.
  • the recognition unit may process the target data into a preset format, filter, or add/remove noise to process the target data into a form suitable for recognition.
  • the recognizer may obtain an output value output from the neural network by applying the preprocessed target data to the neural network.
  • the recognition unit may obtain a probability value or a reliability value together with the output value.
  • the learning of the artificial intelligence model and the generation of training data may be performed through an external server. However, in some cases, learning of the artificial intelligence model is performed in the electronic device, and of course, training data may also be generated in the electronic device.
  • the method for controlling the electronic device 100 according to the present invention may be provided by being included in a computer program product.
  • the computer program product may include instructions for software executed by the processor 180 , as described above.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product is distributed in the form of a machine-readable storage medium (eg, CD-ROM), or via an application store (eg, Play StoreTM) or between two user devices (eg, smartphones). It may be distributed directly, online (eg, downloaded or uploaded). In the case of online distribution, at least a part of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server.
  • a machine-readable storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server.
  • FIG. 3 is a diagram illustrating an operation flowchart of an electronic device according to an embodiment of the present disclosure.
  • the processor 180 provides a command related to the external device 200 based on a second audio signal received after the first audio signal identified as corresponding to the start command of the external device 200 . is identified (S310).
  • the processor 180 identifies whether the received first audio signal corresponds to the start command based on information about the signal waveform, length, etc. of the start command.
  • the processor 180 may use information previously stored in the storage unit 140 or may obtain information through communication with a server or the like.
  • the processor 180 may store or acquire information about a plurality of external devices having different start commands and supporting a voice recognition function as well as information on the start command of the electronic device 100 .
  • the processor 180 identifies the external device 200 corresponding to the identified start command.
  • the electronic device 100 further includes an engine for processing and recognizing the start command of the external device 200 in addition to the engine for processing and recognizing its own start command, and an external corresponding engine through the engine corresponding to the identified start command Device 200 may be identified.
  • the processor 180 may store information about a manufacturer corresponding to the identified start command, and identify a device manufactured by the corresponding manufacturer among external devices existing in the vicinity.
  • a method of identifying a device corresponding to the identified start command is applicable without limitation. For example, in response to the reception of the first audio signal, the processor 180 searches for an external device existing in the vicinity using a Bluetooth or IR signal, etc., and determines whether the first audio signal is a start command of the searched external device. can be identified.
  • the processor 180 identifies that the identified start command is the start command of the external device 200 based on the received first audio signal, It can be identified that the voice recognition function is triggered.
  • the identified command execution subject is the external device 200 , that is, when the user utters the command to the external device 200 .
  • the processor 180 identifies a command related to the external device 200 based on the second audio signal received after the first audio signal.
  • the processor 180 transmits information corresponding to a function to be performed by the external device 200 according to the identified command, based on the identified state of the external device, to the external device 200 through the interface unit. to (S320).
  • the state of the external device 200 is identified based on whether it is in a state capable of executing the identified command. For example, when the identified command requires an operation to transmit a mail through a specific account, the processor 180 determines whether the external device 200 is connected to a network or has authentication information. ) to identify the state of In addition to this, the external device 200 itself can identify its own state, or a third device, for example, a server, can identify the state of the external device 200 , and the processor 180 is the interface unit 110 . Information on the state of the external device 200 may be received through .
  • the processor 180 determines whether the external device 200 is connected to a network to perform mail transmission, You can check if you are logged in.
  • the processor 180 connects between the electronic device 100 and the external device 200 using Bluetooth or an IR signal, and requests information on the state of the external device 200 .
  • information on its own state may be received from the external device 200 .
  • BLE Bluetooth Low Energy
  • Broadcasting is a connectionless method, and is a method of periodically transmitting data advertising its existence to nearby devices or receiving data from other devices.
  • a device that uses this method is divided into a Broadcaster that periodically transmits data packets and an Observer that repeatedly receives the transmitted advertisement message.
  • the broadcasting method is suitable for periodically transmitting a small amount of data because the maximum amount of data to be transmitted is 31 bytes.
  • selecting one of the devices identified through broadcasting and connecting 1:1 is called Connection.
  • the processor 180 may find a signal of a peripheral device through the BLE technology.
  • the external device 200 transmits information confirming the same to the electronic device 100 again can be sent to
  • the information corresponding to the function to be performed by the external device 200 means information necessary based on the state of the external device 200 among information necessary to perform an operation according to the identified command.
  • the processor 180 may identify necessary information according to the identified command based on the identified state, and transmit the identified information to the external device 200 .
  • the identified command is “send mail to my account”, and the processor 180 is not connected to the network of the external device 200 or even if it is connected to the network, my account It can be identified that either does not have information about the , or neither is applicable.
  • the processor 180 may transmit necessary information among the information on the network connection and the information on the my account to the external device 200 through the interface unit 110 .
  • the external device 200 itself identifies its state, and the processor 180 transmits information to the external device 200 based on receiving a signal requesting necessary information from the external device 200 .
  • a third device for example, a server, identifies the state of the external device 200 , and the processor 180 transmits information to the external device 200 based on receiving a signal requesting necessary information from the server.
  • the external device 200 may connect a network based on the received network connection information, or perform an operation of transmitting an email after logging in based on the information on my account.
  • a service can be provided through connection with another device using a voice recognition function. Accordingly, the user can use the function without going through a separate device registration process, thereby improving user convenience.
  • FIG. 4 is a diagram illustrating an operation flowchart of an electronic device according to an embodiment of the present disclosure.
  • the electronic device 100 and the external device 200 are products having different start commands.
  • the start command of the electronic device 100 is “Hi, Bixby” and the start command of the external device 200 is “XX”. Assume
  • the processor 180 receives the first audio signal and the second audio signal corresponding to “XX, send mail to my account” (S410).
  • the processor 180 identifies the first audio signal using an engine that processes and recognizes the start command, and identifies that the command corresponding to the second audio signal is a command for controlling the external device 200 .
  • the processor 180 receives an audio signal corresponding to the user's utterance, and converts the content of the utterance into text data based on the received audio signal through a speech-to-text (STT) processing process to convert text data to can be obtained
  • the processor 180 identifies the user's utterance intention using the acquired text data using a natural language processing engine.
  • the natural language processing engine is an engine prepared for Natural Language Understanding (NLU), and the processor 180 may infer not only the user's speech but also what the user's speech actually means by using the natural language processing engine. Since the natural language processing engine has a complicated operation structure and requires a large amount of data, it is generally provided separately, but may be provided in the electronic device 100 to process a relatively simple voice recognition function. More details on the on-device voice recognition engine will be described later with reference to FIG. 6 .
  • the processor 180 transmits the protocol corresponding to the start command of the external device 200 and data of the received second audio signal to the external device 200, A voice recognition result may be received from the external device 200 .
  • the processor 180 determines which device performs the operation of the command corresponding to the received second audio signal. It is necessary to identify
  • the user's intention to use the function of the device may be identified to identify the subject performing the operation.
  • the processor of each device identifies the utterance level and the noise level of the received audio signal, compares the signal-to-noise ratio (SNR), and selects a device with a high SNR as an operation execution entity. can be identified.
  • SNR signal-to-noise ratio
  • the processor 180 identifies the state of the external device 200, that is, whether the external device 200 is connected to the network as described in S320 of FIG. 3 (S420).
  • the processor 180 provides network connection information , for example, a network ID, a network password, etc. are transmitted to the external device 200 (S430).
  • the processor 180 determines whether the external device 200 is connected to my account. Identifies (S440). If the external device 200 is not connected to my account (No in S440 ), the processor 180 transmits account connection information, for example, an account ID and an account password, to the external device 200 . If the external device 200 is connected to my account (Yes in S440), the processor 180 ends the operation.
  • account connection information for example, an account ID and an account password
  • the registration process can be performed only with the user's utterance command, thereby providing convenience to the user.
  • FIG. 5 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • the processor 180 generates temporary information 510 of information corresponding to a function to be performed by the external device 200 .
  • Temporary information 510 is not information itself corresponding to a function to be performed by the external device 200, but is arbitrarily generated information to be effectively used for operation.
  • the network connection ID is sweethome101
  • the password is galaxy
  • the processor 180 arbitrarily generates temporary information 510 with a connection ID of adc1 and a password of 1234 to an external device. (200) can be passed.
  • the external device 200 inputs the temporary information 510 to connect to the AP 300
  • the AP 300 may recognize it as incorrect information, so the processor 180 performs the AP 300 .
  • the temporary information 510 may be transmitted to enable the external device 200 to connect to the network when the temporary information 510 is used later.
  • the processor 180 converts the generated temporary information 510 to information available for a predetermined time or a predetermined number of times. can be set.
  • processor 180 may control to display a GUI related to authentication or user agreement agreement on the display 121 .
  • security can be maintained even when personal information such as a password is transmitted, so that information for using the device can be safely and conveniently transmitted and received.
  • FIG. 6 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • a voice recognition engine such as a natural language processing engine mainly exists in a server and is used through network communication.
  • an electronic device having an on device engine has been developed so that a simple voice recognition function can be processed by the device itself. If the on device engine is used, voice recognition results can be obtained without communicating with the server, speeding up the speed and enhancing security.
  • the processor 180 in relation to S310 of FIG. 3, is a command corresponding to the second audio signal received based on the on device engine 610 to identify
  • the processor 180 operates like the AP 300 to serve as a network sharer to the external device 200 to which the network is not connected, or to transmit authentication information such as user account information to the external device 200 without passing through the server. ) can be sent to
  • the processor 180 may generate the temporary information 510 and transmit it to the external device 200 .
  • the processor 180 may transmit information required by the external device 200 in the form of an IR signal, and in addition to this, a transmission method such as non-audible sound range communication or Bluetooth may be used.
  • the external device 200 can directly identify the start command.
  • the voice recognition function is triggered based on the identification of the start command, the external device may transmit a signal requesting necessary information to the electronic device 100 when a network connection or account registration is required by self-identifying the device state. That is, when information is required, such as when the external device 100 is newly installed or the network settings connected to the existing device are initialized, through communication with a device connectable within the environment in which the external device 200 is installed, for example, the electronic device 100 .
  • the voice recognition function can be performed without connecting to an external server, etc.
  • the processor 180 may transmit requested information to the external device 200 based on a signal received from the external device 200 . Even in this case, since necessary information is transmitted and received between the electronic device 100 and the external device 200 without going through the server, information can be safely transmitted.
  • FIG. 7 is a diagram illustrating an operation flowchart of an electronic device according to another embodiment of the present disclosure.
  • a plurality of voice recognition devices sets a device to perform a voice recognition function as a representative (S710).
  • the representative device may be set by a user input, or may be set by selecting a device for optimizing a voice recognition function among a plurality of voice recognition devices, and is not limited thereto.
  • setting by user input for example, "Hi Bixby, set the TV as the representative device.” It can be set by Hereinafter, it is assumed that the electronic device 100 is set as a representative device.
  • the processor 180 analyzes another voice recognition device (S720). More specifically, the processor 180 checks the network connection state of the peripheral external device (S721). First, a device requesting a network connection among external devices existing in the vicinity of the electronic device 100 is identified, and a start command call and signal corresponding to the external device are identified.
  • the processor 180 checks the existence of a peripheral external device through various start command calls (S722). Identifies the external device that responds when the start command is called, identifies whether there is a network connection, and connects if necessary.
  • the processor 180 confirms the registration of the new voice recognition device (S730).
  • the processor 180 may identify it and perform an operation corresponding thereto. In this case, the processor 180 may control the previously identified and registered new voice recognition apparatus to perform the operation instead of performing the operation corresponding to the command. Accordingly, the new voice recognition device may support a connection with a voice recognition engine and a voice recognition function by using the electronic device 100 as an external device without initial setting such as a network connection after installation.
  • the processor 180 when the processor 180 receives a user input “Hi Bixby, listen to the news” (S740), another external device performs the operation instead, such as when the electronic device 100 is already performing another function.
  • a suitable external device can be identified when it is necessary to do it or according to the function to be performed.
  • the electronic device 100 unnecessarily consumes a lot of power when performing the corresponding function, for example, it is appropriate to activate only the speaker function to listen to news, but the electronic device 100 consumes power compared to the external device.
  • the processor 180 may identify an external device to perform the operation, and may control to output "news will be read as XX. XX, read news" through the speaker 160 (S750). In this case, the new voice recognition apparatus may perform a function (S760).
  • the processor 180 may cause another external device connected to the network to perform an operation corresponding to a newly received user input, or assist an external device not connected to the network to connect to the network to perform an operation corresponding to the user input. can make it
  • the present disclosure it is advantageous in terms of energy consumption or user convenience because devices that perform a peripheral voice recognition function can be utilized according to time or situation.
  • the user's convenience can be improved because the voice recognition function can be supported and the operation can be performed through the function of the external device. .
  • FIG. 8 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • the electronic device 100 shows a graphical user interface (GUI) that notifies a user of a situation related to the external device 200 described above with reference to FIGS. 3 to 7 .
  • GUI graphical user interface
  • the electronic device 100 further includes a display 121 , and the processor 180 displays a GUI 810 indicating the state of the identified external device 200. 121) is controlled.
  • the processor 180 may control to display a GUI 810 such as “There is a device that requires a network connection. I will connect it” on the display 121, and additionally The name of the device that needs to be connected, for example, 'S-spk-2020' may be displayed together. In this case, there may be one device requiring additional connection, and two or more devices may exist.
  • the processor 180 controls the display 121 to display necessary information of the external device 200 as well as the network connection, or to additionally display a GUI requesting a user input to approve it before transmitting information.
  • FIG. 9 is a diagram illustrating an operation of an electronic device according to an embodiment of the present disclosure.
  • the electronic device 100 shows a graphical user interface (GUI) that notifies a user of a situation related to the external device 200 described above with reference to FIGS. 3 to 7 .
  • GUI graphical user interface
  • the electronic device 100 further includes a display 121 , and the processor 180 displays a GUI 910 indicating the state of the identified external device 200. 121) is controlled.
  • the processor 180 may control to display the GUI 910 such as “There is a device that requires network connection” on the display 121, and additional connection is required.
  • the device name for example, "S-spk-2020, S-mobile, S-rf" may be displayed together.
  • the processor 180 may control the display 121 to additionally display a GUI that allows the user to select a device to be connected from among a plurality of devices that need to be connected.
  • the processor 180 controls the display 121 to display necessary information of the external device 200 as well as the network connection, or to additionally display a GUI requesting a user input to approve it before transmitting information.
  • FIG. 10 is a diagram illustrating an operation flowchart of an electronic device according to an embodiment of the present disclosure.
  • This figure illustrates a case in which the electronic device 100 does not retain information corresponding to a function to be transmitted to the external device 200 in relation to S320 of FIG. 3 .
  • the processor 180 Based on the state of the external device 200 identified in S320 of FIG. 3 , the processor 180 identifies whether information corresponding to a function to be performed by the external device 200 according to a command is retained ( S1010 ) .
  • the processor 180 transmits the information to the external device 200 like other embodiments.
  • the processor 180 identifies another external device that obtains the information (S1020). For example, the processor 180 may identify by transmitting a signal for requesting information and whether to obtain information to another external device existing in the vicinity.
  • the processor 180 receives information from another identified external device through the interface unit 110 (S1030). At this time, when information is received, as described with reference to FIGS. 5 to 6 for security, the information can be received without going through the server by using the temporary information 510 or by using the on device engine.
  • the processor 180 transmits information to the external device 200 based on the received information (S1040).
  • the electronic device can perform a role as an intermediary device to receive and transmit information from the external device that holds other information. , it can make the usage scenario more robust.

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 개시의 일 실시예에 따른 전자장치에 있어서, 외부장치와 통신하는 인터페이스부; 상기 인터페이스부를 통해 수신되는 상기 외부장치의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 상기 외부장치에 관한 명령어를 식별하고, 상기 식별된 명령어를 상기 외부장치가 수행할 수 있는지에 기초하여 상기 외부장치의 상태를 식별하고, 식별된 상기 외부장치의 상태에 기초하여, 상기 식별된 명령어에 대응하는 기능을 상기 외부장치가 수행하기 위해 필요한 정보를 상기 인터페이스부를 통해 상기 외부장치로 전송하는 프로세서를 포함한다.

Description

전자장치 및 그 제어방법
본 출원은 2020년 12월 11일자로 대한민국 특허청에 제출된 대한민국 특허 출원번호 제10-2020-0173196호에 기초한 우선권을 주장하며, 그 개시 내용은 전체가 참조로 본 발명에 포함된다.
본 개시는 음성인식기능을 수행하는 전자장치 및 그 제어방법에 관한 것이다.
음성인식 기술의 대중화로 전자장치의 음성인식 기능 제공이 보편화되고 있다. 음성인식 기능을 이용하기 위해서 전자장치는 네트워크에 연결하거나 계정을 등록하는 등의 과정을 거쳐야 한다. 전자장치가 네트워크에 연결이 되어 있지 않거나, 계정 등록에 필요한 정보를 가지고 있지 않은 경우, 사용자는 필요한 정보를 일일이 찾아야 하는 부담이 존재한다.
보다 간단한 등록 과정을 위해, 이미 연결된 다른 전자장치로부터 등록에 필요한 정보를 네트워크를 통하여 전달받게 되는 경우, 보안에 문제가 발생할 수 있다.
또한, 연결된 복수의 전자장치의 음성인식 기능을 사용하는 경우, 각자 다른 호칭 및 발화를 통하여 사용자가 사용에 혼란을 일으킬 수 있다.
본 개시의 목적은 음성인식 기능을 이용하여 보다 나은 서비스를 제공하는 전자장치 및 그 제어방법을 제공하는 것이다.
본 개시의 일 실시예에 따른 전자장치에 있어서, 외부장치와 통신하는 인터페이스부; 상기 인터페이스부를 통해 수신되는 상기 외부장치의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 상기 외부장치에 관한 명령어를 식별하고, 상기 식별된 명령어를 상기 외부장치가 수행할 수 있는지에 기초하여 상기 외부장치의 상태를 식별하고, 식별된 상기 외부장치의 상태에 기초하여, 상기 식별된 명령어에 대응하는 기능을 상기 외부장치가 수행하기 위해 필요한 정보를 상기 인터페이스부를 통해 상기 외부장치로 전송하는 프로세서를 포함한다.
상기 프로세서는, 상기 외부장치의 네트워크 연결여부 또는 인증정보 보유여부 중 적어도 어느 하나에 기초하여 상기 외부장치의 상태를 식별할 수 있다.
상기 프로세서는, 상기 수신되는 제1오디오신호가 외부장치의 시작명령어에 대응하는 것에 기초하여, 상기 외부장치의 상태에 대한 정보를 수신할 수 있다.
상기 프로세서는, 상기 외부장치가 수행할 기능에 대응하는 정보와 관련된 임시정보를 전송하도록 상기 인터페이스부를 제어할 수 있다.
상기 임시정보는 기설정된 시간 또는 횟수 동안 이용 가능한 정보를 포함한다.
상기 프로세서는, 상기 외부장치가 수행할 기능에 대응하는 정보를 획득하는 다른 외부장치를 식별하고, 식별된 다른 외부장치로부터 상기 정보를 수신할 수 있다.
본 개시의 일 실시예에 따른 전자장치에 있어서, 자연어 처리 엔진을 포함하고, 상기 프로세서는, 상기 자연어 처리 엔진에 기초하여 상기 제2오디오신호에 대응하는 상기 외부장치에 관한 명령어를 식별할 수 있다.
본 개시의 일 실시예에 따른 전자장치에 있어서, 디스플레이를 더 포함하고, 상기 프로세서는, 상기 식별한 외부장치의 상태를 나타내는 GUI(Graphic User Interface)를 표시하도록 상기 디스플레이를 제어할 수 있다.
본 개시의 일 실시예에 따른 전자장치의 제어방법에 있어서, 외부장치의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 상기 외부장치에 관한 명령어를 식별하는 단계; 및 식별된 상기 외부장치의 상태에 기초하여, 상기 식별된 명령어에 대응하는 기능을 상기 외부장치가 수행하기 위해 필요한 정보를 상기 외부장치로 전송하는 단계를 포함한다.
상기 외부장치의 상태를 식별하는 단계는, 상기 외부장치의 네트워크 연결여부 또는 인증정보 보유여부 중 적어도 어느 하나에 기초하여 상기 외부장치의 상태를 식별하는 단계를 포함할 수 있다.
상기 외부장치의 상태를 식별하는 단계는, 상기 수신되는 제1오디오신호가 외부장치의 시작명령어에 대응하는 것에 기초하여, 상기 외부장치의 상태에 대한 정보를 수신하는 단계를 포함할 수 있다.
상기 외부장치가 수행할 기능에 대응하는 정보를 상기 외부장치로 전송하는 단계는, 상기 외부장치가 수행할 기능에 대응하는 정보와 관련된 임시정보를 전송하는 단계를 포함할 수 있다.
상기 외부장치가 수행할 동작에 이용되는 정보를 획득하는 다른 외부장치를 식별하는 단계; 및 식별된 다른 외부장치로부터 상기 정보를 수신하는 단계를 포함할 수 있다.
상기 외부장치에 관한 명령어를 식별하는 단계는, 자연어 처리 엔진에 기초하여 상기 제2오디오신호에 대응하는 상기 외부장치에 관한 명령어를 식별하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 전자장치의 제어방법에 있어서, 식별한 외부장치의 상태를 나타내는 GUI(Graphic User Interface)를 표시하는 단계를 더 포함할 수 있다.
컴퓨터가 읽을 수 있는 코드로서, 전자장치의 제어방법을 수행하는 코드를 포함하는 컴퓨터 프로그램이 저장된 기록매체에 있어서, 외부장치의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 상기 외부장치에 관한 명령어를 식별하는 단계; 상기 식별된 명령어를 상기 외부장치가 수행할 수 있는지에 기초하여 상기 외부장치의 상태를 식별하는 단계; 및 식별된 상기 외부장치의 상태에 기초하여, 상기 식별된 명령어에 대응하는 기능을 상기 외부장치가 수행하기 위해 필요한 정보를 상기 외부장치로 전송하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 장치의 네트워크 연결이 되지 않거나, 기능을 수행하기 위한 정보가 부족한 경우에도, 음성인식 기능을 이용하여 다른 장치와의 연결을 통해 서비스를 제공할 수 있다. 따라서, 사용자는 별도의 장치 등록과정을 거치지 않고 기능을 이용할 수 있으므로 사용자 편의를 도모한다.
도 1은 본 개시의 일 실시예에 따른 전체 시스템을 도시한 도면이다.
도 2는 본 개시의 일 실시예에 의한 전자장치의 구성을 도시한 블록도이다.
도 3은 본 개시의 일 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
도 4는 본 개시의 일 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
도 5는 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
도 6은 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
도 7은 본 개시의 일 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
도 8은 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
도 9는 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
도 10은 본 개시의 일 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
이하에서는 첨부 도면을 참조하여 본 개시의 실시예들을 상세히 설명한다. 도면에서 동일한 참조번호 또는 부호는 실질적으로 동일한 기능을 수행하는 구성요소를 지칭하며, 도면에서 각 구성요소의 크기는 설명의 명료성과 편의를 위해 과장되어 있을 수 있다. 다만, 본 개시의 기술적 사상과 그 핵심 구성 및 작용이 이하의 실시예에 설명된 구성 또는 작용으로만 한정되지는 않는다. 본 개시를 설명함에 있어서 본 개시와 관련된 공지 기술 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다.
본 개시의 실시예에서, 제1, 제2 등과 같이 서수를 포함하는 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 개시의 실시예에서, '구성되다', '포함하다', '가지다' 등의 용어는 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 또한, 본 개시의 실시예에서, '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있으며, 적어도 하나의 모듈로 일체화되어 구현될 수 있다. 또한, 본 개시의 실시예에서, 복수의 요소 중 적어도 하나(at least one)는, 복수의 요소 전부뿐만 아니라, 복수의 요소 중 나머지를 배제한 각 하나 혹은 이들의 조합 모두를 지칭한다.
도 1은 본 개시의 일 실시예에 따른 전체 시스템을 도시한 도면이다.
도 1에는 전자장치(100), 외부장치(200), AP(Access Point, 300)와 사용자(10)가 도시되어 있다.
도 1에는 전자장치(100)는 TV로, 외부장치(200)는 스피커로 도시되어 있으나, 이에 한정되지 않고 전자장치(100)와 외부장치(200)는 영상을 표시할 수 있는 디스플레이장치로 구현되거나, 디스플레이를 구비하지 않는 장치로 구현될 수 있다.
일 예로, 전자장치(100)와 외부장치(200)는 TV, AI어시스턴스기기(AI스피커 등), 컴퓨터, 스마트 폰, 태블릿 PC, 노트북 PC, HMD(Head mounted Display), NED(Near Eye Display), LFD(large format display), Digital Signage(디지털 간판), DID(Digital Information Display), 비디오 월(video wall), 프로젝터 디스플레이, QD(quantum dot) 디스플레이 패널, QLED(quantum dot light-emitting diodes) μLED(Micro light-emitting diodes), Mini LED 등 다양한 형태의 디스플레이 및 카메라, 캠코더, 웨어러블 디바이스, 비디오 월, 전자액자 등을 포함할 수 있다.
또한, 전자장치(100)와 외부장치(200)는 디스플레이를 구비하지 않는 셋탑박스 등의 영상처리장치, 냉장고, 블루투스 스피커, 세탁기 등의 생활가전, 컴퓨터본체와 같은 정보처리장치 등 다양한 종류의 장치로 구현될 수 있다.
다만, 본 개시의 일 실시예에 따른 전자장치(100)와 외부장치(200)는 음성인식 기능을 수행할 수 있는 장치로 가정한다.
도 1에 도시된 AP(300)는 무선랜 또는 Wi-Fi 공유기로 도시되어 있으나, 본 발명의 AP(300)는 그 종류 및 명칭에 구애 받지 않고 전자장치(100)와 외부장치(200)를 네트워크와 연결하는 중개장치로서의 역할을 하는 장치라면 무엇이든 가능하다. 네트워크 연결을 위한 통신 방식은 크게 유선기술과 무선기술로 나눌 수 있다. 유선기술로는 전화선, 전력선, 이더넷(Ethernet), IEEE 1394, USB(Universal Serial Bus) 등을 이용한 방식이 있다. 무선기술로는 IEEE 802.11x 계열의 무선랜(LAN), HomeRF, 블루투스(Bluetooth), 광대역통신(UWB, UltraWideBand), Zigbee, HiperLAN 등의 방식이 있다. 전자장치(100)와 외부장치(200)는 애드 혹 모드(ad-hoc mode) 또는 AP(300)를 통해 상호 연결되는 인프라 스트럭쳐 모드(Intra-structure mode)로 연결될 수 있다. 설명의 편의상 이하에서는 IEEE 802.11x 계열의 무선랜(LAN) 통신 방식을 네트워크의 통신 방식으로 선택하여 무선랜 AP(300)를 사용하는 환경을 전제로 하여 본 발명을 설명한다.
본 개시의 일 실시예에 따르면 전자장치(100)는 AP(300)와 연결이 된 상태이고, 반면 외부장치(200)는 AP(300)와 연결이 되지 않은 상태이다.
본 개시의 일 실시예에 따르면 사용자(10)는 외부장치(200)의 음성인식 기능을 이용하고자 한다. 이 때, 네트워크 연결을 필요로 하는 기능을 수행하고자 하는 경우, 현재 외부장치(200)는 네트워크에 연결이 되어있지 않으므로 해당 기능을 수행할 수 없다.
예컨대, 사용자(10)는 “XX, 내 계정으로 메일 보내줘” 라고 발화한 경우, 외부장치(200)는 메일을 전송하기 위해서는 네트워크 연결이 필요하고, 네트워크에 연결이 되어있지 않으므로 해당 기능을 수행할 수 없다.
이 외에도, 외부장치(200)가 네트워크 연결이 되어 있더라도 사용자 계정에 로그인이 필요한 경우 등 해당 기능을 수행할 수 없는 경우가 존재할 수 있다.
이하 본 개시에서는, 전자장치를 통해 외부장치가 음성인식 기능을 수행하기 위해서 네트워크 연결이나 사용자 계정 연결 등을 수행할 수 있도록 하는 방안을 제시한다.
도 2는 본 개시의 일 실시예에 의한 전자장치의 구성을 도시한 블록도이다.
도 2에 도시된 바와 같이, 전자장치(100)는 인터페이스부(110)를 포함할 수 있다.
인터페이스부(110)는 유선 인터페이스부(111)를 포함할 수 있다. 유선 인터페이스부(111)는 지상파/위성방송 등 방송표준에 따른 방송신호를 수신할 수 있는 안테나가 연결되거나, 케이블 방송표준에 따른 방송신호를 수신할 수 있는 케이블이 연결될 수 있는 커넥터 또는 포트를 포함한다. 다른 예로서, 전자장치(100)는 방송신호를 수신할 수 있는 안테나를 내장할 수도 있다. 유선 인터페이스부(111)는 HDMI 포트, DisplayPort, DVI 포트, 썬더볼트, 컴포지트(composite) 비디오, 컴포넌트(component) 비디오, 슈퍼 비디오(super video), SCART 등과 같이, 비디오 및/또는 오디오 전송표준에 따른 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(111)는 USB 포트 등과 같은 범용 데이터 전송표준에 따른 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(111)는 광 전송표준에 따라 광케이블이 연결될 수 있는 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(111)는 외부 마이크로폰 또는 마이크로폰을 구비한 외부 오디오기기가 연결되며, 오디오기기로부터 오디오 신호를 수신 또는 입력할 수 있는 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(111)는 헤드셋, 이어폰, 외부 스피커 등과 같은 오디오기기가 연결되며, 오디오기기로 오디오 신호를 전송 또는 출력할 수 있는 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(111)는 이더넷 등과 같은 네트워크 전송표준에 따른 커넥터 또는 포트를 포함할 수 있다. 예컨대, 유선 인터페이스부(111)는 라우터 또는 게이트웨이에 유선 접속된 랜카드 등으로 구현될 수 있다.
유선 인터페이스부(111)는 상기 커넥터 또는 포트를 통해 셋탑박스, 광학미디어 재생장치와 같은 외부기기, 또는 외부 디스플레이장치나, 스피커, 서버 등과 1:1 또는 1:N(N은 자연수) 방식으로 유선 접속됨으로써, 해당 외부기기로부터 비디오/오디오 신호를 수신하거나 또는 해당 외부기기에 비디오/오디오 신호를 송신한다. 유선 인터페이스부(111)는, 비디오/오디오 신호를 각각 별개로 전송하는 커넥터 또는 포트를 포함할 수도 있다.
그리고, 본 실시예에 따르면 유선 인터페이스부(111)는 전자장치(100)에 내장되나, 동글(dongle) 또는 모듈(module) 형태로 구현되어 전자장치(100)의 커넥터에 착탈될 수도 있다.
인터페이스부(110)는 무선 인터페이스부(112)를 포함할 수 있다. 무선 인터페이스부(112)는 전자장치(100)의 구현 형태에 대응하여 다양한 방식으로 구현될 수 있다. 예를 들면, 무선 인터페이스부(112)는 통신방식으로 RF(radio frequency), 지그비(Zigbee), 블루투스(bluetooth), 와이파이(Wi-Fi), UWB(Ultra WideBand) 및 NFC(Near Field Communication) 등 무선통신을 사용할 수 있다. 무선 인터페이스부(112)는 와이파이(Wi-Fi) 방식에 따라서 AP와 무선통신을 수행하는 무선통신모듈이나, 블루투스 등과 같은 1대 1 다이렉트 무선통신을 수행하는 무선통신모듈 등으로 구현될 수 있다. 무선 인터페이스부(112)는 네트워크 상의 서버와 무선 통신함으로써, 서버와의 사이에 데이터 패킷을 송수신할 수 있다. 무선 인터페이스부(112)는 적외선 통신표준에 따라 IR(Infrared) 신호를 송신 및/또는 수신할 수 있는 IR송신부 및/또는 IR수신부를 포함할 수 있다. 무선 인터페이스부(112)는 IR송신부 및/또는 IR수신부를 통해 리모컨 또는 다른 외부기기로부터 리모컨신호를 수신 또는 입력하거나, 다른 외부기기로 리모컨신호를 전송 또는 출력할 수 있다. 다른 예로서, 전자장치(100)는 와이파이(Wi-Fi), 블루투스(bluetooth) 등 다른 방식의 무선 인터페이스부(112)를 통해 리모컨 또는 다른 외부기기와 리모컨신호를 송수신할 수 있다.
전자장치(100)는 인터페이스부(110)를 통해 수신하는 비디오/오디오신호가 방송신호인 경우, 수신된 방송신호를 채널 별로 튜닝하는 튜너(tuner)를 더 포함할 수 있다.
전자장치(100)가 디스플레이장치로 구현되는 경우, 디스플레이부(120)를 포함할 수 있다. 디스플레이부(120)는 화면 상에 영상을 표시할 수 있는 디스플레이(121)를 포함한다. 디스플레이(121)는 액정 방식과 같은 수광 구조 또는 OLED 방식과 같은 자발광 구조로 마련된다. 디스플레이부(120)는 디스플레이(121)의 구조에 따라서 부가적인 구성을 추가로 포함할 수 있는데, 예를 들면 디스플레이(121)가 액정 방식이라면, 디스플레이부(120)는 액정 디스플레이 패널과, 광을 공급하는 백라이트유닛과, 액정 디스플레이 패널의 액정을 구동시키는 패널구동기판을 포함한다.
전자장치(100)는 사용자입력부(130)를 포함할 수 있다. 사용자입력부(130)는 사용자의 입력을 수행하기 위해 마련된 다양한 종류의 입력 인터페이스 관련 회로를 포함한다. 사용자입력부(130)는 전자장치(100)의 종류에 따라서 여러 가지 형태의 구성이 가능하며, 예컨대, 전자장치(100)의 기계적 또는 전자적 버튼부, 전자장치(100)와 분리된 리모트 컨트롤러, 전자장치(100)와 연결된 외부기기에서의 입력부, 터치패드, 디스플레이부(120)에 설치된 터치스크린 등이 있다.
전자장치(100)는 저장부(140)를 포함할 수 있다. 저장부(140)는 디지털화된 데이터를 저장한다. 저장부(140)는 전원의 제공 유무와 무관하게 데이터를 보존할 수 있는 비휘발성 속성의 스토리지(storage)와, 프로세서(180)에 의해 처리되기 위한 데이터가 로딩되며 전원이 제공되지 않으면 데이터를 보존할 수 없는 휘발성 속성의 메모리(memory)를 포함한다. 스토리지에는 플래시메모리(flash-memory), HDD(hard-disc drive), SSD(solid-state drive) ROM(Read Only Memory) 등이 있으며, 메모리에는 버퍼(buffer), 램(RAM; Random Access Memory) 등이 있다.
저장부(140)는 복수의 레이어를 포함하는 인공 지능 모델에 관한 정보를 저장할 수 있다. 여기서, 인공 지능 모델에 관한 정보를 저장한다는 것은 인공 지능 모델의 동작과 관련된 다양한 정보, 예를 들어 인공 지능 모델에 포함된 복수의 레이어에 대한 정보, 복수의 레이어 각각에서 이용되는 파라미터(예를 들어, 필터 계수, 바이어스 등)에 대한 정보 등을 저장한다는 것을 의미할 수 있다. 예를 들어, 저장부(140)는 일 실시예에 따라 입력 영상의 업스케일링 정보(또는 음성 인식 관련 정보, 이미지 내의 오브젝트 정보 등)를 획득하도록 학습된 인공 지능 모델에 대한 정보를 저장할 수 있다. 다만, 프로세서가 인공 지능 모델 전용 하드웨어로 구현되는 경우, 인공 지능 모델에 관한 정보는 프로세서 내부 메모리에 저장될 수도 있다.
전자장치(100)는 마이크로폰(150)을 포함할 수 있다. 마이크로폰(150)은 사용자 음성을 비롯한 외부 환경의 소리를 수집한다. 마이크로폰(150)은 수집된 소리의 신호를 프로세서(180)에 전달한다. 전자장치(100)는 사용자 음성을 수집하는 마이크로폰(150)을 구비하거나, 또는 인터페이스부(110)를 통해 마이크로폰을 가진 리모트 컨트롤러, 스마트폰 등의 외부장치로부터 음성신호를 수신할 수 있다. 외부장치에 리모트 컨트롤러 어플리케이션을 설치하여 전자장치(100)를 제어하거나 음성 인식 등의 기능을 수행할 수도 있다. 이와 같은 어플리케이션이 설치된 외부장치의 경우, 사용자 음성을 수신할 수 있으며, 외부장치는 전자장치(100)와 Wi-Fi/BT 또는 적외선 등을 이용하여 데이터 송수신 및 제어가 가능한 바, 상기 통신 방식을 구현할 수 있는 복수의 인터페이스부(110)가 전자장치(100) 내에 존재할 수 있다.
전자장치(100)는 스피커(160)를 포함할 수 있다. 스피커(160)는 프로세서(180)에 의해 처리되는 오디오 데이터를 소리로 출력한다. 스피커(160)는 어느 한 오디오 채널의 오디오 데이터에 대응하게 마련된 단위 스피커를 포함하며, 복수 오디오 채널의 오디오 데이터에 각기 대응하도록 복수의 단위 스피커를 포함할 수 있다. 다른 실시예로서, 스피커(160)는 전자장치(100)와 분리되어 마련될 수 있으며, 이 경우 전자장치(100)는 오디오 데이터를 인터페이스부(110)를 통하여 스피커(160)로 전달할 수 있다.
전자장치(100)는 센서(170)를 포함할 수 있다. 센서(170)는, 전자장치(100)의 상태 또는 전자장치(100) 주변의 상태를 감지하고, 감지된 정보를 프로세서(180)로 전달할 수 있다. 센서(170)는, 지자기 센서(Magnetic sensor), 가속도 센서(Acceleration sensor), 온/습도 센서, 적외선 센서, 자이로스코프 센서, 위치 센서(예컨대, GPS), 기압 센서, 근접 센서, 및 RGB 센서(illuminance sensor) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다. 프로세서(180)는 전자장치(100)와 외부장치(200)간의 탭으로 정의된 센싱값을 저장부(140)에 저장할 수 있다. 추후, 사용자 이벤트가 감지되는 경우, 프로세서(180)는 감지된 센싱값이 저장된 센싱값에 대응하는지 여부에 기초하여 사용자 이벤트의 발생 여부를 식별할 수 있다.
전자장치(100)는 프로세서(180)를 포함할 수 있다. 프로세서(180)는 인쇄회로기판 상에 장착되는 CPU, 칩셋, 버퍼, 회로 등으로 구현되는 하나 이상의 하드웨어 프로세서를 포함하며, 설계 방식에 따라서는 SOC(system on chip)로 구현될 수도 있다. 프로세서(180)는 전자장치(100)가 디스플레이장치로 구현되는 경우에 디멀티플렉서, 디코더, 스케일러, 오디오 DSP(Digital Signal Processor), 앰프 등의 다양한 프로세스에 대응하는 모듈들을 포함한다. 여기서, 이러한 모듈들 중 일부 또는 전체가 SOC로 구현될 수 있다. 예를 들면, 디멀티플렉서, 디코더, 스케일러 등 영상처리와 관련된 모듈이 영상처리 SOC로 구현되고, 오디오 DSP는 SOC와 별도의 칩셋으로 구현되는 것이 가능하다.
프로세서(180)는, 저장부(140)에 저장된 기 정의된 동작 규칙 또는 인공 지능 모델에 따라, 입력 데이터를 처리하도록 제어할 수 있다. 또는, 프로세서(180)가 전용 프로세서(또는 인공 지능 전용 프로세서)인 경우, 특정 인공 지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다. 예를 들어, 특정 인공 지능 모델의 처리에 특화된 하드웨어는 ASIC, FPGA 등의 하드웨어 칩으로 설계될 수 있다.
출력 데이터는 인공 지능 모델의 종류에 따라 다양한 형태가 될 수 있다. 예를 들어 출력 데이터는, 해상도가 향상된 이미지, 이미지 내에 포함된 오브젝트 관련 정보, 음성에 대응되는 텍스트 등이 될 수 있고 이에 한정되지 않는다.
프로세서(180)는 마이크로폰(150) 등에 의해 사용자 음성에 대한 음성신호를 획득하면, 음성신호를 음성데이터로 변환할 수 있다. 이 때, 음성데이터는 음성신호를 텍스트 데이터로 변환하는 STT(Speech-to-Text) 처리 과정을 통해 얻어진 텍스트 데이터일 수 있다. 프로세서(180)는 음성데이터가 나타내는 커맨드를 식별하고, 식별된 커맨드에 따라서 동작을 수행한다. 음성데이터 처리 과정과, 커맨드 식별 및 수행 과정은, 전자장치(100)에서 모두 실행될 수도 있다. 그러나, 이 경우에 전자장치(100)에 필요한 시스템 부하 및 소요 저장용량이 상대적으로 커지게 되므로, 적어도 일부의 과정은 네트워크를 통해 전자장치(100)와 통신 가능하게 접속되는 적어도 하나의 서버에 의해 수행될 수 있다.
본 발명에 따른 프로세서(180)는 전자장치(100)와 같은 기기(Machine)가 읽을 수 있는 저장 매체(Storage Medium)에 저장된 소프트웨어의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 전자장치(100)와 같은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(Non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적'은 저장매체가 실재(tangible)하는 장치이고, 신호(예컨대, 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
한편, 프로세서(180)는 외부장치(200)의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 외부장치(200)에 관한 명령어를 식별하고, 외부장치(200)의 상태를 식별하고, 식별된 명령어 및 식별된 상태에 기초하여, 외부장치(200)가 수행할 기능에 대응하는 정보를 인터페이스부(110)를 통해 외부장치(200)로 전송하도록 제어동작을 수행하기 위한 데이터 분석, 처리, 및 결과 정보 생성 중 적어도 일부를 규칙 기반 또는 인공지능(Artificial Intelligence) 알고리즘으로서 기계학습, 신경망 네트워크(neural network), 또는 딥러닝 알고리즘 중 적어도 하나를 이용하여 수행할 수 있다.
인공지능 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템으로서 기계가 스스로 학습하고 판단하며, 사용할수록 인식률이 향상되는 시스템이다
인공지능 기술은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘을 이용하는 기계학습(딥러닝) 기술 및 기계학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 요소 기술들로 구성된다.
요소기술들은, 예로, 인간의 언어/문자를 인식하는 언어적 이해 기술, 사물을 인간의 시각처럼 인식하는 시각적 이해 기술, 정보를 판단하여 논리적으로 추론하고 예측하는 추론/예측 기술, 인간의 경험 정보를 지식데이터로 처리하는 지식 표현 기술 및 차량의 자율 주행, 로봇의 움직임을 제어하는 동작 제어 기술 중 적어도 하나를 포함할 수 있다.
언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의 응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험정보를 지식데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다.
일 예로, 프로세서(180)는 학습부 및 인식부의 기능을 함께 수행할 수 있다. 학습부는 학습된 신경망 네트워크를 생성하는 기능을 수행하고, 인식부는 학습된 신경망 네트워크를 이용하여 데이터를 인식(또는, 추론, 예측, 추정, 판단)하는 기능을 수행할 수 있다.
학습부는 신경망 네트워크를 생성하거나 갱신할 수 있다. 학습부는 신경망 네트워크를 생성하기 위해서 학습 데이터를 획득할 수 있다. 일 예로, 학습부는 학습 데이터를 저장부(140) 또는 외부로부터 획득할 수 있다. 학습 데이터는, 신경망 네트워크의 학습을 위해 이용되는 데이터일 수 있으며, 상기한 동작을 수행한 데이터를 학습데이터로 이용하여 신경망 네트워크를 학습시킬 수 있다.
학습부는 학습 데이터를 이용하여 신경망 네트워크를 학습시키기 전에, 획득된 학습 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 학습 데이터들 중에서 학습에 이용될 데이터를 선별할 수 있다. 일 예로, 학습부는 학습 데이터를 기 설정된 포맷으로 가공하거나, 필터링하거나, 또는 노이즈를 추가/제거하여 학습에 적절한 데이터의 형태로 가공할 수 있다. 학습부는 전처리된 학습 데이터를 이용하여 상기한 동작을 수행하도록 설정된 신경망 네트워크를 생성할 수 있다.
학습된 신경망 네트워크는, 복수의 신경망 네트워크(또는, 레이어)들로 구성될 수 있다. 복수의 신경망 네트워크의 노드들은 가중치(weight values)를 가지며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 네트워크들은 일 신경망 네트워크의 출력 값이 다른 신경망 네트워크의 입력 값으로 이용되도록 서로 연결될 수 있다. 신경망 네트워크의 예로는, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN (Bidirectional Recurrent Deep Neural Network) 및 심층 Q-네트워크 (Deep Q-Networks)과 같은 모델을 포함할 수 있다.
한편 인식부는 상기한 동작을 수행하기 위해, 타겟 데이터를 획득할 수 있다. 타겟 데이터는 저장부(140) 또는 외부로부터 획득된 것일 수 있다. 타겟 데이터는 신경망 네트워크의 인식 대상이 되는 데이터일 수 있다. 인식부는 타겟 데이터를 학습된 신경망 네트워크에 적용하기 전에, 획득된 타겟 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 타겟 데이터들 중에서 인식에 이용될 데이터를 선별할 수 있다. 일 예로, 인식부는 타겟 데이터를 기 설정된 포맷으로 가공하거나, 필터링 하거나, 또는 노이즈를 추가/제거하여 인식에 적절한 데이터의 형태로 가공할 수 있다. 인식부는 전처리된 타겟 데이터를 신경망 네트워크에 적용함으로써, 신경망 네트워크로부터 출력되는 출력값을 획득할 수 있다. 인식부는 출력값과 함께, 확률값 또는 신뢰도값을 획득할 수 있다.
인공 지능 모델의 학습 및 훈련 데이터의 생성은 외부 서버를 통해 수행될 수 있다. 다만, 경우에 따라 인공 지능 모델의 학습이 전자 장치에서 이루어지고, 훈련 데이터 또한 전자 장치에서 생성될 수도 있음은 물론이다.
일 예로, 본 발명에 따른 전자장치(100)의 제어방법은 컴퓨터 프로그램 제품 (Computer Program Product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은, 앞서 설명한, 프로세서(180)에 의해 실행되는 소프트웨어의 명령어들을 포함할 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예컨대, CD-ROM)의 형태로 배포되거나, 또는 어플리케이션 스토어(예컨대, 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예컨대, 스마트폰들) 간에 직접, 온라인으로 배포(예컨대, 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
도 3은 본 개시의 일 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
본 개시의 일 실시예에 따른 프로세서(180)는 외부장치(200)의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 외부장치(200)에 관한 명령어를 식별한다(S310).
프로세서(180)는 시작명령어의 신호 파형, 길이 등에 대한 정보에 기초하여 수신되는 제1오디오신호가 시작명령어에 대응하는지 여부를 식별한다. 이 때, 프로세서(180)는 저장부(140)에 미리 저장된 정보를 이용하거나, 서버 등과의 통신을 통해 정보를 획득할 수 있다. 또한, 프로세서(180)는 전자장치(100)의 시작명령어에 대한 정보뿐만 아니라, 음성인식 기능을 지원하고, 시작명령어가 다른 복수의 외부장치에 관한 정보를 저장 또는 획득할 수 있다.
프로세서(180)는 식별한 시작명령어와 전자장치(100)의 시작명령어가 다른 경우, 식별된 시작명령어에 대응하는 외부장치(200)를 식별한다.
전자장치(100)는 자신의 시작명령어를 처리 및 인식하는 엔진 이외에 외부장치(200)의 시작명령어를 처리 및 인식하는 엔진을 추가로 구비하고, 식별된 시작명령어에 대응하는 엔진을 통해 대응하는 외부장치(200)를 식별할 수 있다.
이 때, 프로세서(180)는 식별된 시작명령어에 대응하는 제조사에 관한 정보를 저장해두고, 주변에 존재하는 외부장치들 중 해당 제조사로부터 제조된 장치를 식별할 수 있다. 이 외에도 식별된 시작명령어에 대응하는 장치가 무엇인지 식별하는 방안은 제한 없이 적용 가능하다. 일 예로, 프로세서(180)는 제1오디오신호의 수신에 대응하여, 블루투스나 IR 신호 등을 이용하여 주변에 존재하는 외부장치를 검색하고, 제1오디오신호가 검색된 외부장치의 시작명령어인지 여부를 식별할 수 있다.
프로세서(180)는 수신되는 제1오디오신호에 기초하여 식별된 시작명령어가 외부장치(200)의 시작명령어임을 식별한 경우, 자신의 장치, 즉 전자장치(100)가 아닌 외부장치(200)의 음성인식 기능을 트리거(trigger)하는 것임을 식별할 수 있다.
한편, 동일 회사에서 제조되는 등 전자장치(100)와 외부장치(200)의 시작명령어가 상호 동일한 경우에 관하여는 도 4에서 후술한다.
본 개시의 일 실시예에서는 식별된 명령어의 동작 수행 주체는 외부장치(200)인 경우, 즉, 사용자가 외부장치(200)에 대해서 명령어를 발화한 경우임을 가정한다.
프로세서(180)는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 외부장치(200)에 관한 명령어를 식별한다.
본 개시의 일 실시예에 따른 프로세서(180)는 식별된 외부장치의 상태에 기초하여, 식별된 명령어에 따라 외부장치(200)가 수행할 기능에 대응하는 정보를 인터페이스부를 통해 외부장치(200)로 전송한다(S320).
외부장치(200)의 상태는 식별된 명령어를 수행할 수 있는 상태에 있는지 여부에 기초하여 식별한다. 일 예로, 식별된 명령어가 특정 계정을 통해 메일을 전송하는 동작을 요하는 경우, 프로세서(180)는 외부장치(200)의 네트워크 연결여부 또는 인증 정보 보유여부 중 적어도 어느 하나에 관한 외부장치(200)의 상태를 식별한다. 이 외에도, 외부장치(200) 스스로가 자신의 상태를 식별하거나, 제3의 장치, 예컨대, 서버 등이 외부장치(200)의 상태를 식별할 수 있고, 프로세서(180)는 인터페이스부(110)를 통해 외부장치(200)의 상태에 관한 정보를 수신할 수 있다.
예컨대, 도 1 에서 서술한 바와 같이, 식별된 명령어가 “내 계정으로 메일 보내줘”인 경우, 프로세서(180)는 외부장치(200)가 메일 전송을 수행하기 위해 네트워크에 연결되어 있는지, 내 계정에 로그인이 되어 있는지를 식별할 수 있다.
상태를 식별하는 방법으로, 예컨대, 프로세서(180)는 블루투스나 IR 신호 등을 이용하여 전자장치(100)와 외부장치(200) 간을 연결하고, 외부장치(200)의 상태에 대한 정보를 요청하거나, 외부장치(200)로부터 자신의 상태에 대한 정보를 수신할 수 있다.
보다 구체적으로, 저전력 통신 기술 중 하나인 BLE(Bluetooth Low Energy) 기술은 브로드캐스팅(Broadcasting)과 연결(Connection)이라는 두 가지 방식으로 서로 통신할 수 있다. 브로드캐스팅은 연결을 하지 않는 (Connectionless) 방식이며, 주변의 장치들에게 자신의 존재를 광고하는(advertizing) 데이터를 주기적으로 전송하거나 다른 장치의 데이터를 수신하는 방식이다. 이 방식을 사용하는 장치는 주기적으로 데이터 패킷을 전송하는 Broadcaster와 전송되는 광고 메시지를 반복해서 수신하는 Observer 의 역할로 나뉜다. 브로드캐스팅 방식은 전송하는 데이터가 최대 31바이트이므로 적은 양의 데이터를 주기적으로 전송할 때 적합하다. 그리고, 브로드캐스팅을 통해 식별한 장치 중 하나를 선택해서 1:1 로 연결하는 것이 연결(Connection)이다. 전자장치(100)가 수신되는 제1오디오신호로부터 사용자명령을 식별하면, 프로세서(180)는 BLE 기술을 통해 주변 장치의 신호를 찾을 수 있다. 발견한 주변 장치에 전자장치(100)가 사용자명령에 대응하는 장치인지 여부를 확인하는 정보를 외부장치(200)에 전송하면, 외부장치(200)는 이를 확인하는 정보를 다시 전자장치(100)에 전송할 수 있다.
외부장치(200)가 수행할 기능에 대응하는 정보란, 식별된 명령어에 따른 동작을 수행하기 위해서 필요한 정보 중 외부장치(200)의 상태에 기초하여 필요한 정보를 의미한다.
프로세서(180)는 식별된 상태에 기초하여, 식별된 명령어에 따라 필요한 정보를 식별하고, 외부장치(200)에 식별한 정보를 전송할 수 있다.
일 예로, 도 1에서 서술한 바와 같이, 식별된 명령어가 "내 계정으로 메일 보내줘"이고, 프로세서(180)는 외부장치(200)의 네트워크 연결이 되어있지 않거나, 네트워크에 연결이 되어 있더라도 내 계정에 대한 정보를 가지고 있지 않거나, 혹은 둘 다 해당되지 않음을 식별할 수 있다. 이 경우, 프로세서(180)는 외부장치(200)로 네트워크 연결에 관한 정보, 내 계정에 대한 정보 중 필요한 정보를 인터페이스부(110)를 통해 전송할 수 있다.
이 외에도, 외부장치(200) 스스로가 자신의 상태를 식별하고, 프로세서(180)는 외부장치(200)로부터 필요한 정보를 요청하는 신호를 수신한 것에 기초하여 외부장치(200)에 정보를 전송할 수 있다. 혹은 제3의 장치, 예컨대, 서버 등이 외부장치(200)의 상태를 식별하여, 프로세서(180)는 서버로부터 필요한 정보를 요청하는 신호를 수신한 것에 기초하여 외부장치(200)에 정보를 전송할 수 있다.
이후, 외부장치(200)는 수신한 네트워크 연결에 관한 정보에 기초하여 네트워크를 연결하거나, 내 계정에 관한 정보에 기초하여 로그인 후 메일을 전송하는 동작을 수행할 수 있다.
본 개시의 일 실시예에 따르면, 장치의 네트워크 연결이 되지 않거나, 기능을 수행하기 위한 정보가 부족한 경우에도, 음성인식 기능을 이용하여 다른 장치와의 연결을 통해 서비스를 제공할 수 있다. 따라서, 사용자는 별도의 장치 등록과정을 거치지 않고 기능을 이용할 수 있으므로 사용자 편의를 도모한다.
도 4는 본 개시의 일 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
본 도면에서는 앞서 도 3에서 서술한 동작 흐름도를 일 예에 비추어 설명한다. 전자장치(100)와 외부장치(200)는 서로 다른 시작명령어를 가지는 제품으로, 전자장치(100)의 시작명령어는 “Hi, Bixby” 이고, 외부장치(200)의 시작명령어는 “XX”라고 가정한다.
프로세서(180)는, S310에서 서술한 바와 같이, “XX, 내 계정으로 메일 보내줘"에 대응하는 제1오디오신호와 제2오디오신호를 수신한다(S410).
프로세서(180)는 시작명령어를 처리 및 인식하는 엔진을 이용하여 제1오디오신호를 식별하고, 제2오디오신호에 대응하는 명령어가 외부장치(200)를 제어하기 위한 명령어임을 식별한다.
보다 구체적으로, 프로세서(180)는 사용자 발화에 대응하는 오디오신호를 수신하고, 수신한 오디오신호에 기초하여 발화 내용을 텍스트 데이터로 변환하는 STT(Speech-to-Text) 처리 과정을 통해 텍스트 데이터를 획득할 수 있다. 프로세서(180)는 획득한 텍스트 데이터를 자연어 처리 엔진을 이용하여 사용자의 발화 의도를 식별한다. 자연어 처리 엔진이란 자연어 처리 이해(NLU; Natural Language Understanding)를 위해 마련된 엔진으로, 프로세서(180)는 자연어 처리 엔진을 이용하여 사용자의 발화뿐 아니라, 사용자의 발화가 실제로 의미하는 바를 추론할 수 있다. 자연어 처리 엔진은 동작 구조가 복잡하고, 방대한 양의 데이터를 필요로 하므로 별도로 구비되는 것이 일반적이나, 비교적 간단한 음성인식 기능을 처리할 수 있도록 전자장치(100) 내 구비될 수 있다. On device 음성인식 엔진에 관한 보다 자세한 내용은 도 6에서 후술한다.
이외에도, 자연어 처리 엔진은 장치마다 다른 성능을 구비하므로, 프로세서(180)는 외부장치(200)의 시작명령어에 대응되는 프로토콜과 수신한 제2오디오신호의 데이터를 외부장치(200)로 전송하고, 외부장치(200)로부터 음성인식 결과를 수신할 수 있다.
한편, 동일 회사에서 제조되는 등 전자장치(100)와 외부장치(200)의 시작명령어가 상호 동일한 경우, 프로세서(180)는 수신되는 제2오디오신호에 대응하는 명령어의 동작 수행 주체가 어느 장치인지를 식별하는 것이 필요하다.
전자장치(100)와 외부장치(200)의 시작명령어가 동일한 경우에는 사용자가 어느 장치의 기능을 이용하고자 했는지 의도를 식별하여 동작 수행 주체를 식별할 수 있다. 일 예로, 각 장치의 프로세서는 수신한 오디오신호의 발화레벨, 잡음레벨의 크기를 식별하고, 신호 대 잡음 비(SNR; Signal-to-Noise Ratio)를 비교하여 SNR이 높은 장치를 동작 수행 주체로 식별할 수 있다. 이하, 식별 결과, 외부장치(200)가 동작 수행 주체로 식별되었음을 가정하여 서술한다.
프로세서(180)는, 도 3의 S320에서 서술한 바와 같이 외부장치(200)의 상태 즉, 외부장치(200)가 네트워크에 연결되어 있는지 여부를 식별한다(S420).
이후, 도 3의 S320에서 서술한 바와 같이 외부장치(200)의 식별된 상태에 기초하여, 외부장치(200)가 네트워크에 연결되어 있지 않으면(S420의 No), 프로세서(180)는 네트워크 연결정보, 예컨대, 네트워크 아이디, 네트워크 비밀번호 등을 외부장치(200)로 전송한다(S430).
외부장치(200)가 네트워크에 연결되어 있거나(S420의 Yes), 프로세서(180)로부터 정보를 수신하여 네트워크에 연결된 경우, 프로세서(180)는 외부장치(200) 가 내 계정에 연결되어 있는지 여부를 식별한다(S440). 외부장치(200)가 내 계정에 연결되어 있지 않으면(S440의 No), 프로세서(180)는 계정 연결정보, 예컨대, 계정 아이디, 계정 비밀번호 등을 외부장치(200)로 전송한다. 외부장치(200)가 내 계정에 연결되어 있으면(S440의 Yes), 프로세서(180)는 동작을 종료한다.
본 개시의 일 실시예에 따르면, 사용자의 발화명령만으로도 등록과정을 수행할 수 있어 사용자에게 편의성을 제공한다.
도 5는 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
본 도면에서는 도 3의 S320과 관련하여, 전자장치(100)가 외부장치(200)로 정보 전송 시, 보안 상 발생할 수 있는 문제점을 보완하는 방안을 제시한다.
프로세서(180)는 외부장치(200)가 수행할 기능에 대응하는 정보의 임시정보(510)를 생성한다. 임시정보(510)는 외부장치(200)가 수행할 기능에 대응하는 정보 그 자체는 아니나, 동작에 유효하게 이용될 수 있도록 임의로 생성한 정보이다.
예컨대, 네트워크 연결 아이디는 sweethome101이고, 비밀번호는 galaxy이나, 이를 그대로 전달하기에는 보안 문제가 우려되는 경우, 프로세서(180)는 임의로 연결 아이디는 adc1, 비밀번호는 1234로 임시정보(510)를 생성하여 외부장치(200)에 전달할 수 있다. 이 때, 외부장치(200)가 AP(300)에 연결하기 위해 임시정보(510)를 입력하는 경우, AP(300)는 이를 잘못된 정보로 인식할 수 있으므로, 프로세서(180)는 AP(300)에도 임시정보(510)를 전송하여, 추후 외부장치(200)가 임시정보(510)를 이용 시 네트워크에 연결이 가능하도록 할 수 있다.
다만, 이 경우에도 생성된 임시정보(510)를 계속 이용하는 경우 2차적 보안문제가 발생할 수 있으므로, 프로세서(180)는 생성된 임시정보(510)는 기설정된 시간 또는 기설정된 횟수 동안 이용 가능한 정보로 설정할 수 있다.
이 때, 네트워크 연결에 관한 정보나 사용자 계정에 관한 정보 등 정보 전송의 경우, 인증문제나 사용자 약관 동의 프로세스 등의 필요로 인해 정보를 타 장치로 전송하기 어려운 경우가 존재하는 바, 프로세서(180)는 인증이나 사용자 약관 동의에 관한 GUI를 디스플레이(121)에 표시하도록 제어할 수 있다.
본 개시의 일 실시예에 따르면, 비밀번호와 같은 개인 정보를 전달하는 경우에도 보안을 유지할 수 있어 안전하고 편리하게 장치 사용을 위한 정보를 송,수신할 수 있다.
도 6은 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
본 도면에서는 전자장치(100) 또는 외부장치(200) 내부에 자연어 처리 엔진을 구비한 경우를 설명한다.
도 4에서 설명한 바와 같이 자연어 처리 엔진과 같은 음성인식 엔진은 주로 서버에 존재하여 네트워크 통신을 통해 이용한다. 다만, 최근 간단한 음성인식 기능은 장치 스스로 처리할 수 있도록 On device 엔진을 구비한 전자장치가 개발되고 있다. On device 엔진을 이용할 경우, 음성인식 결과 등을 서버와 통신하지 않고도 획득할 수 있어 속도가 빨라지고, 보안도 강화할 수 있다.
전자장치(100)가 On device 엔진(610)을 구비한 경우, 프로세서(180)는, 도 3의 S310과 관련하여, On device 엔진(610)에 기초하여 수신되는 제2오디오신호에 대응하는 명령어를 식별한다. 또한, 프로세서(180)는 AP(300)와 같이 동작하여 네트워크가 연결되지 않은 외부장치(200)에 네트워크 공유기의 역할을 수행하거나, 사용자 계정 정보와 같은 인증 정보를 서버를 통하지 않고 외부장치(200)에 전송할 수 있다.
이 때, 도 5에서 설명한 바와 같이, 프로세서(180)는 임시정보(510)를 생성하여 외부장치(200)에 전송할 수 있음은 마찬가지이다. 프로세서(180)는 외부장치(200)가 필요한 정보를 IR 신호 형식으로 전송할 수 있고, 이 외에도 비가청 음역통신이나 블루투스와 같은 전송방식을 이용할 수 있다.
외부장치(200)가 On device 엔진(620)을 구비한 경우, 외부장치(200)가 시작명령어를 직접 식별할 수 있다. 시작명령어 식별에 기초하여 음성인식 기능이 트리거되면, 외부장치는 장치 상태를 스스로 식별하여 네트워크 연결이나 계정 등록이 필요한 경우, 전자장치(100)로 필요한 정보를 요청하는 신호를 전송할 수 있다. 즉, 외부장치(100)가 새로 설치되거나, 기존 연결된 네트워크 설정이 초기화 되는 등 정보가 필요한 경우, 외부장치(200)가 설치된 환경 내에서 연결 가능한 장치, 예컨대, 전자장치(100)와의 통신을 통해 외부 서버 등에 연결하지 않고 음성인식 기능을 수행할 수 있다.
프로세서(180)는 외부장치(200)로부터 수신한 신호에 기초하여 요청하는 정보를 외부장치(200)로 전송할 수 있다. 이 경우에도, 서버를 통하지 않고 전자장치(100)와 외부장치(200)간 정보 송, 수신으로 필요한 정보를 주고 받으므로 안전하게 정보를 전송할 수 있다.
본 개시의 일 실시예에 따르면, On Device 엔진을 이용하여 안전하게 네트워크 연결 및 계정 등록 등을 사용할 수 있어, 사용자에게 안전하고 편리한 기술을 제공한다.
도 7은 본 개시의 다른 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
본 도면에서는 전자장치(100)와 적어도 하나의 외부장치(200)를 포함한 복수의 음성인식 장치가 존재하는 시스템을 기초로 하여 설명한다.
복수의 음성인식 장치는 음성인식 기능을 대표로 수행할 장치를 설정한다(S710). 대표 장치는 사용자입력에 의해 설정될 수 있고, 또는 복수의 음성인식 장치 간 음성인식 기능의 최적화 장치를 선정하여 설정될 수 있으며, 어느 하나에 한정되지 않는다. 사용자입력에 의해 설정되는 경우란, 예컨대, "Hi Bixby, TV를 대표 장치로 설정해줘." 등에 의해 설정될 수 있다. 이하 전자장치(100)가 대표 장치로 설정된 것으로 가정한다.
프로세서(180)는 다른 음성인식 장치를 분석한다(S720). 보다 구체적으로, 프로세서(180)는 주변 외부장치의 네트워크 연결 상태를 확인한다(S721). 먼저 전자장치(100)의 주변에 존재하는 외부장치 중 네트워크 연결을 요청하는 장치를 식별하고, 외부장치에 대응하는 시작명령어 호출 및 신호를 확인한다.
프로세서(180)는 각종 시작명령어 호출을 통해 주변 외부장치의 존재를 확인한다(S722). 시작명령어 호출 시 반응하는 외부장치를 식별하고, 네트워크 연결 여부를 식별하여 필요 시 연결한다.
주변 음성인식 장치의 분석이 끝나면, 프로세서(180)는 신규 음성인식 장치의 등록을 확인한다(S730).
전자장치(100)의 시작명령어와 함께 명령어에 대응하는 오디오신호 수신 시, 프로세서(180)는 이를 식별하고, 그에 대응하는 동작을 수행할 수 있다. 이 때, 프로세서(180)는 명령어에 대응하는 동작을 수행하는 대신, 기 식별되어 등록된 신규 음성인식 장치가 이를 수행하도록 제어할 수 있다. 따라서, 신규 음성인식 장치는 설치 이후 네트워크 연결 등의 초기 설정을 하지 않고도, 외부장치인 전자장치(100)를 이용하여 음성인식 엔진과의 연결, 음성인식 기능을 지원할 수 있다.
일 예로, 프로세서(180)가 "Hi Bixby, 뉴스 들려줘"라는 사용자입력을 수신하는 경우(S740), 전자장치(100)가 이미 다른 기능을 수행하고 있는 경우와 같이 다른 외부장치가 동작을 대신 수행할 필요가 있는 경우 혹은 수행할 기능에 따라 적합한 외부장치를 식별할 수 있다. 이 외에도, 해당 기능을 수행할 때 전자장치(100)는 불필요하게 전력을 많이 소모하는 경우, 예컨대, 뉴스를 들려주는 것은 스피커 기능만 활성화하는 것이 적절하나 전자장치(100)는 외부장치 대비 전력소모가 큰 경우, 혹은 전자장치(100)가 무선장치인 경우 배터리가 부족하여 동작을 수행할 수 없는 경우 등 다양한 상황이 존재할 수 있다.
프로세서(180)는 동작을 수행할 외부장치를 식별하고, 스피커(160)를 통해 "뉴스는 XX로 읽어주도록 하겠습니다. XX, 뉴스 읽어줘"라고 출력하도록 제어할 수 있다(S750). 이 경우, 신규 음성인식 장치는 기능을 수행할 수 있다(S760).
프로세서(180)는 네트워크에 연결된 다른 외부장치가 새로 수신된 사용자입력에 대응하는 동작을 수행하도록 할 수 있고, 혹은 네트워크에 연결되지 않은 외부장치의 네트워크 연결을 도와주어 사용자입력에 대응하는 동작을 수행하도록 할 수 있다.
본 개시의 일 실시예에 따르면, 주변 음성인식 기능을 수행하는 장치들을 시간이나 상황에 맞게 활용할 수 있으므로 에너지 소비나 사용자 편의성 측면에서 유리하다. 또한, 신규로 설치되어 네트워크 연결 설정 등 음성인식기능을 이용하기 위한 기본적인 설정을 수행하지 않는 경우에도 외부장치의 기능을 통해 음성인식 기능을 지원하고 동작을 수행할 수 있으므로 사용자의 편의성을 높일 수 있다.
도 8은 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
본 도면의 경우, 전자장치(100)는 앞서 도 3 내지 도 7에서 설명한 외부장치(200)와 관련된 상황을 사용자에게 알려주는 GUI(Graphic User Interface)를 도시한다.
본 개시의 일 실시예에 따르면, 전자장치(100)는 디스플레이(121)를 더 포함하고, 프로세서(180)는, 식별된 외부장치(200)의 상태를 나타내는 GUI(810)를 표시하도록 디스플레이(121)를 제어한다.
일 예로, 도 8에 도시된 바와 같이, 프로세서(180)는"네트워크 연결이 필요한 기기가 있습니다. 연결하겠습니다."와 같은 GUI (810)를 디스플레이(121)에 표시하도록 제어할 수 있으며, 추가로 연결이 필요한 장치의 이름, 예컨대, 'S-spk-2020'을 함께 표시할 수 있다. 이 때, 추가로 연결이 필요한 장치는 하나일 수 있고, 2 이상의 장치가 존재할 수 있다.
이 외에도, 프로세서(180)는 네트워크 연결 뿐만 아니라 외부장치(200)의 필요한 정보를 표시하거나, 정보를 전송하기 전 이를 승인하는 사용자입력을 요청하는 GUI를 추가로 표시하도록 디스플레이(121)를 제어할 수 있다.
본 개시의 일 실시예에 따르면, 사용자에게 현재 진행 상황이나 주변 외부장치의 상태 등을 직접적으로 표시할 수 있고, 이를 사용자가 제어하도록 GUI를 제공하는 점에서 사용자 편의를 도모할 수 잇다.
도 9는 본 개시의 일 실시예에 따른 전자장치의 동작 모습을 도시한 도면이다.
본 도면의 경우, 도 8에서 도시한 네트워크 연결이 필요한 장치가 복수인 경우를 나타낸다. 전자장치(100)는 앞서 도 3 내지 도 7에서 설명한 외부장치(200)와 관련된 상황을 사용자에게 알려주는 GUI(Graphic User Interface)를 도시한다.
본 개시의 일 실시예에 따르면, 전자장치(100)는 디스플레이(121)를 더 포함하고, 프로세서(180)는, 식별된 외부장치(200)의 상태를 나타내는 GUI(910)를 표시하도록 디스플레이(121)를 제어한다.
일 예로, 도 9에 도시된 바와 같이, 프로세서(180)는"네트워크 연결이 필요한 기기가 있습니다."와 같은 GUI (910)를 디스플레이(121)에 표시하도록 제어할 수 있으며, 추가로 연결이 필요한 장치의 이름, 예컨대, "S-spk-2020, S-mobile, S-rf"을 함께 표시할 수 있다. 이 경우, 프로세서(180)는 연결이 필요한 복수의 장치 중 사용자가 연결하고자 하는 장치를 선택할 수 있도록 하는 GUI를 디스플레이(121)에 추가로 표시하도록 제어할 수 있다.
이 외에도, 프로세서(180)는 네트워크 연결 뿐만 아니라 외부장치(200)의 필요한 정보를 표시하거나, 정보를 전송하기 전 이를 승인하는 사용자입력을 요청하는 GUI를 추가로 표시하도록 디스플레이(121)를 제어할 수 있다.
본 개시의 일 실시예에 따르면, 연결이 필요한 복수의 전자장치가 존재하는 경우 사용자가 제어하도록 GUI를 제공하는 점에서 사용자 편의를 도모할 수 잇다.
도 10은 본 개시의 일 실시예에 따른 전자장치의 동작 흐름도를 도시한 도면이다.
본 도면은 도 3의 S320과 관련하여, 외부장치(200)에 전송할 기능에 대응하는 정보를 전자장치(100)가 보유하고 있지 않은 경우에 대해서 도시한다.
프로세서(180)는 도 3의 S320에서 식별된 외부장치(200)의 상태에 기초하여, 명령어에 따라 외부장치(200)가 수행할 기능에 대응하는 정보를 보유하고 있는지 여부를 식별한다(S1010).
보유하고 있으면(S1010의 Yes), 다른 실시예들과 같이 프로세서(180)는 정보를 외부장치(200)로 전송한다.
프로세서(180)는 정보를 전자장치(100)가 보유하고 있지 않음을 식별한 경우(S1010의 No), 정보를 획득하는 다른 외부장치를 식별한다(S1020). 일 예로, 프로세서(180)는 주변에 존재하는 다른 외부장치로 정보 획득여부 및 정보를 요청하는 신호를 전송하여 식별할 수 있다.
프로세서(180)는 식별된 다른 외부장치로부터 인터페이스부(110)를 통해 정보를 수신한다(S1030). 이 때, 정보를 수신하는 경우, 보안을 위해 도 5 내지 도 6에서 설명한 바와 같이, 임시정보(510)를 이용하거나, On device 엔진을 이용하여 서버를 통하지 않고 정보를 수신할 수 있다.
프로세서(180)는 수신된 정보에 기초하여 외부장치(200)로 정보를 전송한다(S1040).
본 개시의 일 실시예에 따르면, 외부장치(200)가 필요한 정보가 전자장치에 없더라도, 전자장치는 중개장치로서 역할을 수행하여 다른 정보를 보유하고 있는 외부장치로부터 정보를 수신하여 전송할 수 있는 바, 사용 시나리오를 더욱 견고히 할 수 있다.

Claims (15)

  1. 전자장치에 있어서,
    외부장치와 통신하는 인터페이스부;
    상기 인터페이스부를 통해 수신되는 상기 외부장치의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 상기 외부장치에 관한 명령어를 식별하고,
    상기 식별된 명령어를 상기 외부장치가 수행할 수 있는지에 기초하여 상기 외부장치의 상태를 식별하고,
    식별된 상기 외부장치의 상태에 기초하여, 상기 식별된 명령어에 대응하는 기능을 상기 외부장치가 수행하기 위해 필요한 정보를 상기 인터페이스부를 통해 상기 외부장치로 전송하는
    프로세서를 포함하는 전자장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 외부장치의 네트워크 연결여부 또는 인증정보 보유여부 중 적어도 어느 하나에 기초하여 상기 외부장치의 상태를 식별하는 전자장치.
  3. 제1항에 있어서,
    상기 프로세서는,
    상기 수신되는 제1오디오신호가 외부장치의 시작명령어에 대응하는 것에 기초하여, 상기 외부장치의 상태에 대한 정보를 수신하는 전자장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 외부장치가 수행할 기능에 대응하는 정보와 관련된 임시정보를 전송하도록 상기 인터페이스부를 제어하는 전자장치.
  5. 제4항에 있어서,
    상기 임시정보는 기설정된 시간 또는 횟수 동안 이용 가능한 정보를 포함하는 전자장치.
  6. 제1항에 있어서,
    상기 프로세서는,
    상기 외부장치가 수행할 기능에 대응하는 정보를 획득하는 다른 외부장치를 식별하고,
    식별된 다른 외부장치로부터 상기 정보를 수신하는 전자장치.
  7. 제1항에 있어서,
    자연어 처리 엔진을 포함하고,
    상기 프로세서는, 상기 자연어 처리 엔진에 기초하여 상기 제2오디오신호에 대응하는 상기 외부장치에 관한 명령어를 식별하는 전자장치.
  8. 제1항에 있어서,
    디스플레이를 더 포함하고,
    상기 프로세서는,
    상기 식별한 외부장치의 상태를 나타내는 GUI(Graphic User Interface)를 표시하도록 상기 디스플레이를 제어하는 전자장치.
  9. 전자장치의 제어방법에 있어서,
    외부장치의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 상기 외부장치에 관한 명령어를 식별하는 단계;
    상기 식별된 명령어를 상기 외부장치가 수행할 수 있는지에 기초하여 상기 외부장치의 상태를 식별하는 단계; 및
    식별된 상기 외부장치의 상태에 기초하여, 상기 식별된 명령어에 대응하는 기능을 상기 외부장치가 수행하기 위해 필요한 정보를 상기 외부장치로 전송하는 단계를 포함하는 것을 특징으로 하는 전자장치의 제어방법.
  10. 제9항에 있어서,
    상기 외부장치의 네트워크 연결여부 또는 인증정보 보유여부 중 적어도 어느 하나에 기초하여 상기 외부장치의 상태를 식별하는 단계를 더 포함하는 전자장치의 제어방법.
  11. 제9항에 있어서,
    상기 수신되는 제1오디오신호가 외부장치의 시작명령어에 대응하는 것에 기초하여, 상기 외부장치의 상태에 대한 정보를 수신하는 단계를 더 포함하는 전자장치의 제어방법.
  12. 제9항에 있어서,
    상기 외부장치가 수행할 기능에 대응하는 정보를 상기 외부장치로 전송하는 단계는,
    상기 외부장치가 수행할 기능에 대응하는 정보와 관련된 임시정보를 전송하는 단계를 포함하는 전자장치의 제어방법.
  13. 제12항에 있어서,
    상기 임시정보는 기설정된 시간 또는 횟수 동안 이용 가능한 정보인 전자장치의 제어방법.
  14. 제9항에 있어서,
    상기 외부장치가 수행할 기능에 대응하는 정보를 획득하는 다른 외부장치를 식별하는 단계; 및
    식별된 다른 외부장치로부터 상기 정보를 수신하는 단계를 포함하는 전자장치의 제어방법.
  15. 컴퓨터가 읽을 수 있는 코드로서, 전자장치의 제어방법을 수행하는 코드를 포함하는 컴퓨터 프로그램이 저장된 기록매체에 있어서, 상기 전자장치의 제어방법은,
    외부장치의 시작명령어에 대응하는 것으로 식별되는 제1오디오신호 이후에 수신되는 제2오디오신호에 기초하여 상기 외부장치에 관한 명령어를 식별하는 단계;
    상기 식별된 명령어를 상기 외부장치가 수행할 수 있는지에 기초하여 상기 외부장치의 상태를 식별하는 단계; 및
    식별된 상기 외부장치의 상태에 기초하여, 상기 식별된 명령어에 대응하는 기능을 상기 외부장치가 수행하기 위해 필요한 정보를 상기 외부장치로 전송하는 단계를 포함하는 것을 특징으로 하는 컴퓨터가 읽을 수 있는 프로그램이 기록된 기록매체.
PCT/KR2021/017223 2020-12-11 2021-11-23 전자장치 및 그 제어방법 WO2022124640A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP21903686.0A EP4231286A4 (en) 2020-12-11 2021-11-23 ELECTRONIC DEVICE AND ASSOCIATED CONTROL METHOD
US17/570,152 US20220189478A1 (en) 2020-12-11 2022-01-06 Electronic apparatus and method of controlling the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0173196 2020-12-11
KR1020200173196A KR20220083199A (ko) 2020-12-11 2020-12-11 전자장치 및 그 제어방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/570,152 Continuation US20220189478A1 (en) 2020-12-11 2022-01-06 Electronic apparatus and method of controlling the same

Publications (1)

Publication Number Publication Date
WO2022124640A1 true WO2022124640A1 (ko) 2022-06-16

Family

ID=81973782

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/017223 WO2022124640A1 (ko) 2020-12-11 2021-11-23 전자장치 및 그 제어방법

Country Status (2)

Country Link
KR (1) KR20220083199A (ko)
WO (1) WO2022124640A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070091804A (ko) * 2006-03-07 2007-09-12 와이즈와이어즈(주) 인증키를 이용한 이동통신 단말기 제어를 위한 인증 방법,시스템 및 기록매체
KR20150010517A (ko) * 2013-07-19 2015-01-28 삼성전자주식회사 통신 방법 및 이를 위한 디바이스
US20200135196A1 (en) * 2018-10-31 2020-04-30 Canon Kabushiki Kaisha Electronic device, control method, and storage medium
KR20200048701A (ko) * 2018-10-30 2020-05-08 삼성전자주식회사 사용자 특화 음성 명령어를 공유하기 위한 전자 장치 및 그 제어 방법
KR20200085593A (ko) * 2019-01-07 2020-07-15 삼성전자주식회사 전자 장치 및 그 제어 방법.

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070091804A (ko) * 2006-03-07 2007-09-12 와이즈와이어즈(주) 인증키를 이용한 이동통신 단말기 제어를 위한 인증 방법,시스템 및 기록매체
KR20150010517A (ko) * 2013-07-19 2015-01-28 삼성전자주식회사 통신 방법 및 이를 위한 디바이스
KR20200048701A (ko) * 2018-10-30 2020-05-08 삼성전자주식회사 사용자 특화 음성 명령어를 공유하기 위한 전자 장치 및 그 제어 방법
US20200135196A1 (en) * 2018-10-31 2020-04-30 Canon Kabushiki Kaisha Electronic device, control method, and storage medium
KR20200085593A (ko) * 2019-01-07 2020-07-15 삼성전자주식회사 전자 장치 및 그 제어 방법.

Also Published As

Publication number Publication date
KR20220083199A (ko) 2022-06-20

Similar Documents

Publication Publication Date Title
WO2020071712A1 (en) Method for controlling plurality of voice recognizing devices and electronic device supporting the same
WO2020171548A1 (ko) 사용자 입력 처리 방법 및 이를 지원하는 전자 장치
WO2021085812A1 (ko) 전자장치 및 그 제어방법
WO2022255730A1 (ko) 전자장치 및 그 제어방법
WO2022124640A1 (ko) 전자장치 및 그 제어방법
WO2021256760A1 (ko) 이동 가능한 전자장치 및 그 제어방법
EP4231286A1 (en) Electronic device and control method thereof
WO2022092530A1 (ko) 전자장치 및 그 제어방법
WO2022102960A1 (en) Electronic device for managing task relating to processing of audio signal, and operation method therefor
WO2022065613A1 (en) Electronic apparatus and method of controlling the same
WO2018155810A1 (ko) 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체
WO2022102945A1 (ko) 전자장치 및 그 제어방법
WO2022030860A1 (ko) Iot 환경에서 타겟 전자 장치를 제어하기 위한 전자 장치 및 그에 관한 방법
WO2021241938A1 (ko) 전자장치 및 그 제어방법
WO2021157862A1 (en) Electronic device and control method thereof
WO2021112391A1 (ko) 전자장치 및 그 제어방법
WO2022114482A1 (ko) 전자장치 및 그 제어방법
WO2021071166A1 (en) Electronic apparatus and control method thereof
WO2022025420A1 (ko) 전자장치 및 그 제어방법
WO2023106531A1 (ko) 인공 지능 장치
WO2022097970A1 (ko) 전자장치 및 그 제어방법
WO2022114532A1 (ko) 전자장치 및 그 제어방법
WO2021141332A1 (ko) 전자장치 및 그 제어방법
WO2022055174A1 (ko) 전자장치 및 그 제어방법
WO2022108190A1 (ko) 전자장치 및 그 제어방법

Legal Events

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

Ref document number: 21903686

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021903686

Country of ref document: EP

Effective date: 20230518

NENP Non-entry into the national phase

Ref country code: DE