KR20160022326A - 디스플레이 장치 및 그의 제어 방법 - Google Patents

디스플레이 장치 및 그의 제어 방법 Download PDF

Info

Publication number
KR20160022326A
KR20160022326A KR1020160014073A KR20160014073A KR20160022326A KR 20160022326 A KR20160022326 A KR 20160022326A KR 1020160014073 A KR1020160014073 A KR 1020160014073A KR 20160014073 A KR20160014073 A KR 20160014073A KR 20160022326 A KR20160022326 A KR 20160022326A
Authority
KR
South Korea
Prior art keywords
voice
user
control unit
display device
information
Prior art date
Application number
KR1020160014073A
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 KR1020160014073A priority Critical patent/KR20160022326A/ko
Publication of KR20160022326A publication Critical patent/KR20160022326A/ko

Links

Images

Classifications

    • 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
    • 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
    • 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/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/42208Display device provided on the remote control
    • H04N21/42209Display device provided on the remote control for displaying non-command information, e.g. electronic program guide [EPG], e-mail, messages or a second television channel
    • 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/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/42212Specific keyboard arrangements
    • H04N21/42213Specific keyboard arrangements for facilitating data entry
    • 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/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/4222Remote control device emulator integrated into a non-television apparatus, e.g. a PDA, media center or smart toy
    • 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/4227Providing Remote input by a user located remotely from the client device, e.g. at work
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4722End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

디스플레이 장치가 개시된다. 본 디스플레이 장치는 출력부, 사용자의 음성을 수집하는 음성 수집부 및, 사용자의 음성에 대응되는 시스템 응답을 출력하도록 출력부를 제어하는 제어부를 포함하며, 제어부는, 디스플레이 장치의 현재 상황에서 적용 가능한 음성 명령 가이드를 출력하도록 제어한다.

Description

