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

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

Info

Publication number
KR20210080788A
KR20210080788A KR1020190172725A KR20190172725A KR20210080788A KR 20210080788 A KR20210080788 A KR 20210080788A KR 1020190172725 A KR1020190172725 A KR 1020190172725A KR 20190172725 A KR20190172725 A KR 20190172725A KR 20210080788 A KR20210080788 A KR 20210080788A
Authority
KR
South Korea
Prior art keywords
editing
command
character
character string
electronic device
Prior art date
Application number
KR1020190172725A
Other languages
English (en)
Inventor
박지훈
석동헌
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020190172725A priority Critical patent/KR20210080788A/ko
Priority to EP20215293.0A priority patent/EP3842924A1/en
Priority to US17/131,009 priority patent/US20210193144A1/en
Priority to CN202011534430.3A priority patent/CN113096666A/zh
Publication of KR20210080788A publication Critical patent/KR20210080788A/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/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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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/221Announcement of recognition results
    • 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/223Execution procedure of a spoken command
    • 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/42203Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS] sound input device, e.g. microphone

Abstract

본 발명은 제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하고, 제1사용자발화에 제1문자열에 후속하는 제1편집 명령이 포함되면, 제1편집 명령에 따라 제1문자열을 편집한 제2문자열을 입력문자로 인식하고, 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 제2편집 명령에 기초하여 제2문자열에 대한 편집 동작을 수행하는 전자장치에 관한 발명이다.

Description

전자장치 및 그 제어방법 {ELECTRONICE DEVICE AND CONTROL METHOD THEREOF}
본 발명은 전자장치 및 그 제어방법에 관한 것으로서, 상세하게는, 사용자발화에 따라 문자열에 대한 편집 동작을 수행하는 전자장치 및 그 제어방법에 관한 것이다.
사용자는 음성 인식 기능을 이용하여 전자장치의 다양한 기능을 제어할 수 있다. TV의 경우를 예로 들면, 사용자가 시청하기 원하는 채널 번호를 발화하면, TV는 채널 번호를 인식하고, 인식된 채널 번호에 대응하는 영상을 표시할 수 있다. 뿐만 아니라, 사용자는 음성 인식 기능을 이용하여 문자를 입력할 수 있다. 일 예로, TV를 통해 사용자 계정 정보, 예컨대, 패스워드를 입력하는 경우, 사용자가 패스워드를 구성하는 알파벳, 숫자, 기호 등의 문자를 낱자 단위로 발화하면, TV는 낱자 단위로 발화된 문자를 인식하고, 인식된 문자를 패스워드로 입력할 수 있다.
음성 인식 기능을 이용한 문자 입력 중 문자가 잘못 입력된 경우, 사용자가 잘못 입력된 문자를 편집하기 위한 편집 명령을 발화하면, TV는 편집 명령을 인식하고, 인식된 편집 명령에 따라 잘못 입력된 문자를 편집할 수 있다. 그러나, 인식 가능한 편집 명령의 종류와 개수가 한정되어 있고, 편집 명령에 의한 편집 기능도 단순하기 때문에, 편집 기능에 대한 활용 가능성이 저하되고, 나아가 음성 인식 기능을 이용한 문자 입력에 대한 사용 편의성도 저하되고 있다.
본 발명의 목적은, 음성 인식 기능을 활용하여 문자를 입력함에 있어서, 잘못 입력된 문자에 대하여, 좀더 다양하고 폭넓은 수준의 편집 명령이 가능하도록 함으로써 음성 인식을 통한 편집 기능의 활용 가능성을 향상시킬 수 있는 전자장치 및 그 제어방법을 제공하는 것이다.
상기한 본 발명의 목적은, 제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하고, 상기 제1사용자발화에 상기 제1문자열에 후속하는 제1편집 명령이 포함되면, 상기 제1편집 명령에 따라 상기 제1문자열을 편집한 제2문자열을 입력문자로 인식하고, 상기 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 편집 동작을 수행하는 프로세서를 포함하는 전자장치에 의해 달성될 수 있다.
상기 제1편집 명령은, 상기 제1문자열에 포함된 문자의 삭제를 포함할 수 있다.
상기 제2편집 명령으로 인식될 수 있는 명령의 수는, 상기 제1편집 명령보다 많을 수 있다.
상기 프로세서는, 음성 인식 엔진에 기초하여 상기 제2편집 명령을 인식하고, 상기 음성 인식 엔진에 기초하여 상기 전자장치의 제어를 위한 명령을 인식할 수 있다.
상기 프로세서는, 기 정의된 이벤트에 의해 활성화되는 문자 입력 모드에서 수신되는 상기 제1사용자발화에 대하여 상기 제1문자열 및 상기 제1편집 명령을 인식할 수 있다.
상기 프로세서는, 상기 문자 입력 모드가 활성화된 동안 수신된 상기 제2사용자발화에 상기 제2편집 명령이 포함되는지를 식별할 수 있다.
상기 프로세서는, 제1이벤트에 기초하여 상기 문자 입력 모드를 활성화하고, 제2이벤트에 기초하여 상기 문자 입력 모드의 활성화를 종료할 수 있다.
상기 프로세서는, 수신되는 사용자입력에 기초하여 상기 문자 입력 모드를 활성화할 수 있다.
상기 프로세서는, 상기 제2사용자발화에 상기 기 정의된 문자를 포함하는 제3문자열이 포함된 경우, 상기 제3문자열을 상기 입력문자로 인식하지 않고, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 상기 편집 동작을 수행할 수 있다.
디스플레이부 더 포함하고, 상기 프로세서는, 상기 입력문자로 인식된 상기 제2문자열을 표시하고, 상기 입력문자로 인식되지 않은 상기 제3문자열을 표시하지 않도록 상기 디스플레이부를 제어할 수 있다.
상기 프로세서는, 제3사용자발화로부터 상기 기 정의된 문자를 포함하는 제4문자열을 획득하고, 상기 제3사용자발화에 상기 제4문자열에 후속하는 상기 제1편집 명령이 미포함되면, 상기 제4문자열을 상기 입력문자로 인식할 수 있다.
상기 프로세서는, 상기 제1사용자발화에 상기 제1편집 명령이 포함되면, 상기 제2사용자발화에 상기 제2편집 명령의 포함 여부를 식별할 수 있다.
상기한 본 발명의 목적은, 제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하는 단계; 상기 제1사용자발화에 상기 제1문자열에 후속하는 제1편집 명령이 포함되면, 상기 제1편집 명령에 따라 상기 제1문자열을 편집한 제2문자열을 입력문자로 인식하는 단계; 및 상기 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 편집 동작을 수행하는 단계를 포함하는 전자장치의 제어방법에 의해 달성될 수 있다.
상기 제1편집 명령은, 상기 제1문자열에 포함된 문자의 삭제를 포함할 수 있다.
상기 제2편집 명령으로 인식될 수 있는 명령의 수는, 상기 제1편집 명령보다 많을 수 있다.
상기 편집 동작을 수행하는 단계는, 음성 인식 엔진에 기초하여 상기 제2편집 명령을 인식하는 단계; 및 상기 음성 인식 엔진에 기초하여 상기 전자장치의 제어를 위한 명령을 인식하는 단계를 더 포함할 수 있다.
상기 제1문자열을 획득하는 단계는, 기 정의된 이벤트에 의해 활성화되는 문자 입력 모드에서 수신되는 상기 제1사용자발화에 대하여 상기 제1문자열 및 상기 제1편집 명령을 인식하는 단계를 더 포함할 수 있다.
상기 편집 동작을 수행하는 단계는, 상기 문자 입력 모드가 활성화된 동안 수신된 상기 제2사용자발화에 상기 제2편집 명령이 포함되는지를 식별하는 단계를 더 포함할 수 있다.
제1이벤트에 기초하여 상기 문자 입력 모드의 활성화를 활성화하는 단계; 및 제2이벤트에 기초하여 상기 문자 입력 모드의 활성화를 종료하는 단계를 더 포함할 수 있다.
상기한 본 발명의 목적은, 컴퓨터가 읽을 수 있는 코드로서, 전자장치의 제어방법을 수행하는 코드를 포함하는 컴퓨터 프로그램이 저장된 기록매체에 있어서, 제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하는 단계; 상기 제1사용자발화에 상기 제1문자열에 후속하는 제1편집 명령이 포함되면, 상기 제1편집 명령에 따라 상기 제1문자열을 편집한 제2문자열을 입력문자로 인식하는 단계; 및 상기 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 편집 동작을 수행하는 단계를 포함하는 것을 특징으로 하는 컴퓨터가 읽을 수 있는 프로그램이 기록된 기록매체에 의해서 달성될 수 있다.
본 발명에 의하면, 음성 인식 기능을 활용하여 문자를 입력함에 있어서, 잘못 입력된 문자에 대하여, 좀더 다양하고 폭넓은 수준의 편집 명령이 가능하도록 함으로써 음성 인식을 통한 편집 기능의 활용 가능성을 향상시킬 수 있는 전자장치 및 그 제어방법을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 전자장치를 도시한다.
도 2는 도 1의 전자장치에 관한 구성의 일 예를 도시한다.
도 3은 도 1의 전자장치에 대한 제어방법의 일 예를 도시한다.
도 4는 본 발명의 일 실시예에 따른 전자장치의 구성을 도시한다.
도 5는 도 3 및 4에 도시된 전자장치의 제어방법의 다른 예를 도시한다.
도 6은 도 5의 동작 S51과 관련하여 문자 입력 모드의 활성화를 위한 사용자입력의 일 예를 도시한다.
도 7은 도 5의 동작 S52와 관련하여 문자 입력 모드의 활성화 동안 제1의도 분석을 수행하는 일 예를 도시한다.
도 8은 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다.
도 9는 도 8의 제어방법에 따라 문자열을 편집하는 일 예를 도시한다.
도 10은 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다.
도 11은 도 10의 제어방법에 따라 문자열을 편집하는 일 예를 도시한다.
도 12는 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다.
도 13은 도 12의 제어방법에 따라 문자열을 편집하는 일 예를 도시한다.
도 14는 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다.
도 15는 도 14의 제어방법에 따라 문자열을 편집하는 일 예를 도시한다.
도 16은 도 3의 동작 S32 및 S33과 관련하여, 제1음성 인식 엔진 및 제2음성 인식 엔진의 일 예를 도시한다.
이하에서는 첨부도면을 참조하여 본 발명에 따른 실시예들에 관해 상세히 설명한다. 이하 실시예들의 설명에서는 첨부된 도면들에 기재된 사항들을 참조하는 바, 각 도면에서 제시된 동일한 참조번호 또는 부호는 실질적으로 동일한 동작을 수행하는 구성요소를 나타낸다. 본 명세서에서의 복수의 구성 중 적어도 하나(at least one)는, 복수의 구성 전부뿐만 아니라, 복수의 구성 중 나머지를 배제한 각 하나 혹은 이들의 조합 모두를 지칭한다.
도 1은 본 발명의 일 실시예에 따른 전자장치를 도시한다. 도 1에 도시된 바와 같이, 전자장치(1)는 TV, 태블릿, 휴대용 미디어 플레이어, 웨어러블 디바이스, 비디오 월, 전자액자 등과 같이 영상표시장치뿐만 아니라, 디스플레이를 구비하지 않는 셋탑박스 등의 영상처리장치, 냉장고, 세탁기 등의 생활가전, 컴퓨터본체와 같은 정보처리장치 등 다양한 종류의 장치로 구현될 수 있다. 또한 전자장치(1)는 인공지능 기능을 탑재한 인공지능(Artificial Intelligence, AI) 스피커, AI 로봇 등으로 구현될 수 있다. 다만, 전자장치(1)의 종류는 이에 한정되는 것은 아니지만, 이하에서는 설명의 편의를 위해 전자장치(1)가 TV로 구현되는 경우를 가정한다.
전자장치(1)는 마이크로폰(17)를 포함할 수 있다. 전자장치(1)는 마이크로폰(17)을 통해 사용자(4)로부터 발화된 사용자발화(5)의 음성 신호를 수신할 수 있다. 마이크로폰(17)은 전자장치(1)의 본체에 마련될 수 있으나, 이에 한정되는 것은 아니므로, 본체와 분리된 리모트 컨트롤러(이하, "리모컨"이라 지칭)(2), 스마트폰 등에 마련될 수 있다. 이 경우, 전자장치(1)는 리모콘, 스마트폰 등의 마이크로폰(17)을 통해 수신된 음성 신호를 전달받을 수 있다.
전자장치(1)는 음성 인식 기능을 수행할 수 있다. 전자장치(1)는 사용자(4)로부터 사용자발화(5)를 수신하면, 사용자발화(5)에 대한 음성 신호를 획득하고, 획득한 음성 신호에 대한 음성 인식 처리를 수행하고, 음성 인식 처리에 의한 인식 결과에 대응하는 동작을 수행할 수 있다. 음성 인식 처리는 음성 신호를 텍스트 데이터로 변환하는 STT(Speech-to-Text) 처리 과정과, 텍스트 데이터가 나타내는 커맨드를 식별하여, 식별된 커맨드가 지시하는 동작을 수행하는 커맨드 식별 및 수행 과정을 포함한다. 일 예로, 사용자발화(5)가 “볼륨을 높여”인 경우, 전자장치(1)는 사용자발화(5)의 음성 신호에 대한 텍스트 데이터를 획득하고, 획득한 텍스트 데이터가 나타내는 커맨드를 식별하고, 식별된 커맨드에 따라서 전자장치(1)의 볼륨을 높일 수 있다.
음성 인식 처리의 STT 처리 과정과, 커맨드 식별 및 수행 과정은, 전자장치(1)에서 모두 실행될 수도 있다. 그러나, 이 경우에 전자장치(1)에 필요한 시스템 부하 및 소요 저장용량이 상대적으로 커지게 되므로, 적어도 일부의 과정은 네트워크를 통해 전자장치(1)와 통신 가능하게 접속되는 적어도 하나의 서버(3)에 의해 수행될 수 있다. 일 예로, 적어도 하나의 서버(3)가 STT 처리 과정을 수행하고, 전자장치(1)가 커맨드 식별 및 수행 과정을 수행할 수 있다.
또는, 적어도 하나의 서버(3)가 STT 처리 과정과, 커맨드 식별 및 수행 과정을 모두 수행하고, 전자장치(1)는 단지 적어도 하나의 서버(3)로부터 결과를 수신하기만 할 수도 있다. 예컨대, 전자장치(1)는 적어도 하나의 서버(3) 중 STT 처리 과정을 수행하는 제1서버(31)로부터 변환된 텍스트 데이터를 수신하고, 수신된 텍스트 데이터를 제2서버(32) 또는 제3서버(33)로 전송하여 커맨드 식별 및 수행 과정을 수행하도록 하고, 제2서버(32) 또는 제3서버(33)로부터 결과를 수신할 수 있다. 다만, 이하에서는 설명의 편의를 위해, 전자장치(1)가 STT 처리 과정과, 커맨드 식별 및 수행 과정을 모두 수행하는 경우를 가정하여 설명한다.
전자장치(1)는 STT 처리 과정을 수행하기 위해 적어도 하나의 음성인식모델을 구비할 수 있다. 음성 인식 모델은 사용자발화(5)에 따른 음성 신호에 대해 음성 인식 처리를 위해 사용되는 하드웨어/소프트웨어 컴포넌트이다. 음성 인식 모델은 음성 인식 프로그램, 음성 인식 엔진 등을 포함할 수 있으며, 음성 인식 프로그램은 어플리케이션의 형태로 마련될 수 있다. 음성 인식 모델은, 예컨대, 마르코프 모델(Hidden Markov Model; HMM), 동적 시간 왜곡(Dynamic Time Warping; DTW) 등의 알고리즘에 따라서 발화 음성에 대한 통계적 모델링을 통해 구현되는 음향 모델(Acoustic Model), 말뭉치(언어 연구를 위하여 컴퓨터가 텍스트를 가공, 처리, 분석할 수 있는 형태로 모아 놓은 자료의 집합) 수집을 통해 구현되는 언어 모델(Language Model) 등을 포함할 수 있다. 다만, 이에 한정되는 것은 아니므로, 음성 인식 모델은 바이그램(Bigram), 트라이그램(trigram)과 유사 개념으로 현재 단어 이후 N개의 단어를 발화 의도 분석에 활용할 수 있는 언어 모델을 포함할 수 있다.
전자장치(1)는 음성 인식 기능을 통해 문자를 입력할 수 있다. 일 예로, 특정 서비스에 로그인(Log-in)하기 위해 패스워드를 입력할 수 있는 패스워드 입력화면이 표시된 경우, 사용자(4)가 패스워드를 낱자 단위로 발화하면, 전자장치(1)는 낱자 단위로 발화된 패스워드를 인식하여, 패스워드 입력화면에 패스워드를 입력할 수 있다.
전자장치(1)는 음성 인식 기능을 통해 기 입력된 문자를 편집할 수도 있다. 만일, 패스워드 입력화면에 잘못된 패스워드가 입력되어, 사용자(4)가 기 입력된 패스워드를 편집하기 위한 발화를 하면, 전자장치(1)는 편집하기 위한 발화에 따라 기 입력된 패스워드를 편집할 수 있다.
도 2는 도 1의 전자장치에 관한 구성의 일 예를 도시한다. 이하에서는 도 2를 참조하여, 전자장치(1)의 구성에 관해 자세히 설명한다. 본 실시예서는 전자장치(1)가 TV인 경우에 관해 설명하지만, 전자장치(1)는 다양한 종류의 장치로 구현될 수 있으므로, 본 실시예가 전자장치(1)의 구성을 한정하는 것은 아니다. 전자장치(1)가 TV와 같은 디스플레이장치로 구현되지 않는 경우도 가능하며, 이 경우의 전자장치(1)는 디스플레이부(14)와 같은 영상 표시를 위한 구성요소들을 포함하지 않을 수 있다. 예를 들면 전자장치(1)가 셋탑박스로 구현되는 경우에, 전자장치(1)는 인터페이스부(11)를 통해 외부의 TV에 영상 신호를 출력할 수 있다.
전자장치(1)는 인터페이스부(11)를 포함한다. 인터페이스부(11)는 유선 인터페이스부(12)를 포함할 수 있다. 유선 인터페이스부(12)는 지상파/위성방송 등 방송규격에 따른 방송신호를 수신할 수 있는 안테나가 연결되거나, 케이블 방송 규격에 따른 방송신호를 수신할 수 있는 케이블이 연결될 수 있는 커넥터 또는 포트를 포함한다. 다른 예로서, 전자장치(1)는 방송신호를 수신할 수 있는 안테나를 내장할 수도 있다. 유선 인터페이스부(12)는 HDMI 포트, DisplayPort, DVI 포트, 썬더볼트, 컴포지트(Composite) 비디오, 컴포넌트(Component) 비디오, 슈퍼 비디오(Super Video), SCART 등과 같이, 비디오 및/또는 오디오 전송규격에 따른 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(12)는 USB 포트 등과 같은 범용 데이터 전송규격에 따른 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(12)는 광 전송규격에 따라 광케이블이 연결될 수 있는 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(12)는 외부 마이크로폰 또는 마이크로폰을 구비한 외부 오디오기기가 연결되며, 오디오기기로부터 오디오 신호를 수신 또는 입력할 수 있는 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(12)는 헤드셋, 이어폰, 외부 스피커 등과 같은 오디오기기가 연결되며, 오디오기기로 오디오 신호를 전송 또는 출력할 수 있는 커넥터 또는 포트 등을 포함할 수 있다. 유선 인터페이스부(12)는 이더넷 등과 같은 네트워크 전송규격에 따른 커넥터 또는 포트를 포함할 수 있다. 예컨대, 유선 인터페이스부(12)는 라우터 또는 게이트웨이에 유선 접속된 랜카드 등으로 구현될 수 있다.
유선 인터페이스부(12)는 상기 커넥터 또는 포트를 통해 셋탑박스, 광학미디어 재생장치와 같은 외부기기, 또는 외부 디스플레이장치나, 스피커, 서버 등과 1:1 또는 1:N(N은 자연수) 방식으로 유선 접속됨으로써, 해당 외부기기로부터 비디오/오디오 신호를 수신하거나 또는 해당 외부기기에 비디오/오디오 신호를 송신한다. 유선 인터페이스부(12)는, 비디오/오디오 신호를 각각 별개로 전송하는 커넥터 또는 포트를 포함할 수도 있다.
그리고, 본 실시예에 따르면 유선 인터페이스부(12)는 전자장치(1)에 내장되나, 동글(Dongle) 또는 모듈(Module) 형태로 구현되어 전자장치(1)의 커넥터에 착탈될 수도 있다.
인터페이스부(11)는 무선 인터페이스부(13)를 포함할 수 있다. 무선 인터페이스부(13)는 전자장치(1)의 구현 형태에 대응하여 다양한 방식으로 구현될 수 있다. 예를 들면, 무선 인터페이스부(13)는 통신방식으로 RF(Radio Frequency), 지그비(Zigbee), 블루투스(Bluetooth), 와이파이(Wi-Fi), UWB(Ultra WideBand) 및 NFC(Near Field Communication) 등 무선통신을 사용할 수 있다. 무선 인터페이스부(13)는 와이파이 방식에 따라서 AP와 무선통신을 수행하는 무선통신모듈이나, 블루투스 등과 같은 1대 1 다이렉트 무선통신을 수행하는 무선통신모듈 등으로 구현될 수 있다. 무선 인터페이스부(13)는 네트워크 상의 서버와 무선 통신함으로써, 적어도 하나의 서버(3)(3)와의 사이에 데이터 패킷을 송수신할 수 있다. 무선 인터페이스부(13)는 적외선 통신규격에 따라 IR(Infrared) 신호를 송신 및/또는 수신할 수 있는 IR송신부 및/또는 IR수신부를 포함할 수 있다. 무선 인터페이스부(13)는 IR송신부 및/또는 IR수신부를 통해 리모컨(2) 또는 다른 외부기기로부터 리모컨신호를 수신 또는 입력하거나, 리모컨(2) 또는 다른 외부기기로 리모컨신호를 전송 또는 출력할 수 있다. 다른 예로서, 전자장치(1)는 와이파이, 블루투스 등 다른 방식의 무선 인터페이스부(13)를 통해 리모컨(2) 또는 다른 외부기기와 리모컨신호를 송수신할 수 있다.
전자장치(1)는 인터페이스부(11)를 통해 수신하는 비디오/오디오 신호가 방송신호인 경우, 수신된 방송신호를 채널 별로 튜닝하는 튜너(Tuner)를 더 포함할 수 있다.
전자장치(1)는 디스플레이부(14)를 포함한다. 디스플레이부(14)는 화면 상에 영상을 표시할 수 있는 디스플레이 패널을 포함한다. 디스플레이 패널은 액정 방식과 같은 수광 구조 또는 OLED 방식과 같은 자발광 구조로 마련된다. 디스플레이부(14)는 디스플레이 패널의 구조에 따라서 부가적인 구성을 추가로 포함할 수 있는데, 예를 들면, 디스플레이 패널이 액정 방식이라면, 디스플레이부(14)는 액정 디스플레이 패널과, 광을 공급하는 백라이트유닛과, 액정 디스플레이 패널의 액정을 구동시키는 패널구동기판을 포함한다. 다만, 디스플레이부(14)는 전자장치(1)가 셋탑박스 등으로 구현되는 경우 생략될 수 있다.
전자장치(1)는 사용자입력부(15)를 포함한다. 사용자입력부(15)는 사용자의 입력을 수행하기 위해 사용자가 조작할 수 있도록 마련된 다양한 종류의 입력 인터페이스 관련 회로를 포함한다. 사용자입력부(15)는 전자장치(1)의 종류에 따라서 여러 가지 형태의 구성이 가능하며, 예를 들면 전자장치(1)의 기계적 또는 전자적 버튼부, 터치패드, 디스플레이부(14)에 설치된 터치스크린 등이 있다.
전자장치(1)는 저장부(16)를 포함한다. 저장부(16)는 디지털화된 데이터를 저장한다. 저장부(16)는 전원의 제공 유무와 무관하게 데이터를 보존할 수 있는 비휘발성 속성의 스토리지(storage)와, 프로세서(6)에 의해 처리되기 위한 데이터가 로딩되며 전원이 제공되지 않으면 데이터를 보존할 수 없는 휘발성 속성의 메모리(memory)를 포함한다. 스토리지에는 플래시메모리(flash-memory), HDD(hard-disc drive), SSD(solid-state drive) ROM(Read Only Memory) 등이 있으며, 메모리에는 버퍼(buffer), 램(RAM; Random Access Memory) 등이 있다. 음성 어시스턴스가 어플리케이션 등의 소프트웨어로 구현되는 경우, 저장부(16)는 음성 어시스턴스를 포함할 수 있다.
전자장치(1)는 마이크로폰(17)를 포함한다. 마이크로폰(17)은 사용자(4)의 사용자발화(5)를 비롯한 외부 환경의 소음, 소리 등을 수집한다. 마이크로폰(17)은 수집된 음성 신호를 프로세서(6)에 전달한다. 마이크로폰(17)은 전자장치(1)의 본체에 설치될 수도 있고, 전자장치(1)의 본체와 분리된 리모컨(2), 스마트폰 등에 설치될 수도 있다. 일 예로, 리모컨(2), 스마트폰 등에 마련된 마이크로폰(17)를 통해 수집된 음성 신호는 디지털화 되어 인터페이스부(11)를 통해 수신될 수 있다.
한편, 스마트폰 등에는 리모컨 어플리케이션이 설치될 수 있다. 스마트폰 등은 설치된 어플리케이션을 통해 리모컨의 기능, 예컨대, 전자장치(1)를 제어하거나, 스마트폰 등에 마련된 마이크로폰(17)을 통해 수신된 음성 신호에 대한 음성 인식 처리 등을 수행할 수 있다. 이러한 리모컨 어플리케이션은 AI 스피커, AI 로봇 등 다양한 외부 장치에 설치될 수 있다.
전자장치(1)는 스피커(18)를 포함한다. 스피커(18)는 오디오 신호에 기초하여 다양한 오디오를 출력할 수 있다. 스피커(18)는 적어도 하나 이상의 스피커로 구현될 수 있다. 스피커(18)는 전자장치(1)에 설치될 수도 있고, 외부에 마련되는 외부 스피커로 구현될 수도 있다. 이 경우, 전자장치(1)는 오디오 신호를 외부 스피커로 유선 또는 무선으로 전송할 수 있다.
전자장치(1)는 프로세서(6)를 포함한다. 프로세서(6)는 인쇄회로기판 상에 장착되는 CPU, 칩셋, 버퍼, 회로 등으로 구현되는 하나 이상의 하드웨어 프로세서를 포함하며, 설계 방식에 따라서는 SOC(system on chip)로 구현될 수도 있다. 프로세서(6)는 전자장치(1)가 디스플레이장치로 구현되는 경우에 디멀티플렉서, 디코더, 스케일러, 오디오 DSP(Digital Signal Processor), 앰프 등의 다양한 프로세스에 대응하는 모듈들을 포함한다. 여기서, 이러한 모듈들 중 일부 또는 전체가 SOC로 구현될 수 있다. 예를 들면, 디멀티플렉서, 디코더, 스케일러 등 영상처리와 관련된 모듈이 영상처리 SOC로 구현되고, 오디오 DSP는 SOC와 별도의 칩셋으로 구현되는 것이 가능하다.
특히, 프로세서(6)는 마이크로폰(17)를 통해 수신된 제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하고, 제1사용자발화에 제1문자열에 후속하는 제1편집 명령이 포함되면, 제1편집 명령에 따라 제1문자열을 편집한 제2문자열을 입력문자로 인식하고, 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 제2편집 명령에 기초하여 제2문자열에 대한 편집 동작을 수행한다.
다만, 전자장치(1)의 구성은 도 2에 도시된 바에 한정되는 것은 아니므로, 설계 방법에 따라 상기한 구성 중 일부를 제외하거나, 상기한 구성 이외의 구성을 포함할 수 있다. 일 예로, 전자장치(1)는 센서부를 포함한다. 센서부는 사용자(4)의 움직임, 위치 등을 감지하기 위한 적어도 하나의 센서를 포함할 수 있다. 일 예로, 센서부는 거리센서를 포함하여, 전자장치(1)에 대한 사용자(4)의 움직임, 위치 등을 감지할 수 있다. 거리센서는, 예컨대, 적외선, 초음파 등을 방사하고, 적외선, 초음파 등이 방사된 시간과 사용자(4) 등에 의해 반사되어 되돌아오는 시간 간의 차이에 기초하여 사용자(4)의 움직임, 위치 등을 측정할 수 있다. 다만, 이에 한정되는 것은 아니므로, 센서부는 전자장치(1)의 전면을 촬상 또는 촬영하기 위한 이미지획득부를 더 포함할 수 있으며, 이미지획득부를 통해 획득한 이미지에 기초하여 사용자(4)의 움직임, 위치 등을 감지할 수 있다. 이미지획득부는 적어도 하나의 카메라로 구현될 수 있다.
한편, 전자장치(1)의 프로세서(6)는 제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하고, 제1사용자발화에 제1문자열에 후속하는 제1편집 명령이 포함되면, 제1편집 명령에 따라 제1문자열을 편집한 제2문자열을 입력문자로 인식하고, 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 제2편집 명령에 기초하여 제2문자열에 대한 편집 동작을 수행하기 위한 데이터 분석, 처리, 및 결과 정보 생성 중 적어도 일부를 규칙 기반 또는 인공지능 알고리즘으로서 기계학습, 신경망 네트워크(Neural Network), 또는 딥러닝 알고리즘 중 적어도 하나를 이용하여 수행할 수 있다.
일 예로, 프로세서(6)는 학습부 및 인식부의 기능을 함께 수행할 수 있다. 학습부는 학습된 신경망 네트워크를 생성하는 기능을 수행하고, 인식부는 학습된 신경망 네트워크를 이용하여 데이터를 인식(또는, 추론, 예측, 추정, 판단)하는 기능을 수행할 수 있다. 학습부는 신경망 네트워크를 생성하거나 갱신할 수 있다. 학습부는 신경망 네트워크를 생성하기 위해서 학습 데이터를 획득할 수 있다. 일 예로, 학습부는 학습 데이터를 저장부(16) 또는 서버저장부(42)로부터 획득하거나, 외부로부터 획득할 수 있다. 학습 데이터는, 신경망 네트워크의 학습을 위해 이용되는 데이터일 수 있으며, 상기한 동작을 수행한 데이터를 학습데이터로 이용하여 신경망 네트워크를 학습시킬 수 있다.
학습부는 학습 데이터를 이용하여 신경망 네트워크를 학습시키기 전에, 획득된 학습 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 학습 데이터들 중에서 학습에 이용될 데이터를 선별할 수 있다. 일 예로, 학습부는 학습 데이터를 기 설정된 포맷으로 가공하거나, 필터링하거나, 또는 노이즈를 추가/제거하여 학습에 적절한 데이터의 형태로 가공할 수 있다. 학습부는 전처리된 학습 데이터를 이용하여 상기한 동작을 수행하도록 설정된 신경망 네트워크를 생성할 수 있다.
학습된 신경망 네트워크는, 복수의 신경망 네트워크(또는, 레이어)들로 구성될 수 있다. 복수의 신경망 네트워크의 노드들은 가중치를 가지며, 복수의 신경망 네트워크들은 일 신경망 네트워크의 출력 값이 다른 신경망 네트워크의 입력 값으로 이용되도록 서로 연결될 수 있다. 신경망 네트워크의 예로는, 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)과 같은 모델을 포함할 수 있다.
한편, 인식부는 상기한 동작을 수행하기 위해, 타겟 데이터를 획득할 수 있다. 타겟 데이터는 저장부(16) 또는 서버저장부(42)로부터 획득하거나, 외부로부터 획득할 수 있다. 타겟 데이터는 신경망 네트워크의 인식 대상이 되는 데이터일 수 있다. 인식부는 타겟 데이터를 학습된 신경망 네트워크에 적용하기 전에, 획득된 타겟 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 타겟 데이터들 중에서 인식에 이용될 데이터를 선별할 수 있다. 일 예로, 인식부는 타겟 데이터를 기 설정된 포맷으로 가공하거나, 필터링 하거나, 또는 노이즈를 추가/제거하여 인식에 적절한 데이터의 형태로 가공할 수 있다. 인식부는 전처리된 타겟 데이터를 신경망 네트워크에 적용함으로써, 신경망 네트워크로부터 출력되는 츨력값을 획득할 수 있다. 인식부는 출력값과 함께, 확률값 또는 신뢰도값을 획득할 수 있다.
도 3은 도 1의 전자장치에 대한 제어방법의 일 예를 도시한다. 도 3의 각 동작은 전자장치(1)의 프로세서(6)에 의해 실행될 수 있다. 도 3에 도시된 바와 같이, 프로세서(6)는 제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득할 수 있다(S31). 여기서, 기 정의된 문자는, 낱자 단위로서, 한글, 알파벳, 히라가나 등과 같은 각 국가별 문자, 1, 2, 3 등과 같은 숫자, 그리고, 느낌표, 물음표 등과 같은 기호를 포함할 수 있다. 다만, 이에 한정되는 것은 아니므로, 기 정의된 문자는, 낱자 단위의 통화(Currency), 도형, 이모티콘 등을 포함할 수 있다.
또한 프로세서(6)는 제1사용자발화에 제1문자열에 후속하는 제1편집 명령이 포함되면, 제1편집 명령에 따라 제1문자열을 편집한 제2문자열을 입력문자로 인식할 수 있다(S32). 여기서, 제1편집 명령은, "삭제" 등의 편집 명령을 포함할 수 있다. 일 예로, "삭제"는 제1문자열의 문자를 삭제하라는 편집 명령일 수 있다. 다만, 제1편집 명령의 종류는 이에 한정되는 것은 아니므로, 설계 방법에 따라 다양한 편집 명령을 포함할 수 있다.
또한 프로세서(6)는 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 제2편집 명령에 기초하여 제2문자열에 대한 편집 동작을 수행할 수 있다(S33). 여기서, 제2편집 명령은, 제1편집 명령을 포함하지 않으나, 제2사용자발화 전체 또는 일부로서 인식될 수 있는 편집 명령을 포함할 수 있다. 예컨대, 제2사용자발화가 "커서를 왼쪽으로 이동"인 경우, 제2사용자발화에는 제1편집 명령을 포함하지 않지만, 전체로서 기 획득된 문자열에서 소정 위치에 있는 커서를 왼쪽으로 1칸 이동하라는 편집 명령일 수 있다. 이 경우, 프로세서(6)는 제2편집 명령에 따른 편집 동작, 예컨대, 화면에 표시된 커서의 위치를 왼쪽으로 1칸 이동하여 표시되도록 할 수 있다.
이와 같이, 본 실시예의 제어방법에 따르면, 프로세서(6)는 사용자발화에 대하여 제1편집 명령 및 제2편집 명령의 포함 여부에 따라 편집 동작을 수행할 수 있으므로, 좀더 다양하고 폭넓은 수준의 편집 명령이 가능하도록 함으로써 음성 인식을 통한 편집 기능의 활용 가능성을 향상시킬 수 있다.
도 4는 본 발명의 일 실시예에 따른 전자장치의 구성을 도시한다. 도 4에 도시된 바와 같이, 전자장치(1)는 프로세서(6)를 포함할 수 있다. 이하에서는, 본 실시예에 따른 프로세서(6)의 구성 및 각 구성의 동작에 대해 자세히 설명한다.
프로세서(6)는 특징 추출부(41)를 포함할 수 있다. 특징 추출부(41)는 수신된 사용자발화로부터 특징 벡터(Vector)를 추출할 수 있다. 특징 추출부(41)는 특징 벡터를 추출하기 위한 다양한 알고리즘을 사용할 수 있다.
프로세서(6)는 음성 인식부(42)를 포함할 수 있다. 음성 인식부(42)는 특징 추출부(41)에 의해 추출된 사용자발화의 특징 벡터로부터 문자열을 인식하고, 인식된 문자열을 생성 또는 출력할 수 있다. 음성 인식부(42)는 문자열에 포함된 기 정의된 문자를 띄어쓰기 단위로 인식할 수 있다. 음성 인식부(42)는 기 정의된 문자와 관련하여 공백을 포함한 인식 결과를 출력하고, 단어에 대해서는 띄어쓰기 규칙에 맞게 공백을 포함한 인식 결과를 출력할 수 있다. 일 예로, 사용자발화 "에이비씨"에 대하여 음성 인식부(42)는 문자열 "a b c"를 출력할 수 있다.
프로세서(6)는 제1의도 분석부(43)를 포함할 수 있다. 제1의도 분석부(43)는 제1의도 분석, 즉, 음성 인식부(42)에 의해 인식된 문자열에 대한 사용자(4)의 의도를 분석할 수 있다. 제1의도 분석부(43)는 사용자발화 중간에 출력되는 띄어쓰기 단위의 문자열에 대하여 실시간으로 사용자(4)의 의도를 분석하기 위해, 예컨대, "삭제", "전체삭제", "취소" 등의 제1편집 명령을 인식할 수 있다. "삭제"는 문자열의 문자를 삭제하라는 의도를 가진 편집 명령어이고, "전체삭제"는 문자열 전체를 삭제하라는 의도를 가진 편집 명령어이다. 또한 "취소"는 직전에 입력된 문자에 대한 입력을 취소하라는 의도를 가진 편집 명령어이다
제1의도 분석부(43)는 상기한 바 같이 제한된 종류 내지는 개수, 수준의 제1편집 명령을 인식함으로써, 실시간으로 문자열에 대한 의도를 분석할 수 있다. 한편, 제1편집 명령은, 하기에서 설명할 제2의도 분석부(45)에 의해 인식되는 제2편집 명령과 대비될 수 있는데, 제2편집 명령은 문자열 전체 또는 일부로서 인식되므로, 제1편집 명령보다 다양한 종류 내지는 개수, 그리고, 질적으로 폭넓은 수준으로 인식될 수 있는 점에서 차이가 있다.
제1의도 분석부(43)는 사용자(4)의 의도를 분석하기 위해 사용자발화에서 기 정의된 문자와 상기한 제1편집 명령 이외의 문자열은 무시할 수 있다. 일 예로, 사용자발화가 "에이비씨 삭제 부탁해"인 경우, "에이비씨 삭제 부탁해"에는 기 정의된 문자를 포함하는 문자열 "a b c"와 제1편집 명령 "삭제" 이외에 소정 문자열 "부탁해"가 포함되어 있으나, 제1의도 분석부(43)는 문자열 "부탁해"를 무시하고, 사용자발화에 기초하여 문자열 "a b c"에서 "c"를 삭제하라는 사용자(4)의 의도를 분석할 수 있다.
프로세서(6)는 문자열 편집부(44)를 포함할 수 있다. 문자열 편집부(44)는 제1의도 분석부(43)의 제1의도 분석에 따라, 즉, 제1의도 분석부(43)에 의해 분석된 사용자(5)의 의도에 따라 문자열에 대한 편집을 수행할 수 있다. 이하에서는, 사용자발화 "1 2 3 삭제 4 5 전체삭제 7 8"인 경우를 예로 들어, 문자열 편집부(44)가 제1의도 분석에 따라 문자열을 편집하는 과정에 대해 자세히 설명한다. 사용자 발화 "1 2 3 삭제"에 의하여, 문자 입력 화면에 "123"이 표시될 수 있으나, "삭제"에 의하여 문자 입력 화면에 표시된 '123"에서 "3"이 삭제되어 "12"만이 표시될 수 있다. 또한 사용자발화 "4 5"에 의하여 문자 입력 화면에 "1245"가 표시될 수 있으며, 후속하는 사용자발화 "전체삭제"에 의하여 문자 입력 화면에 표시된 "1245"가 모두 삭제되어 문자 입력 화면에는 어떠한 문자도 표시되지 않게 된다. 또한 사용자발화 "7 8"에 대하여 문자 입력 화면에 다시 "78"이 표시될 수 있다. 즉, 문자열 편집부(44)는 사용자 발화 "1 2 3 삭제 4 5 전체삭제 7 8"에 대하여 사용자(4)의 의도에 따라 문자열 "7 8"을 획득할 수 있다.
이하에서는, 제2의도 분석부(45)가 사용자발화에 대하여 제2의도 분석, 즉, 추가적으로 사용자(4)의 의도를 분석하고, 분석된 의도에 따라 기 획득된 문자열에 대해 편집 동작을 수행하는 일 예에 대해 자세히 설명한다. 다만, 설계 방법에 따라, 제1의도 분석부(43)에 의해 식별된 제1편집 명령에 따라 문자열이 편집된 경우, 제2의도 분석부(45)에 의한 추가 의도 분석 또는 편집 동작은 수행되지 않을 수 있다.
프로세서(6)는 제2의도 분석부(45)를 더 포함할 수 있다. 제2의도 분석부(45)는 전자장치(1)의 일반적인 기능 제어를 위한 사용자발화를 인식할 수 있다. 일 예로, 제2의도 분석부(45)는 사용자발화에 대하여 특징 추출부(41)와 음성 인식부(42)에 의해 획득된 문자열이, 예컨대, TV의 볼륨 조절, 채널 변경 등 기능 제어 명령인지 여부를 인식할 수 있으며, 인식된 기능 제어 명령에 따라 전자장치(1)의 동작하도록 할 수 있다. 즉, 제2의도 분석부(45)는 사용자발화가 일반적인 기능 제어 명령으로 인식되면, 인식된 제어 명령에 따라 전자장치(1)의 기능 제어를 수행하도록 하고, 이하에서 자세히 설명할 제2편집 명령을 포함한 것으로 인식되면, 인식된 제2편집 명령에 따라 편집 동작을 수행할 수 있다.
제2의도 분석부(45)는 사용자발화가 완료된 후 음성 인식부(42)에 의해 인식된 문자열 전체와 제1의도 분석에 따라 문자열 편집부(44)에 의해 1차적으로 편집된 문자열 각각 또는 모두에 대하여 제2의도 분석을 할 수 있다. 제2의도 분석은 각각의 문자열이 제2편집 명령을 포함하는지 여부에 대한 분석이다. 일 예로, 사용자발화가 "커서를 왼쪽으로 3칸 이동해줘"인 경우, 제2의도 분석부(45)는 음성 인식부(42)에 의해 인식된 문자열 "커서를 왼쪽으로 3칸 이동해줘"에, 예컨대, 문자 입력 화면에 표시된 커서를 왼쪽으로 3칸 이동하라는 제2편집 명령이 포함된 것으로 식별되면, 식별된 제2편집 명령에 따라, 예컨대, 문자 입력 화면에 표시된 커서의 위치를 왼쪽으로 3칸 이동하여 표시되도록 할 수 있다.
앞서 설명한 제1의도 분석에 따르면, 음성 인식부(42)에 의해 인식된 문자열 "커서를 왼쪽으로 3칸 이동해줘"에서 기 정의된 문자 및 제1편집 명령 이외의 문자열은 무시되므로, 제1의도 분석에 따라 1차적으로 편집된 문자열은 "3"이 될 수 있다. 반면에, 제2의도 분석부(45)는 문자열 "3"에 대해 제2의도 분석을 수행한 결과, 문자열 "3"에 제2편집 명령이 미포함된 것으로 식별할 수 있으므로, 문자열 "3"에 대한 제2의도 분석 결과를 무시하고, 문자열 "커서를 왼쪽으로 3칸 이동해줘" 전체에 대해 포함된 것으로 식별된 제2편집 명령에 따라 편집 동작을 수행할 수 있다. 다만, 편집 동작은 제2의도 분석부(45)에 의해 수행되는 것에 한정되는 것은 아니므로, 경우에 따라서는, 제2의도 분석부(45)에 의해 식별된 제2편집 명령에 따라 문자열 편집부(44)가 편집 동작을 수행하도록 할 수 있다.
다만, 제2의도 분석 결과, 문자열 전체에 제2편집 명령이 미포함된 것으로 식별된 경우라면, 제2의도 분석부(45)는 1차적으로 편집된 문자열을 입력 문자로 인식할 수 있다. 앞서 설명한 일 예를 참조하여 설명하면, 음성 인식부(42)에 의해 인식된 문자열이 "1 2 3 삭제 4 5 전체삭제 7 8"인 반면에, 문자열 편집부(44)에 의해 편집된 문자열이 "7 8"인 경우, 제2의도 분석부(45)는 문자열 "1 2 3 삭제 4 5 전체삭제 7 8"에 제2편집 명령이 미포함된 것으로 식별하고, 1차적으로 편집된 문자열 "7 8"을 입력 문자로 식별할 수 있다.
이와 같이, 본 실시예에 따르면, 프로세서(6)는 사용자발화에 대하여 제1의도 분석 및 제2의도 분석을 수행함으로써, 사용자(4)의 발화 의도에 더욱 부합하는 문자 입력을 수행할 수 있으므로, 음성 인식을 통한 문자 입력의 신뢰성을 향상시킬 수 있다.
도 5는 도 3 및 4에 도시된 전자장치의 제어방법의 다른 예를 도시한다. 도 5의 각 동작은 도 3의 동작을 보다 구체화하며, 이하에서는 도 3에서 설명되지 않은 부분 위주로 자세히 설명한다. 도 5에 도시된 바와 같이, 프로세서(6)는 사용자발화로부터 문자열을 획득할 수 있다(S51).
또한 프로세서(6)는 제1의도 분석, 즉, 획득된 문자열에 제1편집 명령이 포함되어 있는지 여부를 식별할 수 있다(S52).
만일, 획득된 문자열에 제1편집 명령이 포함된 경우, 프로세서(6)는 제1편집 명령에 따라 문자열을 편집할 수 있다(S53).
또한 프로세서(6)는 제2의도 분석, 즉, 제1편집 명령에 따라 편집된 문자열에 제2편집 명령이 포함되는지 여부를 식별할 수 있다(S54). 만일, 앞선 동작 S53에서, 획득된 문자열에 제1편집 명령이 미포함된 것으로 식별된 경우, 프로세서(6)는 획득된 문자열에 대하여 제2의도 분석, 즉, 제2편집 명령이 포함되는지 여부를 식별할 수 있다.
만일, 편집된 문자열 또는 획득된 문자열에 제2편집 명령이 포함된 것으로 식별되면, 프로세서(6)는 식별된 제2편집 명령에 따라 문자열을 편집할 수 있다(S55).
이와 같이, 본 실시예의 제어방법에 따르면, 프로세서(6)는 사용자발화에 대하여 2단계의 의도 분석을 수행할 수 있으므로, 사용자(4)의 발화 의도에 더욱 부합하는 문자 입력을 수행함으로써, 음성 인식을 통한 문자 입력의 신뢰성을 향상시킬 수 있다.
도 6은 도 5의 동작 S51과 관련하여 문자 입력 모드의 활성화를 위한 사용자입력의 일 예를 도시한다. 도 6에 도시된 바와 같이, 프로세서(6)는 문자 입력을 위한 사용자발화를 수신하기 위해 문자 입력 모드를 활성화할 수 있다.
프로세서(6)는 문자 입력 모드의 개시를 위한 기 정의된 이벤트에 의해 문자 입력 모드를 활성화할 수 있다. 문자 입력 모드의 개시를 위한 기 정의된 이벤트는, 문자 입력 모드의 개시를 위한 사용자입력, 예컨대, 음성입력버튼의 선택, 개시 트리거의 수신 등을 포함할 수 있다. 개시 트리거는, "문자 입력 시작" 등과 같이 문자 입력 모드의 활성화를 의미하는 기 설정된 음성 명령을 포함할 수 있다. 음성입력버튼은 전자장치(1)의 본체에 마련될 수 있지만, 이에 한정되는 것은 아니므로, 리모컨(2), 스마트폰 등에 마련될 수도 있다. 또한 개시 트리거를 수신하기 위한 마이크로폰(17)은 전자장치(1)의 본체뿐만 아니라, 리모컨(2), 스마트폰 등에 마련될 수 있다. 이 경우, 프로세서(6)는 리모컨(2), 스마트폰 등으로부터 개시 트리거에 대응하는 음성 신호를 수신할 수 있다. 다만, 문자 입력 모드의 개시를 위한 기 정의된 이벤트는 상기한 바에 한정되는 것은 아니므로, 설계 방법에 따라 다양하게 마련될 수 있다.
또한 프로세서(6)는 문자 입력 모드의 종료를 위한 기 정의된 이벤트에 의해 문자 입력 모드의 활성화를 종료, 즉, 문자 입력 모드를 비활성화할 수 있다. 문자 입력 모드의 종료를 위한 기 정의된 이벤트는, 문자 입력 모드의 개시를 위한 음성입력버튼에 대한 선택해제, 문자 입력 모드의 종료를 위한 종료 트리거의 수신 등을 포함할 수 있다. 종료 트기거는, "문자 입력 끝" 등과 같이 문자 입력 모드의 비활성화를 의미하는 기 설정된 음성 명령을 포함할 수 있다. 다만, 문자 입력 모드의 종료를 위한 기 정의된 이벤트는 상기한 바에 한정되는 것은 아니므로, 프로세서(6)는 소정 시간의 경과 여부에 기초하여 문자 입력 모드의 활성화를 종료할 수 있다. 일 예로, 문자 입력 모드의 개시를 위한 사용자입력, 예컨대, 음성입력버튼의 선택, 개시 트리거의 수신 등 이후 소정 시간이 경과하거나, 문자 입력 모드의 활성화 동안 제1사용자발화의 수신 이후 소정 시간이 경과한 경우, 프로세서(6)는 문자 입력 모드의 활성화를 종료하기 위한 기 정의된 이벤트로 식별할 수 있다.
이와 같이, 본 실시예에 따르면, 프로세서(6)는 다양하게 정의된 이벤트에 따라 문자 입력 모드를 활성화하거나 비활성화할 수 있으므로, 음성 인식을 통한 문자 입력의 편의성을 향상시킬 수 있다.
도 7은 도 5의 동작 S52와 관련하여 문자 입력 모드의 활성화 동안 제1의도 분석을 수행하는 일 예를 도시한다. 도 7에 도시된 바와 같이, 프로세서(6)는 문자 입력 모드의 활성화 동안 사용자발화를 수신할 수 있다.
프로세서(6)는 사용자발화에 대하여 문자 입력 모드의 활성화 동안 제1의도 분석을 수행할 수 있다. 즉, 프로세서(6)는 제1문자 입력 모드의 활성화 동안 사용자발화로부터 획득된 문자열에 후속하는 제1편집 명령을 인식하고, 인식된 제1편집 명령에 따라 문자열을 편집할 수 있다.
프로세서(6)는 사용자발화에 대하여 문자 입력 모드의 활성화가 종료되면, 제2의도 분석을 수행할 수 있다. 즉, 프로세서(6)는 문자 입력 모드의 활성화가 종료되면, 제1편집 명령이 미포함된 사용자발화에 제2편집 명령이 포함되는지 식별하고, 식별된 제2편집 명령에 따라 문자열을 편집할 수 있다.
이와 같이, 본 실시예에 따르면, 프로세서(6)는 문자 입력 모드의 활성화 동안 수신된 사용자발화에 대하여 문자 입력 모드의 활성화가 종료된 후 제2의도 분석을 수행하므로, 사용자(4)의 발화 의도에 더욱 부합하는 문자 입력을 수행함으로써, 음성 인식을 통한 문자 입력의 신뢰성을 향상시킬 수 있다.
도 8은 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다. 이하에서는, 도 9를 함께 참조하여, 본 실시예에 따른 의도 분석에 기초하여 문자를 입력하는 방법에 대해 자세히 설명한다.
프로세서(6)는 사용자발화로부터 텍스트를 인식할 수 있다(S81). 일 예로, 도 9에 도시된 바와 같이, 문자 입력 화면, 예컨대, 패스워드 입력 화면(92)을 표시하고, 사용자발화에 따라 패스워드를 구성하는 문자를 입력하는 상황을 가정한다. 이 경우, 사용자(4)로부터 사용자발화(91) "1245 삭제"를 수신하면, 프로세서(6)는 사용자발화(91)에서 텍스트 "1245 삭제"를 인식할 수 있다.
또한 프로세서(6)는 인식된 텍스트에 기 정의된 문자가 포함되면, 기 정의된 문자를 포함하는 제1문자열 획득할 수 있다(S82). 일 예로, 텍스트 "1245 삭제"에는 기 정의된 문자 "1245"가 포함되어 있으므로, 프로세서(6)는 기 정의된 문자 "1245"를 포함하는 제1문자열 "1245"을 획득할 수 있다.
또한 프로세서(6)는 텍스트에 제1문자열에 후속하는 제1편집 명령이 포함되면, 제1편집 명령에 따라 제1문자열을 편집한 제2문자열 획득할 수 있다(S83). 일 예로, 프로세서(6)는 텍스트 "1245 삭제"에서 제1문자열 "1245"에 후속하는 제1편집 명령 "삭제"가 포함됨을 식별할 수 있으므로, 제1편집 명령 "삭제"에 따라 제1문자열 "1245"을 편집한 제2문자열 "124"를 획득할 수 있다.
또한 프로세서(6)는 텍스트에 제2편집 명령이 미포함되면, 제2문자열을 입력 문자로 인식할 수 있다(S84). 일 예로, 프로세서(6)는 텍스트 "1245 삭제"에 제2편집 명령이 미포함되므로, 제2문자열 "124"를 입력 문자로 인식하여, 예컨대, 패스워드 입력 화면(92)에 패스워드로 "123"를 표시할 수 있다.
도 10은 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다. 이하에서는, 도 11을 함께 참조하여, 본 실시예에 따른 의도 분석에 기초하여 문자를 입력하는 방법에 대해 자세히 설명한다.
프로세서(6)는 사용자발화로부터 텍스트를 인식할 수 있다(S101). 일 예로, 도 11에 도시된 바와 같이, 도 9에서 설명한 제2문자열 "124"에 대하여 사용자발화(110) "커서를 왼쪽으로 2칸 이동"을 수신한 경우를 가정한다. 이 경우, 프로세서(6)는 사용자발화(110) "커서를 왼쪽으로 2칸 이동"에서 텍스트 "커서를 왼쪽으로 2칸 이동"을 획득할 수 있다.
또한 프로세서(6)는 텍스트에 기 정의된 문자가 포함되지만, 기 정의된 문자를 포함하는 제1문자열에 후속하는 제1편집 명령이 미포함되면, 텍스트에 제2편집 명령이 포함되는지 식별할 수 있다(S102). 일 예로, 프로세서(6)는 텍스트 "커서를 왼쪽으로 2칸 이동"에 기 정의된 문자 "2"가 포함되면, 제3문자열 "2"를 획득할 수 있다. 그러나, 제3문자열 "2"에 후속하는 제1편집 명령이 미포함되면, 프로세서(6)는 텍스트 "커서를 왼쪽으로 2칸 이동"에 제2편집 명령이 포함되는지 여부를 식별할 수 있다.
또한 프로세서(6)는 텍스트에 제2편집 명령이 포함된 것으로 식별되면, 식별된 제2편집 명령에 기초하여 제2문자열에 대한 편집 동작을 수행할 수 있다(S103). 일 예로, 프로세서(6)는 텍스트 "커서를 왼쪽으로 2칸 이동"에 제2편집 명령이 포함된 것으로 식별되므로, 제2편집 명령에 따른 편집 동작, 예컨대, 패스워드 입력 화면(92)에서 패스워드로 입력된 제2문자열 "124"에서 "4" 뒤에 있는 커서의 위치를 왼쪽으로 2칸 이동하여, "1"과 "2" 사이에 위치하도록 할 수 있다.
만일 텍스트에 제2편집 명령이 미포함된 경우, 프로세서(6)는 앞서 획득한 제3문자열 "2"를 입력 문자로 인식할 수 있다. 즉, 텍스트에 기 정의된 문자가 포함된 경우라도, 제2편집 명령이 포함된 경우라면, 프로세서(6)는 제2편집 명령에 따른 편집 동작을 우선적으로 수행할 수 있다.
도 12는 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다. 이하에서는, 도 13을 함께 참조하여, 본 실시예에 따른 의도 분석에 기초하여 문자를 입력하는 방법에 대해 자세히 설명한다.
프로세서(6)는 사용자발화로부터 텍스트를 인식할 수 있다(S121). 일 예로, 도 13에 도시된 바와 같이, 사용자발화(130) "커서를 왼쪽으로 이동"에서 텍스트 "커서를 왼쪽으로 이동"을 획득할 수 있다.
또한 프로세서(6)는 텍스트에 기 정의된 문자 및 제1편집 명령이 미포함되면, 텍스트에 제2편집 명령이 포함되는지 식별할 수 있다(S122). 일 예로, 프로세서(6)는 텍스트 "커서를 왼쪽으로 이동"에 기 정의된 문자 및 제1편집 명령이 모두 미포함되므로, 텍스트 "커서를 왼쪽으로 이동"이 제2편집 명령을 포함하는지 여부를 식별할 수 있다.
또한 프로세서(6)는 텍스트에 제2편집 명령이 포함된 것으로 식별되면, 식별된 제2편집 명령에 기초하여 기 획득된 문자열에 대한 편집 동작을 수행할 수 있다(S123). 일 예로, 프로세서(6)는 텍스트 "커서를 왼쪽으로 이동"이 제2편집 명령을 포함한 것으로 인식되면, 제2편집 명령에 따른 편집 동작, 예컨대, 패스워드 입력 화면(92)에서 패스워드로 입력된 제2문자열 "124"에서 "4" 뒤에 있는 커서의 위치를 왼쪽으로 1칸 이동하여, "2"와 "4" 사이에 위치하도록 할 수 있다.
도 14는 도 3의 동작 S32 및 S33과 관련하여, 문자를 입력하는 제어방법의 일 예를 도시한다. 이하에서는, 도 15를 함께 참조하여, 본 실시예에 따른 의도 분석에 기초하여 문자를 입력하는 방법에 대해 자세히 설명한다.
프로세서(6)는 사용자발화로부터 텍스트를 인식할 수 있다(S141). 일 예로, 도 15에 도시된 바와 같이, 제2문자열 "124"에서 "2"와 "4" 사이에 커서(7)가 위치한 경우, 사용자발화(150) "3"을 수신하면, 프로세서(6)가 사용자발화(150) "3"으로부터 텍스트 "3"을 인식할 수 있다.
또한 프로세서(6)는 텍스트에 기 정의된 문자가 포함되면, 기 정의된 문자를 포함하는 제1문자열을 획득할 수 있다(S142). 일 예로, 프로세서(6)는 텍스트 "3"에서 기 정의된 문자 "3"를 포함하는 제4문자열 "3"을 획득할 수 있다.
또한 프로세서(6)는 텍스트에 제1문자열에 후속하는 제1편집 명령이 미포함되고, 또한 텍스트에 제2편집 명령이 미포함되면, 제1문자열을 입력 문자로 인식할 수 있다(S143). 일 예로, 프로세서(6)는 텍스트 "3"에 제4문자열 "3"에 후속하는 제1편집 명령이 미포함되고, 텍스트 "3"에 제2편집 명령이 미포함되므로, 제4문자열 "3"을 입력 문자로 인식할 수 있다. 프로세서(6)는, 예컨대, 패스워드 표시 화면에 표시된 제2문자열 "124"의 "2"과 "4" 사이에 "3"을 표시할 수 있다.
도 16은 도 4의 프로세서가 사용하는 제1음성 인식 엔진 및 제2음성 인식 엔진의 일 예를 도시한다. 도 16에 도시된 바와 같이, 프로세서(6)는 음성 인식 엔진(160)에 기초하여 음성 인식을 수행할 수 있다. 음성 인식 엔진(160)은 제1의도 분석을 위한 제1음성 인식 엔진(161) 및 제2의도 분석을 위한 제2음성 인식 엔진(162)를 포함할 수 있다.
즉, 프로세서(6)는 음성 인식을 통한 문자 입력을 위해 사용자발화가 수신되는 경우, 제1음성 인식 엔진(161)에 기초하여 사용자발화에 대한 제1의도 분석을 수행할 수 있다. 일 예로, 프로세서(6)는 제1음성 인식 엔진(161)에 기초하여 사용자발화에 포함된 제1편집 명령, 예컨대, "삭제", "전체삭제" 등을 인식할 수 있다.
또한 프로세서(6)는 제2음성 인식 엔진(162)에 기초하여 사용자발화를 제2편집 명령을 포함한 것으로 인식할 수 있다. 여기서, 제2음성 인식 엔진(162)에 기초하여 제2편집 명령을 포함한 것으로 인식될 수 있는 편집 명령의 종류 내지는 개수는, 제1음성 인식 엔진(161)에 기초하여 제1편집 명령으로 인식될 수 있는 편집 명령의 종류 내지는 개수보다 많을 수 있다. 또한 제2편집 명령에 의한 편집의 수준은, 제1음성 인식 엔진(161)에 기초한 제1편집 명령에 의한 편집의 수준보다 질적으로 높을 수 있다.
한편, 프로세서(6)는 제2음성 인식 엔진(162)에 기초하여 전자장치(1)의 일반적인 기능 제어를 위한 사용자발화를 인식할 수 있다. 일 예로, 프로세서(6)는 제2음성 인식 엔진(162)에 기초하여 TV의 볼륨 조절, 채널 변경 등을 위한 사용자발화뿐만 아니라, 특정 컨텐트, 예컨대, 인기 드라마, 야구 경기 명장면 등을 요청하는 사용자발화를 인식할 수 있다.
즉, 프로세서(6)는 제2음성 인식 엔진(162)에 기초하여 사용자발화에 제2편집 명령이 포함된 것으로 식별되면, 식별된 제2편집 명령에 따라 편집 동작을 수행하는 한편, 일반적인 기능 제어 명령으로 인식되면, 인식된 제어 명령에 따라 전자장치(1)의 기능 제어를 수행할 수 있다.
이와 같이, 본 실시예에 따르면, 프로세서(6)는 하나의 음성 인식 엔진을 사용하여 문자열에 대한 편집 동작을 수행하거나, 일반적인 기능 제어를 수행할 수 있으므로, 음성 인식을 위한 자원을 효율적으로 관리할 수 있다.
본 문서에 개시된 다양한 실시예들은 전자장치(1)와 같은 기기(Machine)가 읽을 수 있는 저장 매체(Storage Medium)에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어로서 구현될 수 있다. 일 예로, 전자장치(1)의 프로세서(6)는 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 전자장치(1)와 같은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(Non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(예컨대, 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 일 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 예로, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(Computer Program Product)에 포함되어 제공될 수 있다. 본 개시에 의한 컴퓨터 프로그램 제품은, 앞서 언급된 바와 같은, 프로세서에 의해 실행되는 소프트웨어의 명령어들을 포함할 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예컨대, CD-ROM)의 형태로 배포되거나, 또는 어플리케이션 스토어(예컨대, 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예컨대, 스마트폰들) 간에 직접, 온라인으로 배포(예컨대, 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
이상, 바람직한 실시예를 통하여 본 발명에 관하여 상세히 설명하였으나, 본 발명은 이에 한정되는 것은 아니며 특허청구범위 내에서 다양하게 실시될 수 있다.
1: 전자장치
2: 리모컨
3: 서버

Claims (20)

  1. 전자장치에 있어서,
    제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하고,
    상기 제1사용자발화에 상기 제1문자열에 후속하는 제1편집 명령이 포함되면, 상기 제1편집 명령에 따라 상기 제1문자열을 편집한 제2문자열을 입력문자로 인식하고,
    상기 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 편집 동작을 수행하는
    프로세서를 포함하는 전자장치.
  2. 제1항에 있어서,
    상기 제1편집 명령은, 상기 제1문자열에 포함된 문자의 삭제를 포함하는 전자장치.
  3. 제1항에 있어서,
    상기 제2편집 명령으로 인식될 수 있는 명령의 수는, 상기 제1편집 명령보다 많은 전자장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    음성 인식 엔진에 기초하여 상기 제2편집 명령을 인식하고,
    상기 음성 인식 엔진에 기초하여 상기 전자장치의 제어를 위한 명령을 인식하는 전자장치.
  5. 제1항에 있어서,
    상기 프로세서는, 기 정의된 이벤트에 의해 활성화되는 문자 입력 모드에서 수신되는 상기 제1사용자발화에 대하여 상기 제1문자열 및 상기 제1편집 명령을 인식하는 전자장치.
  6. 제5항에 있어서,
    상기 프로세서는, 상기 문자 입력 모드가 활성화된 동안 수신된 상기 제2사용자발화에 상기 제2편집 명령이 포함되는지를 식별하는 전자장치.
  7. 제5항에 있어서,
    상기 프로세서는,
    제1이벤트에 기초하여 상기 문자 입력 모드를 활성화하고,
    제2이벤트에 기초하여 상기 문자 입력 모드의 활성화를 종료하는 전자장치.
  8. 제5항에 있어서,
    상기 프로세서는, 수신되는 사용자입력에 기초하여 상기 문자 입력 모드를 활성화하는 전자장치.
  9. 제1항에 있어서,
    상기 프로세서는, 상기 제2사용자발화에 상기 기 정의된 문자를 포함하는 제3문자열이 포함된 경우, 상기 제3문자열을 상기 입력문자로 인식하지 않고, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 상기 편집 동작을 수행하는 전자장치.
  10. 제9항에 있어서,
    디스플레이부 더 포함하고,
    상기 프로세서는, 상기 입력문자로 인식된 상기 제2문자열을 표시하고, 상기 입력문자로 인식되지 않은 상기 제3문자열을 표시하지 않도록 상기 디스플레이부를 제어하는 전자장치.
  11. 제1항에 있어서,
    상기 프로세서는,
    제3사용자발화로부터 상기 기 정의된 문자를 포함하는 제4문자열을 획득하고,
    상기 제3사용자발화에 상기 제4문자열에 후속하는 상기 제1편집 명령이 미포함되면, 상기 제4문자열을 상기 입력문자로 인식하는 전자장치.
  12. 제1항에 있어서,
    상기 프로세서는, 상기 제1사용자발화에 상기 제1편집 명령이 포함되면, 상기 제2사용자발화에 상기 제2편집 명령의 포함 여부를 식별하지 않는 전자장치.
  13. 전자장치의 제어방법에 있어서,
    제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하는 단계;
    상기 제1사용자발화에 상기 제1문자열에 후속하는 제1편집 명령이 포함되면, 상기 제1편집 명령에 따라 상기 제1문자열을 편집한 제2문자열을 입력문자로 인식하는 단계; 및
    상기 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 편집 동작을 수행하는 단계
    를 포함하는 전자장치의 제어방법.
  14. 제13항에 있어서,
    상기 제1편집 명령은, 상기 제1문자열에 포함된 문자의 삭제를 포함하는 전자장치의 제어방법.
  15. 제13항에 있어서,
    상기 제2편집 명령으로 인식될 수 있는 명령의 수는, 상기 제1편집 명령보다 많은 전자장치의 제어방법.
  16. 제13항에 있어서,
    상기 편집 동작을 수행하는 단계는,
    음성 인식 엔진에 기초하여 상기 제2편집 명령을 인식하는 단계; 및
    상기 음성 인식 엔진에 기초하여 상기 전자장치의 제어를 위한 명령을 인식하는 단계
    를 더 포함하는 전자장치의 제어방법.
  17. 제13항에 있어서,
    상기 제1문자열을 획득하는 단계는, 기 정의된 이벤트에 의해 활성화되는 문자 입력 모드에서 수신되는 상기 제1사용자발화에 대하여 상기 제1문자열 및 상기 제1편집 명령을 인식하는 단계를 더 포함하는 전자장치의 제어방법.
  18. 제17항에 있어서,
    상기 편집 동작을 수행하는 단계는, 상기 문자 입력 모드가 활성화된 동안 수신된 상기 제2사용자발화에 상기 제2편집 명령이 포함되는지를 식별하는 단계를 더 포함하는 전자장치의 제어방법.
  19. 제17항에 있어서,
    제1이벤트에 기초하여 상기 문자 입력 모드의 활성화를 활성화하는 단계; 및
    제2이벤트에 기초하여 상기 문자 입력 모드의 활성화를 종료하는 단계를 더 포함하는 전자장치의 제어방법.
  20. 컴퓨터가 읽을 수 있는 코드로서, 전자장치의 제어방법을 수행하는 코드를 포함하는 컴퓨터 프로그램이 저장된 기록매체에 있어서, 상기 전자장치의 제어방법은,
    제1사용자발화로부터 기 정의된 문자를 포함하는 제1문자열을 획득하는 단계;
    상기 제1사용자발화에 상기 제1문자열에 후속하는 제1편집 명령이 포함되면, 상기 제1편집 명령에 따라 상기 제1문자열을 편집한 제2문자열을 입력문자로 인식하는 단계; 및
    상기 제1편집 명령이 미포함된 제2사용자발화에 제2편집 명령이 포함되면, 상기 제2편집 명령에 기초하여 상기 제2문자열에 대한 편집 동작을 수행하는 단계
    를 포함하는 것을 특징으로 하는 컴퓨터가 읽을 수 있는 프로그램이 기록된 기록매체.
KR1020190172725A 2019-12-23 2019-12-23 전자장치 및 그 제어방법 KR20210080788A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020190172725A KR20210080788A (ko) 2019-12-23 2019-12-23 전자장치 및 그 제어방법
EP20215293.0A EP3842924A1 (en) 2019-12-23 2020-12-18 Electronic apparatus and control method thereof
US17/131,009 US20210193144A1 (en) 2019-12-23 2020-12-22 Electronic apparatus and control method thereof
CN202011534430.3A CN113096666A (zh) 2019-12-23 2020-12-23 电子设备及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190172725A KR20210080788A (ko) 2019-12-23 2019-12-23 전자장치 및 그 제어방법

Publications (1)

Publication Number Publication Date
KR20210080788A true KR20210080788A (ko) 2021-07-01

Family

ID=73855676

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190172725A KR20210080788A (ko) 2019-12-23 2019-12-23 전자장치 및 그 제어방법

Country Status (4)

Country Link
US (1) US20210193144A1 (ko)
EP (1) EP3842924A1 (ko)
KR (1) KR20210080788A (ko)
CN (1) CN113096666A (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4914704A (en) * 1984-10-30 1990-04-03 International Business Machines Corporation Text editor for speech input
US7260529B1 (en) * 2002-06-25 2007-08-21 Lengen Nicholas D Command insertion system and method for voice recognition applications
US9361883B2 (en) * 2012-05-01 2016-06-07 Microsoft Technology Licensing, Llc Dictation with incremental recognition of speech
US10446143B2 (en) * 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
DK201670539A1 (en) * 2016-03-14 2017-10-02 Apple Inc Dictation that allows editing

Also Published As

Publication number Publication date
EP3842924A1 (en) 2021-06-30
US20210193144A1 (en) 2021-06-24
CN113096666A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
US9484029B2 (en) Electronic apparatus and method of speech recognition thereof
CN106796496B (zh) 显示设备及其操作方法
CN109508167B (zh) 显示装置和在语音识别系统中控制显示装置的方法
US10762897B2 (en) Method and display device for recognizing voice
US11393455B2 (en) Methods for natural language model training in natural language understanding (NLU) systems
US11972761B2 (en) Electronic device for sharing user-specific voice command and method for controlling same
US11626103B2 (en) Methods for natural language model training in natural language understanding (NLU) systems
US20210271819A1 (en) Methods for natural language model training in natural language understanding (nlu) systems
US20210271816A1 (en) Methods for natural language model training in natural language understanding (nlu) systems
US20210134302A1 (en) Electronic apparatus and method thereof
US20210074302A1 (en) Electronic apparatus and control method thereof
KR20130054131A (ko) 디스플레이장치 및 그 제어방법
KR20210080788A (ko) 전자장치 및 그 제어방법
US11942089B2 (en) Electronic apparatus for recognizing voice and method of controlling the same
KR102622350B1 (ko) 전자 장치 및 그 제어 방법
KR20210054246A (ko) 전자장치 및 그 제어방법
CA3144484A1 (en) Methods for natural language model training in natural language understanding (nlu) systems
KR20200042627A (ko) 전자 장치 및 그 제어 방법
US11600275B2 (en) Electronic device and control method thereof
KR20210071664A (ko) 전자장치 및 그 제어방법
KR102089593B1 (ko) 디스플레이 장치, 및 이의 제어 방법, 그리고 음성 인식 시스템의 디스플레이 장치 제어 방법
KR102124396B1 (ko) 디스플레이 장치, 및 이의 제어 방법, 그리고 음성 인식 시스템의 디스플레이 장치 제어 방법
KR20210088401A (ko) 전자장치 및 그 제어방법
KR20240050203A (ko) 발화 캐시에 기반하여 사용자 발화를 분석하기 위한 방법 및 이를 지원하는 전자 장치
KR20220033325A (ko) 음성 인식을 위한 전자장치 및 그 제어방법