KR20180002265A - 전자 장치 및 이의 제어 방법 - Google Patents

전자 장치 및 이의 제어 방법 Download PDF

Info

Publication number
KR20180002265A
KR20180002265A KR1020160081523A KR20160081523A KR20180002265A KR 20180002265 A KR20180002265 A KR 20180002265A KR 1020160081523 A KR1020160081523 A KR 1020160081523A KR 20160081523 A KR20160081523 A KR 20160081523A KR 20180002265 A KR20180002265 A KR 20180002265A
Authority
KR
South Korea
Prior art keywords
user
user input
input
electronic device
recognized
Prior art date
Application number
KR1020160081523A
Other languages
English (en)
Other versions
KR102497299B1 (ko
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 KR1020160081523A priority Critical patent/KR102497299B1/ko
Priority to US15/590,165 priority patent/US10276151B2/en
Publication of KR20180002265A publication Critical patent/KR20180002265A/ko
Application granted granted Critical
Publication of KR102497299B1 publication Critical patent/KR102497299B1/ko

Links

Images

Classifications

    • 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
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • 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/0304Detection arrangements using opto-electronic 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/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/20Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/63Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44218Detecting physical presence or behaviour of the user, e.g. using sensors to detect if the user is leaving the room or changes his face expression during a TV program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/011Emotion or mood input determined on the basis of sensed human body parameters such as pulse, heart rate or beat, temperature of skin, facial expressions, iris, voice pitch, brain activity patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0381Multimodal input, i.e. interface arrangements enabling the user to issue commands by simultaneous use of input devices of different nature, e.g. voice plus gesture on digitizer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • G10L15/07Adaptation to the speaker
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/227Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/003Changing voice quality, e.g. pitch or formants
    • G10L21/007Changing voice quality, e.g. pitch or formants characterised by the process used
    • G10L21/01Correction of time axis

Abstract

전자 장치가 개시된다. 본 전자 장치는, 사용자 입력을 입력받는 입력부, 사용자 입력을 인식하기 위한 인식 모델을 저장하는 저장부, 전자 장치의 주변 환경 상태를 감지하는 센서부 및 저장된 인식 모델을 기초로 입력된 사용자 입력을 인식하여 인식된 사용자 입력에 대응되는 동작이 수행되도록 하고, 여러 동작의 수행 과정에서 인식된 사용자 입력, 사용자의 감정 상태의 변화 또는 생체 정보의 변화, 감지된 주변 환경 상태에 기초하여 수행된 동작이 오인식에 의한 동작으로 판단되면 저장된 인식 모델이 갱신되도록 하는 프로세서를 포함한다.

Description

전자 장치 및 이의 제어 방법 {ELECTRONIC APPARATUS AND METHOD FOR CONTROLLING THE ELECTRONIC APPARATUS}
본 개시는 전자 장치 및 이의 제어 방법에 관한 것으로, 더욱 상세하게는, 사용자 감정 정보를 활용하여 오인식된 음성 또는 모션 입력을 판별하는 전자 장치 및 이의 제어 방법에 관한 것이다.
전자 기술의 발달 및 사용자 니즈의 다양화에 따라 다양한 종류의 전자 장치들이 개발되고 있다. 특히, 최근에는 사용자의 음성 또는 모션을 통해 전자 장치를 제어하는 기술이 등장하고 있는데, 사용자의 음성 또는 모션을 통해 전자 장치를 제어하기 위해 각종 인터페이스가 개발되어 각종 전자 장치에 이용되고 있다.
일반적으로, 음성 또는 모션 인식의 경우, 인식기 개발 단계에서 고려하지 못했던 상황이 실사용 환경에서 발생하면, 사용자의 의도와는 다르게 오인식 되는 경우가 종종 발생하게 된다.
이에 따라, 종래엔 음성 또는 모션 인식 오류를 보정하기 위해, 사용자의 모든 입력을 외부 서버에 전달한 뒤 사람이 수작업으로 오인식된 경우를 찾아내어 인식기의 성능을 높이기 위한 데이터로 사용하거나, 매 인식 결과마다 사용자로부터 인식 성공 여부를 확인받아 인식기의 설정 값을 조절하는 방식이 있었다.
그러나 사용자의 모든 입력을 외부 서버에 전달한 뒤 사람이 수작업으로 오인식된 경우를 찾아내는 방식은, 오인식 선별을 사람이 직접 하기 때문에 정확도가 높으나, 데이터의 취합 및 선별 과정에 큰 비용(저장공간, 인력)과 시간이 필요하다는 단점이 존재하였다. 그리고 매 인식 결과마다 사용자로부터 인식 성공 여부를 확인받는 경우에는 사용자가 인식 성공 여부를 확인하기 위한 질문에 매번 응답해 주어야 하기 때문에 사용 편의성이 떨어진다는 단점이 존재하였다.
본 개시는 상술한 문제점을 해결하기 위한 것으로, 본 개시의 목적은 사용자 감정 정보를 활용하여 오인식된 음성 또는 모션 입력을 판별하는 전자 장치 및 이의 제어 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따른 전자 장치는, 사용자 입력을 입력받는 입력부, 상기 사용자 입력을 인식하기 위한 인식 모델을 저장하는 저장부, 상기 전자 장치의 주변 환경 상태를 감지하는 센서부, 및 상기 저장된 인식 모델을 기초로 상기 입력된 사용자 입력을 인식하여 인식된 사용자 입력에 대응되는 동작이 수행되도록 하고, 상기 동작의 수행 이후에 인식된 사용자 입력과 상기 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작으로 판단되면 상기 저장된 인식 모델이 갱신되도록 하는 프로세서를 포함한다.
이 경우, 상기 프로세서는, 상기 동작의 수행 이후에 인식된 사용자 입력에 따라 상기 사용자가 기설정된 감정 상태인 것으로 판단되고, 상기 감지된 주변 환경 상태를 고려하여 상기 판단된 기설정된 감정 상태의 원인이 상기 주변 환경에 의한 것이면, 상기 저장된 인식 모델을 미갱신할 수 있다.
한편, 상기 프로세서는, 상기 동작의 수행 이후 기 설정된 시간 이내에 상기 입력된 사용자 입력과는 다른 제어 수단에 대응되는 사용자 명령이 수신되면, 상기 수행된 동작이 오인식에 의한 동작인 것으로 판단할 수 있다.
한편, 상기 프로세서는, 기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단할 수 있다.
한편, 상기 프로세서는, 기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되고, 상기 복수의 동작이 수행되는 동안 인식된 상기 사용자 입력에 기초하였을 때 상기 사용자의 감정 상태가 특정 감정의 정도가 점점 증가하는 형태로 변화한 것으로 판단되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단할 수 있다.
한편, 상기 센서부는, 온도, 습도 및 소음 중 적어도 하나를 감지할 수 있다.
한편, 본 개시의 일 실시 예에 따른 전자 장치는 외부 디스플레이 장치와 통신하는 통신 인터페이스부를 더 포함하며, 상기 프로세서는, 상기 인식된 사용자 입력에 대응되는 영상을 상기 통신 인터페이스부를 통해 상기 외부 디스플레이 장치로 전송할 수 있다.
한편, 본 개시의 일 실시 예에 따른 전자 장치는 상기 인식된 사용자 입력에 대응되는 영상을 표시하는 디스플레이부를 더 포함하며, 상기 프로세서는, 상기 디스플레이부를 통해 표시 중인 영상의 종류를 더 고려하여 상기 수행된 동작이 오인식에 의한 동작인지 판단할 수 있다.
이 경우, 상기 프로세서는, 오인식에 의한 동작으로 판단된 동작에 대한 정보에 기초하여 상기 저장된 인식 모델이 갱신되도록 할 수 있다.
한편, 상기 저장부는, 사용자별로 상기 인식 모델을 저장하며, 상기 프로세서는, 상기 입력된 사용자 입력에 대응되는 사용자를 판단하고, 상기 입력된 사용자 입력에 대응되어 수행된 동작이 오인식에 의한 동작으로 판단되면, 상기 저장된 인식 모델 중, 상기 판단된 사용자에 대응되는 인식 모델을 갱신할 수 있다.
한편, 상기 입력부는, 사용자를 촬상하는 촬상부 및 사용자의 음성을 수신하는 마이크 중 적어도 하나를 포함할 수 있다.
한편, 본 개시의 일 실시 예에 따른 전자 장치의 제어방법은, 사용자 입력을 입력받는 단계, 상기 전자 장치에 기 저장된 사용자 입력을 인식하기 위한 인식 모델을 기초로 상기 입력된 사용자 입력을 인식하여 상기 인식된 사용자 입력에 대응되는 동작을 수행하는 단계, 상기 전자 장치의 주변 환경 상태를 감지하는 단계, 상기 동작의 수행 이후에 인식된 사용자 입력과 상기 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작인지 판단하는 단계 및 상기 수행된 동작이 오인식에 의한 동작이면, 상기 저장된 인식 모델을 갱신하는 단계를 포함한다.
이 경우, 상기 판단하는 단계는, 상기 동작의 수행 이후에 인식된 사용자 입력에 따라 상기 사용자가 기설정된 감정 상태인 것으로 판단되고, 상기 감지된 주변 환경 상태를 고려하여 상기 판단된 기설정된 감정 상태의 원인이 상기 주변 환경에 의한 것이면, 상기 수행된 동작이 오인식에 의한 동작이 아닌 것으로 판단할 수 있다.
한편, 상기 판단하는 단계는, 상기 동작의 수행 이후 기 설정된 시간 이내에 상기 입력된 사용자 입력과는 다른 제어 수단에 대응되는 사용자 명령이 수신되면, 상기 수행된 동작이 오인식에 의한 동작인 것으로 판단할 수 있다.
한편, 상기 판단하는 단계는, 기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단할 수 있다.
한편, 상기 판단하는 단계는, 기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되고, 상기 복수의 동작이 수행되는 동안 인식된 상기 사용자 입력에 기초하였을 때 상기 사용자의 감정 상태가 특정 감정의 정도가 점점 증가하는 형태로 변화한 것으로 판단되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단할 수 있다.
한편, 상기 인식된 사용자 입력에 대응되는 동작을 수행하는 단계는, 상기 인식된 사용자 입력에 대응되는 영상을 상기 전자 장치의 디스플레이부를 통해 표시하는 단계를 포함할 수 있다.
한편, 상기 판단하는 단계는, 상기 전자 장치의 디스플레이부를 통해 표시 중인 영상의 종류를 더 고려하여 상기 수행된 동작이 오인식에 의한 동작인지 판단할 수 있다.
한편, 상기 저장된 인식 모델을 갱신하는 단계는, 오인식에 의한 동작으로 판단된 동작에 대한 정보에 기초하여 상기 저장된 인식 모델을 갱신할 수 있다.
한편, 본 개시의 일 실시 예에 따른 전자 장치의 제어방법을 수행하기 위한 프로그램이 저장되는 기록 매체에 있어서, 상기 전자 장치의 제어방법은, 사용자 입력을 입력받는 단계, 상기 전자 장치에 기 저장된 사용자 입력을 인식하기 위한 인식 모델을 기초로 상기 입력된 사용자 입력을 인식하여 상기 인식된 사용자 입력에 대응되는 동작을 수행하는 단계, 상기 전자 장치의 주변 환경 상태를 감지하는 단계, 상기 동작의 수행 이후에 인식된 사용자 입력과 상기 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작인지 판단하는 단계 및 상기 수행된 동작이 오인식에 의한 동작이면, 상기 저장된 인식 모델을 갱신하는 단계를 포함한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블럭도,
도 2는 모션 오인식의 일 예를 설명하기 위한 도면,
도 3 내지 도 5는 본 개시의 다양한 실시 예에 따른 오인식에 의한 동작의 후보를 결정하는 방법을 설명하기 위한 도면,
도 6은 본 개시의 또 다른 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블럭도,
도 7은 본 개시의 일 실시 예에 따른 전자 장치의 제어방법을 설명하기 위한 흐름도, 그리고,
도 8 내지 도 10은 전자 장치가 오인식에 의한 동작인지 여부를 판단하는 방법에 대한 본 개시의 다양한 실시 예를 설명하기 위한 도면이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다.
본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 개시의 실시 예들은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 특정한 실시 형태에 대해 범위를 한정하려는 것이 아니며, 발명된 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 실시 예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시의 실시 예에서 '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의'모듈' 혹은 복수의'부'는 특정한 하드웨어로 구현될 필요가 있는 '모듈' 혹은 '부'를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서(미도시)로 구현될 수 있다.
본 개시의 실시 예에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
이하에서는 도면을 참조하여 본 발명에 대해 더욱 상세히 설명하기로 한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블럭도이다. 본 개시에 따른 전자 장치(100)는 사용자 입력에 기반하여 제어 동작을 수행할 수 있는 장치로서, 이에 한정되는 것은 아니나, TV, 스마트폰, 셋탑 박스, 컴퓨터, 네비게이션 등과 같은 다양한 장치로 구현될 수 있다. 전자 장치(100)는 예컨대 사용자의 음성에 기반하여 제어동작을 수행하거나, 사용자의 모션에 기반하여 제어 동작을 수행하거나, 사용자의 음성 및 모션에 기반하여 제어동작을 수행할 수 있는 장치일 수 있다.
한편, 본 명세서에서 사용되는 용어 "음성"은 사용자가 말하는 모든 것을 의미하는 것으로, 특정 의미를 전달하고자 하는 단어 또는 문장뿐만 아니라, 의성어, 의태어, 한숨 등과 같이 의미가 없는 것도 의미하는 것으로서, 청각적으로 인식될 수 있는 사용자의 발화이면 모두 음성에 해당한다. 그리고 본 명세서에서 사용되는 용어 "모션"은 시간에 따라 움직이는 모든 것을 의미하는 것으로, 손과 같은 사용자 신체 일부의 움직임뿐만 아니라, 사용자의 얼굴 표정의 변화, 사용자의 얼굴 색깔의 변화와 같이 사용자 신체에서 시각적으로 확인될 수 있는 것이라면 모두 모션에 해당한다.
도 1을 참고하면, 전자 장치(100)는 저장부(110), 입력부(120), 센서부(130) 및 프로세서(140)를 포함한다.
저장부(110)는 전자장치(100)의 동작에 필요한 각종 프로그램 및 데이터를 저장할 수 있다. 저장부(110)는 비휘발성 메모리, 휘발성 메모리, 플래시메모리(flash-memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 등으로 구현될 수 있다. 저장부(110)는 프로세서(140)에 의해 액세스되며, 프로세서(140)에 의한 데이터의 독취/기록/수정/삭제/갱신 등이 수행될 수 있다. 본 개시에서 저장부라는 용어는 저장부(110)뿐만 아니라, 프로세서(140) 내 롬(미도시), 램(미도시) 또는 전자장치(100)에 장착되는 메모리 카드(미도시)(예를 들어, micro SD 카드, 메모리 스틱, USB)를 의미할 수 있다.
저장부(110)에는 사용자 입력을 인식하기 위한 다양한 인식 모델들이 저장되어 있을 수 있다. 전자 장치(100)가 사용자의 음성 및 모션 중 적어도 하나를 인식할 수 있는 장치로 구현된 경우, 저장부(110)에는 음성 및 모션 중 적어도 하나를 인식하기 위한 다양한 인식 모델들이 저장되어 있을 수 있다. 여기서 음성 또는 모션 인식 모델이란, 음성 또는 모션을 인식하기 위하여 통계적으로 모델링된 일종의 알고리즘이다. 음성 인식을 위한 인식 모델은, 음성의 신호적인 특성을 모델링하여 비교하여 유사도 측정 및 인식을 하는 음향모델과, 인식어휘에 해당하는 단어나 음절 등의 언어적인 순서 관계를 모델링하는 언어모델을 포함할 수 있다. 음성 또는 모션을 인식하기 위한 모델로서, HMM(Hidden Markov Model)을 예로 들 수 있으나, 이에 한정되는 것은 아니다.
한편, 상술한 예에선 인식 모델이 전자 장치(100) 내에 저장되는 것으로 설명하였으나, 외부 서버에 저장된 인식 모델을 이용하는 것도 가능하다. 예컨대, 전자 장치(100)는 입력된 음성 또는 모션을 상기 외부 서버로 전달하고, 음성 또는 모션의 인식은 외부 서버에서 수행되어 전자 장치(100)로 인식 결과가 전송될 수 있다.
또한, 본 개시에선 모델을 기반으로 하지 않고 음성 또는 모션을 인식하는 다양한 종래의 알고리즘을 이용하는 것도 가능하다.
그리고 저장부(110)는 입력부(120)를 통해 입력된 사용자 입력에 대한 정보, 센서부(130)를 통해 센싱된 주변 환경 상태에 대한 정보 등 전자 장치(100)로 입력되는 모든 정보를 저장할 수 있고, 이러한 정보들은 추후 인식 모델을 갱신하는데 이용될 수 있다.
입력부(120)는 사용자 입력을 입력받기 위한 구성이다. 예컨대 입력부(120)는, 사용자 모션을 입력받기 위해 사용자를 촬상할 수 있는 촬상부(예컨대 카메라) 및 사용자 음성을 입력받기 위해 사용자의 음성을 수신할 수 있는 마이크 중 적어도 하나를 포함할 수 있다.
또한, 입력부(120)는 사용자의 음성 및 사용자의 모션과는 다른 제어 수단에 대응되는 사용자 명령을 입력받을 수 있다. 예컨대, 입력부(120)는 리모컨으로부터 IR 신호를 수광하기 위한 리모콘 신호 수신 장치를 포함할 수 있다.
한편, 상술한 실시 예에선 입력부(120)가 전자 장치(100)에 포함되어 전자 장치(100)가 직접 사용자 입력을 입력받는 것으로 설명하였으나, 또 다른 실시 예에 따르면, 전자 장치(100)는 외부 장치를 통해 입력된 사용자 입력을 수신할 수 있다. 예컨대, 전자 장치(100)는 마이크 또는 카메라를 구비한 스마트폰, 웨어러블 디바이스(스마트 워치 등)와 같은 외부 전자 장치를 통해 입력된 사용자의 음성 또는 모션을 수신할 수 있다.
센서부(130)는 전자 장치(100)의 주변 환경 상태를 감지하기 위한 구성이다. 주변 환경 상태란, 사용자의 감정에 영향을 미칠 수 있는 모든 것을 의미한다. 예컨대, 주변 환경 상태는 온도, 습도, 소음, 진동 등을 포함할 수 있다. 이 경우, 센서부(130)는 온도 측정기, 습도 측정기, 소음 측정기, 진동 측정기, 가속도 센서, 자이로 센서, 중력 센서 등 중 적어도 하나를 포함할 수 있다.
또한, 센서부(130)는 생체 신호 측정 센서를 더 포함할 수 있다. 예컨대, 생체 신호 측정 센서는 PPG(Photoplethysmography) 신호, ECG(Electrokardiogram) 신호, BVP(Blood Volume Pulse) 신호, HRV(Heart rate variability) 신호, EEG(electroencephalography) 신호, EMG(electromyography) 신호, 또는 EOG(electrooculography) 신호와 같은 사용자 생체 신호를 생성하는 장치일 수 있다.
한편, 상술한 실시 예에선 센서부(130)가 전자 장치(100)에 포함되는 것으로 설명하였으나, 또 다른 실시 예에 따르면, 전자 장치(100)는 외부 장치를 통해 센싱된 주변 환경 상태 및 생체 신호 중 적어도 하나를 수신할 수 있다. 예컨대, 전자 장치(100)는 외부의 온도 측정기, 습도 측정기, 소음 측정기, 생체 신호 측정 센서 등을 통해 센싱된 정보를 수신하거나, 외부 서버로부터 주변 환경과 관련된 다양한 정보를 수신할 수 있다. 예컨대 전자 장치(100)는 날씨 정보를 알려주는 서버로부터 현재 날씨에 대한 정보를 수신할 수 있다.
프로세서(140)는 전자 장치(100)의 전반적인 동작을 제어하기 위한 구성이다. 프로세서(140)는 CPU, 램(RAM), 롬(ROM), 시스템 버스를 포함할 수 있다. 프로세서(140)는 하나의 CPU만을 포함하거나, 복수의 CPU(또는 DSP, SoC 등)로 구현될 수 있다.
프로세서(140)는 저장부(110)에 저장된 인식 모델을 기초로, 입력부(120)를 통해 입력된 사용자 입력을 인식하여, 인식된 사용자 입력에 대응되는 동작을 수행할 수 있다.
구체적으로, 저장부(110)에는 인식된 사용자 음성 또는 사용자 모션과 이에 대응되는 동작 간의 매칭 관계에 대한 정보가 저장되어 있을 수 있다. 예컨대, 전자 장치(100)가 TV인 경우, 프로세서(140)는 저장부(110)에 저장된 상기 매칭 관계에 대한 정보에 기초하여, "현재 방송 중인 프로그램의 명칭이 뭐야?"라는 음성이 입력부(110)를 통해 수신되어 인식되면, 이에 대응하여 "문의하신 프로그램 제목은 ○○○ 입니다"라는 메시지를 음성 또는 텍스트로 출력할 수 있다. 또 다른 예로, 프로세서(140)는 저장부(110)에 저장된 상기 매칭 관계에 대한 정보에 기초하여, 사용자가 손을 아래에서 위로 올리는 모션이 인식되면, 채널 업 동작을 수행할 수 있다.
특히, 전자 장치(100)가 디스플레이부(미도시)를 포함한 경우, 프로세서(140)는 인식된 사용자 입력에 대응되는 영상을 표시하도록 디스플레이부를 제어할 수 있다.
또한, 프로세서(140)는 인식된 사용자 입력에 대응되는 동작으로서, 타 전자 장치에 제어 명령을 전송할 수 있다. 예를 들어, 전자 장치(100)가 에어컨과 통신이 가능한 스마트폰인 경우, "에어컨 켜"라는 음성이 인식되면, 프로세서(140)는 에어컨에 턴온 명령을 전송할 수 있다. 또 다른 예로, 전자 장치(100)가 셋톱 박스인 경우, 프로세서(140)는 인식된 사용자 음성 또는 사용자 모션에 대응되는 영상을 전자 장치(100)에 연결된 외부 디스플레이 장치에 전송할 수 있다.
한편, 음성인식 또는 동작인식과 같은 인식 기술의 경우, 인식기 개발 단계에서 고려하지 못했던 상황 또는 조건이 실사용 환경에서 발생하면 소비자의 의도와는 다르게 오인식 되는 경우가 종종 발생하게 된다. 예컨대, 도 2에 도시한 것처럼 사용자가 Left-Swife 동작을 할 때, 도 2의 ①과 같이 손을 초기 위치에서 왼쪽으로 움직이게 된다. 원하는 동작을 하고 난 다음에 사용자는 손을 다시 원래 위치로 자연스럽게 이동하게 되고 이 과정이 도 2의 ②에 표현되어 있다. 일반적으로 사용자는 Left-Swife를 하고 난 다음 다시 손을 원래 위치로 옮기게 되는데, 이러한 이유는 왼쪽으로 이동된 손의 위치를 계속 유지할 경우 불편함을 느끼기 때문이다. 그러나 원위치로 손을 옮기고자 하는 동작은 인식기에서 Right-Swife로 오인식 되기 쉬운 문제를 가지고 있다.
따라서, 이러한 오인식의 경우를 분별해 내어 인식기의 성능을 높여주는 것이 필요하다. 이를 위해, 본 개시에 따르면, 프로세서(140)는 사용자 입력에 대응하여 동작이 수행된 이후에 인식된 사용자의 입력과, 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작으로 판단되면 저장부(110)에 저장된 인식 모델을 갱신할 수 있다.
사용자의 입력과 다른 동작이 수행된 경우 사용자는 무의식 중에 어떠한 반응을 보여 감정 상태를 나타내게 된다. 따라서, 이러한 사용자의 반응을 분석함으로써, 오인식이 발생하였을 것으로 예상해볼 수 있으므로, 본 개시에선 이를 이용한다.
구체적으로, 프로세서(140)는 동작의 수행 이후에 인식된 사용자 입력에 기초하여 사용자의 감정 상태를 판단할 수 있다.
예컨대, 동작의 수행 이후에 인식된 사용자의 음성에 특정 상태를 표현하는 단어 혹은 문장이 포함된 경우, 구체적인 예로, "어?", "뭐야", "왜 이래", "장난해?"와 같은 단어나, 한숨, 욕 등이 포함된 경우, 프로세서(140)는 사용자의 감정 상태가 불만족 상태임을 판단할 수 있다.
이러한 음성으로부터 판단된 감정 상태는 수치로 표현될 수 있다. 예컨대, 감정 상태가 0이면, 매우 만족한 상태이고, 수치가 올라갈수록 불만족 상태에 해당한다.
또한, 동작의 수행 이후에 인식된 사용자의 모션에, 특정 행동이 포함된 경우, 구체적인 예로, 분노, 낙담, 질림, 슬픔, 놀라움 등의 표정을 보인 경우, 얼굴이 붉어지거나, 목을 쓸어 만지는 행동, 머리를 절레절레 흔드는 행동 등이 포함된 경우, 프로세서(140)는, 사용가 불만족 상태임을 판단할 수 있다.
이러한 모션으로부터 판단된 감정 상태도 역시 수치로 표현될 수 있다. 예컨대, 감정 상태가 0이면, 매우 만족한 상태이고, 수치가 올라갈수록 불만족 상태에 해당한다.
또한, 프로세서(140)는 센서부(130)에서 감지되거나, 외부 장치(예컨대 사용자가 착용하고 있는 웨어러블 디바이스)로부터 수신한 사용자의 생체 신호를 분석하여 사용자의 감정 상태를 판단할 수 있다.
예컨대, 프로세서(140)는 감지된 사용자의 생체 신호가 기 설정된 특정 생체 신호, 구체적인 예로 흥분 상태를 나타내는 생체신호, 피로함을 나타내는 생체 신호, 놀라움을 나타내는 생체신호, 짜증을 나타내는 생체신호에 대응되는지 분석할 수 있다.
이러한 생체 신호로부터 판단된 감정 상태도 역시 수치로 표현될 수 있다. 예컨대, 감정 상태가 0이면, 매우 만족한 상태이고, 수치가 올라갈수록 불만족 상태에 해당한다.
그리고 프로세서(140)는 음성, 모션, 생체 신호 각각을 고려하여 사용자의 감정상태를 결정하거나, 음성, 모션 및 생체 신호 중 적어도 2 이상을 종합적으로 고려하여 최종적으로 사용자의 감정상태를 결정할 수 있다.
한편, 사용자의 감정 상태는 주변 환경적 요인이 영향을 미친 것일 수도 있다. 예를 들어 여름철에 매우 덥고, 습하면, 사용자는 전자 장치(100)의 동작과 관계없이 불쾌감을 느끼고 스트레스를 받는 상태일 수 있다. 따라서, 본 개시에선 사용자의 행동뿐만 아니라, 주변 환경 상태까지 고려하여, 사용자의 감정 상태의 원인이 주변 환경 때문인지, 전자 장치(100)에서 잘못 인식되어 수행된 동작 때문인지 판단할 수 있다.
구체적으로, 프로세서(140)는 센서부(130)에서 감지된 주변 환경 상태 및 외부 장치로부터 수신된 주변 환경 상태 중 적어도 하나에 대한 정보를 고려하여, 상기 수행된 동작이 오인식에 의한 동작인지를 판단할 수 있다.
또한, 온도, 습도 등과 같은 주변 환경 상태 이외에도, 전자 장치(100) 또는 타 전자 장치에서 사용자에게 제공하고 있는 컨텐츠(영상 및/또는 사운드)도 사용자의 감정상태에 영향을 미칠 수 있다. 예컨대 공포 영화, 흉악 범죄 뉴스 등이 전자 장치(100) 또는 타 전자 장치에서 출력되고 있으면, 이를 보고 있는 사용자의 감정 상태가 놀라움, 공포 등으로 나타나게 된다.
이를 위해, 프로세서(140)는 전자 장치(100) 또는 타 전자 장치에서 현재 출력 중인 컨텐츠의 종류를 고려하여, 수행된 동작이 오인식에 의한 동작인지를 판단할 수 있다.
그리고 프로세서(140)는 주변 환경 상태 및 사용자에게 제공되는 컨텐츠 중 적어도 하나에 기초하여, 사용자 주변의 스트레스 레벨을 결정할 수 있다. 그리고 프로세서(140)는 상기 결정된 스트레스 레벨에 기초하여, 전자 장치(100)가 수행한 동작에 대한 사용자의 감정상태를 판단하기 위한 기준 값을 가변할 수 있다.
예컨대 상기 스트레스 레벨이 0인 경우, 상기 기준 값은 5로 결정될 수 있고, 상기 스트레스 레벨이 2인 경우, 상기 기준 값은 5에서 2만큼 증가된 7로 결정될 수 있다. 이러한 예에 따르고, 사용자의 음성, 모션, 생체 신호 등에 기초하여 판단된 감정 상태가 6이라고 가정하였을 때, 상기 스트레스 레벨이 0인 경우, 프로세서(140)는 상기 판단된 사용자의 감정 상태가 기준 값을 넘으므로, 사용자가 전자 장치(100)가 수행한 동작에 대해 불만이 있는 것으로 판단하여 상기 수행된 동작이 오인식에 의한 동작으로 판단할 수 있다. 반면에, 상기 스트레스 레벨이 2이면, 상기 판단된 사용자의 감정 상태가 기준 값을 넘지 않으므로, 프로세서(140)는 사용자가 전자 장치(100)가 수행한 동작에 대해 불만이 없는 것으로 판단하여, 상기 수행된 동작은 제대로 인식되어 수행된 동작으로 판단할 수 있다.
상술한 것과 같이, 본 개시에 따르면, 사용자의 불만족 상태의 원인이 오인식에 의한 동작인지, 그 이외의 것인지 알 수 있으므로, 더 정확하게 오인식 경우를 분별해낼 수 있다.
한편, 상술한 것처럼 사용자의 말, 모션 또는 생체 신호 등에 기초하여 사용자의 감정 상태를 판단하여, 오인식이 일어났는지를 판단할 수도 있지만, 사용자가 더 이상 음성 또는 모션 인식을 사용하고 싶지 않다는 의사를 표현하는 것이라고 볼 수 있는 상황이 상기 동작 수행 이후에 발생하면, 오인식이 일어난 것으로 판단할 수 있다. 예를 들어, 사용자가 음성 또는 모션 인식을 시도하다가 음성 또는 모션에 기반하지 않은 리모컨과 같은 제어 수단을 사용하면, 음성 또는 모션 인식을 사용하고 싶지 않은 의사로 간주할 수 있다.
구체적으로, 프로세서(140)는 전자 장치(100)가 동작을 수행한 이후 기 설정된 시간 이내에, 입력부(110)를 통해, 기 입력된 사용자 입력, 예컨대 기 입력된 사용자 음성 또는 모션과는 다른 제어 수단에 대응되는 사용자 명령이 수신되면, 상기 수행된 동작이 오인식에 의한 동작인 것으로 판단할 수 있다. 여기서 사용자의 음성 및 사용자의 모션과는 다른 제어 수단은, 예컨대 리모컨, 키보드, 마우스, 터치 패드 등과 같이, 사용자 의도가 비교적 정확히 반영될 수 있는 제어 수단을 의미한다.
본 개시의 또 다른 실시 예에 따르면, 오인식이 일어난 것인지를 더 정확히 판단하기 위해, 그리고 오인식 판단에 소요되는 메모리를 줄이기 위해, 프로세서(140)는 오인식이 일어난 상황일 것으로 예측되는 경우에만 상술한 것과 같이 감정 상태, 주변 환경 상태 등을 고려하여 오인식 여부를 판단할 수 있다.
예컨대, 짧은 시간 동안 반복적으로 사용자 입력이 있는 경우는 오인식이 발생한 상황이라고 예측할 수 있다. 이러한 경우의 구체적인 상황을 도 3을 통해 설명하도록 한다.
도 3은 도 2에서처럼 사용자가 Left-Swife를 한 후, 사용자가 손을 다시 원위치로 복원시키는 과정에서 오인식이 일어나서 사용자가 모션을 반복하는 상황을 나타낸 것이다. 도 3의 3번째 줄까지는 사용자가 left-swife를 했을 때, 모션 인식이 올바르게 이루어진 경우를 나타낸다. 도 3의 6번째 줄부터는 사용자가 left-swife를 행했을 때, 손을 원위치로 복원하는 과정에서 right-swife로 잘못 인식함에 따라, 사용자가 연속적으로 left-swife 모션을 입력한 상황이다.
따라서, 프로세서(140)는 기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행된 경우, 상기 복수의 동작에 대해서 상술한 것과 같은 감정 상태, 주변 환경 상태 등을 고려하는 오인식 여부 판단을 수행할 수 있다.
또한, 반복적으로 사용자 입력에 대응하는 동작이 수행된 뒤에 기 설정된 시간 이내에 기 입력된 사용자 입력과는 다른 제어 수단을 통한 입력이 있으면, 오인식이 발생한 상황일 것으로 예측될 수 있다. 이러한 경우의 구체적인 상황은 도 4를 통해 설명하도록 한다.
도 4는 Left-Swife를 한 후, 사용자가 손을 다시 원위치로 복원시키는 과정에서 오인식이 여러 번 일어나서 결국에는 모션 인식을 사용하는 것을 포기하고 다른 확실한 제어 수단(리모컨)을 사용하여 원하는 명령인 Left key를 누르는 상황을 나타낸 것이다.
따라서, 프로세서(140)는 기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되고 나서, 기 입력된 사용자 입력과는 다른 제어 수단에 대응되는 사용자 명령이 입력부(110)를 통해 입력된 경우, 상기 복수의 동작에 대해서 상술한 것과 같은 감정 상태, 주변 환경 상태 등을 고려하는 오인식 여부 판단을 수행할 수 있다.
또한, 반복적으로 사용자 입력이 있는 상황에서 사용자의 감정 상태가 점점 안 좋아진 경우에도 오인식이 발생한 상황일 것으로 예측될 수 있다. 이러한 경우의 구체적인 상황을 도 5를 통해 설명하도록 한다.
도 5에서 사용자 음성은 알파벳 소문자를 이용하여 나타내었고, 음성인식 결과가 사용자의 의도에 맞게 인식된 경우 동일한 알파벳의 대문자를 사용하여 나타내었다. 도 5에서 맨 위에 위치한 처음 3개의 사용자 음성 "a", "a", "b"에 대해서는 "A", "A", "B"로 올바르게 인식되었기 때문에 명령 인식 과정에서 사용자의 감정 변화는 없게 된다(보통 상태 유지).
반면 아래에 위치한 5개의 연속된 사용자 입력 "a", "a", "a", "a", "a"에 대해서는 "B", "B", "B", "B", "A"로, 처음 4번은 오인식 되었고, 마지막 1번만 올바르게 인식된 경우를 나타낸다. 사용자는 A라는 명령을 전달하고자 했으나 인식기에서 오인식이 발생하자, 원하는 명령이 인식될 때까지 동일한 입력을 연속적으로 반복한 상태를 나타낸다. 동일한 입력을 반복하는 과정에서 사용자는 피로감을 느끼게 되고, 원하는 명령이 인식되지 않는 과정이 반복됨에 따라서 감정 상태가 보통에서 화남/짜증남의 강도가 높아지게 된다. 연속된 입력을 통해 마지막 5번째에서 원하는 명령 "A"가 인식되게 되면 사용자는 입력을 멈추고 쉬게 된다.
이 명령 인식 과정을 보면, 연속된 명령 인식이 진행될 때 사용자의 감정이 급격히 스트레스를 받는 상태로 변한다면 오인식 되었을 가능성이 높다고 볼 수 있다.
이러한 관점에서, 프로세서(140)는 기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되고, 상기 복수의 동작이 수행되는 동안 인식된 사용자 입력, 예컨대 인식된 음성 또는 모션에 기초하였을 때, 사용자의 감정 상태가 기 설정된 특정 감정(예컨대 짜증, 화남)의 정도가 점차 증가하는 형태로 변화한 것으로 판단되면, 상기 복수의 동작에 대해 오인식에 의한 동작인지 여부를 판단할 수 있다.
프로세서(140)는 수행된 동작이 오인식에 의한 동작인 것으로 판단되면, 인식 모델을 갱신한다. 인식 모델의 갱신이란, 오인식이 발생한 경우에 입력된 사용자 입력과, 이에 대응하여 잘못 수행된 동작을 참고하여, 인식 모델을 수정하는 것을 의미한다.
그리고 프로세서(140)는 수행된 동작이 오인식에 의한 동작이 아닌 것으로 판단되면 인식 모델을 갱신하지 않는다. 구체적으로, 동작의 수행 이후에 인식된 사용자 입력, 예컨대 인식된 사용자의 음성 및 모션 중 적어도 하나에 따라 상기 사용자가 기설정된 감정 상태인 것으로 판단되고, 상기 감지된 주변 환경 상태를 고려하여 상기 판단된 기설정된 감정 상태의 원인이 주변 환경에 의한 것이면, 프로세서(140)는 상기 저장된 인식 모델을 갱신하지 않는다.
한편, 인식 모델을 갱신하는 일 실시 예에 따르면, 프로세서(140)는 오인식에 의한 동작으로 판단된 동작에 대한 정보를 전자 장치(100) 외부에 존재하는 서버에 전송하고, 서버에선 이와 같이 수집된 정보들을 이용하여 엔지니어들이 인식 모델을 갱신한다. 그리고 프로세서(140)는 서버로부터 갱신된 인식 모델을 수신함으로써 저장부(110)에 저장된 인식 모델을 갱신할 수 있다.
오인식에 의한 동작으로 판단된 동작에 대한 정보에는, 오인식의 경우에 입력된 사용자 입력, 예컨대 사용자 음성 또는 모션과 오인식하여 전자 장치(100)에서 수행된 동작에 대한 정보가 포함되며, 필요 시 오인식 당시의 사용자의 감정상태 및 주변 환경 상태에 대한 정보가 더 포함될 수 있다.
인식 모델을 갱신하는 또 다른 실시 예에 따르면, 프로세서(140)는 자체적으로 인식 모델을 갱신할 수도 있다. 구체적으로, 프로세서(140)는 오인식으로 판단된 경우에 대한 정보에 기초하여 저장부(110)에 저장된 인식 모델의 변수 값들을 조절함으로써 인식 모델을 갱신할 수 있다. 본 실시 예에 따르면, 전자 장치(100)의 사용자에 특화되어 인식 모델이 갱신될 수 있다.
더 나아가 본 개시의 또 따른 실시 예에 따르면, 전자 장치(100)의 사용자는 다수일 수 있으므로, 프로세서(140)는 이러한 다수의 사용자 각각에 특화하여 인식 모델을 갱신할 수 있다.
구체적으로, 프로세서(140)는 입력된 사용자 입력에 대응하는 사용자를 판단 수 있다. 예컨대, 프로세서(140)는 사용자 입력의 입력 당시의 사용자를 촬영하여 사용자가 누구인지 판단할 수 있다. 그리고 저장부(110)에는 사용자별로 인식 모델을 저장되어 있고, 프로세서(140)는 입력된 사용자 입력에 대응되어 수행된 동작이 오인식에 의한 동작으로 판단되면, 저장부(110)에 사용자별로 저장된 인식 모델들 중에서, 사용자 입력을 입력한 사용자에 대응되는 인식 모델을 갱신할 수 있다.
한편, 상술한 실시 예에선 전자 장치(100)가 자체적으로 사용자 특성에 맞게 인식 모델을 갱신하는 것으로 설명하였으나, 외부 서버에서 사용자별로 인식 모델이 관리하는 것이 가능한 경우엔 외부 서버에서 이러한 동작이 수행되는 것도 가능하다.
도 6은 본 개시의 또 다른 실시 예에 따른 전자 장치를 설명하기 위한 블록도이다.
도 6을 참조하면, 전자 장치(100')는 저장부(110), 촬상부(121), 마이크(122), 리모컨 신호 수신부(123), 센서부(130), 프로세서(140), 디스플레이부(150), 통신 인터페이스부(160), 스피커(170), 방송 수신부(180)를 포함한다. 도 6을 설명함에 있어서 상술한 전자 장치(100)의 구성과 중복되는 부분에 대해선 자세한 설명을 생략하도록 한다.
저장부(110)는 전자 장치(100')가 동작하는데 필요한 다양한 프로그램, 모듈 등이 저장되어 있다.
구체적으로, 저장부(110)에는 표정인식 모듈, 마이크에서 전달된 음성 신호로부터 사람의 감정상태를 파악하는 음성감정인식 모듈, 생체신호 측정센서가 존재할 경우 측정된 생체 신호로부터 사람의 감정 상태를 확인하는 생체신호분석모듈, 다양한 방법으로부터 인식된 사람의 감정 결과를 종합하여 사용자의 감정 상태를 최종 결정하는 사용자 감정 판단 모듈, 동작인식 모듈 및 음성인식 모듈 중 적어도 하나가 저장되어 있을 수 있다.
촬상부(121)는 사용자를 촬상하여 촬상 영상을 생성하기 위한 구성으로서, 카메라일 수 있다. 구체적으로, 프로세서(140)는 모션 인식이 요구되는 경우, 사용자 감정 상태 판단이 필요한 경우 또는 사용자가 누구인지 판단할 필요가 있는 경우 사용자를 촬상하도록 촬상부(121)를 제어할 수 있다.
마이크(122)는 사용자 음성을 입력받아 음성 신호를 생성할 수 있는 구성이다. 한편, 마이크(122)를 통해 입력되는 음성은 음성 인식에 기반한 전자 장치(100') 제어에 이용되거나, 사용자 감정 상태 판단에 이용되거나, 사용자가 누구인지 판단하는데 이용될 수 있다. 구체적으로, 프로세서(140)는 마이크(122)에서 수집된 음성 신호에 기초하여, 음성 인식을 수행하여 인식된 음성에 대응되는 동작을 수행할 수 있고, 사용자 음성의 특성을 분석하여 사용자 감정 상태를 판단하거나, 사용자가 누구인지 판단할 수 있다.
리모컨 신호 수신부(190)는 전자 장치(100)를 제어하기 위한 리모컨으로부터 제어 신호를 수신받기 위한 구성이다. 리모컨 신호 수신부(190)를 통해 수신된 제어 신호는 전자 장치(100')의 일반적 동작을 제어하는데 이용될 뿐만 아니라, 오인식이 발생하였는지 판단하는데에도 이용될 수 있다. 구체적으로, 프로세서(140)는 음성 또는 모션 입력에 대응하여 동작이 수행된 이후에, 리모컨 신호 수신부(190)를 통해 제어 신호가 입력되면, 상기 수행된 동작이 오인식에 의한 동작인 것으로 판단할 수 있다.
센서부(130)는 주변 환경 상태를 감지할 수 있다. 구체적으로 센서부(130)는 온도 센서, 습도 센서, 진동 감지 센서, 터치 센서, 지자기 센서, 자이로 센서, 가속도 센서 등 주변환경을 센싱할 수 있는 다양한 센서를 포함할 수 있다.
센서부(130)에 의해 감지된 주변 환경 상태는, 사용자의 감정 상태의 원인을 판단하는데 이용될 수 있다. 한편, 사용자의 감정 상태를 좀 더 정확히 판단하기 위해, 센서부(130)는 생체 신호 측정 센서를 더 포함할 수 있다.
디스플레이부(150)는 프로세서(140)의 제어에 따라 전자 장치(100')에서 제공하는 기능에 관한 메뉴 또는 기타 메시지 등을 포함한 다양한 화면을 디스플레이하기 위한 구성이다.
디스플레이부(150)는 예컨대, LCD(Liquid Crystal Display)로 구현될 수 있으며, 경우에 따라 CRT(cathode-ray tube), PDP(plasma display panel), OLED(organic light emitting diodes), TOLED(transparent OLED) 등으로 구현될 수 있다. 또한, 디스플레이부(150)는 사용자의 터치 조작을 감지할 수 있는 터치스크린 형태로 구현될 수도 있다.
프로세서(140)는 디스플레이부(150)를 제어하여 인식된 사용자 입력에 대응되는 영상을 표시할 수 있다. 또한, 프로세서(140)는 디스플레이부(150)에서 현재 표시 중인 영상이 어떤 것인지 판단하여, 이를 사용자 감정 상태의 원인을 파악하는데 이용할 수 있다.
스피커(170)는 오디오 처리부(미도시)에서 처리된 각종 오디오 데이터뿐만 아니라 각종 알림 음이나 음성 메시지 등을 출력하는 구성요소이다.
프로세서(140)는 스피커(170)를 통해, 인식된 사용자 입력에 대응하는 사운드를 출력할 수 있으며, 또한, 프로세서(140)는 현재 스피커(170)에서 출력되는 사운드가 어떤 것인지를 판단하여, 이를 사용자 감정 상태의 원인을 파악하는 데 이용할 수 있다.
프로세서(140)는 디스플레이부(150) 및 스피커(170) 중 적어도 하나에서 출력되는 컨텐츠에 대한 정보에 포함된 컨텐츠의 종류, 장르에 기초하여 사용자 감정 상태의 원인을 판단할 수 있다. 상기와 같은 컨텐츠에 대한 정보는, 컨텐츠 프로바이더, 방송 서버, VoD 제공 서버, EPG 제공 서버 등으로부터 제공받은 것일 수 있다.
통신 인터페이스부(160)는 외부 장치와 통신을 수행하기 위한 구성이다. 통신 인터페이스부(160)는 IEEE, 와이파이, 블루투스, 3G, 4G, NFC(Near Field Communication)등과 같은 다양한 통신 방식을 통해 외부 장치와 통신을 수행할 수 있으며, 와이파이칩, 블루투스 칩, NFC칩, 무선 통신 칩 등과 같은 다양한 통신 칩을 포함할 수 있다. 무선 통신 칩은 IEEE, 지그비, 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution) 등과 같은 다양한 통신 규격에 따라 통신을 수행하는 칩을 의미한다.
한편, 도 6에선 전자 장치(100')가 촬상부(121), 마이크(122), 센서부(130)를 구비하는 것으로 설명하였으나, 이러한 구성이 구비되어 있지 않더라도, 통신 인터페이스부(160)는 외부의 촬상 장치, 마이크, 주변 환경 상태 센싱 장치, 사용자 생체 신호 센싱 장치, 주변 환경 정보 제공 서버 등과 연결될 수 있다.
또한, 도 6에선 전자 장치(100')가 디스플레이부(150)를 포함하는 것으로 설명하였으나, 통신 인터페이스부(150)를 통해 디스플레이 기능을 수행하는 외부 장치와 연결될 수 있다. 이 경우, 프로세서(140)는 통신 인터페이스부(150)를 통해 외부 디스플레이 장치로 영상을 전송할 수 있고, 특히, 인식된 사용자 입력에 대응되는 영상을 통신 인터페이스부(150)를 통해 외부 디스플레이 장치로 전송할 수 있다.
또한, 전자 장치(100') 자체적으로 사용자 입력에 대한 인식을 수행할 수도 있지만, 통신 인터페이스부(160)는 입력된 사용자 입력, 예컨대 입력된 사용자의 모션 또는 음성에 대한 인식을 수행하는 외부 서버와 연결될 수도 있다.
또한, 통신 인터페이스부(160)를 통해 프로세서(140)는 인식된 사용자 입력에 대응되는 동작을 수행하도록 외부 전자 기기를 제어하기 위한 제어 명령을 전송할 수 있다.
또한, 프로세서(140)는 컨텐츠를 출력하는 외부 장치로부터 출력 중인 컨텐츠에 대한 정보를 수신하도록 통신 인터페이스부(160)를 제어할 수 있고, 수신된 정보에 기초하여 사용자의 감정 상태의 원인을 판단할 수 있다.
방송 수신부(180)는 방송 채널을 튜닝하여 방송 신호를 수신하여 처리하기 위한 구성요소로서, 튜너부, 복조부, 등화부, 디멀티플렉서 등을 포함할 수 있다. 방송 수신부(180)는 프로세서(140)의 제어에 따라 방송 채널을 튜닝하여 사용자가 원하는 방송 신호를 수신한 후, 수신된 방송 신호를 복조하고 등화한 후, 비디오 데이터, 오디오 데이터 및 부가 데이터 등으로 디먹싱할 수 있다.
디먹싱된 비디오 데이터는 이미지 처리부(미도시)로 제공된다. 이미지 처리부는 제공된 비디오 데이터에 대해서 노이즈 필터링, 프레임 레이트 변환, 해상도 변환 등과 같은 다양한 이미지 처리를 수행하여, 화면상에 출력할 프레임을 생성한다.
디먹싱된 오디오 데이터는 오디오 처리부(미도시)로 제공된다. 오디오 처리부에서는 오디오 데이터에 대한 디코딩이나 증폭, 노이즈 필터링 등과 같은 다양한 처리가 수행될 수 있다.
프로세서(140)는 RAM(141), ROM(142), 메인 CPU(144), 각종 인터페이스(145-1 ~ 145-n), 버스(143)를 포함한다. RAM(141), ROM(142), 메인 CPU(144), 각종 인터페이스(145-1 ~ 145-n) 등은 버스(143)를 통해 서로 연결되어, 각종 데이터나 신호 등을 송수신할 수 있다.
제1 내지 n 인터페이스(145-1 ~ 145-n)는 도 6에 도시된 각종 구성 요소들 뿐만 아니라, 그 밖의 구성 요소들과도 연결되어 메인 CPU(144)가 액세스할 수 있도록 한다. 일 예로, USB 메모리와 같은 외부 디바이스가 연결되면, 메인 CPU(144)는 USB 인터페이스를 통해서 USB 메모리에 액세스할 수 있다.
구체적으로는, ROM(142)에는 시스템 부팅을 위한 명령어 세트 등이 저장된다. 턴온 명령이 입력되어 전원이 공급되면, 메인 CPU(144)는 ROM(142)에 저장된 명령어에 따라 저장부(110)에 저장된 O/S를 RAM(141)에 복사하고, O/S를 실행시켜 시스템을 부팅시킨다. 부팅이 완료되면, 메인 CPU(144)는 저장부(110)에 저장된 각종 프로그램을 RAM(141)에 복사하고, RAM(141)에 복사된 프로그램을 실행시켜 각종 동작을 수행한다.
또한, 도 6에 도시하진 않았으나, 전자 장치(100')는 다양한 입력 장치와 연결될 수 있는 포트를 구비하여, 키보드, 마우스 등과 연결될 수 있으며, 전자 장치(100') 자체적으로 버튼들을 구비하고 있을 수도 있다. 이러한 입력 수단을 통해 입력된 사용자 명령은 전자 장치(100')의 동작 제어를 위한 것일 뿐만 아니라, 입력된 사용자 입력, 예컨대 입력된 사용자 음성 또는 모션이 오인식되었는지 여부를 판단하는데 이용될 수도 있다.
도 7은 본 개시의 일 실시 예에 따른 전자 장치를 제어하기 위한 방법을 설명하기 위한 흐름도이다. 한편, 본 개시에 따른 전자 장치의 제어방법은 도 7을 통해 설명한 것뿐만 아니라 도 1 내지 도 6을 통해 설명한 다양한 실시 예를 포함한다. 따라서 중복되는 범위 내에서의 설명은 생략하도록 한다.
도 7을 참고하면, 먼저, 전자 장치는 사용자 입력을 입력받는다(S710). 여기서 사용자 입력은, 사용자의 음성 및 사용자의 모션 중 적어도 하나일 수 있다.
그리고, 전자 장치는, 전자 장치에 기 저장된 사용자 입력을 인식하기 위한 인식 모델을 기초로, 입력된 사용자 입력을 인식하여, 인식된 사용자 입력에 대응되는 동작을 수행한다(S720).
그리고 전자 장치는, 전자 장치의 주변 환경 상태를 감지한다(S730).
본 개시의 일 실시 예에 따르면, 프로세서(140)는 기 설정된 시간 간격 이내로 사용자 입력이 복수 번 입력되어 이에 대응되는 동작이 수행되었는지 여부를 판단하고, 이러한 경우에 대하여 입력된 사용자 입력에 대한 오인식이 발생하였는지를 판단할 수 있다.
예컨대, 전자 장치는 기 설정된 시간 간격 이내로 사용자 음성 또는 모션이 복수 번 입력되는 '연속 명령 구간'을 판정할 수 있다. 구체적으로, 전자 장치는, 음성 또는 모션이 입력되면, 현재로부터 기 설정된 시간 간격 이내만큼 과거에 음성 또는 모션의 입력이 있었는지 판단하고, 없었으면 현재 입력된 음성 또는 모션을 연속 명령 구간의 최초 위치로 결정한다. 그리고 후속적으로 입력되는 음성 또는 모션들에 대해서도 기 설정된 시간 간격 이내로 입력되었는지 판단하여 음성 또는 모션 입력 없이 상기 기 설정된 시간이 경과한 것으로 판단되면, 마지막으로 입력되었던 음성 또는 모션을 연속 명령 구간의 마지막 위치로 결정한다.
또한, 전자 장치는 상기 연속 명령 구간에서의 어떠한 입력이 있었는지, 각 입력에 대응하여 수행된 동작은 어떤 것이었는지, 또한 각 동작 수행 이후에 감지된 모션, 음성, 사용자 생체 신호, 주변 환경 상태에 관한 정보를 연속 명령 구간에 대한 정보로 저장한다.
그리고, 전자 장치는 동작의 수행 이후에 인식된 사용자 입력과 상기 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작인지 판단한다(S740). 구체적으로, 상기와 같이 저장된 연속 명령 구간에 대한 정보에 기초하여, 전자 장치는 연속 명령 구간에서 오인식이 있었는지 여부를 판단할 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 전자 장치는 상기와 같은 연속 명령 구간에서 인식된 사용자의 음성, 모션, 생체 정보에 기초하여 사용자의 감정 상태가 스트레스가 증가하는 경향을 보였는지 확인하여, 스트레스가 증가한 것으로 나타나면 해당 연속 명령 구간을 오인식이 발생된 구간으로 판단할 수 있다.
그리고 전자 장치는 상기 수행된 동작이 오인식에 의한 동작이면, 기 저장된 인식 모델을 갱신한다(S750). 구체적으로, 전자 장치는, 오인식이 일어난 경우에 어떤 음성 또는 모션이 입력되었는지, 어떤 동작이 수행되었는지에 대한 정보와, 필요시 동작이 수행된 이후에 사용자 감정상태 및 주변 환경 상태에 대한 정보도 고려하여 기 저장된 인식 모델의 설정 값을 조절함으로써 인식 모델을 자체적으로 갱신하거나, 인식 모델 갱신을 수행하는 외부 서버로 이러한 정보를 전송할 수 있다.
도 8은 상술한 연속 명령 구간을 판정 과정의 일 예를 도시한 것이다.
도 8을 참고하면, 처음 전자 장치가 동작하였을 때, 연속인식명령 Sequence의 시작과 끝을 나타내는 Cmd_S, Cmd_E는 invalid한 값을 가지고 있게 된다. 도 8을 참고하면, 전자 장치는 먼저 음성 또는 모션을 감지한다(S810). 감지된 음성 또는 모션에 대응하는 명령의 인식에 성공한 것으로 판단되면(S820), 전자 장치는 인식된 명령에 대한 정보, 인식 시 주변 환경 상태에 대한 정보, 시간 정보를 저장한다(S830). 그리고 전자 장치는 연속인식명령 Sequence의 시작위치 값이 유효한지 판단한다(S840). 이때, 연속인식명령 Sequence의 시작위치 값인 Cmd_S가 invalid한 값을 가지고 있을 경우, 현재 인식된 명령을 연속인식명령 Sequence의 시작 위치로 표시하게 된다(S850). 연속인식명령 Sequence의 끝 위치를 나타내는 Cmd_E 값은 현재 인식된 명령의 위치를 가리키도록 변경되며(S860), 연속인식 명령 Sequence가 끝났을 때, 기 입력된 인식 명령에 대한 오인식 여부를 판단하기 위해 사용되는 타이머(Timer) 값을 초기 값으로 변경해주게 된다(S870)(TTrigger = TDelta). TTrigger 값은 매 시간이 지날 때마다 감소하게 되고, TTrigger가 0이 되면 연속된 인식 명령의 입력이 끝난 것으로 판단하게 된다.
이하에선 도 9를 참조하여, 사용자가 음성 또는 모션 인식을 통한 제어를 하려고 여러 번 시도하는 과정에서 오인식된 결과가 반복적으로 나오자, 음성 또는 모션 인식 기능을 사용하는 것을 포기하고 다른 확실한 입력장치(ex. 리모컨)로 입력 수단을 바꾼 경우를 감지하여 오인식 명령을 추출하는 과정의 일 예를 설명하도록 한다.
도 9를 참고하면, 전자 장치로 사용자가 음성 또는 모션을 기반으로 하지 않는, 비인식 기반 사용자 입력이 수신되면(S910), 전자 장치는 이전에 입력된 연속인식 명령 구간이 존재하는지를 판단한다. 이를 위해서 전자 장치는 현재 연속인식명령Sequence의 시작 위치 값(Cmd_S)이 유효한 값을 가지는지를 확인하고(S920), Cmd_S에 유효한 값이 들어 있는 경우 연속인식명령 Sequence의 길이(Cmd_L)를 계산한다(S930). 그리고 전자 장치는 연속인식명령 Sequence의 길이가 충분한 것인지 판단한다(S940). 구체적으로, Cmd_L 값이 충분히 큰 경우 (Th_L보다 큰 경우)이면, 연속인식명령 Sequence의 길이가 충분한 것으로 판단한다. 이후, 전자 장치는 연속인식명령 Sequence 구간에서 사용자의 감정 상태가 특정 감정(ex.스트레스)의 정도가 점점 증가하는 경향을 보였는지를 확인하여(S950), 증가한 것으로 나타나면 해당 연속인식명령 Sequence를 오인식된 명령 구간으로 판단하고 오인식과 관련된 정보를 저장한다(S960). (이렇게 저장된 오인식 관련 정보들은 인식기의 전체 성능을 높이기 위해 취합되어 활용되거나, 전자 장치 내부에서 개별 사용자에 맞추어 인식 성능을 조절하기 위해 활용되게 된다.) 연속인식명령 Sequence에 대해 오인식 여부를 판단한 후에는 해당 구간을 버리고 다음에 입력되는 인식 명령들에 대해 연속된 구간을 추출하게 된다. 즉, Cmd_S, Cmd_E에 invalid한 값을 입력한다(S970).
도 10은 도 5에서 나타낸 것과 같이, 제대로 인식될 때까지 여러 번 반복해서 명령을 내리는 경우에 대해 오인식 판단 방법의 일 예를 설명하기 위한 도면이다. 연속된 인식명령 구간이 존재할 경우, 연속된 인식명령 Sequence에 대한 정보인 Cmd_S, Cmd_E, TTrigger 값은 도 8에서 설명한 과정에 의해 유효한 값들을 가지고 있게 된다. 도 10에서는 연속인식명령의 끝을 확인하기 위해서 일정 시간이 지날 때마다(S1005), 연속인식 명령 구간이 존재하는지를 판단하고(S1010), TTrigger 값을 감소시킨다(S1015). TTrigger 값이 0이 되면, 더 이상 연속된 명령어 입력은 없다고 판단하고(S1020), 연속인식명령 Sequence의 길이(Cmd_L)를 계산한다(S1025). 그리고 전자 장치는 연속인식명령 Sequence의 길이가 충분한 것인지 판단한다(S1030). 구체적으로, Cmd_L 값이 충분히 큰 경우 (Th_L보다 큰 경우)이면, 연속인식명령 Sequence의 길이가 충분한 것으로 판단한다. 이후, 전자 장치는 연속인식명령 Sequence 구간에서 사용자의 감정 상태가 특정 감정(ex.스트레스)의 정도가 점점 증가하는 경향을 보였는지를 확인하여(S1035), 증가한 것으로 나타나면 해당 연속인식명령 Sequence를 오인식된 명령 구간으로 판단하고 오인식과 관련된 정보를 저장한다(S1040). 연속인식명령 Sequence에 대해 오인식 여부를 판단한 후에는 해당 구간을 버리고 다음에 입력되는 인식 명령들에 대해 연속된 구간을 추출하게 된다. 즉, Cmd_S, Cmd_E에 invalid한 값을 입력한다(S1045).
한편, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합된 것을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 하드웨어적인 구현에 의하면, 본 개시에서 설명되는 실시 예들은 ASICs(Application Specific Integrated Circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. 일부의 경우에 본 명세서에서 설명되는 실시 예들이 프로세서(140) 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.
한편, 상술한 본 개시의 다양한 실시 예들에 따른 전자 장치의 제어방법은 비일시적 판독 가능 매체(non-transitory readable medium) 에 저장될 수 있다. 이러한 비일시적 판독 가능 매체는 다양한 장치에 탑재되어 사용될 수 있다.
비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 방법을 수행하기 위한 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 이상에서는 본 개시의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시가 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
100: 전자 장치 110: 저장부
120: 입력부 130: 센서부
140: 프로세서

Claims (20)

  1. 전자 장치에 있어서,
    사용자 입력을 입력받는 입력부;
    상기 사용자 입력을 인식하기 위한 인식 모델을 저장하는 저장부;
    상기 전자 장치의 주변 환경 상태를 감지하는 센서부; 및
    상기 저장된 인식 모델을 기초로 상기 입력된 사용자 입력을 인식하여 인식된 사용자 입력에 대응되는 동작이 수행되도록 하고, 상기 동작의 수행 이후에 인식된 사용자 입력과 상기 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작으로 판단되면 상기 저장된 인식 모델이 갱신되도록 하는 프로세서;를 포함하는 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 동작의 수행 이후에 인식된 사용자 입력에 따라 상기 사용자가 기설정된 감정 상태인 것으로 판단되고, 상기 감지된 주변 환경 상태를 고려하여 상기 판단된 기설정된 감정 상태의 원인이 상기 주변 환경에 의한 것이면, 상기 저장된 인식 모델을 미갱신하는 전자 장치.
  3. 제1항에 있어서,
    상기 프로세서는,
    상기 동작의 수행 이후 기 설정된 시간 이내에 상기 입력된 사용자 입력과는 다른 제어 수단에 대응되는 사용자 명령이 수신되면, 상기 수행된 동작이 오인식에 의한 동작인 것으로 판단하는 전자 장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단하는 전자 장치.
  5. 제1항에 있어서,
    상기 프로세서는,
    기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되고, 상기 복수의 동작이 수행되는 동안 인식된 상기 사용자 입력에 기초하였을 때 상기 사용자의 감정 상태가 특정 감정의 정도가 점점 증가하는 형태로 변화한 것으로 판단되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단하는 전자 장치.
  6. 제1항에 있어서,
    상기 센서부는,
    온도, 습도 및 소음 중 적어도 하나를 감지하는 전자 장치.
  7. 제1항에 있어서,
    외부 디스플레이 장치와 통신하는 통신 인터페이스부;를 더 포함하며,
    상기 프로세서는,
    상기 인식된 사용자 입력에 대응되는 영상을 상기 통신 인터페이스부를 통해 상기 외부 디스플레이 장치로 전송하는 전자 장치.
  8. 제1항에 있어서,
    상기 인식된 사용자 입력에 대응되는 영상을 표시하는 디스플레이부;를 더 포함하며,
    상기 프로세서는,
    상기 디스플레이부를 통해 표시 중인 영상의 종류를 더 고려하여 상기 수행된 동작이 오인식에 의한 동작인지 판단하는 전자 장치.
  9. 제1항에 있어서,
    상기 프로세서는,
    오인식에 의한 동작으로 판단된 동작에 대한 정보에 기초하여 상기 저장된 인식 모델이 갱신되도록 하는 전자 장치.
  10. 제1항에 있어서,
    상기 저장부는,
    사용자별로 상기 인식 모델을 저장하며,
    상기 프로세서는,
    상기 입력된 사용자 입력에 대응되는 사용자를 판단하고, 상기 입력된 사용자 입력에 대응되어 수행된 동작이 오인식에 의한 동작으로 판단되면, 상기 저장된 인식 모델 중, 상기 판단된 사용자에 대응되는 인식 모델을 갱신하는 전자 장치.
  11. 제1항에 있어서,
    상기 입력부는,
    사용자를 촬상하는 촬상부 및 사용자의 음성을 수신하는 마이크 중 적어도 하나를 포함하는 전자 장치.
  12. 전자 장치의 제어방법에 있어서,
    사용자 입력을 입력받는 단계;
    상기 전자 장치에 기 저장된 사용자 입력을 인식하기 위한 인식 모델을 기초로 상기 입력된 사용자 입력을 인식하여 상기 인식된 사용자 입력에 대응되는 동작을 수행하는 단계;
    상기 전자 장치의 주변 환경 상태를 감지하는 단계;
    상기 동작의 수행 이후에 인식된 사용자 입력과 상기 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작인지 판단하는 단계; 및
    상기 수행된 동작이 오인식에 의한 동작이면, 상기 저장된 인식 모델을 갱신하는 단계;를 포함하는 전자 장치의 제어방법.
  13. 제12항에 있어서,
    상기 판단하는 단계는,
    상기 동작의 수행 이후에 인식된 사용자 입력에 따라 상기 사용자가 기설정된 감정 상태인 것으로 판단되고, 상기 감지된 주변 환경 상태를 고려하여 상기 판단된 기설정된 감정 상태의 원인이 상기 주변 환경에 의한 것이면, 상기 수행된 동작이 오인식에 의한 동작이 아닌 것으로 판단하는 전자 장치의 제어방법.
  14. 제12항에 있어서,
    상기 판단하는 단계는,
    상기 동작의 수행 이후 기 설정된 시간 이내에 상기 입력된 사용자 입력과는 다른 제어 수단에 대응되는 사용자 명령이 수신되면, 상기 수행된 동작이 오인식에 의한 동작인 것으로 판단하는 전자 장치의 제어방법.
  15. 제12항에 있어서,
    상기 판단하는 단계는,
    기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단하는 전자 장치의 제어방법.
  16. 제12항에 있어서,
    상기 판단하는 단계는,
    기 설정된 시간 이내의 간격을 두고 연속적으로 사용자 입력에 대응하여 복수의 동작이 수행되고, 상기 복수의 동작이 수행되는 동안 인식된 상기 사용자 입력에 기초하였을 때 상기 사용자의 감정 상태가 특정 감정의 정도가 점점 증가하는 형태로 변화한 것으로 판단되면, 상기 복수의 동작에 대하여 오인식에 의한 동작인지 여부를 판단하는 전자 장치의 제어방법.
  17. 제12항에 있어서,
    상기 인식된 사용자 입력에 대응되는 동작을 수행하는 단계는,
    상기 인식된 사용자 입력에 대응되는 영상을 상기 전자 장치의 디스플레이부를 통해 표시하는 단계를 포함하는 전자 장치의 제어방법.
  18. 제12항에 있어서,
    상기 판단하는 단계는,
    상기 전자 장치의 디스플레이부를 통해 표시 중인 영상의 종류를 더 고려하여 상기 수행된 동작이 오인식에 의한 동작인지 판단하는 전자 장치의 제어방법.
  19. 제12항에 있어서,
    상기 저장된 인식 모델을 갱신하는 단계는,
    오인식에 의한 동작으로 판단된 동작에 대한 정보에 기초하여 상기 저장된 인식 모델을 갱신하는 전자 장치의 제어방법.
  20. 전자 장치의 제어방법을 수행하기 위한 프로그램이 저장되는 기록 매체에 있어서,
    상기 전자 장치의 제어방법은,
    사용자 입력을 입력받는 단계;
    상기 전자 장치에 기 저장된 사용자 입력을 인식하기 위한 인식 모델을 기초로 상기 입력된 사용자 입력을 인식하여 상기 인식된 사용자 입력에 대응되는 동작을 수행하는 단계;
    상기 전자 장치의 주변 환경 상태를 감지하는 단계;
    상기 동작의 수행 이후에 인식된 사용자 입력과 상기 감지된 주변 환경 상태에 기초하여 상기 수행된 동작이 오인식에 의한 동작인지 판단하는 단계; 및
    상기 수행된 동작이 오인식에 의한 동작이면, 상기 저장된 인식 모델을 갱신하는 단계;를 포함하는 기록 매체.


KR1020160081523A 2016-06-29 2016-06-29 전자 장치 및 이의 제어 방법 KR102497299B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160081523A KR102497299B1 (ko) 2016-06-29 2016-06-29 전자 장치 및 이의 제어 방법
US15/590,165 US10276151B2 (en) 2016-06-29 2017-05-09 Electronic apparatus and method for controlling the electronic apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160081523A KR102497299B1 (ko) 2016-06-29 2016-06-29 전자 장치 및 이의 제어 방법

Publications (2)

Publication Number Publication Date
KR20180002265A true KR20180002265A (ko) 2018-01-08
KR102497299B1 KR102497299B1 (ko) 2023-02-08

Family

ID=60807706

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160081523A KR102497299B1 (ko) 2016-06-29 2016-06-29 전자 장치 및 이의 제어 방법

Country Status (2)

Country Link
US (1) US10276151B2 (ko)
KR (1) KR102497299B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022119132A1 (ko) * 2020-12-04 2022-06-09 삼성전자 주식회사 손 씻는 행동을 검출하는 방법 및 그 전자 장치
WO2023106640A1 (ko) * 2021-12-10 2023-06-15 삼성전자주식회사 전자 장치 및 상기 전자 장치에서 제스처의 오인식을 방지하는 방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10335045B2 (en) 2016-06-24 2019-07-02 Universita Degli Studi Di Trento Self-adaptive matrix completion for heart rate estimation from face videos under realistic conditions
CN108629313B (zh) * 2018-05-04 2022-04-08 河北省科学院应用数学研究所 情绪调节方法、装置、系统以及计算机存储介质
US10872604B2 (en) * 2018-05-17 2020-12-22 Qualcomm Incorporated User experience evaluation
KR20200094396A (ko) * 2019-01-30 2020-08-07 삼성전자주식회사 전자 장치 및 복수의 액션들을 포함하는 태스크를 결정하는 방법
US20210090576A1 (en) * 2019-09-19 2021-03-25 Giving Tech Labs, LLC Real Time and Delayed Voice State Analyzer and Coach

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090002218A1 (en) * 2007-06-28 2009-01-01 Matsushita Electric Industrial Co., Ltd. Direction and holding-style invariant, symmetric design, touch and button based remote user interaction device
KR20100132592A (ko) * 2009-06-10 2010-12-20 연세대학교 산학협력단 감성인식장치의 개인별 최적화시스템 및 그 최적화 방법
US20150261318A1 (en) * 2014-03-12 2015-09-17 Michael Scavezze Gesture parameter tuning
KR101605078B1 (ko) * 2014-05-29 2016-04-01 경북대학교 산학협력단 사용자 맞춤형 정보를 제공하는 방법 및 시스템, 이를 수행하기 위한 기록매체

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437297B2 (en) * 2005-01-27 2008-10-14 International Business Machines Corporation Systems and methods for predicting consequences of misinterpretation of user commands in automated systems
US7827032B2 (en) * 2005-02-04 2010-11-02 Vocollect, Inc. Methods and systems for adapting a model for a speech recognition system
JP4680714B2 (ja) 2005-08-03 2011-05-11 パナソニック株式会社 音声認識装置および音声認識方法
US7889175B2 (en) * 2007-06-28 2011-02-15 Panasonic Corporation Touchpad-enabled remote controller and user interaction methods
JP2010128015A (ja) 2008-11-25 2010-06-10 Toyota Central R&D Labs Inc 音声認識の誤認識判定装置及び音声認識の誤認識判定プログラム
KR101303648B1 (ko) * 2009-12-08 2013-09-04 한국전자통신연구원 감성신호 감지 장치 및 그 방법
US8296151B2 (en) * 2010-06-18 2012-10-23 Microsoft Corporation Compound gesture-speech commands
KR20120024247A (ko) * 2010-09-06 2012-03-14 삼성전자주식회사 사용자의 제스처를 인식하여 이동 장치를 동작하는 방법 및 그 이동 장치
JP5862143B2 (ja) 2011-09-15 2016-02-16 オムロン株式会社 ジェスチャ認識装置、電子機器、ジェスチャ認識装置の制御方法、制御プログラムおよび記録媒体
US9570086B1 (en) * 2011-11-18 2017-02-14 Google Inc. Intelligently canceling user input
KR20140089238A (ko) * 2013-01-04 2014-07-14 삼성전자주식회사 전자 장치 및 그의 제어 방법
WO2015005679A1 (ko) 2013-07-09 2015-01-15 주식회사 윌러스표준기술연구소 음성 인식 방법, 장치 및 시스템
KR101550604B1 (ko) * 2013-09-25 2015-09-07 현대자동차 주식회사 차량용 조작 장치
US10770060B2 (en) * 2013-12-05 2020-09-08 Lenovo (Singapore) Pte. Ltd. Adaptively learning vocabulary for completing speech recognition commands
JP6366166B2 (ja) 2014-01-27 2018-08-01 日本放送協会 音声認識装置、及びプログラム
US10043184B2 (en) * 2014-05-30 2018-08-07 Paypal, Inc. Systems and methods for implementing transactions based on facial recognition
KR102249392B1 (ko) 2014-09-02 2021-05-07 현대모비스 주식회사 사용자 맞춤형 서비스를 위한 차량 기기 제어 장치 및 방법
KR102530219B1 (ko) * 2015-10-30 2023-05-09 삼성전자주식회사 동작 인식의 오류를 검출하는 방법 및 장치
US10902043B2 (en) * 2016-01-03 2021-01-26 Gracenote, Inc. Responding to remote media classification queries using classifier models and context parameters

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090002218A1 (en) * 2007-06-28 2009-01-01 Matsushita Electric Industrial Co., Ltd. Direction and holding-style invariant, symmetric design, touch and button based remote user interaction device
KR20100132592A (ko) * 2009-06-10 2010-12-20 연세대학교 산학협력단 감성인식장치의 개인별 최적화시스템 및 그 최적화 방법
US20150261318A1 (en) * 2014-03-12 2015-09-17 Michael Scavezze Gesture parameter tuning
KR101605078B1 (ko) * 2014-05-29 2016-04-01 경북대학교 산학협력단 사용자 맞춤형 정보를 제공하는 방법 및 시스템, 이를 수행하기 위한 기록매체

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022119132A1 (ko) * 2020-12-04 2022-06-09 삼성전자 주식회사 손 씻는 행동을 검출하는 방법 및 그 전자 장치
WO2023106640A1 (ko) * 2021-12-10 2023-06-15 삼성전자주식회사 전자 장치 및 상기 전자 장치에서 제스처의 오인식을 방지하는 방법

Also Published As

Publication number Publication date
US20180005625A1 (en) 2018-01-04
US10276151B2 (en) 2019-04-30
KR102497299B1 (ko) 2023-02-08

Similar Documents

Publication Publication Date Title
KR102497299B1 (ko) 전자 장치 및 이의 제어 방법
US20230031603A1 (en) Display apparatus and method for registration of user command
KR102339657B1 (ko) 전자 장치 및 이의 제어 방법
JP6635049B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP4887911B2 (ja) 電子機器
EP2925005A1 (en) Display apparatus and user interaction method thereof
US11462213B2 (en) Information processing apparatus, information processing method, and program
US9720644B2 (en) Information processing apparatus, information processing method, and computer program
KR102246900B1 (ko) 전자 장치 및 이의 음성 인식 방법
JP3970920B2 (ja) 情報処理システム、情報処理装置および方法
KR20190105536A (ko) 선호도 기반 서비스 제공 시스템, 장치 및 방법
US11380351B2 (en) System and method for pulmonary condition monitoring and analysis
US20140304606A1 (en) Information processing apparatus, information processing method and computer program
US10937415B2 (en) Information processing device and information processing method for presenting character information obtained by converting a voice
EP2806422A1 (en) Voice recognition apparatus, voice recognition server and voice recognition guide method
JP2014095766A (ja) 情報処理装置、情報処理方法及びプログラム
KR20180018146A (ko) 음성 인식이 가능한 디스플레이 장치 및 방법
WO2020079941A1 (ja) 情報処理装置及び情報処理方法、並びにコンピュータプログラム
CN112236767A (zh) 用于通过输入单元向应用提供与图像相关的信息的电子装置和方法
US20170068512A1 (en) Electronic apparatus and information processing method thereof
US20210216589A1 (en) Information processing apparatus, information processing method, program, and dialog system
JP2017211430A (ja) 情報処理装置および情報処理方法
KR20170029390A (ko) 음성 명령 모드 진입 방법
KR20210063698A (ko) 전자장치와 그의 제어방법, 및 기록매체
KR102349452B1 (ko) 사용자 인증 방법 및 이를 지원하는 머리 착용형 장치

Legal Events

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