디스플레이 장치 및 그의 제어 방법 { DISPLAY APPARATUS AND METHOD FOR CONTROLLING THE DISPLAY APPARATUS }
본 발명은 디스플레이 장치 및 그의 제어 방법에 관한 것으로, 더욱 상세하게는 사용자의 음성에 따라 제어되는 디스플레이 장치 및 그의 제어 방법에 관한 것이다.
전자 기술의 발달에 힘입어 다양한 종류의 디스플레이 장치가 개발되어 보급되고 사용자의 요구에 따라 점차 다양한 기능을 구비하게 되었다. 특히, TV의 경우, 최근에는 인터넷과 연결되어 인터넷 서비스까지 지원하고, 사용자는 TV를 통해 많은 수의 디지털 방송 채널까지 시청할 수 있게 되었다.
한편, 최근에는 디스플레이 장치를 조금 더 편리하고 직관적으로 제어하기 위하여 음성 인식을 이용한 기술이 개발되고 있다. 특히, TV의 경우, 사용자의 음성을 인식하고, 볼륨 조절 또는 채널 변경과 같이 사용자의 음성에 대응되는 기능을 수행할 수 있게 되었다.
그러나, 종래 사용자의 음성을 인식하는 디스플레이 장치들은 인식된 음성에 대응되는 기능을 제공할 뿐, 사용자에게 인터렉티브한 정보를 제공하지 못하는 점에서 한계가 존재하였다. 그리고, 이러한 기기를 처음 사용하는 사용자들은 어떠한 말로 어떠한 기능을 수행시킬 수 있는지 인지하지 못한다는 점에서, 디스플레이 장치의 사용에 제한이 있었다.
본 발명은 상술한 필요성에 따른 것으로, 본 발명의 목적은 디스플레이 장치의 현재 상황에서 적용 가능한 음성 명령 가이드를 제공하는 디스플레이 장치 및 그의 제어 방법을 제공함을 목적으로 한다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 디스플레이 장치는, 출력부, 사용자의 음성을 수집하는 음성 수집부 및, 상기 사용자의 음성에 대응되는 시스템 응답을 출력하도록 상기 출력부를 제어하는 제어부를 포함하며, 상기 제어부는, 상기 디스플레이 장치의 현재 상황에서 적용 가능한 음성 명령 가이드를 출력하도록 제어할 수 있다.
여기에서, 상기 제어부는, 상기 사용자의 음성에 대응되는 시스템 응답이 출력되면, 상기 시스템 응답과 관련된 음성 명령 가이드를 출력할 수 있다.
또한, 상기 제어부는, 컨텐츠 검색을 위한 사용자 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 상기 컨텐츠 리스트에 포함된 컨텐츠를 필터링하기 위한 음성 명령 가이드를 출력할 수 있다.
그리고, 상기 제어부는, 컨텐츠 검색을 위한 사용자 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 상기 컨텐츠 리스트에 포함된 특정 컨텐츠를 실행하기 위한 음성 명령 가이드 및 상기 특정 컨텐츠의 세부 정보를 출력하기 위한 음성 명령 가이드 중 적어도 하나를 출력할 수 있다.
또한, 상기 제어부는, 어플리케이션 실행을 위한 사용자 음성에 따라 해당 어플리케이션 실행 화면이 출력되면, 상기 어플리케이션 실행 화면에서 적용 가능한 음성 명령 가이드를 출력할 수 있다.
그리고, 본 실시 예에 따른 디스플레이 장치는 상기 사용자의 음성을 제1 서버로 전송하고, 상기 제1 서버로부터 상기 사용자의 음성에 대응되는 텍스트 정보를 수신하는 제1 통신부 및, 상기 수신된 텍스트 정보를 제2 서버로 전송하는 제2 통신부를 더 포함하며, 상기 제어부는, 상기 텍스트 정보에 대응되는 응답 정보가 상기 제2 서버로부터 수신되면, 상기 응답 정보에 기초하여 상기 시스템 응답을 출력하도록 제어할 수 있다.
한편, 본 발명의 일 실시 예에 따른 디스플레이 장치의 제어 방법은 사용자의 음성을 수집하는 단계 및, 상기 사용자의 음성을 제1 서버로 전송하고, 상기 제1 서버로부터 상기 사용자의 음성에 대응되는 텍스트 정보를 수신하는 단계, 상기 수신된 텍스트 정보를 제2 서버로 전송하는 단계 및, 상기 텍스트 정보에 대응되는 응답 정보가 상기 제2 서버로부터 수신되면, 상기 응답 정보에 기초하여, 상기 사용자의 음성에 대응되는 시스템 응답을 출력하는 단계를 포함하며, 상기 출력하는 단계는, 상기 디스플레이 장치의 현재 상황에서 적용 가능한 음성 명령 가이드를 출력한다.
여기에서, 상기 출력하는 단계는, 상기 사용자의 음성에 대응되는 시스템 응답이 출력되면, 상기 시스템 응답과 관련된 음성 명령 가이드를 출력할 수 있다.
또한, 상기 출력하는 단계는, 컨텐츠 검색을 위한 사용자 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 상기 컨텐츠 리스트에 포함된 컨텐츠를 필터링하기 위한 음성 명령 가이드를 출력할 수 있다.
그리고, 상기 출력하는 단계는, 컨텐츠 검색을 위한 사용자 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 상기 컨텐츠 리스트에 포함된 특정 컨텐츠를 실행하기 위한 음성 명령 가이드 및 상기 특정 컨텐츠의 세부 정보를 출력하기 위한 음성 명령 가이드 중 적어도 하나를 출력할 수 있다.
또한, 상기 출력하는 단계는, 어플리케이션 실행을 위한 사용자 음성에 따라 해당 어플리케이션 실행 화면이 출력되면, 상기 어플리케이션 실행 화면에서 적용 가능한 음성 명령 가이드를 출력할 수 있다.
이상과 같은 본 발명의 다양한 실시 예에 따르면, 사용 가능한 음성에 대한 정보를 포함하는 음성 명령 가이드를 제공한다는 점에서, 대화형 시스템을 처음 사용하는 사용자들도 대화형 시스템을 편리하게 사용할 수 있게 된다. 또한, 사용자의 발화에 따라 출력된 시스템 응답과 관련된 음성 명령 가이드를 제공한다는 점에서, 사용자들은 발화한 이후의 상황에서 적용 가능한 음성을 자연스럽게 학습할 수 있게 된다.
도 1은 본 발명의 일 실시 예에 따른 대화형 시스템을 설명하기 위한 도면,
도 2는 본 발명의 일 실시 예에 따른 디스플레이 장치의 개략적인 블록도,
도 3은 도 2에 도시된 디스플레이 장치의 세부 구성을 설명하기 위한 블록도,
도 4는 도 1에 도시된 제1 서버에 대한 블록도,
도 5는 도 1에 도시된 제2 서버에 대한 블록도,
도 6 내지 도 11은 본 발명의 일 실시 예에 따른 음성 명령 가이드를 제공하는 방법을 설명하기 위한 도면들, 그리고
도 12는 본 발명의 일 실시 예에 따른 디스플레이 장치의 제어 방법을 설명하기 위한 흐름도이다.
이하에서는 첨부된 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 대화형 시스템을 설명하기 위한 도면이다. 도 1에 도시된 바와 같이, 대화형 시스템(1000)은 디스플레이 장치(100), 제1 서버(200) 및 제2 서버(300)를 포함한다.
디스플레이 장치(100)는 디스플레이 장치(100)를 제어하기 위한 리모컨(미도시)에 의해 제어될 수 있다. 구체적으로, 디스플레이 장치(100)는 리모컨(미도시)으로부터 수신된 리모컨 제어 신호에 대응되는 동작을 수행할 수 있다. 예를 들어, 디스플레이 장치(100)가 도 1과 같은 TV로 구현된 경우, 디스플레이 장치(100)는 수신된 리모컨 제어 신호에 따라 전원 온/오프, 채널 전환, 볼륨 변경 등의 동작을 수행할 수 있다.
또한, 디스플레이 장치(100)는 사용자의 음성에 따라 다양한 동작을 수행할 수 있다.
구체적으로, 디스플레이 장치(100)는 수집된 사용자의 음성을 제1 서버(200)로 전송한다. 제1 서버(200)는 디스플레이 장치(100)로부터 사용자의 음성이 수신되면, 수신된 사용자의 음성을 텍스트 정보(또는, 텍스트)로 변환하고 텍스트 정보를 디스플레이 장치(100)로 전송한다.
그리고, 디스플레이 장치(100)는 제1 서버(200)로부터 수신된 텍스트 정보를 제2 서버(300)로 전송한다. 제2 서버(300)는 디스플레이 장치(100)로부터 텍스트 정보가 수신되면, 수신된 텍스트 정보에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송한다.
한편, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여, 다양한 동작을 수행할 수 있다.
구체적으로, 디스플레이 장치(100)는 사용자의 음성에 대응되는 기능을 수행할 수 있다. 즉, 디스플레이 장치(100)는 디스플레이 장치(100)에서 제공 가능한 기능 중 사용자의 음성에 대응되는 기능을 수행할 수 있다. 예를 들어, 디스플레이 장치(100)는 "○번(채널번호) 틀어줘"라는 사용자의 음성이 입력되면, 제2 서버(300)로부터 수신된 제어 명령에 기초하여 ○번을 선국하여 출력할 수 있다. 이를 위해, 제2 서버(300)는 사용자의 음성에 대응되는 기능을 수행하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
이 경우, 디스플레이 장치(100)는 해당 기능에 대응되는 시스템 응답을 함께 제공할 수도 있다. 즉, 디스플레이 장치(100)는 사용자의 음성에 따라 수행된 기능에 대한 정보를 음성 및 UI 화면(텍스트, 이미지 등) 중 적어도 하나의 형태로 출력할 수 있다. 상술한 예의 경우, 디스플레이 장치(100)는 변경된 채널에 대한 정보 또는 채널 변경이 완료되었음을 나타내는 메시지를 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
또한, 디스플레이 장치(100)는 사용자의 음성에 대응되는 시스템 응답을 출력할 수 있다. 여기에서, 시스템 응답은 음성 및 UI 화면 중 적어도 하나의 형태로 출력될 수 있다. 예를 들어, 디스플레이 장치(100)는 특정 프로그램의 방송 시간을 문의하는 사용자의 음성이 입력되면, 해당 프로그램의 방송 시간을 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
또한, 디스플레이 장치(100)는 현재 상황에서 적용 가능한 음성 명령 가이드를 출력할 수 있다. 구체적으로, 디스플레이 장치(100)는 사용자의 음성에 대응되는 시스템 응답이 출력되면, 시스템 응답과 관련된 음성 명령 가이드를 출력할 수 있다.
예를 들어, 디스플레이 장치(100)가 "오늘 방송 뭐해?"라는 사용자의 음성에 대한 시스템 응답으로 오늘 방송하는 방송 프로그램에 대한 리스트를 출력한 경우를 가정한다. 이 경우, 디스플레이 장치(100)는 "이 중에서 ○○○(채널명)에서 뭐해?", "이 중에서 ○○○(출연자 이름)이 출연하는 프로그램은 뭐야?", "이 중에서 ○○○(방송 프로그램 명) 찾아줘", "세 번째", "세 번째 상세 정보 보여줘" 등과 같이 시스템 응답으로 출력된 방송 프로그램에 대한 리스트에 대해 사용 가능한 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
그리고, 디스플레이 장치(100)는 음성 명령 가이드에 포함된 사용자 음성이 수집된 경우, 그에 대응되는 동작을 수행할 수 있다. 상술한 예에서, 디스플레이 장치(100)는 "이 중에서 ○○○(채널명)에서 뭐해?"라는 사용자의 음성이 수집된 경우, 오늘 방송하는 방송 프로그램 중에서 ○○○(채널명)에서 제공하는 방송 프로그램에 대한 리스트를 출력할 수 있다. 또한, 디스플레이 장치(100)는 "세 번째"라는 사용자의 음성이 수집된 경우, 시스템 응답으로 출력된 리스트 상에서 세 번째 배치된 방송 프로그램을 선국하여 출력할 수 있다.
이와 같이 디스플레이 장치(100)는 음성 명령 가이드를 제공한다는 점에서, 대화형 시스템을 처음 사용하는 사용자들도 대화형 시스템을 편리하게 사용할 수 있게 된다. 또한, 디스플레이 장치(100)는 사용자의 발화에 따라 출력된 시스템 응답과 관련된 음성 명령 가이드를 제공한다는 점에서, 사용자들은 발화한 이후의 상황에서 적용 가능한 음성을 자연스럽게 학습할 수 있게 된다.
한편, 도 1에서 디스플레이 장치(100)는 TV인 것으로 도시하였지만, 이는 일 예에 불과하다. 즉, 디스플레이 장치(100)는 TV뿐만 아니라, 스마트폰과 같은 휴대폰, 데스크탑 PC, 노트북, 네비게이션 등과 같은 다양한 전자 장치로 구현될 수 있다.
또한, 도 1에서 제1 서버(200) 및 제2 서버(300)가 별도의 서버로 구현되는 것으로 도시하였으나 이 역시 일 예에 불과하다. 즉, 제1 서버(200)와 제2 서버(300)를 포함하는 하나의 대화형 서버로 구현될 수 있음은 물론이다.
도 2는 본 발명의 일 실시 예에 따른 디스플레이 장치의 개략적인 블록도이다. 도 2에 도시된 바와 같이, 디스플레이 장치(100)는 출력부(110), 음성 수집부(120) 및 제어부(130)를 포함한다.
출력부(110)는 음성 및 영상 중 적어도 하나를 출력한다. 구체적으로, 출력부(110)는 음성 수집부(120)를 통해 수집된 사용자의 음성에 대응되는 시스템 응답을 음성 및 그래픽 UI 중 적어도 하나의 형태로 출력할 수 있다.
이를 위해, 출력부(110)는 디스플레이부(미도시) 및 오디오 출력부(미도시)를 구비할 수 있다.
구체적으로, 디스플레이부(미도시)는 액정 표시 장치(Liquid Crystal Display, LCD), 유기 전기 발광 다이오드(Organic Light Emitting Display, OLED) 또는 플라즈마 표시 패널(Plasma Display Panel, PDP) 등으로 구현될 수 있다. 디스플레이부(미도시)는 디스플레이 장치(100)를 통해 제공 가능한 다양한 디스플레이 화면을 제공할 수 있다. 특히, 디스플레이부(미도시)는 사용자의 음성에 대응되는 시스템 응답을 텍스트, 이미지, 아이콘, GUI 중 적어도 하나를 포함하는 UI 화면을 구성하여 디스플레이할 수 있다.
한편, 오디오 출력부(미도시)는 잭 등과 같은 출력 포트 또는 스피커 등으로 구현되어, 사용자의 음성에 대응되는 시스템 응답을 음성 형태로 출력할 수 있다.
또한, 출력부(110)는 다양한 컨텐츠를 출력할 수 있다. 여기에서, 컨텐츠는 방송 컨텐츠, VOD(Videon On Demand, Premium Videon On Demand) 컨텐츠, DVD 컨텐츠 등을 포함할 수 있다. 예를 들어, 디스플레이부(미도시)는 컨텐츠를 구성하는 영상을 출력하고, 오디오 출력부(미도시)는 컨텐츠를 구성하는 오디오를 출력할 수 있다.
음성 수집부(120)는 사용자의 음성을 수집한다. 예를 들어, 음성 수집부(120)는 사용자의 음성을 수집하기 위한 마이크로 구현되어, 디스플레이 장치(100)에 내장되어 일체형을 이루거나, 디스플레이 장치(100)와 분리된 형태로 구현될 수 있다. 분리된 형태로 구현되는 경우, 음성 수집부(120)는 사용자가 손으로 쥐는 형태, 또는 식탁이나 테이블에 놓일 수 있는 형태로 구현될 수 있으며, 디스플레이 장치(100)와 유선 또는 무선 네트워크를 통하여 연결되어, 수집된 사용자의 음성을 디스플레이 장치(100)로 전송할 수 있다.
한편, 음성 수집부(120)는 수집된 음성이 사용자의 음성인지를 판단하고, 사용자의 음성에서 노이즈(예를 들어, 에어컨 소리, 청소기 소리, 음악 소리 등)를 필터링할 수도 있다.
예를 들어, 음성 수집부(120)는 아날로그 형태의 사용자 음성이 입력되면, 이를 샘플링하여 디지털 신호로 변환한다. 그리고, 음성 수집부(120)는 변환된 디지털 신호의 에너지를 계산하여, 디지털 신호의 에너지가 기설정된 값 이상인지 여부를 판단한다.
디지털 신호의 에너지가 기설정된 값 이상인 경우, 음성 수집부(120)는 디지털 신호에서 노이즈 성분을 제거하여 제1 통신부(130)로 전달한다. 이때, 노이즈 성분은 가정 환경에서 발생할 수 있는 돌발성 잡음으로써, 에어컨 소리, 청소기 소리, 음악 소리 등이 포함될 수 있다. 한편, 디지털 신호의 에너지가 기설정된 값 미만인 경우, 음성 수집부(120)는 디지털 신호에 별다른 처리 과정을 수행하지 않고, 다른 입력을 기다린다.
이에 따라, 사용자의 음성이 아닌 다른 소리에 의해 전체 오디오 처리 과정이 활성화되지 않아, 불필요한 전력 소모를 방지할 수 있다.
제1 통신부(130)는 제1 서버(도 1의 200)와 통신을 수행한다. 구체적으로, 제1 통신부(130)는 사용자의 음성을 제1 서버(200)로 전송하고, 사용자의 음성에 대응되는 텍스트 정보를 제1 서버(200)로부터 수신할 수 있다.
제2 통신부(140)는 제2 서버(도 1의 300)와 통신을 수행한다. 구체적으로, 제2 통신부(140)는 수신된 텍스트 정보를 제2 서버(300)로 전송하고, 텍스트 정보에 대응되는 응답 정보를 제2 서버(300)로부터 수신할 수 있다.
이를 위해, 제1 통신부(130) 및 제2 통신부(140)는 다양한 통신 방식을 이용하여 제1 서버(200) 및 제2 서버(300)와 통신을 수행할 수 있다.
예를 들어, 제1 통신부(130) 및 제2 통신부(140)는 유/무선 LAN(Local Area Network), WAN, 이더넷, 블루투스(Bluetooth), 지그비(Zigbee), USB(Universal Serial Bus), IEEE 1394, 와이파이(Wifi) 등을 이용하여, 제1 서버(200) 및 제2 서버(300)와 통신을 수행할 수 있다. 이를 위해, 제1 통신부(130) 및 제2 통신부(140)는 각 통신 방식에 대응되는 칩 또는 입력 포트 등을 구비할 수 있다. 예를 들어, 유선 LAN 방식으로 통신을 수행하는 경우, 제1 통신부(130) 및 제2 통신부(140)는 유선 LAN 카드(미도시) 및 입력 포트(미도시)를 구비할 수 있다.
한편, 상술한 실시 예에서는, 디스플레이 장치(100)가 제1 서버(200) 및 제2 서버(300)와 통신을 수행하기 위해, 별도의 통신부(130, 140)를 구비하는 것으로 설명하였으나 이는 일 예에 불과하다. 즉, 디스플레이 장치(100)는 하나의 통신 모듈을 통해 제1 서버(200) 및 제2 서버(300)와 통신을 할 수 있음은 물론이다.
또한, 상술한 실시 예에서는, 제1 통신부(130) 및 제2 통신부(140)는 제1 서버(200) 및 제2 서버(300)와 통신을 수행하는 것으로 설명하였으나, 이는 일 예에 불과하다. 즉, 제1 통신부(130) 및 제2 통신부(140)는 웹 서버(미도시)에 연결되어 웹 브라우징을 수행할 수도 있다.
제어부(150)는 디스플레이 장치(100)의 전반적인 동작을 제어한다. 즉, 제어부(150)는 출력부(110), 음성 수집부(120), 제1 통신부(130) 및 제2 통신부(140)의 동작을 제어할 수 있다. 제어부(150)는 CPU(central processing unit) 및 디스플레이 장치(100)를 제어하기 위한 모듈 및 데이터를 저장하는 ROM(Read Only Memory) 및 RAM(Random Access Memory)을 포함할 수 있다.
구체적으로, 제어부(150)는 음성 수집부(120)를 통해 사용자의 음성을 수집하고, 수집된 사용자의 음성을 제1 서버(200)로 전송하도록 제1 통신부(130)를 제어할 수 있다. 그리고, 제어부(150)는 사용자의 음성에 대응되는 텍스트 정보가 수신되면, 수신된 텍스트 정보를 제2 서버(300)로 전송하도록 제2 통신부(140)를 제어할 수 있다.
한편, 제어부(150)는 사용자의 음성에 대응되는 시스템 응답을 출력하도록 출력부(110)를 제어할 수 있다. 구체적으로, 제어부(150)는 텍스트 정보에 대응되는 응답 정보가 제2 서버(300)로부터 수신되면, 응답 정보에 기초하여 사용자의 음성에 대응되는 시스템 응답을 출력하도록 출력부(110)를 제어할 수 있다.
여기에서, 응답 정보는 시스템 응답을 출력하기 위한 시스템 응답 정보를 포함할 수 있다.
일 예로, 시스템 응답 정보는 사용자의 음성에 대해 디스플레이 장치(100)에서 출력되는 시스템 응답이 텍스트 형식으로 표현된 것으로, 제어부(150)는 시스템 응답 정보에 기초하여 사용자의 음성에 대응되는 시스템 응답을 음성 및 UI 화면 중 적어도 하나의 형태로 출력하도록 제어할 수 있다.
구체적으로, 제어부(150)는 TTS(Text to Speech) 엔진을 이용하여, 텍스트 형태의 시스템 응답 정보를 음성으로 변환하여 출력부(110)를 통해 출력할 수 있다. 여기에서, TTS 엔진은 텍스트를 음성으로 변환하기 위한 모듈로서, 종래 개시되어 있는 다양한 TTS 알고리즘을 이용하여 텍스트를 음성으로 변환할 수 있다. 또한, 제어부(150)는 시스템 응답 정보를 구성하는 텍스트가 포함되도록 UI 화면을 구성하여 출력부(110)를 통해 출력할 수도 있다.
예를 들어, TV로 구현된 디스플레이 장치(100)가 "가장 인기 있는 프로그램 명을 알려줘"라는 사용자의 음성을 수집하면, 제2 서버(300)는 "가장 인기 있는 프로그램은 ○○○(방송 프로그램 명칭) 입니다"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(150)는 텍스트 형식으로 표현된 "가장 인기 있는 프로그램은 ○○○(방송 프로그램 명칭) 입니다"를 음성으로 변환하여 출력부(110)를 통해 출력하거나, "가장 인기 있는 프로그램은 ○○○(방송 프로그램 명칭) 입니다"라는 텍스트가 포함되도록 UI 화면을 구성하여 출력부(110)를 통해 출력하도록 제어할 수 있다. 또한, 제어부(150)는 음성 및 GUI를 조합하여 출력할 수도 있다.
한편, 상술한 실시 예에서, 제2 서버(300)로부터 전송되는 시스템 응답 정보는 디스플레이 장치(100)에서 출력되는 시스템 응답이 텍스트 형식으로 표현된 것으로 설명하였으나 이는 일 예에 불과하다. 즉, 시스템 응답 정보는 디스플레이 장치(100)에서 출력되는 시스템 응답을 구성하는 음성 데이터 자체이거나, 시스템 응답을 구성하는 음성 데이터의 일부이거나, 디스플레이 장치(100)에 기저장된 음성 또는 텍스트를 이용하여 시스템 응답을 출력하기 위한 제어 신호의 형태가 될 수 있다.
이에 따라, 제어부(150)는 시스템 응답 정보의 형태를 고려하여, 시스템 응답을 출력할 수 있다.
구체적으로, 제어부(150)는 시스템 응답을 구성하는 음성 데이터 자체가 수신되면, 해당 데이터를 출력부(110)에서 출력가능한 형태로 처리하여 음성 형태로 출력할 수 있다.
다른 한편, 제어부(150)는 시스템 응답을 출력하기 위한 제어 신호가 수신되면, 디스플레이 장치(100)에 기저장된 데이터들 중에서 제어 신호에 매칭되는 데이터를 검색하고, 검색된 음성 또는 텍스트 데이터를 출력가능한 형태로 처리하여 출력부(110)를 통해 출력할 수 있다. 이를 위해, 디스플레이 장치(100)는 시스템 응답을 제공하기 위한 음성 또는 텍스트 데이터를 저장하고 있을 수 있다. 예를 들어, 디스플레이 장치(100)는 "채널 변경이 완료되었습니다"와 같은 완전한 문장 형태의 데이터를 저장하고 있을 수 있으며, 또한 "채널 ...번으로 변경하였습니다"와 같은 문장을 구성하는 일부 데이터를 저장하고 있을 수 있다. 이 경우, 해당 문장을 완성시키는 채널 명은 제2 서버(300)로부터 수신될 수 있다.
다른 예로, 시스템 응답 정보는 사용자의 음성에 대해 디스플레이 장치(100)에서 시스템 응답을 출력하기 위한 다양한 정보를 포함할 수 있다.
구체적으로, 시스템 응답 정보는 사용자의 발화 의도에 따라 검색된 컨텐츠에 대한 정보를 포함할 수 있다. 즉, 제2 서버(300)는 사용자의 음성에 포함된 발화 의도에 부합하는 컨텐츠를 검색하고, 검색된 컨텐츠에 대한 정보(가령, 컨텐츠 명칭, 장르, 방송 시간, 출연진, 컨텐츠에 대한 썸네일 이미지, 컨텐츠가 방송되는 채널명, 채널 번호, 제작진 등 중 적어도 하나)를 디스플레이 장치(100)로 전송할 수 있다.
예를 들어, TV로 구현된 디스플레이 장치(100)가 "오늘 방송 뭐해?"라는 사용자의 음성을 수집하면, 제2 서버(300)는 EPG(Electronic Program Guide) 정보에 기초하여 오늘 방송하는 방송 프로그램을 검색하고, 검색된 방송 프로그램에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 제어부(150)는 제2 서버(300)로부터 수신된 정보에 기초하여 컨텐츠 리스트를 생성하고, 생성된 컨텐츠 리스트를 출력할 수 있다. 이 경우, 제어부(150)는 음성 및 UI 화면 중 적어도 하나의 형태로 컨텐츠 리스트를 출력할 수 있다.
예를 들어, 제어부(150)는 사용자의 음성에 대한 시스템 응답으로 오늘 방송하는 프로그램에 대한 리스트를 포함하는 UI 화면을 구성하고, 이를 출력할 수 있다. 이때, 제어부(150)는 검색된 컨텐츠가 방송 시간 순으로 나열되도록 컨텐츠 리스트를 생성할 수 있다.
또한, 제어부(150)는 검색된 컨텐츠와 관련된 다양한 정보를 검색 리스트에 부가할 수 있다. 예를 들어, 제어부(150)는 제2 서버(300)로부터 수신된 방송 프로그램에 대한 정보에 기초하여, 검색된 방송 프로그램의 명칭, 방송 시간, 방송 프로그램을 제공하는 채널명, 채널 번호, 제작사 중 적어도 하나를 검색 리스트에 부가할 수 있다.
다만, 상술한 예에서는 제2 서버(300)가 컨텐츠에 대한 정보를 디스플레이 장치(100)로 전송하고, 디스플레이 장치(100)가 수신된 정보를 이용하여 컨텐츠 리스트를 생성하고 이를 시스템 응답으로 출력하는 것으로 설명하였으나, 이는 일 예에 불과하다.
즉, 제2 서버(300)는 판단된 발화 의도에 대한 정보를 디스플레이 장치(100)로 전송하고, 디스플레이 장치(100)가 판단된 발화 의도에 대한 정보에 기초하여, 사용자의 음성에 대응되는 시스템 응답을 출력할 수도 있다.
예를 들어, 제2 서버(300)가 사용자의 음성에 포함된 발화 의도가 오늘 방송하는 방송 프로그램에 대한 정보를 요청하는 것으로 판단한 경우, 제2 서버(300)는 오늘 방송하는 방송 프로그램에 대한 리스트를 출력하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 제어부(150)는 EPG 정보에 기초하여 오늘 방송하는 방송 프로그램을 검색하고, 검색된 방송 프로그램에 대한 리스트를 시스템 응답으로 출력할 수 있다.
한편, 응답 정보는 디스플레이 장치(100)의 기능을 제어하기 위한 제어 명령을 포함할 수 있다. 여기에서, 제어 명령은 디스플레이 장치(100)에서 실행 가능한 기능 중 사용자의 음성에 대응되는 기능을 실행하기 위한 명령을 포함할 수 있다. 이에 따라, 제어부(150)는 제2 서버(300)로부터 수신된 제어 명령에 기초하여, 사용자의 음성에 대응되는 기능이 실행되도록 디스플레이 장치(100)의 각 구성요소를 제어할 수 있다.
예를 들어, 디스플레이 장치(100)가 "볼륨을 높여줘"라는 사용자의 음성을 수집하면, 제2 서버(300)는 디스플레이 장치(100)의 볼륨을 증가시키기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(150)는 제어 명령에 기초하여 출력부(110)를 통해 출력되는 오디오의 볼륨을 증가시킬 수 있다. 또한, 디스플레이 장치(100)가 "웹 브라우저 실행해줘"라는 사용자의 음성을 수집하면, 제2 서버(300)는 웹 브라우징과 관련된 어플리케이션 실행을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(150)는 제어 명령에 기초하여 기저장된 어플리케이션 중 웹 브라우징을 위한 어플리케이션을 실행할 수 있다.
다만, 이는 일 예일 뿐, 제어부(150)는 수집된 사용자의 음성에 따라 전원 온/오프, 채널 변경 등 다양한 동작이 수행되도록 디스플레이 장치(100)의 각 구성요소를 제어할 수도 있다.
또한, 응답 정보는 제어 명령에 따라 실행된 기능과 관련된 시스템 응답 정보를 포함할 수 있다. 이 경우, 제어부(150)는 제어 명령에 따른 기능을 수행하고, 시스템 응답 정보에 기초하여 실행된 기능과 관련된 시스템 응답을 음성 및 UI 화면 중 적어도 하나의 형태로 출력하도록 제어할 수 있다.
예를 들어, TV로 구현된 디스플레이 장치(100)가 "채널을 11번으로 변경해줘"라는 사용자의 음성을 수집하면, 제2 서버(300)는 디스플레이 장치(100)의 채널을 11번으로 변경하기 위한 제어 명령과 "채널을 11번으로 변경하였습니다"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(150)는 제어 명령에 기초하여 출력부(110)를 통해 출력되는 방송 채널을 11번으로 변경한다. 그리고, 제어부(150)는 "채널을 11번으로 변경하였습니다"를 음성으로 변환하여 출력부(110)를 통해 출력하거나, "채널을 11번으로 변경하였습니다"라는 텍스트가 포함되도록 UI 화면을 구성하여 출력부(110)를 통해 출력하도록 제어할 수 있다.
상술한 바와 같이, 제어부(150)는 수집된 사용자의 음성에 따라, 다양한 동작을 수행할 수 있다. 즉, 제어부(150)는 사용자의 음성에 대응되는 시스템 응답을 출력하거나, 사용자의 음성에 대응되는 기능을 실행하도록 제어할 수 있다.
한편, 디스플레이 장치(100)에서 별도의 기능을 실행함이 없이 사용자의 음성에 대응되는 시스템 응답을 출력하는 경우는, 사용자의 음성이 디스플레이 장치(100)에서 실행될 수 없는 기능을 실행시키고자 하는 경우를 더 포함할 수 있다.
예를 들어, 디스플레이 장치(100)가 화상통화 기능을 지원하지 않는 TV로 구현된 경우를 가정한다. 이 경우, 디스플레이 장치(100)에서 "XXX에게 전화 걸어줘"라는 사용자의 음성을 수집하면, 제2 서버(300)는 화상통화 수행을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 하지만, 디스플레이 장치(100)에서는 해당 제어 명령에 대응되는 기능이 지원되지 않는다는 점에서, 제어부(150)는 제2 서버(300)로부터 수신된 제어 명령을 인식할 수 없게 된다. 이 경우, 제어부(150)는 "지원되지 않는 기능입니다"라는 시스템 응답을 출력부(110)를 통해 음성 및 GUI 중 적어도 하나의 형태로 출력할 수 있다.
한편, 제어부(150)는 디스플레이 장치(100)의 현재 상황에서 적용 가능한 음성 명령 가이드를 출력하도록 제어할 수 있다.
여기에서, 현재 상황은 초기 화면을 출력하거나, 컨텐츠를 출력하거나, 어플리케이션을 실행하는 등과 같이 디스플레이 장치(100)에서 특정 기능이 실행되고 있는 상황을 포함할 수 있다. 또한, 초기 화면은 디스플레이 장치(100)가 사용자의 음성에 의해 제어되는 대화형 모드에서 최초로 제공되는 화면을 포함할 수 있다. 예를 들어, 제어부(150)는 디스플레이 장치(100)의 조작 패널에 마련된 특정 키가 선택되거나, 리모컨(미도시)로부터 특정 리모컨 제어 신호가 수신되면, 대화형 모드로 동작하여 초기 화면을 디스플레이하고 사용자가 발화한 음성을 수집할 수 있다.
구체적으로, 제어부(150)는 초기 화면을 출력하거나, 컨텐츠를 출력하거나, 어플리케이션을 실행하는 등과 같이 특정 기능이 실행되고 있는 상황에서 특정 동작을 실행할 수 있는 사용자의 음성을 나타내는 음성 명령 가이드를 출력할 수 있다.
예를 들어, 초기 화면이 출력되는 상황에서 출력되는 음성 명령 가이드는 "오늘 방송 뭐해?", "재미있는 거 없어?", "새로 나온 영화 뭐 있어?", "인기있는 거 추천해줘", "○○○(채널명)을 틀어줘", "웹 브라우저 실행해줘" 등과 같이 디스플레이 장치(100)에서 수행 가능한 동작을 실행할 수 있는 사용자의 음성을 포함할 수 있다.
또한, 컨텐츠가 출력되고 있는 상황에서 출력되는 음성 명령 가이드는 컨텐츠에 대해 적용 가능한 사용자의 음성을 포함할 수 있다. 예를 들어, 컨텐츠가 출력되고 있는 상황에서의 음성 명령 가이드는 "오늘 방송 뭐해?", "재미있는 거 없어?", "새로 나온 영화 뭐 있어?", "인기있는 거 추천해줘", "○○○(채널명)을 틀어줘", "볼륨 올려줘" 등과 같이 컨텐츠를 검색하거나 컨텐츠를 제어(컨텐츠 변경, 볼륨 변경)할 수 있는 사용자의 음성을 포함할 수 있다.
또한, 어플리케이션이 실행되고 있는 상황에서 출력되는 음성 명령 가이드는 어플리케이션 실행 화면에서 적용 가능한 음성 명령 가이드가 될 수 있다. 예를 들어, 웹 브라우징을 위한 어플리케이션이 실행되어 웹 페이지 화면이 디스플레이되고 있는 상황에서의 음성 명령 가이드는 "홈 페이지", "즐겨 찾기", "새로 고침", "새 페이지 열기", "현재 페이지 닫기", "뒤로", "앞으로", "종료" 등과 같이 웹 페이지 화면에서 특정 기능을 실행하는데 사용될 수 있는 사용자의 음성을 포함할 수 있다
또한, 제어부(150)는 사용자의 음성에 대응되는 시스템 응답이 출력되면, 시스템 응답과 관련된 음성 명령 가이드를 출력할 수 있다. 즉, 제어부(150)는 사용자의 발화 의도에 부합하는 시스템 응답을 출력하고, 출력된 시스템 응답에 대해 특정 동작을 실행할 수 있는 사용자의 음성을 나타내는 음성 명령 가이드를 출력할 수 있다.
구체적으로, 제어부(150)는 컨텐츠 검색을 위한 사용자의 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 컨텐츠 리스트에 포함된 컨텐츠를 필터링하기 위한 음성 명령 가이드를 출력할 수 있다. 즉, 제어부(150)는 컨텐츠를 검색하기 위한 발화 의도를 갖는 사용자의 음성이 수신되면 사용자의 음성에 따라 검색된 컨텐츠에 대한 리스트를 시스템 응답으로 출력하고, 리스트에 포함된 컨텐츠 중에서 특정 컨텐츠를 재차 검색하기 위해 사용될 수 있는 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
예를 들어, "오늘 방송 뭐해?"라는 사용자의 음성이 수집된 경우, 제어부(150)는 오늘 방송하는 방송 프로그램에 대한 리스트를 시스템 응답으로 출력할 수 있다. 이 경우, 제어부(150)는 "이 중에서 ○○○(채널명)은 뭐해?", "이 중에서 다큐멘터리 프로는 뭐야?", "이 중에서 ○○○(출연자 이름)이 출연하는 거 찾아줘", "이 중에서 ○○○(방송 프로그램 명칭) 찾아줘" 등과 같이 오늘 방송하는 방송 프로그램에 대한 리스트에서 특정 컨텐츠를 선별하는데 사용될 수 있는 사용자 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
또한, 제어부(150)는 컨텐츠 검색을 위한 사용자의 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 컨텐츠 리스트에 포함된 특정 컨텐츠를 실행하기 위한 음성 명령 가이드 및 특정 컨텐츠의 세부 정보를 출력하기 위한 음성 명령 가이드 중 적어도 하나를 출력할 수 있다. 여기에서, 세부 정보는 컨텐츠 명칭, 방송 시간, 출연진, 줄거리, 컨텐츠를 제공하는 채널 번호, 채널 명 중 적어도 하나를 포함할 수 있다.
즉, 제어부(150)는 컨텐츠를 검색하기 위한 발화 의도를 갖는 사용자의 음성이 수신되면 사용자의 음성에 따라 검색된 컨텐츠에 대한 리스트를 시스템 응답으로 출력하고, 리스트에 포함된 컨텐츠 중에서 특정 컨텐츠를 실행하기 위해 사용될 수 있거나, 특정 컨텐츠에 대한 세부 정보를 출력하기 위해 사용될 수 있는 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
예를 들어, "오늘 방송 뭐해?"라는 사용자의 음성이 수집된 경우, 제어부(150)는 오늘 방송하는 방송 프로그램에 대한 리스트를 시스템 응답으로 출력할 수 있다. 이 경우, 제어부(150)는 "세 번째", "세 번째 상세 정보 보여줘" 등과 같이 오늘 방송하는 방송 프로그램에 대한 리스트에서 특정 방송 프로그램을 실행하거나, 특정 방송 프로그램에 대한 세부 정보를 출력하기 위해 사용할 수 있는 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
또한, 제어부(150)는 어플리케이션 실행을 위한 사용자 음성에 따라 해당 어플리케이션 실행 화면이 출력되면, 어플리케이션 실행 화면에서 적용 가능한 음성 명령 가이드를 출력할 수 있다. 즉, 제어부(150)는 어플리케이션을 실행하기 위한 발화 의도를 갖는 사용자의 음성이 수신되면 사용자의 음성에 대응되는 어플리케이션을 실행하고, 해당 어플리케이션에서 특정 기능을 수행하기 위해 사용될 수 있는 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
예를 들어, "웹 브라우저 실행해줘"라는 사용자의 음성이 수집된 경우, 제어부(150)는 웹 브라우징을 위한 어플리케이션을 실행하여 웹 페이지 화면을 출력할 수 있다. 이 경우, 제어부(150)는 "홈 페이지", "즐겨 찾기", "새로 고침", "새 페이지 열기", "현재 페이지 닫기", "뒤로", "앞으로", "종료" 등과 같이 웹 페이지 화면에서 특정 기능을 실행하는데 사용될 수 있는 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
이 경우, 제어부(150)는 기설정된 기간 주기 또는 특정 기능이 실행된 시점에서 음성 명령 가이드를 출력할 수 있다.
예를 들어, 제어부(150)는 기설정된 기간 주기마다 디스플레이 장치(100)의 현재 상황에서 적용 가능한 음성 명령 가이드를 출력할 수 있다. 또한, 제어부(150)는 초기 화면이 출력되거나, 컨텐츠가 출력되거나, 어플리케이션이 실행되거나, 사용자의 음성에 대응되는 시스템 응답이 출력되는 시점에 음성 명령 가이드를 출력할 수도 있다. 또한, 제어부(150)는 초기 화면이 출력되거나, 컨텐츠가 출력되거나, 어플리케이션이 실행되거나, 사용자의 음성에 대응되는 시스템 응답이 출력되는 시점에 음성 명령 가이드를 출력하고, 기설정된 시간 주기마다 음성 명령 가이드를 재차 출력할 수도 있다.
이를 위해, 디스플레이 장치(100)는 현재 상황에서 적용 가능한 사용자의 음성에 대한 정보를 저장할 수 있다. 즉, 디스플레이 장치(100)는 각 상황에서 사용 가능한 사용자의 음성에 대한 정보를 저장할 수 있다. 이에 따라, 제어부(150)는 기저장된 정보를 이용하여 디스플레이 장치(100)의 현재 상황에서 적용 가능한 사용자의 음성에 대한 정보를 판단하고, 판단된 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
예를 들어, 제어부(150)는 컨텐츠 검색을 위한 사용자의 음성에 따라 검색된 컨텐츠에 대한 리스트가 출력되면, 컨텐츠 리스트가 출력된 상황에서 컨텐츠를 필터링하거나, 특정 컨텐츠를 실행하거나, 특정 컨텐츠에 대한 세부 정보를 출력하기 위한 사용자의 음성이 사용될 수 있다고 판단한다. 이에 따라, 제어부(150)는 기저장된 정보 중에서 컨텐츠 리스트가 출력된 상황에서 사용될 수 있는 사용자의 음성에 대한 정보를 검출하고, 이를 음성 명령 가이드로 출력할 수 있다.
한편, 상술한 예에서는 디스플레이 장치(100)가 현재 상황에서 적용 가능한 사용자의 음성에 대한 정보를 저장하는 것으로 설명하였으나, 이는 일 예에 불과하다. 즉, 제2 서버(300)는 디스플레이 장치(100)의 현재 상황에 따라 출력될 수 있는 음성 명령 가이드에 대한 정보를 디스플레이 장치(100)로 전송하고, 제어부(150)는 수신된 정보를 이용하여 음성 명령 가이드를 출력할 수 있다.
예를 들어, "오늘 방송 뭐해"라는 사용자의 음성에 대해, 제2 서버(300)는 오늘 방송하는 방송 프로그램에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 디스플레이 장치(100)는 수신된 정보를 이용하여 오늘 방송하는 방송 프로그램에 대한 리스트를 시스템 응답으로 출력한다는 점에서, 제2 서버(300)는 "세 번째", "세 번째 상세 정보 보여줘", "이 중에서 ○○○(채널명)은 뭐해?", "이 중에서 다큐멘터리 프로는 뭐야?", "이 중에서 ○○○(출연자 이름)이 출연하는 거 찾아줘", "이 중에서 ○○○(방송 프로그램 명칭) 찾아줘" 등과 같이 시스템 응답으로 출력된 방송 프로그램 리스트에서 적용 가능한 사용자의 음성에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(150)는 수신된 정보를 이용하여 방송 프로그램 리스트에서 사용될 수 있는 사용자의 음성에 대한 정보를 음성 명령 가이드로 출력할 수 있다.
도 3은 도 2에 도시된 디스플레이 장치의 세부 구성을 설명하기 위한 블록도이다. 도 3에 따르면, 디스플레이 장치(100)는 도 2에 도시된 구성요소 외에 저장부(160), 수신부(170), 신호 처리부(180), 리모컨 신호 수신부(191), 입력부(193) 및 인터페이스부(195)를 더 포함할 수 있다. 이들 각 구성요소는 제어부(150)에 의해 제어될 수 있다. 한편, 도 3에 도시된 구성요소들 중 도 2에 도시된 구성요소와 중복되는 구성요소들은 그 기능이 동일하므로 자세한 설명은 생략하도록 한다.
저장부(160)는 디스플레이 장치(100)를 동작시키기 위해 필요한 각종 프로그램 등이 저장되는 저장매체로서, 메모리, HDD(Hard Disk Drive) 등으로 구현가능하다. 예를 들어, 저장부(160)는 제어부(150)의 동작 수행을 위한 프로그램을 저장하기 위한 ROM, 제어부(150)의 동작 수행에 따른 데이터를 일시적으로 저장하기 위한 RAM 등을 구비할 수 있다. 또한 각종 참조 데이터를 저장하기 위한 EEROM(Electrically Erasable and Programmable ROM) 등을 더 구비할 수 있다.
특히, 저장부(160)는 디스플레이 장치(100)는 현재 상황에서 적용 가능한 사용자의 음성에 대한 정보를 저장할 수 있다. 이에 따라, 제어부(150)는 디스플레이 장치(100)의 현재 상황에서 적용 가능한 사용자의 음성에 대한 정보를 판단하고, 판단된 사용자의 음성을 리스트 형태로 출력하도록 제어할 수 있다.
수신부(170)는 다양한 컨텐츠를 수신한다. 구체적으로, 수신부(170)는 방송 네트워크를 이용하여 방송 프로그램을 전송하는 방송국 또는 인터넷을 이용하여 컨텐츠 파일을 전송하는 웹 서버로부터 컨텐츠를 수신할 수 있다.
방송국으로부터 컨텐츠를 수신하는 실시 예의 경우에는, 수신부(170)는 튜너(미도시), 복조기(미도시), 등화기(미도시) 등과 같은 구성을 포함하는 형태로 구현될 수 있다. 반면, 웹 서버와 같은 소스로부터 컨텐츠를 수신하는 실시 예의 경우에는, 수신부(170)는 네트워크 인터페이스 카드(미도시)로 구현될 수 있다.
신호 처리부(180)는 수신부(170) 또는 인터페이스부(195)를 통해 수신된 컨텐츠가 출력부(110)를 통해 출력될 수 있도록 컨텐츠에 대한 신호처리를 수행한다.
구체적으로, 신호 처리부(180)는 컨텐츠에 포함된 영상에 대해 디코딩, 스케일링 및 프레임 레이트 변환 등의 동작을 수행하여, 디스플레이부(111)에서 출력 가능한 형태로 변환할 수 있다. 또한, 신호 처리부(180)는 컨텐츠에 포함된 오디오 신호에 대해 디코딩 등의 신호 처리를 수행하여 오디오 출력부(112)에서 출력 가능한 형태로 변환할 수 있다.
리모컨 신호 수신부(191)는 외부의 리모컨으로부터 입력되는 제어 신호를 수신한다. 제어부(150)는 리모컨 신호 수신부(191)에 입력된 제어 신호에 기초하여, 다양한 동작을 실행할 수 있다. 예를 들어, 제어부(150)는 리모컨 신호 수신부(191)로부터 입력된 제어 신호에 따라, 전원 온/오프, 채널 변경, 볼륨 조절 등의 동작을 실행할 수 있다.
입력부(193)는 다양한 사용자 명령을 입력받는다. 제어부(150)는 입력부(193)에서 입력된 사용자 명령에 대응되는 동작을 실행할 수 있다. 예를 들어, 제어부(150)는 입력부(193)에서 입력된 사용자 명령에 따라 전원 온/오프, 채널 변경, 볼륨 조절 등을 실행할 수 있다.
이를 위해, 입력부(193)는 입력 패널로 구현될 수 있다. 입력 패널은 터치패드(Touch Pad) 혹은 각종 기능키, 숫자키, 특수키, 문자키 등을 구비한 키패드(Key Pad) 또는 터치 스크린(Touch Screen) 방식으로 이루어질 수 있다.
인터페이스부(195)는 외부 장치(미도시)와 통신을 수행한다. 여기에서, 외부 기기(미도시)는 다양한 유형의 전자 장치로 구현되어, 디스플레이 장치(100)로 컨텐츠를 전송할 수 있다.
가령, 디스플레이 장치(100)가 TV로 구현된 경우, 외부 기기(미도시)는 셋탑박스, 음향 기기, 게임기 등과 같이 디스플레이 장치(100)에 연결되어 기능을 수행할 수 있는 다양한 형태의 전자 장치로 구현될 수 있다.
예를 들어, 인터페이스부(195)는 HDMI, USB 등의 각종 유선 통신 방식, 블루투스, 지그비 등의 무선 통신 방식에 따라 외부 기기(미도시)와 통신을 수행할 수 있다. 이를 위해, 인터페이스부(195)는 각 통신 방식에 대응되는 칩 또는 입력 포트 등을 구비할 수 있다. 예를 들어, HDMI 통신 방식에 따라 외부 기기(미도시)와 통신을 수행하는 경우, 인터페이스부(195)는 HDMI 포트를 구비할 수 있다.
도 4는 도 1에 도시된 제1 서버에 대한 블록도이다. 도 4에 도시된 바와 같이, 제1 서버(200)는 통신부(210) 및 제어부(220)를 포함한다.
통신부(210)는 디스플레이 장치(100)와 통신을 수행한다. 구체적으로, 통신부(210)는 디스플레이 장치(100)로부터 사용자의 음성을 수신하고, 사용자의 음성에 대응되는 텍스트 정보를 디스플레이 장치(100)로 전송할 수 있다. 이를 위해, 통신부(210)는 다양한 통신 모듈을 포함할 수 있다.
제어부(220)는 제1 서버(200)의 전반적인 동작을 제어한다. 특히, 제어부(220)는 디스플레이 장치(100)로부터 사용자의 음성이 수신되면, 사용자의 음성에 대응되는 텍스트 정보를 생성하고, 이를 디스플레이 장치(100)로 전송하도록 통신부(210)를 제어한다.
구체적으로, 제어부(220)는 STT(Speech to Text) 엔진을 이용하여, 사용자의 음성에 대응되는 텍스트 정보를 생성할 수 있다. 여기에서, STT 엔진은 음성 신호를 텍스트로 변환하기 위한 모듈로서, 종래 개시되어 있는 다양한 STT 알고리즘을 이용하여 음성 신호를 텍스트로 변환할 수 있다.
예를 들어, 제어부(220)는 수신된 사용자의 음성 내에서 사용자가 발화한 음성의 시작과 끝을 검출하여 음성 구간을 판단한다. 구체적으로, 제어부(220)는 수신된 음성 신호의 에너지를 계산하고, 계산된 에너지에 따라 음성 신호의 에너지 레벨을 분류하여, 동적 프로그래밍을 통해 음성 구간을 검출할 수 있다. 그리고, 제어부(220)은 검출된 음성 구간 내에서 음향 모델(Acoustic Model)을 기초로 음성의 최소 단위인 음소를 검출하여 음소 데이터를 생성하고, 생성된 음소 데이터에 HMM(Hidden Markov Model) 확률 모델을 적용하여 사용자의 음성을 텍스트로 변환할 수 있다.
도 5는 도 1에 도시된 제2 서버에 대한 블록도이다. 도 5에 도시된 바와 같이, 제2 서버(300)는 통신부(310), 저장부(320) 및 제어부(330)를 포함한다.
통신부(310)는 디스플레이 장치(100)와 통신을 수행한다. 구체적으로, 통신부(310)는 디스플레이 장치(100)로부터 텍스트 정보를 수신하고, 텍스트 정보에 대응되는 응답 정보를 디스플레이 장치(100)로 전송할 수 있다. 이를 위해, 통신부(310)는 다양한 통신 모듈을 포함할 수 있다.
또한, 통신부(310)는 웹 서버(미도시)에 연결되어 웹 브라우징을 수행할 수도 있다. 즉, 제어부(330)는 다양한 키워드를 통신부(310)를 통해 웹 서버(미도시)로 전송하여 웹 브라우징을 수행하고, 키워드에 따라 검색된 웹 검색을 수신할 수 있다.
저장부(320)는 디스플레이 장치(100)로부터 수신된 텍스트 정보에 대응되는 응답 정보를 생성하기 위한 다양한 정보를 저장한다.
구체적으로, 저장부(320)는 서비스 도메인별 대화 패턴을 저장한다. 여기에서, 서비스 도메인은 사용자가 발화한 음성이 속하는 주제에 따라 "방송", "VOD", "어플 관리", "기기 제어", "정보(날씨, 주식, 뉴스 등) 제공" 등으로 구분될 수 있다. 하지만, 이는 일 예일 뿐, 서비스 도메인은 상술한 주제 외에도 다양한 주제에 따라 구분될 수 있음은 물론이다.
보다 구체적으로, 저장부(320)는 각 서비스 도메인별 말뭉치(corpus) 데이터베이스를 구비할 수 있다. 여기에서, 말뭉치 데이터베이스는 예문 및 그에 대한 답변을 저장하는 형태로 구현될 수 있다.
즉, 저장부(320)는 각 서비스 도메인별로 복수의 예문 및 각 예문에 대한 답변을 저장할 수 있다. 또한, 저장부(320)는 예문을 해석하기 위한 정보 및 예문에 대응되는 답변을 각 예문마다 태깅(tagging)하여 저장할 수 있다.
예를 들어, 방송 서비스 도메인 내에 "○○○(방송 프로그램명)은 언제 해?"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"와 같은 예문에서 "○○○(방송 프로그램명)"은 방송 프로그램 명칭을 나타내며, "언제"는 방송 시간 문의를 나타내며, "해?"는 예문의 타입이 의문문인 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "~은 언제 해?"라는 형식을 갖는 예문의 앞부분에는 방송 프로그램과 관련된 단어가 배치된다는 정보를 해당 예문에 태깅하여 저장할 수 있다. 여기에서, 방송 프로그램과 관련된 단어는 방송 프로그램 명칭, 출연자, 연출자 등이 포함될 수 있다.
또한, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"에 대한 답변을 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"에 대한 답변으로 "문의하신 <방송 프로그램 명칭>의 방송 시간은 <방송 시간> 입니다"를 태깅하여 저장할 수 있다.
다른 예로, 방송 서비스 도메인 내에 "오늘 방송 뭐해?"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "오늘 방송 뭐해?"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "방송"은 방송 프로그램을 나타내며, "오늘", "방송", "뭐"는 오늘 방송되는 방송 프로그램 문의를 나타내며, "해?"는 예문의 타입이 의문문인 것은 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "~ 방송 뭐해?"라는 형식을 갖는 예문의 앞부분에는 방송 시간(가령, 지금, 내일 등)과 관련된 단어가 배치된다는 정보를 해당 예문에 태깅하여 저장할 수 있다.
또 다른 예로, 기기 제어 서비스 도메인 내에 "○번(채널 번호) 틀어줘"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "○번(채널 번호) 틀어줘"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○번(채널 번호) 틀어줘"와 같은 예문에서 "○번(채널 번호)"은 채널 번호를 나타내며, "틀어"는 채널 선국 명령을 나타내며, "줘"는 예문의 타입이 요청문인 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "~ 틀어줘"라는 형식을 갖는 예문의 앞부분에는 방송 프로그램과 관련된 단어가 배치된다는 정보를 해당 예문에 태깅하여 저장할 수 있다. 여기에서, 방송 프로그램과 관련된 단어는 채널 번호, 채널 명, 방송 프로그램명, 출연자, 연출자 등이 될 수 있다.
또한, 저장부(320)는 "○번(채널 번호) 틀어줘"에 대한 답변을 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○번(채널 번호)을 틀어줘"에 대한 답변으로 "<채널 번호>으로 채널을 변경하였습니다"를 태깅하여 저장할 수 있다.
또 다른 예로, 기기 제어 서비스 도메인 내에 "○○(어플리케이션 명칭) 실행해줘"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "○○(어플리케이션 명칭) 실행해줘"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○○(어플리케이션 명칭) 실행해줘"와 같은 예문에서 "○○(어플리케이션 명칭)"은 어플리케이션 명칭을 나타내며, "실행"는 어플리케이션 실행 명령을 나타내며, "줘"는 예문의 타입이 요청문인 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다.
또한, 저장부(320)는 "~ 실행해줘"라는 형식을 갖는 예문의 앞부분에는 디스플레이 장치(100)에서 실행가능한 기능과 관련된 단어가 배치된다는 정보를 해당 예문에 태깅하여 저장할 수 있다. 여기에서, 디스플레이 장치(100)에서 실행가능한 기능과 관련된 단어는 각종 어플리케이션 명칭, 화상 통화 등과 같이 디스플레이 장치(100)에서 실행 가능한 다양한 기능에 대한 명칭이 될 수 있다.
또 다른 예로, 기기 제어 서비스 도메인 내에 "더보기"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "더보기"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "더보기"와 같은 예문에 디스플레이 장치(100)에서 사용 가능한 음성에 대한 정보를 요청하는 발화 의도가 포함된 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다.
또한, 저장부(320)는 각 예문에 디스플레이 장치(100)를 제어하기 위한 제어 명령을 태깅하여 저장할 수 있다. 특히, 저장부(320)는 디스플레이 장치(100)를 제어하기 위한 사용자의 음성에 대응되는 예문에 디스플레이 장치(100)를 제어하기 위한 제어 명령을 태깅하여 저장할 수 있다.
상술한 예에서, 저장부(320)는 "○번(채널 번호) 틀어줘"와 같은 예문에 디스플레이 장치(100)의 채널을 ○번으로 변경하기 위한 제어 명령을 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "○○(어플리케이션 명칭) 실행해줘"와 같은 예문에 디스플레이 장치(100)에서 ○○(어플리케이션 명칭)을 실행하기 위한 제어 명령을 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "더보기"와 같은 예문에 디스플레이 장치(100)에서 사용 가능한 음성을 출력하기 위한 제어 명령을 태깅하여 저장할 수 있다.
한편, 저장부(320)에 저장되는 예문 및 그에 대한 답변에 대해 상술하였다. 하지만, 이는 일 예일 뿐이며, 서비스 도메인별로 다양한 예문 및 그에 대한 답변이 저장될 수 있음은 물론이다.
제어부(330)는 제2 서버(300)의 전반적인 동작을 제어한다. 특히, 디스플레이 장치(100)로부터 사용자의 음성에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 수신된 텍스트 정보에 대응하는 응답 정보를 생성하고, 생성된 응답 정보를 통신부(310)를 통해 디스플레이 장치(100)로 전송하도록 제어할 수 있다.
구체적으로, 제어부(330)는 텍스트 정보를 분석하여 사용자의 음성에 포함된 발화 의도를 판단하고, 판단된 발화 의도에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송하도록 통신부(310)를 제어할 수 있다.
이를 위해, 제어부(330)는 수신된 텍스트 정보에 매칭되는 대화 패턴이 존재하는 말뭉치 데이터베이스를 검출하여, 사용자의 음성이 속하는 서비스 도메인을 판단할 수 있다.
구체적으로, 제어부(330)는 수신된 텍스트 정보를 각 서비스 도메인별로 저장된 예문과 비교하고, 수신된 텍스트 정보에 매칭되는 예문이 속하는 서비스 도메인을 사용자의 음성이 속하는 서비스 도메인으로 판단할 수 있다.
예를 들어, 제어부(320)는 디스플레이 장치(100)로부터 "○○○(방송 프로그램명)은 언제 해?" 또는 "오늘 방송 뭐해?"라는 텍스트가 수신되면 디스플레이 장치(100)에서 수집한 사용자의 음성이 방송 서비스 도메인에 속하는 것으로 판단할 수 있다. 또한, 제어부(320)는 디스플레이 장치(100)로부터 "○번(채널 번호) 틀어줘" 또는 "○○(어플리케이션 명칭)을 실행해줘"라는 텍스트가 수신되면 디스플레이 장치(100)에서 수집한 사용자의 음성이 기기 제어 서비스 도메인에 속하는 것으로 판단할 수 있다.
한편, 제어부(330)는 수신된 텍스트 정보에 매칭되는 예문이 존재하지 않는 경우, 통계적으로 사용자의 음성이 속하는 도메인을 판단할 수 있다.
예를 들어, 디스플레이 장치(100)가 "○번(채널 번호) 틀어주세요"을 수집하고, 수집된 사용자의 음성에 대한 텍스트를 제2 서버(300)로 전송한 경우를 가정한다. 이 경우, 제어부(330)는 HMM(Hidden Markov Model), CRF(Condition Random Fields), SVM(Support Vector Machine) 등의 분류 모델을 사용하여 사용자의 음성이 "○번(채널 번호) 틀어줘"와 통계적으로 유사한 것으로 판단하고, "○번(채널 번호) 틀어주세요"는 기기 제어 서비스 도메인에 속하는 것으로 판단할 수 있다.
그리고, 제어부(330)는 기저장된 예문과 통계적으로 유사한 것으로 판단된 텍스트 정보를 저장할 수도 있다. 이 경우, 제어부(330)는 텍스트 정보를 통계적으로 유사한 예문이 속하는 서비스 도메인의 또 다른 예문으로 저장할 수 있다. 또한, 제어부(330)는 기저장된 예문을 참조하여, 새롭게 저장되는 예문을 해석하기 위한 정보 및 그에 대응되는 답변을 새롭게 저장되는 예문에 태깅하여 저장할 수 있다.
예를 들어, "○번(채널 번호) 틀어주세요"를 새로운 예문으로 저장하는 경우를 가정한다.
이 경우, 제어부(330)는 "○번(채널 번호) 틀어줘"를 참조하여 "○번(채널 번호) 틀어주세요"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 제어부(330)는 "○번(채널 번호) 틀어주세요"와 같은 예문에서 "○번(채널 번호)"은 채널 번호를 나타내며, "틀어"는 채널 선국 명령을 나타내며, "주세요"는 예문의 타입이 요청문인 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "~ 틀어주세요"라는 형식을 갖는 예문의 앞부분에는 방송 프로그램과 관련된 단어가 배치된다는 정보를 해당 예문에 태깅하여 저장할 수 있다. 여기에서, 방송 프로그램과 관련된 단어는 채널 번호, 방송국명, 방송 프로그램명, 출연자, 연출자 등이 될 수 있다.
또한, 저장부(320)는 "○번(채널 번호) 틀어주세요"에 대한 답변을 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○번(채널 번호을 틀어주세요"에 대한 답변으로 "<채널 번호>으로 채널을 변경하였습니다"를 태깅하여 저장할 수 있다.
한편, 제어부(330)는 디스플레이 장치(100)로부터 수신된 텍스트 정보에 매칭되는 예문이 복수 개 존재하고 이들이 서로 다른 서비스 도메인에 속하는 경우, 통계적으로 분석하여 사용자의 음성이 속하는 서비스 도메인으로 판단할 수 있다.
구체적으로, 제어부(330)는 디스플레이 장치(100)로부터 수신된 텍스트 정보를 구성하는 단어(또는, 형태소)가 각 서비스 도메인 내에서 존재하는 빈도수에 기초하여 각 단어(또는, 형태소)에 가중치를 부여하고, 부여된 가중치를 고려하여 사용자의 음성이 속하는 서비스 도메인으로 판단할 수 있다.
예를 들어, "○○○(방송 프로그램 명칭) 틀어줘"라는 예문이 방송 서비스 도메인 및 VOD 서비스 도메인에 각각 저장된 상태에서, "○○○(방송 프로그램 명칭) 틀어줘"와 같은 텍스트가 디스플레이 장치(100)로부터 수신된 경우를 가정한다.
이 경우, 제어부(330)는 "○○○(방송 프로그램 명칭) 틀어줘"에 매칭되는 예문이 방송 서비스 도메인 및 VOD 서비스 도메인에 존재하는 것으로 판단하고, "○○○(방송 프로그램 명칭) 틀어줘"를 구성하는 단어(또는, 형태소)인 "틀어" 및 "줘"가 각 서비스 도메인 내에서 존재하는 빈도수에 기초하여 각 서비스 도메인 별로 "틀어" 및 "줘"에 가중치를 부여할 수 있다.
예를 들어, 제어부(330)는 방송 서비스 도메인 내에 저장된 전체 예문들 중에서 "틀어"를 포함하는 예문이 차지하는 비율을 방송 서비스 도메인에서 "틀어"의 가중치로 산출하고, 방송 서비스 도메인 내에 저장된 전체 예문들 중에서 "줘"를 포함하는 예문이 차지하는 비율을 방송 서비스 도메인에서 "줘"의 가중치로 산출할 수 있다.
이와 마찬가지 방법으로, 제어부(330)는 VOD 서비스 도메인 내에 저장된 전체 예문들 중에서 "틀어"를 포함하는 예문이 차지하는 비율을 VOD 서비스 도메인에서 "틀어"의 가중치로 산출하고, VOD 서비스 도메인 내에 저장된 전체 예문들 중에서 "줘"를 포함하는 예문이 차지하는 비율을 VOD 서비스 도메인에서 "줘"의 가중치로 산출할 수 있다.
이후, 제어부(330)는 각 단어에 대해 부여된 가중치를 연산하여 사용자의 음성이 속하는 서비스 도메인을 판단할 수 있다. 상술한 예에서, 제어부(330)는 방송 서비스 도메인 내에서 "틀어"와 "줘" 각각에 부여된 가중치를 서로 곱한 결과와 VOD 서비스 도메인 내에서 "틀어"와 "줘" 각각에 부여된 가중치를 서로 곱한 결과를 비교하고, 결과값이 큰 서비스 도메인에 사용자의 음성이 속하는 것으로 판단할 수 있다.
즉, 제어부(330)는 방송 서비스 도메인 내에서 부여된 가중치에 기초하여 산출된 결과값이 VOD 서비스 도메인 내에서 부여된 가중치에 기초하여 산출된 결과값보다 큰 경우, "○○○(방송 프로그램 명칭) 틀어줘"는 방송 서비스 도메인에 속하는 것으로 판단할 수 있다. 이와 반대로, 제어부(330)는 VOD 서비스 도메인 내에서 부여된 가중치에 기초하여 산출된 결과값이 방송 서비스 도메인 내에서 부여된 가중치에 기초하여 산출된 결과값보다 큰 경우, "○○○(방송 프로그램 명칭)을 틀어줘"는 VOD 서비스 도메인에 속하는 것으로 판단할 수 있다.
하지만, 이는 일 예일 뿐이며 제어부(330)는 다양한 방식을 통해 통계적으로 사용자의 음성이 속하는 서비스 도메인을 판단할 수 있다.
이후, 제어부(330)는 사용자의 음성이 속하는 서비스 도메인에 기초하여, 사용자의 음성으로부터 화행(dialogue act), 주행(main action) 및 구성요소(component slot)(또는, 개체명)를 추출한다.
여기에서, 화행은 문장의 형태와 관련된 분류 기준으로, 해당 문장이 서술문(Statement), 요청문(Request) 또는 의문문(Question)인지를 나타내는 것이다.
주행은 해당 발화가 특정 도메인에서 대화를 통해 원하는 행위를 나타내는 의미적 정보이다. 예를 들어, 방송 서비스 도메인에서, 주행은 TV 전원 온/오프, 방송 프로그램 찾기, 방송 프로그램 시간 찾기, 방송 프로그램 예약 등을 포함할 수 있다. 다른 예로, 기기 제어 도메인에서, 주행은 기기 전원 온/오프, 재생, 일시 정지 등을 포함할 수 있다.
구성요소는 발화에 나타나는 특정 도메인에 대한 개체 정보 즉, 특정 도메인에서 의도하는 행동의 의미를 구체화하기 위해서 부가되는 정보이다. 예를 들어, 방송 서비스 도메인에서 구성요소는 장르, 방송 프로그램명, 방송 시간, 채널명, 배우 이름 등을 포함할 수 있으며, 기기 제어 서비스 도메인에서 구성요소는 외부 기기 명칭, 제조사 등을 포함할 수 있다.
그리고, 제어부(330)는 추출된 화행, 주행 및 구성요소를 이용하여 사용자의 음성에 포함된 발화 의도를 판단하고, 판단된 발화 의도에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
여기에서, 응답 정보는 디스플레이 장치(100)에서 시스템 응답을 출력하기 위한 시스템 응답 정보를 포함한다. 이를 위해, 제어부(330)는 판단된 발화 의도에 대한 답변을 저장부(320)에서 추출하고, 추출된 답변을 텍스트로 변환하여 시스템 응답 정보를 생성할 수 있다. 또한, 제어부(330)는 판단된 발화 의도에 대응되는 정보를 검색하고, 검색된 정보를 이용하여 시스템 응답 정보를 생성할 수 있다.
또한, 응답 정보는 사용자의 음성에 대응되는 기능을 실행하기 위한 제어 명령을 포함할 수 있다. 여기에서, 제어 명령은 사용자의 음성에 대응되는 기능을 수행하도록 디스플레이 장치(100)를 제어하기 위한 제어 명령을 포함할 수 있다. 이를 위해, 제어부(330)는 판단된 발화 의도에 대응되는 제어 명령을 생성하고, 생성된 제어 명령을 디스플레이 장치(100)로 전송하도록 제어할 수 있다.
이하에서는, 제어부(330)가 사용자의 음성에 대응되는 응답 정보를 생성하는 보다 구체적인 방법을 예를 들어 설명하도록 한다.
먼저, 제어부(330)는 사용자의 음성과 매칭되는 예문 또는 사용자의 음성과 통계적으로 유사한 것으로 판단된 예문에 태깅된 정보를 이용하여, 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 사용자의 음성에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
예를 들어, 디스플레이 장치(100)로부터 텍스트 "○○○(방송 프로그램 명칭)은 언제 해?"가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 수신된 텍스트가 방송 서비스 도메인에 속하는 것으로 판단하고, 방송 서비스 도메인 내에서 수신된 텍스트와 매칭되는 예문인 "○○○(방송 프로그램명)은 언제 해?"에 태깅된 정보를 이용하여 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
즉, 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램 명칭)은 언제 해?"에는 예문을 해석하기 위한 정보로, "○○○(방송 프로그램 명칭)"은 방송 프로그램을 나타내고, "언제"는 방송 시간 문의를 나타내며, "해?"는 예문의 타입이 의문문인 것을 나타내는 정보가 태깅되어 있다. 따라서, 제어부(330)는 이들 정보를 참조하여 디스플레이 장치(100)로부터 수신된 텍스트 "○○○(방송 프로그램 명칭)은 언제 해?"의 화행은 의문문이고 주행은 방송 시간 문의이고 구성요소는 ○○○(방송 프로그램 명칭)인 것으로 판단할 수 있다. 그에 따라, 제어부(330)는 사용자의 음성에 포함된 발화 의도는 "○○○"에 대한 "방송 시간"을 "문의"하는 것으로 판단할 수 있다.
또한, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램 명칭)은 언제 해?"에 태깅된 답변을 저장부(320)에서 검색하고, 태깅된 답변을 이용하여 시스템 응답 정보를 생성할 수 있다.
즉, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램 명칭)은 언제 해?"에 태깅된 답변인 "문의하신 <방송 프로그램 명칭>의 방송 시간은 <방송 시간> 입니다"를 사용자의 음성에 대응되는 답변으로 검색한다.
이 경우, 제어부(330)는 검색된 답변에 포함된 블랭크를 완성하여, 완전한 형태의 문장을 생성할 수 있다.
예를 들어, 제어부(330)는 "문의하신 <방송 프로그램 명칭>의 방송 시간은 <방송 시간> 입니다"와 같은 답변에서 블랭크 <방송 프로그램 명>는 방송 프로그램명인 "○○○(방송 프로그램 명칭)"을 기입할 수 있다. 그리고, 제어부(330)는 EPG(Electronic Program Guide) 정보를 통해 "○○○(방송 프로그램 명칭)"의 방송 시간을 검색하고 검색된 방송 시간을 또 다른 블랭크인 <방송 시간>에 기입할 수 있다. 이에 따라, 제어부(330)는 "문의하신 ○○○(방송 프로그램 명칭)의 방송 시간은 토요일 7시입니다"라는 완전한 형태의 문장을 사용자의 음성에 대응되는 시스템 응답 정보로 생성하고, 생성된 시스템 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 시스템 응답 정보에 기초하여, "문의하신 ○○○(방송 프로그램명)의 방송 시간은 토요일 7시입니다"를 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
다른 예로, 디스플레이 장치(100)로부터 텍스트 "오늘 방송 뭐해?"가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 수신된 텍스트가 방송 서비스 도메인에 속하는 것으로 판단하고, 방송 서비스 도메인 내에서 수신된 텍스트와 매칭되는 예문인 "오늘 방송 뭐해?"에 태깅된 정보를 이용하여 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
즉, 방송 서비스 도메인에 저장된 예문인 "오늘 방송 뭐해?"에는 예문을 해석하기 위한 정보로, "방송"은 방송 프로그램을 나타내고, "오늘", "방송", "뭐해"는 오늘 방송되는 방송 프로그램 문의를 나타내며, "해?"는 예문의 타입이 의문문인 것을 나타내는 정보가 태깅되어 있다. 따라서, 제어부(330)는 이들 정보를 참조하여 디스플레이 장치(100)로부터 수신된 텍스트 "오늘 방송 뭐해?"의 화행은 의문문이고 주행은 오늘 방송되는 방송 프로그램 문의이고 구성요소는 방송 프로그램인 것으로 판단할 수 있다. 이에 따라, 제어부(330)는 사용자의 음성에 포함된 발화 의도는 "오늘" 방송되는 "방송 프로그램"을 "문의"하는 것으로 판단할 수 있다.
이 경우, 제어부(330)는 EPG 정보를 참조하여 오늘 방송하는 방송 프로그램을 검색하고, 검색된 방송 프로그램에 대한 정보(가령, 컨텐츠 명칭, 장르, 방송 시간, 출연진, 컨텐츠에 대한 썸네일 이미지, 컨텐츠가 방송되는 채널명, 제작진 등 중 적어도 하나)를 디스플레이 장치(100)로 전송하도록 통신부(310)를 제어할 수 있다.
또한, 제어부(330)는 판단된 발화 의도에 대한 정보를 디스플레이 장치(100로 전송하도록 통신부(310)를 제어할 수도 있다. 즉, 제어부(330)는 사용자의 발화 의도가 오늘 방송하는 방송 프로그램에 대한 정보를 문의하는 것으로 판단된 경우, 오늘 방송하는 방송 프로그램에 대한 리스트를 출력하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
또한, 제어부(330)는 검색된 방송 프로그램에 대한 정보 및 판단된 발화 의도에 대한 정보를 함께 디스플레이 장치(100)로 전송하도록 제어할 수도 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 정보에 기초하여, 오늘 방송하는 방송 프로그램에 대한 리스트를 음성 및 UI 화면 중 하나의 형태로 출력할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 텍스트 "○번(채널 번호) 틀어줘"가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 수신된 텍스트가 기기 제어 도메인에 속하는 것으로 판단하고, 기기 제어 서비스 도메인 내에서 수신된 텍스트와 매칭되는 예문인 "○번(채널 번호) 틀어줘"에 태깅된 정보를 이용하여 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
즉, 기기 제어 서비스 도메인에 저장된 예문인 "○번(채널 번호) 틀어줘"에는 예문을 해석하기 위한 정보로, "○번(채널 번호)"은 채널 번호를 나타내고, "틀어"는 방송 선국 명령을 나타내며, "줘"는 예문의 타입이 요청문인 것을 나타내는 정보가 태깅되어 있다. 따라서, 제어부(330)는 이들 정보를 참조하여 디스플레이 장치(100)로부터 수신된 텍스트 "○번(채널 번호)을 틀어줘"의 화행은 요청문이고 주행은 방송 선국 명령이고 구성요소는 ○번(채널 번호)인 것으로 판단할 수 있다. 그에 따라, 제어부(330)는 사용자의 음성에 포함된 발화 의도는 "○번"에 대한 "방송 선국"을 "요청"하는 것으로 판단할 수 있다.
또한, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○번(채널 번호) 틀어줘"에 태깅된 답변을 저장부(320)에서 검색하고, 태깅된 답변을 이용하여 응답 정보를 생성할 수 있다.
즉, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○번(채널 번호) 틀어줘"에 태깅된 답변인 "<채널 번호>으로 채널을 변경하였습니다"를 사용자의 음성에 대응되는 답변으로 검색한다.
이 경우, 제어부(330)는 검색된 답변에 포함된 블랭크를 완성하여, 완전한 형태의 문장을 생성할 수 있다.
예를 들어, 제어부(330)는 "<채널 번호>으로 채널을 변경하였습니다"와 같은 답변에서 블랭크 <채널 번호>는 채널 번호인 "○번(채널 번호)"을 기입할 수 있다. 이에 따라, 제어부(330) "○번으로 채널을 변경하였습니다 "라는 완전한 형태의 문장을 사용자의 음성에 대응되는 시스템 응답 정보로 생성하고, 생성된 시스템 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
또한, 제어부(330)는 기기 제어 도메인에 저장된 예문인 "○번(채널 번호)을 틀어줘"에 태깅된 제어 명령을 저장부(320)에서 검색하고, 태깅된 제어 명령을 디스플레이 장치(100)로 전송하도록 제어할 수 있다. 즉, 제어부(330)는 기기 제어 도메인에 저장된 예문인 "○번(채널 번호)을 틀어줘"에 태깅된 디스플레이 장치(100)의 채널을 ○번으로 변경하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 제어 명령에 기초하여 ○번으로 채널을 변경하고, 제2 서버(300)로부터 수신된 시스템 응답 정보에 기초하여 "○번으로 채널을 변경하였습니다"를 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
한편, 상술한 예에서, 제어부(330)가 예문에 태깅된 제어 명령에 기초하여 디스플레이 장치(100)의 기능을 실행시키기 위한 제어 명령을 생성하는 것으로 설명하였으나 이는 일 예에 불과하다.
즉, 제어부(330)는 판단된 발화 의도에 기초하여 제어 명령을 생성하고, 이를 디스플레이 장치(100)로 전송할 수 있다. 예를 들어, 제어부(330)는 사용자의 발화 의도가 ○번에 대한 방송 선국을 요청인 것으로 판단된 경우, ○번으로 채널을 변경하기 위한 제어 명령을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
또한, 상술한 예에서, 제어부(330)는 디스플레이 장치(100)의 기능을 실행하기 위한 제어 명령 전송 시, 시스템 응답을 출력하기 위한 시스템 응답 정보를 함께 전송하는 것으로 설명하였으나 이는 일 예에 불과하다. 즉, 제어부(330)는 사용자의 발화 의도에 따라 디스플레이 장치(100)의 기능을 실행하기 위한 제어 명령만을 디스플레이 장치(100)로 전송할 수도 있다.
이 경우, 디스플레이 장치(100)는 별도의 시스템 응답을 출력하지 않거나, 디스플레이 장치(100) 내에 기저장된 데이터를 이용하여 시스템 응답을 출력할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 텍스트 "○○(어플리케이션 명칭) 실행해줘"가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 수신된 텍스트가 기기 제어 도메인에 속하는 것으로 판단하고, 기기 제어 서비스 도메인 내에서 수신된 텍스트와 매칭되는 예문인 "○○(어플리케이션 명칭) 실행해줘"에 태깅된 정보를 이용하여 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
즉, 기기 제어 서비스 도메인에 저장된 예문인 "○○(어플리케이션 명칭) 실행해줘"에는 예문을 해석하기 위한 정보로, "○○(어플리케이션 명칭)"은 어플리케이션 명칭을 나타내고, "실행"은 어플리케이션 실행 명령을 나타내며, "해줘"는 예문의 타입이 요청문인 것을 나타내는 정보가 태깅되어 있다. 따라서, 제어부(330)는 이들 정보를 참조하여 디스플레이 장치(100)로부터 수신된 텍스트 "○○(어플리케이션 명칭) 실행해줘"의 화행은 요청문이고 주행은 어플리케이션 실행 명령이고 구성요소는 ○○(어플리케이션 명칭)인 것으로 판단할 수 있다. 그에 따라, 제어부(330)는 사용자의 음성에 포함된 발화 의도는 "○○(어플리케이션 명칭)"에 대한 "어플리케이션 실행"을 "요청"하는 것으로 판단할 수 있다.
이 경우, 제어부(330)는 기기 제어 도메인에 저장된 예문인 "○○(어플리케이션 명칭) 실행해줘"에 태깅된 제어 명령을 저장부(320)에서 검색하고, 태깅된 제어 명령을 디스플레이 장치(100)로 전송하도록 제어할 수 있다. 즉, 제어부(330)는 기기 제어 도메인에 저장된 예문인 "○○(어플리케이션 명칭) 실행해줘"에 태깅된 디스플레이 장치(100)에서 ○○(어플리케이션 명칭)을 실행하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 제어 명령에 기초하여 ○○(어플리케이션 명칭)을 실행할 수 있다.
한편, 상술한 예에서, 제어부(330)가 예문에 태깅된 제어 명령에 기초하여 디스플레이 장치(100)의 기능을 실행시키기 위한 제어 명령을 생성하는 것으로 설명하였으나 이는 일 예에 불과하다.
즉, 제어부(330)는 판단된 발화 의도에 기초하여 제어 명령을 생성하고, 이를 디스플레이 장치(100)로 전송할 수 있다. 예를 들어, 제어부(330)는 사용자의 발화 의도가 ○○(어플리케이션 명칭)에 대한 실행의 요청인 것으로 판단된 경우, ○○(어플리케이션 명칭)을 실행하기 위한 제어 명령을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
한편, 제어부(330)는 사용자의 음성과 통계적으로 유사한 것으로 예문에 태깅된 정보를 이용하여, 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
예를 들어, 디스플레이 장치(100)로부터 텍스트 "△△△(방송 프로그램명)은 언제 해?"가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 텍스트 "△△△(방송 프로그램명)은 언제 해?"는 방송 서비스 도메인 내에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"와 통계적으로 유사한 것으로 판단할 수 있다. 이에 따라, 제어부(330)는 방송 서비스 도메인 내에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"에 태깅된 정보를 이용하여 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
즉, 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"에는 예문을 해석하기 위한 정보로, "~은 언제 해?"의 앞부분에는 방송 프로그램과 관련된 단어가 배치된다는 정보가 태깅되어 있다. 따라서, 제어부(330)는 방송 프로그램과 관련된 단어인 방송 프로그램명, 출연자, 연출자 등 중에서 "△△△(방송 프로그램명)"가 어떠한 의미를 갖는 단어인지 검색한다.
이를 위해, 저장부(320)는 각 서비스 도메인 별로 구성요소에 대한 정보를 저장하는 개체명 사전 또는 TIMEX 사전 등을 포함할 수 있다.
즉, 제어부(330)는 개체명 사전 또는 TIMEX 사전 등을 참조하여 "△△△(방송 프로그램명)"가 어떠한 의미를 갖는 단어인지를 검색하여, "△△△(방송 프로그램명)"가 방송 프로그램명을 나타내는 단어인 것으로 판단할 수 있다.
다만, 이는 일 예일 뿐, 제어부(330)는 EPG 정보 등을 이용하여 "△△△(방송 프로그램명)"가 어떠한 의미를 갖는 단어인지를 검색할 수도 있고, 기저장된 예문과 CRF(Conditional Random Field)를 이용하여 "△△△(방송 프로그램명)"가 어떠한 의미를 갖는 단어인지를 검색할 수도 있다.
이에 따라, 제어부(330)는 디스플레이 장치(100)로부터 수신된 텍스트 "△△△(방송 프로그램명)은 언제 해?"의 화행은 의문문이고 주행은 방송 시간 문의이고 구성요소는 △△△(방송 프로그램명)인 것으로 판단할 수 있다. 그리고, 제어부(330)는 사용자의 음성에 포함된 발화 의도는 "△△△에 대한 "방송 시간"을 "문의"하는 것으로 판단할 수 있다.
또한, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"에 태깅된 답변을 이용하여, "△△△(방송 프로그램명)은 언제 해?"에 대한 시스템 응답 정보를 생성하고, 생성된 시스템 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
즉, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"에 태깅된 답변인 "문의하신 <방송 프로그램 명>의 방송 시간은 <방송 시간> 입니다"를 사용자의 음성에 대응되는 답변으로 검색한다. 그리고, 제어부(330)는 "문의하신 △△△(방송 프로그램명)의 방송 시간은 수요일 11시입니다"라는 완전한 형태의 문장을 사용자의 음성에 대응되는 시스템 응답 정보로 생성하고, 생성된 시스템 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
한편, 제어부(330)는 디스플레이 장치(100)에서 출력되는 시스템 응답의 일부 문장 데이터를 저장하고 있는 경우, 해당 문장을 완성시키기 위한 일부 텍스트만을 디스플레이 장치(100)로 전송하도록 제어할 수 있다.
예를 들어, 디스플레이 장치(100)에 "문의하신 <방송 프로그램 명>의 방송 시간은 <방송 시간> 입니다"와 같은 답변이 기저장된 경우, 제어부(330)는 디스플레이 장치(100)에 저장된 답변을 완전한 형태의 문장으로 구성하기 위해 사용자가 문의하는 방송 프로그램 명 및 그의 방송 시간을 텍스트 형태로 디스플레이 장치(100)로 전송하도록 제어할 수 있다. 이 경우, 제어부(330)는 디스플레이 장치(100)에 기저장된 답변을 출력하기 위한 별도의 제어 신호를 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 텍스트를 기저장된 답변에 기입하여 "문의하신 ○○○(방송 프로그램명)의 방송 시간은 토요일 7시입니다"를 시스템 응답으로 출력할 수 있다.
한편, 상술한 실시 예에서, 제어부(330)는 예문에 태깅된 정보를 이용하여 화행, 주행 및 구성요소를 추출하는 것으로 설명하였으나 이는 일 예에 불과하다. 즉, 제어부(330)는 사용자의 음성에서 MaxEnt(Maximum Entropy Classifier)를 이용하여 화행, 주행을 추출하고, CRF(Conditional Random Field)를 이용하여 구성요소를 추출할 수도 있다.
하지만, 이들 실시 예에 한정되는 것은 아니며 제어부(330)는 이미 공지된 다양한 방식을 통해 사용자의 음성으로부터 화행, 주행 및 구성요소를 추출할 수도 있다.
한편, 제어부(330)는 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 없는 경우, 이전에 수신된 사용자의 음성에 참조하여, 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 있다.
구체적으로, 제어부(330)는 이전에 수신된 사용자의 음성이 속하는 서비스 도메인을 기초로 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 없는 경우, 이전에 수신된 사용자의 음성에 참조하여, 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 있다.
예를 들어, 제어부(330)는 현재 수신된 사용자의 음성을 말뭉치 데이터베이스에 저장된 대화 패턴과 비교하여 현재 수신된 사용자의 음성이 대화 패턴에서 최초 사용자 발화에 해당하는지 여부를 판단하고, 최초 사용자 발화에 해당하지 않는 것으로 판단되면 이전에 수신된 사용자의 음성을 참조하여 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 있다.
이를 위해, 저장부(320)는 각 서비스 도메인에서 각 예문을 계층적으로 저장할 수 있다. 즉, 저장부(320)는 각 서비스 도메인에서 사용자가 최초로 발화할 수 있는 사용자의 음성에 매칭되는 예문을 최상위 계층으로 저장하고, 사용자가 이후 발화할 수 있는 사용자의 음성에 매칭되는 예문을 계층적으로 저장할 수 있다.
예를 들어, 저장부(320)는 방송 서비스 도메인 내에서 "오늘 방송 뭐해?"를 최상위 계층으로 저장하고, "세 번째", "세 번째 상세 정보 보여줘", "이 중에서 ○○○(채널명)은 뭐해?", "이 중에서 다큐멘터리 프로는 뭐야?", "이 중에서 ○○○(출연자 이름)이 출연하는 거 찾아줘", "이 중에서 ○○○(방송 프로그램 명칭) 찾아줘" 등과 같은 예문을 "오늘 방송 뭐해?"에 대한 하위 계층으로 저장할 수 있다.
다른 예로, 저장부(320)는 기기 제어 도메인 내에서 "○○○(어플리케이션 명칭) 실행해줘"를 최상위 계층으로 저장할 수 있다. 여기에서, ○○○(어플리케이션 명칭)이 웹 브라우징 어플리케이션인 경우, 저장부(320)는 "홈 페이지", "즐겨 찾기", "새로 고침", "새 페이지 열기", "현재 페이지 닫기", "뒤로", "앞으로", "종료"와 같이 웹 브라우징 어플리케이션에서 실행 가능한 예문을 "○○○(어플리케이션 명칭) 실행해줘"에 대한 하위 계층으로 저장할 수 있다.
한편, 이하에서는 이전에 수신된 사용자의 음성에 참조하여, 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단하는 방법을 구체적인 예를 들어 설명하도록 한다.
먼저, "오늘 방송 뭐해?"라는 사용자의 음성이 입력된 후, "이 중에서 ○○○(채널명)에서 뭐해?"라는 사용자의 음성이 입력된 경우를 가정한다. 이 경우, 제어부(330)는 "이 중에서 ○○○(채널명)에서 뭐해?"라는 사용자의 음성이 방송 서비스 도메인 내에서 최초 사용자 발화에 해당되지 않는 것으로 판단되면, 이전에 수신된 "오늘 방송 뭐해?"라는 사용자 음성에 기초하여, "이 중에서 ○○○(채널명)에서 뭐해?"의 발화 의도를 판단할 수 있다.
즉, 제어부(330)는 이전에 수신된 사용자 음성인 "오늘 방송 뭐해?"를 이용하여 "이 중에서 ○○○(채널명)에서 뭐해?"의 발화 의도를 오늘 방송하는 프로그램 중 "○○○(채널명)"에서 방송되는 "방송 프로그램"을 "문의"하는 것으로 판단할 수 있다.
이에 따라, 제어부(330)는 판단된 발화 의도에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다. 즉, 상술한 예에서, 제어부(330)는 판단된 발화 의도에 따라, 오늘 방송하는 프로그램 중 ○○○(채널명)에서 방송되는 방송 프로그램을 검색하고, 검색된 방송 프로그램에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다.
또한, "오늘 방송 뭐해?"라는 사용자의 음성이 입력된 후, "세 번째"라는 사용자의 음성이 입력된 경우를 가정한다. 이 경우, 제어부(330)는 "세 번째"라는 사용자의 음성이 방송 서비스 도메인 내에서 최초 사용자 발화에 해당되지 않는 것으로 판단되면, 이전에 수신된 "오늘 방송 뭐해?"라는 사용자 음성에 기초하여, "세 번째"의 발화 의도를 판단할 수 있다.
구체적으로, 제어부(330)는 이전에 수신된 사용자 음성인 "오늘 방송 뭐해?"에 따라 디스플레이 장치(100)에서 출력된 방송 프로그램에 대한 리스트에서 "세 번째"에 배치된 "방송 프로그램"에 대한 "선국"을 "요청"하는 것으로 판단할 수 있다. 이에 따라, 제어부(330)는 판단된 발화 의도에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다. 즉, 상술한 예에서, 제어부(330)는 판단된 발화 의도에 따라, 디스플레이 장치(100)에서 출력된 방송 프로그램에 대한 리스트에서 세 번째 배치된 방송 프로그램을 선국하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
한편, 상술한 예에서는 "오늘 방송 뭐해?"라는 사용자의 음성이 입력된 후, "이 중에서 ○○○(채널명)에서 뭐해?" 및 "세 번째"리는 사용자의 음성이 수신된 경우를 가정하였으나, 이는 일 예일 뿐이다. 즉, 이들 예외에도 계층적으로 다양한 예문이 이전에 수신된 사용자의 음성에 기초하여 해석될 수 있음은 물론이다.
또 다른 예로, "○○○(웹 브라우징 어플리케이션 명칭) 실행해줘"라는 사용자의 음성이 입력된 후, "새로 고침"이라는 사용자의 음성이 입력된 경우를 가정한다. 이 경우, 제어부(330)는 "새로 고침"이라는 사용자의 음성이 기기 제어 서비스 도메인 내에서 최초 사용자 발화에 해당되지 않는 것으로 판단되면, 이전에 수신된 "○○○(웹 브라우징 어플리케이션 명칭) 실행해줘"라는 사용자의 음성에 기초하여 "새로 고침"의 발화 의도를 판단할 수 있다.
즉, 제어부(330)는 이전에 수신된 사용자의 음성인 "○○○(웹 브라우징 어플리케이션 명칭) 실행해줘"를 이용하여 "새로 고침"의 발화 의도를 "웹 브라우징 화면"에 대한 "새로 고침"을 "요청"하는 것으로 판단할 수 있다.
이에 따라, 제어부(330)는 판단된 발화 의도에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다. 즉, 상술한 예에서, 제어부(330)는 판단된 발화 의도에 따라, 웹 브라우징 화면에 대한 새로 고침이 실행하도록 하는 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
한편, 상술한 예에서는 "○○○(웹 브라우징 어플리케이션 명칭) 실행해줘"라는 사용자의 음성이 입력된 후, "새로 고침"이라는 사용자의 음성이 수신된 경우를 가정하였으나, 이는 일 예일 뿐이다. 즉, 이들 예외에도 계층적으로 다양한 예문이 이전에 수신된 사용자의 음성에 기초하여 해석될 수 있음은 물론이다.
또한, 상술한 예에서, 제어부(330)가 현재 수신된 사용자의 음성이 대화 패턴에서 최초 사용자 발화에 해당하는지 여부를 판단하고, 최초 사용자 발화에 해당하지 않는 것으로 판단되면 이전에 수신된 사용자의 음성을 참조하여 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단하는 것으로 설명하였으나, 이는 일 예에 불과하다.
즉, 제어부(330)는 이전에 수신된 사용자의 음성이 포함된 서비스 도메인에 기초하여, 현재 수신된 사용자의 음성에 포함된 발화 의도를 판단할 수 없는 경우에도 이전에 수신된 사용자의 음성을 이용할 수 있다.
예를 들어, "오늘 방송 뭐해?"라는 사용자의 음성이 입력된 후, "이 중에서 ○○○(채널명)에서 뭐해?"라는 사용자의 음성이 입력된 경우를 가정한다. 이 경우, 제어부(330)는 방송 서비스 도메인 내에서 "이 중에서 ○○○(채널명)에서 뭐해?"라는 사용자의 음성에 포함된 발화 의도를 판단할 수 없으므로, 이전에 수신된 "오늘 방송 뭐해?"라는 사용자 음성에 기초하여, "이 중에서 ○○○(채널명)에서 뭐해?"의 발화 의도를 판단할 수 있다.
즉, 제어부(330)는 이전에 수신된 사용자 음성인 "오늘 방송 뭐해?"를 이용하여 "이 중에서 ○○○(채널명)에서 뭐해?"의 발화 의도를 오늘 방송하는 프로그램 중 "○○○(채널명)"에서 방송되는 "방송 프로그램"을 "문의"하는 것으로 판단할 수 있다.
다른 예로, 제어부(330)는 "○○○(웹 브라우징 어플리케이션 명칭) 실행해줘"라는 사용자의 음성이 입력된 후, "새로 고침"이라는 사용자의 음성이 입력된 경우를 가정한다. 이 경우, 제어부(330)는 기기 제어 서비스 도메인 내에서 "새로 고침"이라는 사용자의 음성에 포함된 발화 의도를 판단할 수 없으므로, 이전에 수신된 "○○○(웹 브라우징 어플리케이션 명칭) 실행해줘"라는 사용자의 음성에 기초하여 "새로 고침"의 발화 의도를 판단할 수 있다.
즉, 제어부(330)는 이전에 수신된 사용자의 음성인 "○○○(웹 브라우징 어플리케이션 명칭) 실행해줘"를 이용하여 "새로 고침"의 발화 의도를 "웹 브라우징 화면"에 대한 "새로 고침"을 "요청"하는 것으로 판단할 수 있다.
한편, 저장부(320)는 디스플레이 장치(100)에서 음성 명령 가이드로 출력되는 사용자의 음성에 대한 정보를 저장할 수 있다. 즉, 저장부(320)는 디스플레이 장치(100)의 각 상황에서 사용 가능한 사용자의 음성에 대한 정보를 저장할 수 있다.
이에 따라, 제어부(330)는 기저장된 정보를 이용하여 디스플레이 장치(100)의 현재 상황에서 적용 가능한 사용자의 음성에 대한 정보를 판단하고, 판단된 사용자의 음성에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다.
예를 들어, "오늘 방송 뭐해"라는 사용자의 음성이 수신된 경우, 제어부(330)는 "오늘 방송 뭐해"라는 사용자의 음성은 "오늘" 방송하는 "방송 프로그램"을 "문의"하는 것으로 발화 의도를 판단하고, 오늘 방송하는 방송 프로그램에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다. 이때, 제어부(330)는 "세 번째", "세 번째 상세 정보 보여줘", "이 중에서 ○○○(채널명)은 뭐해?", "이 중에서 다큐멘터리 프로는 뭐야?", "이 중에서 ○○○(출연자 이름)이 출연하는 거 찾아줘", "이 중에서 ○○○(방송 프로그램 명칭) 찾아줘" 등과 같이 시스템 응답으로 출력된 방송 프로그램 리스트에서 적용 가능한 사용자의 음성에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다.
다른 예로, "○○(웹 브라우징과 관련된 어플리케이션 명칭) 실행해줘"라는 사용자의 음성이 수신된 경우, 제어부(330)는 "○○(웹 브라우징과 관련된 어플리케이션 명칭) 실행해줘"라는 사용자의 음성은 "○○(웹 브라우징과 관련된 어플리케이션 명칭)"에 대한 "실행"을 "요청"하는 것으로 발화 의도를 판단하고, ○○(웹 브라우징과 관련된 어플리케이션 명칭)을 실행하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이때, 제어부(330)는 "홈 페이지", "즐겨 찾기", "새로 고침", "새 페이지 열기", "현재 페이지 닫기", "뒤로", "앞으로", "종료" 등과 같이 디스플레이 장치(100)에서 실행된 어플리케이션에서 적용 가능한 사용자의 음성에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다.
이하에서는 도 6 내지 도 11을 참조하여, 본 발명의 다양한 실시 예에 대해 설명하기로 한다.
제어부(150)는 도 6과 같이 초기 화면(410)을 디스플레이한다. 이때, 제어부(150)는 도 7a 내지 도 7c와 같이 음성 명령 가이드(420)를 초기 화면(410)의 일 영역에 디스플레이할 수 있다.
음성 명령 가이드(420)에는 "오늘 방송 뭐해?", "재미있는 거 없어?", "새로 나온 영화 뭐 있어?", "인기있는 거 추천해줘", "EBB(채널명) 틀어줘", "웹 브라우저 실행해줘" 등과 같이 디스플레이 장치(100)에서 수행 가능한 기능을 실행시킬 수 있는 사용자의 음성을 나타내는 텍스트가 슬라이드 쇼 형태로 디스플레이될 수 있다.
이때, 도 8a 내지 도 8c와 같이 사용자가 "오늘 방송 뭐해?"라고 발화한 경우, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 오늘 방송하는 방송 프로그램에 대한 리스트(430)를 시스템 응답으로 출력할 수 있다. 그리고, 제어부(150)는 시스템 응답으로 출력된 리스트(430)에서 적용 가능한 사용자의 음성을 나타내는 음성 명령 가이드(440)를 출력할 수 있다.
도 8a 내지 도 8c를 참조하면, 음성 명령 가이드(440)에는 "세 번째", "세 번째 상세 정보 보여줘", "이 중에서 SBC(채널명)는 뭐해?", "이 중에서 다큐멘터리 프로는 뭐야?", "이 중에서 Peter(출연자 이름)가 출연하는 거 찾아줘", "이 중에서 The Show(방송 프로그램 명칭) 찾아줘" 등과 같이, 시스템 응답으로 출력된 방송 프로그램에 대한 리스트(430)에서 적용 가능한 사용자의 음성을 나타내는 텍스트가 슬라이드 쇼 형태로 디스플레이될 수 있다.
한편, 제어부(150)는 수집된 사용자의 음성에 대한 정보를 출력할 수 있다. 예를 들어, 제어부(150)는 제1 서버(200)로부터 사용자의 음성에 대응되는 텍스트 정보가 수신되면, 수신된 텍스트 정보를 포함하도록 UI를 생성하여 화면 상에 출력할 수 있다. 즉, 제어부(150)는 도 8a 내지 도 8c과 같이, "오늘 방송 뭐해"(450)를 출력할 수 있다.
이에 따라, 사용자가 "이 중에서 SBC(채널명)는 뭐해?"라고 발화한 경우, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 오늘 방송하는 방송 프로그램 중 SBC(채널명)에서 제공하는 방송 프로그램에 대한 리스트를 시스템 응답으로 출력할 수 있다.
한편, 제어부(150)는 올바른 사용자의 음성을 유도하기 위한 가이드를 출력할 수도 있다. 이를 위해, 제2 서버(300)는 올바른 사용자의 음성을 유도하기 위한 가이드 정보를 디스플레이 장치(100)로 전송할 수 있다.
구체적으로, 제어부(330)는 수신된 텍스트 정보에 매칭되는 예문이 존재하지 않는 경우, 통계적으로 유사한 예문을 판단할 수 있음은 전술한 바 있다. 이에 따라, 제어부(330)는 수신된 사용자의 음성과 통계적으로 유사한 예문에 대한 정보를 응답 정보와 함께 디스플레이 장치(100)로 전송할 수 있다.
예를 들어 도 9와 같이, 사용자가 "방송 뭐해?"라고 발화한 경우, 제어부(330)는 "방송 뭐해?"가 기저장된 예문 중에서 "오늘 방송 뭐해?"와 통계적으로 유사한 것으로 판단하고, "오늘 방송 뭐해?"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 제어부(150)는 "다음에는 "오늘 방송 뭐해"로 말해보세요"와 같은 UI를 생성하여, 올바른 사용자의 음성을 유도하기 위한 가이드(460)로 출력할 수 있다.
이 경우에도, 제어부(150)는 수집된 사용자의 음성에 대한 정보를 출력할 수 있다. 즉, 제어부(150)는 도 9와 같이, "방송 뭐해"(470)를 출력할 수 있다.
한편, 상술한 실시 예들은 음성 명령 가이드가 출력되는 형태의 일 예일 뿐이며, 음성 명령 가이드는 다양한 형태로 제공될 수 있다.
예를 들어, 제어부(150)는 도 10a 및 도 10b와 같이 초기 화면(510)이 출력된 상태에서 "오늘 방송 뭐해?"라는 사용자의 음성이 수집되면, 오늘 방송하는 프로그램에 대한 리스트(520)를 시스템 응답으로 출력하고, 리스트(520)에 대해 사용 가능한 사용자의 음성에 대한 정보를 포함하는 음성 명령 가이드(530)를 출력할 수 있다. 구체적으로, 제어부(150)는 도 10b와 같이 "첫 번째", "두 번째",... 등과 같은 음성 명령 가이드(530)를 출력할 수 있다.
한편, 도 11은 초기 화면이 디스플레이된 상태에서 사용자가 "더보기"를 발화한 경우를 도시한다. 이 경우, 제2 서버(300)는 디스플레이 장치(100)에서 사용 가능한 음성에 대한 정보를 출력하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 제어부(150)는 수신된 제어 명령에 기초하여, 도 11과 같이 사용 가능한 사용자의 음성에 대한 정보를 포함하는 UI(610)를 생성하여 출력할 수 있다. 한편, 디스플레이 장치(100)에서 사용 가능한 음성에 대한 정보는 디스플레이 장치(100)에 기저장되어 있거나, 제2 서버(300)로부터 수신될 수 있다.
도 12는 본 발명의 일 실시 예에 따른 디스플레이 장치의 제어 방법을 설명하기 위한 흐름도이다.
먼저, 사용자의 음성을 수집한다(S1210).
이후, 사용자의 음성을 제1 서버로 전송하고, 제1 서버로부터 사용자의 음성에 대응되는 텍스트 정보를 수신한다(S1220). 그리고, 수신된 텍스트 정보를 제2 서버로 전송한다(S1230).
텍스트 정보에 대응되는 응답 정보가 제2 서버로부터 수신되면, 응답 정보에 기초하여, 사용자의 음성에 대응되는 시스템 응답을 출력한다(S1240). 이때, 디스플레이 장치의 현재 상황에서 적용 가능한 음성 명령 가이드를 출력할 수 있다.
구체적으로, 사용자의 음성에 대응되는 시스템 응답이 출력되면, 시스템 응답과 관련된 음성 명령 가이드를 출력할 수 있다.
이 경우, 컨텐츠 검색을 위한 사용자 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 컨텐츠 리스트에 포함된 컨텐츠를 필터링하기 위한 음성 명령 가이드를 출력할 수 있다.
또한, 컨텐츠 검색을 위한 사용자 음성에 따라 검색된 컨텐츠 리스트가 출력되면, 컨텐츠 리스트에 포함된 특정 컨텐츠를 실행하기 위한 음성 명령 가이드 및 특정 컨텐츠의 세부 정보를 출력하기 위한 음성 명령 가이드 중 적어도 하나를 출력할 수 있다.
또한, 어플리케이션 실행을 위한 사용자 음성에 따라 해당 어플리케이션 실행 화면이 출력되면, 어플리케이션 실행 화면에서 적용 가능한 음성 명령 가이드를 출력할 수 있다.
이에 대해서는, 도 1 내지 도 11에서 구체적으로 설명한 바 있다는 점에서 구체적인 중복 설명은 생략하기로 한다.
또한, 본 발명에 따른 제어 방법을 순차적으로 수행하는 프로그램이 저장된 비일시적 판독 가능 매체(non-transitory computer readable medium)가 제공될 수 있다.
비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 디스플레이 장치 및 서버에 대해 도시한 상술한 블록도에서는 버스(bus)를 미도시하였으나, 디스플레이 장치 및 서버에서 각 구성요소 간의 통신은 버스를 통해 이루어질 수도 있다. 또한, 각 디바이스에는 상술한 다양한 단계를 수행하는 CPU, 마이크로 프로세서 등과 같은 프로세서가 더 포함될 수도 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100 : 디스플레이 장치 110 : 출력부
120 : 음성수집부 130 : 제1 통신부
140 : 제2 통신부 150 : 제어부

Claims (1)

  1. 디스플레이 장치의 제어 방법에 있어서,
    상기 디스플레이 장치의 디스플레이 상황 별로 적용가능한 음성 명령에 대응되는, 기 저장된 복수의 예문 중, 상기 디스플레이 장치의 현재 상황에서 적용 가능한 음성 명령에 대응되는 예문를 포함하는 음성 명령 가이드를 디스플레이하는 단계;
    상기 음성 명령 가이드에 따라 사용자의 음성을 입력받는 단계; 및
    상기 사용자의 음성에 대응되는 기능을 수행하는 단계;를 포함하며,
    상기 현재 상황은 제1 상황 및 제2 상황 중 적어도 하나를 포함하고,
    상기 음성 명령 가이드를 디스플레이하는 단계는,
    상기 제1 상황에 적용 가능한 제1 음성 명령 가이드를 상기 제1 상황에서 디스플레이하고, 상기 제2 상황에 적용 가능한 제2 음성 명령 가이드를 상기 제2 상황에서 디스플레이하며,
    상기 제1 음성 명령 가이드와 상기 제2 음성 명령 가이드는 서로 상이한 것인, 디스플레이 장치의 제어 방법.
KR1020160014073A 2016-02-04 2016-02-04 디스플레이 장치 및 그의 제어 방법 KR20160022326A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160014073A KR20160022326A (ko) 2016-02-04 2016-02-04 디스플레이 장치 및 그의 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160014073A KR20160022326A (ko) 2016-02-04 2016-02-04 디스플레이 장치 및 그의 제어 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020130001803A Division KR20140089861A (ko) 2013-01-07 2013-01-07 디스플레이 장치 및 그의 제어 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190073988A Division KR102091006B1 (ko) 2019-06-21 2019-06-21 디스플레이 장치 및 그의 제어 방법

Publications (1)

Publication Number Publication Date
KR20160022326A true KR20160022326A (ko) 2016-02-29

Family

ID=55448467

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160014073A KR20160022326A (ko) 2016-02-04 2016-02-04 디스플레이 장치 및 그의 제어 방법

Country Status (1)

Country Link
KR (1) KR20160022326A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190011286A (ko) * 2016-06-06 2019-02-01 구글 엘엘씨 음성 액션 검색 가능 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190011286A (ko) * 2016-06-06 2019-02-01 구글 엘엘씨 음성 액션 검색 가능 시스템
KR20210024224A (ko) * 2016-06-06 2021-03-04 구글 엘엘씨 음성 액션 검색 가능 시스템
US11929075B2 (en) 2016-06-06 2024-03-12 Google Llc Voice action discoverability system

Similar Documents

Publication Publication Date Title
US9520133B2 (en) Display apparatus and method for controlling the display apparatus
KR101309794B1 (ko) 디스플레이 장치, 디스플레이 장치의 제어 방법 및 대화형 시스템
CN108391149B (zh) 显示设备、控制显示设备的方法、服务器以及控制服务器的方法
KR20140089862A (ko) 디스플레이 장치 및 그의 제어 방법
KR20140093303A (ko) 디스플레이 장치 및 그의 제어 방법
US10986391B2 (en) Server and method for controlling server
US20140196092A1 (en) Dialog-type interface apparatus and method for controlling the same
US9230559B2 (en) Server and method of controlling the same
KR20160022326A (ko) 디스플레이 장치 및 그의 제어 방법
KR102091006B1 (ko) 디스플레이 장치 및 그의 제어 방법
KR20180014137A (ko) 디스플레이 장치 및 그의 제어 방법
KR102182689B1 (ko) 서버 및 그의 제어 방법
KR102118195B1 (ko) 서버 및 그의 제어 방법
KR20170038772A (ko) 디스플레이 장치 및 그의 제어 방법
KR20200133697A (ko) 서버 및 그의 제어 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment